From 770cf01016223b9a724aeaddf50857dc8bc5717c Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Sat, 3 May 2025 12:44:54 +0200 Subject: [PATCH 001/110] Add initial 1.0.0 datatypes --- .../main/kotlin/autogenscripts/GenTypes.kt | 317 +++++++++--------- .../lemmyapi/v1/x0/x0/datatypes/ActivityId.kt | 3 + .../lemmyapi/v1/x0/x0/datatypes/AddAdmin.kt | 9 + .../v1/x0/x0/datatypes/AddAdminResponse.kt | 8 + .../v1/x0/x0/datatypes/AddModToCommunity.kt | 10 + .../x0/datatypes/AddModToCommunityResponse.kt | 8 + .../v1/x0/x0/datatypes/AdminAllowInstance.kt | 13 + .../x0/x0/datatypes/AdminAllowInstanceId.kt | 3 + .../x0/datatypes/AdminAllowInstanceParams.kt | 10 + .../x0/x0/datatypes/AdminAllowInstanceView.kt | 10 + .../v1/x0/x0/datatypes/AdminBlockInstance.kt | 14 + .../x0/x0/datatypes/AdminBlockInstanceId.kt | 3 + .../x0/datatypes/AdminBlockInstanceParams.kt | 11 + .../x0/x0/datatypes/AdminBlockInstanceView.kt | 10 + .../v1/x0/x0/datatypes/AdminPurgeComment.kt | 12 + .../v1/x0/x0/datatypes/AdminPurgeCommentId.kt | 3 + .../x0/x0/datatypes/AdminPurgeCommentView.kt | 10 + .../v1/x0/x0/datatypes/AdminPurgeCommunity.kt | 11 + .../x0/x0/datatypes/AdminPurgeCommunityId.kt | 3 + .../x0/datatypes/AdminPurgeCommunityView.kt | 9 + .../v1/x0/x0/datatypes/AdminPurgePerson.kt | 11 + .../v1/x0/x0/datatypes/AdminPurgePersonId.kt | 3 + .../x0/x0/datatypes/AdminPurgePersonView.kt | 9 + .../v1/x0/x0/datatypes/AdminPurgePost.kt | 12 + .../v1/x0/x0/datatypes/AdminPurgePostId.kt | 3 + .../v1/x0/x0/datatypes/AdminPurgePostView.kt | 10 + .../ApproveCommunityPendingFollower.kt | 10 + .../ApproveRegistrationApplication.kt | 10 + .../x0/x0/datatypes/AuthenticateWithOauth.kt | 14 + .../v1/x0/x0/datatypes/BanFromCommunity.kt | 13 + .../x0/datatypes/BanFromCommunityResponse.kt | 9 + .../lemmyapi/v1/x0/x0/datatypes/BanPerson.kt | 12 + .../v1/x0/x0/datatypes/BanPersonResponse.kt | 9 + .../x0/x0/datatypes/BannedPersonsResponse.kt | 10 + .../v1/x0/x0/datatypes/BlockCommunity.kt | 9 + .../x0/x0/datatypes/BlockCommunityResponse.kt | 9 + .../v1/x0/x0/datatypes/BlockPerson.kt | 9 + .../v1/x0/x0/datatypes/BlockPersonResponse.kt | 9 + .../v1/x0/x0/datatypes/CaptchaResponse.kt | 10 + .../v1/x0/x0/datatypes/ChangePassword.kt | 10 + .../lemmyapi/v1/x0/x0/datatypes/Comment.kt | 27 ++ .../v1/x0/x0/datatypes/CommentActions.kt | 12 + .../lemmyapi/v1/x0/x0/datatypes/CommentId.kt | 3 + .../v1/x0/x0/datatypes/CommentReply.kt | 12 + .../v1/x0/x0/datatypes/CommentReplyId.kt | 3 + .../v1/x0/x0/datatypes/CommentReplyView.kt | 24 ++ .../v1/x0/x0/datatypes/CommentReport.kt | 17 + .../v1/x0/x0/datatypes/CommentReportId.kt | 3 + .../x0/x0/datatypes/CommentReportResponse.kt | 8 + .../v1/x0/x0/datatypes/CommentReportView.kt | 19 ++ .../v1/x0/x0/datatypes/CommentResponse.kt | 9 + .../v1/x0/x0/datatypes/CommentSlimView.kt | 18 + .../v1/x0/x0/datatypes/CommentView.kt | 22 ++ .../lemmyapi/v1/x0/x0/datatypes/Community.kt | 35 ++ .../v1/x0/x0/datatypes/CommunityActions.kt | 16 + .../x0/x0/datatypes/CommunityFollowerView.kt | 9 + .../v1/x0/x0/datatypes/CommunityId.kt | 3 + .../x0/x0/datatypes/CommunityModeratorView.kt | 9 + .../v1/x0/x0/datatypes/CommunityReport.kt | 21 ++ .../v1/x0/x0/datatypes/CommunityReportId.kt | 3 + .../x0/datatypes/CommunityReportResponse.kt | 8 + .../v1/x0/x0/datatypes/CommunityReportView.kt | 11 + .../v1/x0/x0/datatypes/CommunityResponse.kt | 9 + .../v1/x0/x0/datatypes/CommunityView.kt | 12 + .../v1/x0/x0/datatypes/CreateComment.kt | 11 + .../v1/x0/x0/datatypes/CreateCommentLike.kt | 9 + .../v1/x0/x0/datatypes/CreateCommentReport.kt | 10 + .../v1/x0/x0/datatypes/CreateCommunity.kt | 17 + .../x0/x0/datatypes/CreateCommunityReport.kt | 9 + .../v1/x0/x0/datatypes/CreateCommunityTag.kt | 9 + .../v1/x0/x0/datatypes/CreateCustomEmoji.kt | 12 + .../v1/x0/x0/datatypes/CreateOAuthProvider.kt | 20 ++ .../lemmyapi/v1/x0/x0/datatypes/CreatePost.kt | 18 + .../v1/x0/x0/datatypes/CreatePostLike.kt | 9 + .../v1/x0/x0/datatypes/CreatePostReport.kt | 10 + .../x0/x0/datatypes/CreatePrivateMessage.kt | 9 + .../datatypes/CreatePrivateMessageReport.kt | 9 + .../lemmyapi/v1/x0/x0/datatypes/CreateSite.kt | 55 +++ .../v1/x0/x0/datatypes/CreateTagline.kt | 8 + .../v1/x0/x0/datatypes/CustomEmoji.kt | 14 + .../v1/x0/x0/datatypes/CustomEmojiId.kt | 3 + .../v1/x0/x0/datatypes/CustomEmojiKeyword.kt | 9 + .../v1/x0/x0/datatypes/CustomEmojiResponse.kt | 8 + .../v1/x0/x0/datatypes/CustomEmojiView.kt | 9 + .../lemmyapi/v1/x0/x0/datatypes/DbUrl.kt | 3 + .../v1/x0/x0/datatypes/DeleteAccount.kt | 9 + .../v1/x0/x0/datatypes/DeleteComment.kt | 9 + .../v1/x0/x0/datatypes/DeleteCommunity.kt | 9 + .../v1/x0/x0/datatypes/DeleteCommunityTag.kt | 8 + .../v1/x0/x0/datatypes/DeleteCustomEmoji.kt | 8 + .../v1/x0/x0/datatypes/DeleteImageParams.kt | 8 + .../v1/x0/x0/datatypes/DeleteOAuthProvider.kt | 8 + .../lemmyapi/v1/x0/x0/datatypes/DeletePost.kt | 9 + .../x0/x0/datatypes/DeletePrivateMessage.kt | 9 + .../v1/x0/x0/datatypes/DeleteTagline.kt | 8 + .../v1/x0/x0/datatypes/DistinguishComment.kt | 9 + .../v1/x0/x0/datatypes/EditComment.kt | 10 + .../v1/x0/x0/datatypes/EditCommunity.kt | 15 + .../v1/x0/x0/datatypes/EditCustomEmoji.kt | 12 + .../v1/x0/x0/datatypes/EditOAuthProvider.kt | 19 ++ .../lemmyapi/v1/x0/x0/datatypes/EditPost.kt | 17 + .../v1/x0/x0/datatypes/EditPrivateMessage.kt | 9 + .../lemmyapi/v1/x0/x0/datatypes/EditSite.kt | 57 ++++ .../v1/x0/x0/datatypes/FeaturePost.kt | 11 + .../v1/x0/x0/datatypes/FederatedInstances.kt | 10 + .../v1/x0/x0/datatypes/FederationBlockList.kt | 11 + .../v1/x0/x0/datatypes/FollowCommunity.kt | 9 + .../datatypes/GenerateTotpSecretResponse.kt | 8 + .../v1/x0/x0/datatypes/GetCaptchaResponse.kt | 8 + .../lemmyapi/v1/x0/x0/datatypes/GetComment.kt | 8 + .../v1/x0/x0/datatypes/GetComments.kt | 22 ++ .../v1/x0/x0/datatypes/GetCommentsResponse.kt | 10 + .../x0/datatypes/GetCommentsSlimResponse.kt | 10 + .../v1/x0/x0/datatypes/GetCommunity.kt | 9 + .../GetCommunityPendingFollowsCount.kt | 8 + ...GetCommunityPendingFollowsCountResponse.kt | 8 + .../x0/x0/datatypes/GetCommunityResponse.kt | 11 + .../GetFederatedInstancesResponse.kt | 8 + .../lemmyapi/v1/x0/x0/datatypes/GetModlog.kt | 19 ++ .../v1/x0/x0/datatypes/GetModlogResponse.kt | 10 + .../v1/x0/x0/datatypes/GetPersonDetails.kt | 9 + .../x0/datatypes/GetPersonDetailsResponse.kt | 10 + .../lemmyapi/v1/x0/x0/datatypes/GetPost.kt | 9 + .../v1/x0/x0/datatypes/GetPostResponse.kt | 10 + .../lemmyapi/v1/x0/x0/datatypes/GetPosts.kt | 25 ++ .../v1/x0/x0/datatypes/GetPostsResponse.kt | 10 + .../v1/x0/x0/datatypes/GetRandomCommunity.kt | 10 + .../datatypes/GetRegistrationApplication.kt | 8 + .../v1/x0/x0/datatypes/GetReportCount.kt | 8 + .../x0/x0/datatypes/GetReportCountResponse.kt | 8 + .../v1/x0/x0/datatypes/GetSiteMetadata.kt | 8 + .../x0/datatypes/GetSiteMetadataResponse.kt | 8 + .../v1/x0/x0/datatypes/GetSiteResponse.kt | 18 + .../x0/x0/datatypes/GetUnreadCountResponse.kt | 8 + ...eadRegistrationApplicationCountResponse.kt | 8 + .../v1/x0/x0/datatypes/HideCommunity.kt | 10 + .../lemmyapi/v1/x0/x0/datatypes/HidePost.kt | 9 + .../v1/x0/x0/datatypes/ImageDetails.kt | 12 + .../v1/x0/x0/datatypes/ImageGetParams.kt | 9 + .../v1/x0/x0/datatypes/ImageProxyParams.kt | 10 + .../lemmyapi/v1/x0/x0/datatypes/Instance.kt | 13 + .../v1/x0/x0/datatypes/InstanceActions.kt | 12 + .../lemmyapi/v1/x0/x0/datatypes/InstanceId.kt | 3 + .../datatypes/InstanceWithFederationState.kt | 14 + .../lemmyapi/v1/x0/x0/datatypes/Language.kt | 10 + .../lemmyapi/v1/x0/x0/datatypes/LanguageId.kt | 3 + .../v1/x0/x0/datatypes/LemmyErrorType.kt | 12 + .../v1/x0/x0/datatypes/LinkMetadata.kt | 12 + .../v1/x0/x0/datatypes/ListBannedPersons.kt | 10 + .../v1/x0/x0/datatypes/ListCommentLikes.kt | 11 + .../x0/datatypes/ListCommentLikesResponse.kt | 10 + .../v1/x0/x0/datatypes/ListCommunities.kt | 16 + .../x0/datatypes/ListCommunitiesResponse.kt | 10 + .../datatypes/ListCommunityPendingFollows.kt | 12 + .../ListCommunityPendingFollowsResponse.kt | 10 + .../v1/x0/x0/datatypes/ListCustomEmojis.kt | 8 + .../x0/datatypes/ListCustomEmojisResponse.kt | 8 + .../lemmyapi/v1/x0/x0/datatypes/ListInbox.kt | 13 + .../v1/x0/x0/datatypes/ListInboxResponse.kt | 10 + .../v1/x0/x0/datatypes/ListLoginsResponse.kt | 8 + .../lemmyapi/v1/x0/x0/datatypes/ListMedia.kt | 10 + .../v1/x0/x0/datatypes/ListMediaResponse.kt | 10 + .../v1/x0/x0/datatypes/ListPersonContent.kt | 14 + .../x0/datatypes/ListPersonContentResponse.kt | 10 + .../v1/x0/x0/datatypes/ListPersonSaved.kt | 12 + .../x0/datatypes/ListPersonSavedResponse.kt | 10 + .../v1/x0/x0/datatypes/ListPostLikes.kt | 11 + .../x0/x0/datatypes/ListPostLikesResponse.kt | 10 + .../datatypes/ListRegistrationApplications.kt | 11 + .../ListRegistrationApplicationsResponse.kt | 10 + .../v1/x0/x0/datatypes/ListReports.kt | 17 + .../v1/x0/x0/datatypes/ListReportsResponse.kt | 10 + .../v1/x0/x0/datatypes/ListTaglines.kt | 10 + .../x0/x0/datatypes/ListTaglinesResponse.kt | 10 + .../lemmyapi/v1/x0/x0/datatypes/LocalImage.kt | 10 + .../v1/x0/x0/datatypes/LocalImageView.kt | 9 + .../lemmyapi/v1/x0/x0/datatypes/LocalSite.kt | 53 +++ .../v1/x0/x0/datatypes/LocalSiteId.kt | 3 + .../v1/x0/x0/datatypes/LocalSiteRateLimit.kt | 24 ++ .../x0/x0/datatypes/LocalSiteUrlBlocklist.kt | 11 + .../lemmyapi/v1/x0/x0/datatypes/LocalUser.kt | 44 +++ .../v1/x0/x0/datatypes/LocalUserId.kt | 3 + .../v1/x0/x0/datatypes/LocalUserView.kt | 10 + .../lemmyapi/v1/x0/x0/datatypes/LockPost.kt | 9 + .../lemmyapi/v1/x0/x0/datatypes/Login.kt | 10 + .../v1/x0/x0/datatypes/LoginResponse.kt | 10 + .../lemmyapi/v1/x0/x0/datatypes/LoginToken.kt | 11 + .../x0/x0/datatypes/MarkCommentReplyAsRead.kt | 9 + .../v1/x0/x0/datatypes/MarkManyPostsAsRead.kt | 8 + .../MarkPersonCommentMentionAsRead.kt | 9 + .../datatypes/MarkPersonPostMentionAsRead.kt | 9 + .../v1/x0/x0/datatypes/MarkPostAsRead.kt | 9 + .../x0/datatypes/MarkPrivateMessageAsRead.kt | 9 + .../lemmyapi/v1/x0/x0/datatypes/ModAdd.kt | 12 + .../v1/x0/x0/datatypes/ModAddCommunity.kt | 13 + .../v1/x0/x0/datatypes/ModAddCommunityId.kt | 3 + .../v1/x0/x0/datatypes/ModAddCommunityView.kt | 11 + .../lemmyapi/v1/x0/x0/datatypes/ModAddId.kt | 3 + .../lemmyapi/v1/x0/x0/datatypes/ModAddView.kt | 10 + .../lemmyapi/v1/x0/x0/datatypes/ModBan.kt | 15 + .../v1/x0/x0/datatypes/ModBanFromCommunity.kt | 15 + .../x0/x0/datatypes/ModBanFromCommunityId.kt | 3 + .../x0/datatypes/ModBanFromCommunityView.kt | 11 + .../lemmyapi/v1/x0/x0/datatypes/ModBanId.kt | 3 + .../lemmyapi/v1/x0/x0/datatypes/ModBanView.kt | 10 + .../datatypes/ModChangeCommunityVisibility.kt | 13 + .../ModChangeCommunityVisibilityId.kt | 3 + .../ModChangeCommunityVisibilityView.kt | 10 + .../v1/x0/x0/datatypes/ModFeaturePost.kt | 13 + .../v1/x0/x0/datatypes/ModFeaturePostId.kt | 3 + .../v1/x0/x0/datatypes/ModFeaturePostView.kt | 12 + .../v1/x0/x0/datatypes/ModLockPost.kt | 12 + .../v1/x0/x0/datatypes/ModLockPostId.kt | 3 + .../v1/x0/x0/datatypes/ModLockPostView.kt | 12 + .../v1/x0/x0/datatypes/ModRemoveComment.kt | 13 + .../v1/x0/x0/datatypes/ModRemoveCommentId.kt | 3 + .../x0/x0/datatypes/ModRemoveCommentView.kt | 13 + .../v1/x0/x0/datatypes/ModRemoveCommunity.kt | 13 + .../x0/x0/datatypes/ModRemoveCommunityId.kt | 3 + .../x0/x0/datatypes/ModRemoveCommunityView.kt | 10 + .../v1/x0/x0/datatypes/ModRemovePost.kt | 13 + .../v1/x0/x0/datatypes/ModRemovePostId.kt | 3 + .../v1/x0/x0/datatypes/ModRemovePostView.kt | 12 + .../x0/x0/datatypes/ModTransferCommunity.kt | 12 + .../x0/x0/datatypes/ModTransferCommunityId.kt | 3 + .../x0/datatypes/ModTransferCommunityView.kt | 11 + .../lemmyapi/v1/x0/x0/datatypes/MyUserInfo.kt | 15 + .../v1/x0/x0/datatypes/OAuthAccount.kt | 12 + .../v1/x0/x0/datatypes/OAuthProvider.kt | 22 ++ .../v1/x0/x0/datatypes/OAuthProviderId.kt | 3 + .../v1/x0/x0/datatypes/OpenGraphData.kt | 11 + .../v1/x0/x0/datatypes/PaginationCursor.kt | 3 + .../x0/datatypes/PasswordChangeAfterReset.kt | 10 + .../v1/x0/x0/datatypes/PasswordReset.kt | 8 + .../v1/x0/x0/datatypes/PendingFollow.kt | 11 + .../lemmyapi/v1/x0/x0/datatypes/Person.kt | 23 ++ .../v1/x0/x0/datatypes/PersonActions.kt | 10 + .../x0/x0/datatypes/PersonCommentMention.kt | 12 + .../x0/x0/datatypes/PersonCommentMentionId.kt | 3 + .../x0/datatypes/PersonCommentMentionView.kt | 23 ++ .../lemmyapi/v1/x0/x0/datatypes/PersonId.kt | 3 + .../v1/x0/x0/datatypes/PersonPostMention.kt | 12 + .../v1/x0/x0/datatypes/PersonPostMentionId.kt | 3 + .../x0/x0/datatypes/PersonPostMentionView.kt | 24 ++ .../lemmyapi/v1/x0/x0/datatypes/PersonView.kt | 12 + .../v1/x0/x0/datatypes/PluginMetadata.kt | 10 + .../lemmyapi/v1/x0/x0/datatypes/Post.kt | 39 +++ .../v1/x0/x0/datatypes/PostActions.kt | 16 + .../lemmyapi/v1/x0/x0/datatypes/PostId.kt | 3 + .../lemmyapi/v1/x0/x0/datatypes/PostReport.kt | 19 ++ .../v1/x0/x0/datatypes/PostReportId.kt | 3 + .../v1/x0/x0/datatypes/PostReportResponse.kt | 8 + .../v1/x0/x0/datatypes/PostReportView.kt | 18 + .../v1/x0/x0/datatypes/PostResponse.kt | 8 + .../lemmyapi/v1/x0/x0/datatypes/PostView.kt | 22 ++ .../v1/x0/x0/datatypes/PrivateMessage.kt | 18 + .../v1/x0/x0/datatypes/PrivateMessageId.kt | 3 + .../x0/x0/datatypes/PrivateMessageReport.kt | 16 + .../x0/x0/datatypes/PrivateMessageReportId.kt | 3 + .../datatypes/PrivateMessageReportResponse.kt | 8 + .../x0/datatypes/PrivateMessageReportView.kt | 12 + .../x0/x0/datatypes/PrivateMessageResponse.kt | 8 + .../v1/x0/x0/datatypes/PrivateMessageView.kt | 10 + .../v1/x0/x0/datatypes/PublicOAuthProvider.kt | 3 + .../v1/x0/x0/datatypes/PurgeComment.kt | 9 + .../v1/x0/x0/datatypes/PurgeCommunity.kt | 9 + .../v1/x0/x0/datatypes/PurgePerson.kt | 9 + .../lemmyapi/v1/x0/x0/datatypes/PurgePost.kt | 9 + .../x0/datatypes/ReadableFederationState.kt | 13 + .../lemmyapi/v1/x0/x0/datatypes/Register.kt | 16 + .../x0/datatypes/RegistrationApplication.kt | 13 + .../x0/datatypes/RegistrationApplicationId.kt | 3 + .../RegistrationApplicationResponse.kt | 8 + .../datatypes/RegistrationApplicationView.kt | 11 + .../v1/x0/x0/datatypes/RemoveComment.kt | 10 + .../v1/x0/x0/datatypes/RemoveCommunity.kt | 10 + .../lemmyapi/v1/x0/x0/datatypes/RemovePost.kt | 10 + .../x0/datatypes/ResendVerificationEmail.kt | 8 + .../x0/x0/datatypes/ResolveCommentReport.kt | 9 + .../x0/x0/datatypes/ResolveCommunityReport.kt | 9 + .../v1/x0/x0/datatypes/ResolveObject.kt | 8 + .../x0/x0/datatypes/ResolveObjectResponse.kt | 11 + .../v1/x0/x0/datatypes/ResolvePostReport.kt | 9 + .../datatypes/ResolvePrivateMessageReport.kt | 9 + .../v1/x0/x0/datatypes/SaveComment.kt | 9 + .../lemmyapi/v1/x0/x0/datatypes/SavePost.kt | 9 + .../v1/x0/x0/datatypes/SaveUserSettings.kt | 43 +++ .../lemmyapi/v1/x0/x0/datatypes/Search.kt | 25 ++ .../v1/x0/x0/datatypes/SearchResponse.kt | 10 + .../v1/x0/x0/datatypes/SensitiveString.kt | 3 + .../lemmyapi/v1/x0/x0/datatypes/Site.kt | 21 ++ .../lemmyapi/v1/x0/x0/datatypes/SiteId.kt | 3 + .../v1/x0/x0/datatypes/SiteResponse.kt | 9 + .../lemmyapi/v1/x0/x0/datatypes/SiteView.kt | 11 + .../v1/x0/x0/datatypes/SuccessResponse.kt | 8 + .../lemmyapi/v1/x0/x0/datatypes/Tag.kt | 14 + .../lemmyapi/v1/x0/x0/datatypes/TagId.kt | 3 + .../lemmyapi/v1/x0/x0/datatypes/Tagline.kt | 11 + .../lemmyapi/v1/x0/x0/datatypes/TaglineId.kt | 3 + .../v1/x0/x0/datatypes/TaglineResponse.kt | 8 + .../lemmyapi/v1/x0/x0/datatypes/TagsView.kt | 3 + .../v1/x0/x0/datatypes/TransferCommunity.kt | 9 + .../v1/x0/x0/datatypes/UpdateCommunityTag.kt | 9 + .../v1/x0/x0/datatypes/UpdateTagline.kt | 9 + .../lemmyapi/v1/x0/x0/datatypes/UpdateTotp.kt | 9 + .../v1/x0/x0/datatypes/UpdateTotpResponse.kt | 8 + .../v1/x0/x0/datatypes/UploadImageResponse.kt | 9 + .../x0/datatypes/UserBlockInstanceParams.kt | 9 + .../v1/x0/x0/datatypes/VerifyEmail.kt | 8 + .../lemmyapi/v1/x0/x0/datatypes/VoteView.kt | 11 + 310 files changed, 3545 insertions(+), 150 deletions(-) create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ActivityId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AddAdmin.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AddAdminResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AddModToCommunity.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AddModToCommunityResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAllowInstance.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAllowInstanceId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAllowInstanceParams.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAllowInstanceView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBlockInstance.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBlockInstanceId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBlockInstanceParams.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBlockInstanceView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeComment.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeCommentId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeCommentView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeCommunity.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeCommunityId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeCommunityView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePerson.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePersonId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePersonView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePost.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePostId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePostView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ApproveCommunityPendingFollower.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ApproveRegistrationApplication.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AuthenticateWithOauth.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BanFromCommunity.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BanFromCommunityResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BanPerson.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BanPersonResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BannedPersonsResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BlockCommunity.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BlockCommunityResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BlockPerson.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BlockPersonResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CaptchaResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ChangePassword.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Comment.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentActions.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReply.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReplyId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReplyView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReport.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReportId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReportResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReportView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentSlimView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Community.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityActions.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityFollowerView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityModeratorView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityReport.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityReportId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityReportResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityReportView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateComment.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCommentLike.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCommentReport.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCommunity.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCommunityReport.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCommunityTag.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCustomEmoji.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateOAuthProvider.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreatePost.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreatePostLike.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreatePostReport.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreatePrivateMessage.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreatePrivateMessageReport.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateSite.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateTagline.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CustomEmoji.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CustomEmojiId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CustomEmojiKeyword.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CustomEmojiResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CustomEmojiView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/DbUrl.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/DeleteAccount.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/DeleteComment.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/DeleteCommunity.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/DeleteCommunityTag.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/DeleteCustomEmoji.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/DeleteImageParams.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/DeleteOAuthProvider.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/DeletePost.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/DeletePrivateMessage.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/DeleteTagline.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/DistinguishComment.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditComment.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditCommunity.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditCustomEmoji.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditOAuthProvider.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditPost.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditPrivateMessage.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditSite.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/FeaturePost.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/FederatedInstances.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/FederationBlockList.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/FollowCommunity.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GenerateTotpSecretResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetCaptchaResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetComment.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetComments.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetCommentsResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetCommentsSlimResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetCommunity.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetCommunityPendingFollowsCount.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetCommunityPendingFollowsCountResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetCommunityResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetFederatedInstancesResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetModlog.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetModlogResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetPersonDetails.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetPersonDetailsResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetPost.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetPostResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetPosts.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetPostsResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetRandomCommunity.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetRegistrationApplication.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetReportCount.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetReportCountResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetSiteMetadata.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetSiteMetadataResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetSiteResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetUnreadCountResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetUnreadRegistrationApplicationCountResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/HideCommunity.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/HidePost.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ImageDetails.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ImageGetParams.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ImageProxyParams.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Instance.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/InstanceActions.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/InstanceId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/InstanceWithFederationState.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Language.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LanguageId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LemmyErrorType.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LinkMetadata.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListBannedPersons.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommentLikes.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommentLikesResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommunities.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommunitiesResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommunityPendingFollows.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommunityPendingFollowsResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCustomEmojis.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCustomEmojisResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListInbox.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListInboxResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListLoginsResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListMedia.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListMediaResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonContent.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonContentResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonSaved.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonSavedResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPostLikes.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPostLikesResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListRegistrationApplications.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListRegistrationApplicationsResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListReports.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListReportsResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListTaglines.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListTaglinesResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalImage.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalImageView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSite.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSiteId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSiteRateLimit.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSiteUrlBlocklist.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUser.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUserId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUserView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LockPost.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Login.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LoginResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LoginToken.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MarkCommentReplyAsRead.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MarkManyPostsAsRead.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MarkPersonCommentMentionAsRead.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MarkPersonPostMentionAsRead.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MarkPostAsRead.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MarkPrivateMessageAsRead.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAdd.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddCommunity.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddCommunityId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddCommunityView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBan.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanFromCommunity.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanFromCommunityId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanFromCommunityView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModChangeCommunityVisibility.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModChangeCommunityVisibilityId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModChangeCommunityVisibilityView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModFeaturePost.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModFeaturePostId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModFeaturePostView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockPost.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockPostId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockPostView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveComment.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveCommentId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveCommentView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveCommunity.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveCommunityId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveCommunityView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemovePost.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemovePostId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemovePostView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModTransferCommunity.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModTransferCommunityId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModTransferCommunityView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MyUserInfo.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/OAuthAccount.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/OAuthProvider.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/OAuthProviderId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/OpenGraphData.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PaginationCursor.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PasswordChangeAfterReset.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PasswordReset.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PendingFollow.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Person.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonActions.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonCommentMention.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonCommentMentionId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonCommentMentionView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonPostMention.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonPostMentionId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonPostMentionView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PluginMetadata.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Post.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostActions.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostReport.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostReportId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostReportResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostReportView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessage.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessageId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessageReport.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessageReportId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessageReportResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessageReportView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessageResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessageView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PublicOAuthProvider.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PurgeComment.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PurgeCommunity.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PurgePerson.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PurgePost.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ReadableFederationState.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Register.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RegistrationApplication.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RegistrationApplicationId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RegistrationApplicationResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RegistrationApplicationView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RemoveComment.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RemoveCommunity.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RemovePost.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ResendVerificationEmail.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ResolveCommentReport.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ResolveCommunityReport.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ResolveObject.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ResolveObjectResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ResolvePostReport.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ResolvePrivateMessageReport.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SaveComment.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SavePost.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SaveUserSettings.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Search.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SearchResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SensitiveString.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Site.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SiteId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SiteResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SiteView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SuccessResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Tag.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/TagId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Tagline.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/TaglineId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/TaglineResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/TagsView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/TransferCommunity.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UpdateCommunityTag.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UpdateTagline.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UpdateTotp.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UpdateTotpResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UploadImageResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UserBlockInstanceParams.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/VerifyEmail.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/VoteView.kt diff --git a/GeneratorScripts/src/main/kotlin/autogenscripts/GenTypes.kt b/GeneratorScripts/src/main/kotlin/autogenscripts/GenTypes.kt index 99942c06..354c761e 100644 --- a/GeneratorScripts/src/main/kotlin/autogenscripts/GenTypes.kt +++ b/GeneratorScripts/src/main/kotlin/autogenscripts/GenTypes.kt @@ -5,9 +5,11 @@ import io.ktor.client.statement.* import io.ktor.util.cio.* import io.ktor.utils.io.* import kotlinx.coroutines.Dispatchers +import kotlinx.coroutines.runBlocking import kotlinx.coroutines.withContext import java.io.File import java.util.zip.ZipFile +import kotlin.system.exitProcess const val ROOT_PATH = "app/src/commonMain/kotlin/" const val ROOT_PACKAGE_PATH = "it/vercruysse/lemmyapi/" @@ -28,7 +30,7 @@ fun getDownloadLink(tag: String) = "https://github.com/LemmyNet/lemmy-js-client/ // Requires that dukat is installed https://github.com/Kotlin/dukat // Rewrites the TS types to Kotlin types -suspend fun downloadTypes( +fun downloadTypes( version: String, subLocation: String, ) { @@ -37,9 +39,12 @@ suspend fun downloadTypes( val lemmyJsClient = File("temp", "lemmy-js.zip") - client.get(getDownloadLink(version)) - .bodyAsChannel() - .copyAndClose(lemmyJsClient.writeChannel()) + runBlocking { + client.get(getDownloadLink(version)) + .bodyAsChannel() + .copyAndClose(lemmyJsClient.writeChannel()) + } + val dest = File(getTypesPath(subLocation)) @@ -48,187 +53,199 @@ suspend fun downloadTypes( } dest.mkdirs() - withContext(Dispatchers.IO) { - val zip = ZipFile(lemmyJsClient) - val path = "lemmy-js-client-$version/src/types" + val zip = ZipFile(lemmyJsClient) + val path = "lemmy-js-client-$version/src/types" - for (entry in zip.entries()) { - if (entry.name.startsWith(path) && !entry.isDirectory) { - val name = entry.name.substring(path.length) - val f = File(dest, name) - f.createNewFile() - f.writeBytes(zip.getInputStream(entry).readAllBytes()) - } + for (entry in zip.entries()) { + if (entry.name.startsWith(path) && !entry.isDirectory) { + val name = entry.name.substring(path.length) + val f = File(dest, name) + f.createNewFile() + f.writeBytes(zip.getInputStream(entry).readAllBytes()) } + } - val datatypes = File(getTypesPath(subLocation, false)) + println("Zip files extracted") - val command = - mutableListOf( - "cmd.exe", - "/c", - "dukat", - ) + val datatypes = File(getTypesPath(subLocation, false)) - // Adds all the ts files to the command, "*.ts" does not work and causes an error - for (f in dest.listFiles()!!) { - if (f.name.endsWith(".ts") && f.isFile() && filesThatShouldNotBeAdded.contains(f.name).not()) { - command.add("temp/${f.name}") - } - } + val command = + mutableListOf( + "bash", + "-ic", + "dukat temp/*.ts", + "exit" + ) + + // Adds all the ts files to the command, "*.ts" does not work and causes an error +// for (f in dest.listFiles()!!) { +// if (f.name.endsWith(".ts") && f.isFile() && filesThatShouldNotBeAdded.contains(f.name).not()) { +// command.add("temp/${f.name}") +// } +// } + + println("Starting Dukat process...") + val proc = ProcessBuilder(command) + .directory(datatypes) + .start() - val pb = ProcessBuilder(command) - pb.directory(datatypes) - val proc = pb.start() - println(String(proc.inputStream.readAllBytes())) +// val errMsg = String(proc.errorStream.readAllBytes()) +// +// if (errMsg.isNotBlank()) { +// throw Exception(errMsg) +// } - for (typeFile in datatypes.listFiles()!!) { - if (typeFile.name.startsWith("lib")) { - typeFile.delete() - } else if (typeFile.name.endsWith(".kt") && typeFile.isFile()) { - val originalTypeFile = typeFile.readText() + println(String(proc.inputStream.readAllBytes())) - val fileName = typeFile.name.substringBefore(".") - val f = File(datatypes, "$fileName.kt") - f.createNewFile() + for (typeFile in datatypes.listFiles()!!) { + if (typeFile.name.startsWith("lib")) { + typeFile.delete() + } else if (typeFile.name.endsWith(".kt") && typeFile.isFile()) { + val originalTypeFile = typeFile.readText() - // Add header for each file - f.writeText( - """ + val fileName = typeFile.name.substringBefore(".") + val f = File(datatypes, "$fileName.kt") + f.createNewFile() + + // Add header for each file + f.writeText( + """ package $ROOT_PACKAGE${subLocation.replace("/", ".")}.datatypes """.trimIndent(), - ) - - var imports = "" - - // typealiases are not serializable - if (!originalTypeFile.contains("typealias")) { - imports += "import kotlinx.serialization.Serializable\n\n@Serializable" - } - - val lines = - originalTypeFile - .split(Regex("\r?\n")) - .drop(15) // Remove weird dukat imports - .filter { !it.contains("definedExternally") } // Remove these weird getters and setters - .map { line -> - // Convert interface to data class - var k = - line.replace("interface ", "internal data class ") - .replace(" {", "(") - .replace("}", ")") - - if (k.contains("?") && !k.contains("=")) { - k += " = null" - } + ) - if (k.contains(":")) { - k += "," - } + var imports = "" - // Better align with kotlin conventions - k = - k.replace(Regex("""\b(var)\b"""), "val") - .replace(Regex("""\b(Array)\b"""), "List") - - k = - if (isInteger(k)) { - if(propsThatShouldBeInt.any { k.contains(it)}) { - k.replace(Regex("""\b(Number)\b"""), "Int") - } else { - k.replace(Regex("""\b(Number)\b"""), "Long") - } + // typealiases are not serializable + if (!originalTypeFile.contains("typealias")) { + imports += "import kotlinx.serialization.Serializable\n\n@Serializable" + } + + val lines = + originalTypeFile + .split(Regex("\r?\n")) + .drop(15) // Remove weird dukat imports + .filter { !it.contains("definedExternally") } // Remove these weird getters and setters + .map { line -> + // Convert interface to data class + var k = + line.replace("interface ", "internal data class ") + .replace(" {", "(") + .replace("}", ")") + + if (k.contains("?") && !k.contains("=")) { + k += " = null" + } + + if (k.contains(":")) { + k += "," + } + + // Better align with kotlin conventions + k = + k.replace(Regex("""\b(var)\b"""), "val") + .replace(Regex("""\b(Array)\b"""), "List") + + k = + if (isInteger(k)) { + if (propsThatShouldBeInt.any { k.contains(it) }) { + k.replace(Regex("""\b(Number)\b"""), "Int") } else { - k.replace(Regex("""\b(Number)\b"""), "Float") + k.replace(Regex("""\b(Number)\b"""), "Long") } - - if (k.contains("my_vote")) { - k = k.replace(Regex("""\b(my_vote: Int\? = null)\b"""), "my_vote: Int = 0") + } else { + k.replace(Regex("""\b(Number)\b"""), "Float") } - // Add the CustomDataTypes, that aren't autogenerated - k = - k.replace(Regex("listing_type: String")) { _ -> - imports = "import $ROOT_PACKAGE${CUSTOM_DATATYPES_PACKAGE}ListingType\n$imports" - "listing_type: ListingType" - } - k = - when (fileName) { - "SearchResponse", "Search" -> { - k.replace(Regex("type_: String")) { _ -> - imports = "import $ROOT_PACKAGE${CUSTOM_DATATYPES_PACKAGE}SearchType\n$imports" - "type_: SearchType" - } - } + if (k.contains("my_vote")) { + k = k.replace(Regex("""\b(my_vote: Int\? = null)\b"""), "my_vote: Int = 0") + } - "GetModlog" -> { - k.replace(Regex("type_: String")) { _ -> - imports = "import $ROOT_PACKAGE${CUSTOM_DATATYPES_PACKAGE}ModlogActionType\n$imports" - "type_: ModlogActionType" - } + // Add the CustomDataTypes, that aren't autogenerated + k = + k.replace(Regex("listing_type: String")) { _ -> + imports = "import $ROOT_PACKAGE${CUSTOM_DATATYPES_PACKAGE}ListingType\n$imports" + "listing_type: ListingType" + } + k = + when (fileName) { + "SearchResponse", "Search" -> { + k.replace(Regex("type_: String")) { _ -> + imports = "import $ROOT_PACKAGE${CUSTOM_DATATYPES_PACKAGE}SearchType\n$imports" + "type_: SearchType" } + } - else -> { - k.replace(Regex("type_: String")) { _ -> - imports = "import $ROOT_PACKAGE${CUSTOM_DATATYPES_PACKAGE}ListingType\n$imports" - "type_: ListingType" - } + "GetModlog" -> { + k.replace(Regex("type_: String")) { _ -> + imports = "import $ROOT_PACKAGE${CUSTOM_DATATYPES_PACKAGE}ModlogActionType\n$imports" + "type_: ModlogActionType" } } - if (fileName == "GetComments" || fileName == "GetPersonMentions" || fileName == "GetReplies") { - k.replace(Regex("sort: String")) { _ -> - imports = "import $ROOT_PACKAGE${CUSTOM_DATATYPES_PACKAGE}CommentSortType\n$imports" - "sort: CommentSortType" - } - } else { - k.replace(Regex("sort: String")) { _ -> - imports = "import $ROOT_PACKAGE${CUSTOM_DATATYPES_PACKAGE}SortType\n$imports" - "sort: SortType" - }.replace(Regex("sort_type: String")) { _ -> - imports = "import $ROOT_PACKAGE${CUSTOM_DATATYPES_PACKAGE}SortType\n$imports" - "sort_type: SortType" + else -> { + k.replace(Regex("type_: String")) { _ -> + imports = "import $ROOT_PACKAGE${CUSTOM_DATATYPES_PACKAGE}ListingType\n$imports" + "type_: ListingType" + } } } - .replace(Regex("registration_mode: String")) { _ -> - imports = "import $ROOT_PACKAGE${CUSTOM_DATATYPES_PACKAGE}RegistrationMode\n$imports" - "registration_mode: RegistrationMode" - } - .replace(Regex("subscribed: String")) { _ -> - imports = "import $ROOT_PACKAGE${CUSTOM_DATATYPES_PACKAGE}SubscribedType\n$imports" - "subscribed: SubscribedType" - } - .replace(Regex("feature_type: String")) { _ -> - imports = "import $ROOT_PACKAGE${CUSTOM_DATATYPES_PACKAGE}PostFeatureType\n$imports" - "feature_type: PostFeatureType" - } - .replace(Regex("post_listing_mode: String")) { _ -> - imports = "import $ROOT_PACKAGE${CUSTOM_DATATYPES_PACKAGE}PostListingMode\n$imports" - "post_listing_mode: PostListingMode" - } + + if (fileName == "GetComments" || fileName == "GetPersonMentions" || fileName == "GetReplies") { + k.replace(Regex("sort: String")) { _ -> + imports = "import $ROOT_PACKAGE${CUSTOM_DATATYPES_PACKAGE}CommentSortType\n$imports" + "sort: CommentSortType" + } + } else { + k.replace(Regex("sort: String")) { _ -> + imports = "import $ROOT_PACKAGE${CUSTOM_DATATYPES_PACKAGE}SortType\n$imports" + "sort: SortType" + }.replace(Regex("sort_type: String")) { _ -> + imports = "import $ROOT_PACKAGE${CUSTOM_DATATYPES_PACKAGE}SortType\n$imports" + "sort_type: SortType" + } } + .replace(Regex("registration_mode: String")) { _ -> + imports = "import $ROOT_PACKAGE${CUSTOM_DATATYPES_PACKAGE}RegistrationMode\n$imports" + "registration_mode: RegistrationMode" + } + .replace(Regex("subscribed: String")) { _ -> + imports = "import $ROOT_PACKAGE${CUSTOM_DATATYPES_PACKAGE}SubscribedType\n$imports" + "subscribed: SubscribedType" + } + .replace(Regex("feature_type: String")) { _ -> + imports = "import $ROOT_PACKAGE${CUSTOM_DATATYPES_PACKAGE}PostFeatureType\n$imports" + "feature_type: PostFeatureType" + } + .replace(Regex("post_listing_mode: String")) { _ -> + imports = "import $ROOT_PACKAGE${CUSTOM_DATATYPES_PACKAGE}PostListingMode\n$imports" + "post_listing_mode: PostListingMode" + } + } - if (imports != "") { - f.appendText("\n") - f.appendText(imports) - } + if (imports != "") { + f.appendText("\n") + f.appendText(imports) + } - f.appendText(lines.joinToString("\n")) + f.appendText(lines.joinToString("\n")) - // Must end in a newline to pass formatter - if (lines.last() != "" && lines.last() != "\r") { - f.appendText("\n") - } + // Must end in a newline to pass formatter + if (lines.last() != "" && lines.last() != "\r") { + f.appendText("\n") } + typeFile.delete() } - - dest.deleteRecursively() } + + dest.deleteRecursively() temp.deleteRecursively() + println("Finished!") } -suspend fun main() { - downloadTypes("0.19.11-donation-dialog.1", "v0/x19/x11") +fun main() { + downloadTypes("1.0.0-community-reports.0", "v1/x0/x0") + exitProcess(0) } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ActivityId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ActivityId.kt new file mode 100644 index 00000000..8e4c2420 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ActivityId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +typealias ActivityId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AddAdmin.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AddAdmin.kt new file mode 100644 index 00000000..c2c02db1 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AddAdmin.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class AddAdmin( + val person_id: PersonId, + val added: Boolean, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AddAdminResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AddAdminResponse.kt new file mode 100644 index 00000000..f68224ee --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AddAdminResponse.kt @@ -0,0 +1,8 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class AddAdminResponse( + val admins: List, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AddModToCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AddModToCommunity.kt new file mode 100644 index 00000000..97293073 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AddModToCommunity.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class AddModToCommunity( + val community_id: CommunityId, + val person_id: PersonId, + val added: Boolean, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AddModToCommunityResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AddModToCommunityResponse.kt new file mode 100644 index 00000000..c421c6ad --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AddModToCommunityResponse.kt @@ -0,0 +1,8 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class AddModToCommunityResponse( + val moderators: List, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAllowInstance.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAllowInstance.kt new file mode 100644 index 00000000..c7702e50 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAllowInstance.kt @@ -0,0 +1,13 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class AdminAllowInstance( + val id: AdminAllowInstanceId, + val instance_id: InstanceId, + val admin_person_id: PersonId, + val allowed: Boolean, + val reason: String? = null, + val published: String, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAllowInstanceId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAllowInstanceId.kt new file mode 100644 index 00000000..7b80e6c5 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAllowInstanceId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +typealias AdminAllowInstanceId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAllowInstanceParams.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAllowInstanceParams.kt new file mode 100644 index 00000000..a5b09041 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAllowInstanceParams.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class AdminAllowInstanceParams( + val instance: String, + val allow: Boolean, + val reason: String? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAllowInstanceView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAllowInstanceView.kt new file mode 100644 index 00000000..4b447608 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAllowInstanceView.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class AdminAllowInstanceView( + val admin_allow_instance: AdminAllowInstance, + val instance: Instance, + val admin: Person? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBlockInstance.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBlockInstance.kt new file mode 100644 index 00000000..64cc4654 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBlockInstance.kt @@ -0,0 +1,14 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class AdminBlockInstance( + val id: AdminBlockInstanceId, + val instance_id: InstanceId, + val admin_person_id: PersonId, + val blocked: Boolean, + val reason: String? = null, + val expires: String? = null, + val published: String, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBlockInstanceId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBlockInstanceId.kt new file mode 100644 index 00000000..a73b4cba --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBlockInstanceId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +typealias AdminBlockInstanceId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBlockInstanceParams.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBlockInstanceParams.kt new file mode 100644 index 00000000..2a51c34b --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBlockInstanceParams.kt @@ -0,0 +1,11 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class AdminBlockInstanceParams( + val instance: String, + val block: Boolean, + val reason: String? = null, + val expires: String? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBlockInstanceView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBlockInstanceView.kt new file mode 100644 index 00000000..9d4b4987 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBlockInstanceView.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class AdminBlockInstanceView( + val admin_block_instance: AdminBlockInstance, + val instance: Instance, + val admin: Person? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeComment.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeComment.kt new file mode 100644 index 00000000..52f610ae --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeComment.kt @@ -0,0 +1,12 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class AdminPurgeComment( + val id: AdminPurgeCommentId, + val admin_person_id: PersonId, + val post_id: PostId, + val reason: String? = null, + val published: String, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeCommentId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeCommentId.kt new file mode 100644 index 00000000..413e71aa --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeCommentId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +typealias AdminPurgeCommentId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeCommentView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeCommentView.kt new file mode 100644 index 00000000..9dd3f532 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeCommentView.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class AdminPurgeCommentView( + val admin_purge_comment: AdminPurgeComment, + val admin: Person? = null, + val post: Post, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeCommunity.kt new file mode 100644 index 00000000..614db106 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeCommunity.kt @@ -0,0 +1,11 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class AdminPurgeCommunity( + val id: AdminPurgeCommunityId, + val admin_person_id: PersonId, + val reason: String? = null, + val published: String, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeCommunityId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeCommunityId.kt new file mode 100644 index 00000000..0148683b --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeCommunityId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +typealias AdminPurgeCommunityId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeCommunityView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeCommunityView.kt new file mode 100644 index 00000000..8dcbb965 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeCommunityView.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class AdminPurgeCommunityView( + val admin_purge_community: AdminPurgeCommunity, + val admin: Person? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePerson.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePerson.kt new file mode 100644 index 00000000..b237a4b4 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePerson.kt @@ -0,0 +1,11 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class AdminPurgePerson( + val id: AdminPurgePersonId, + val admin_person_id: PersonId, + val reason: String? = null, + val published: String, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePersonId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePersonId.kt new file mode 100644 index 00000000..897ec0ee --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePersonId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +typealias AdminPurgePersonId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePersonView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePersonView.kt new file mode 100644 index 00000000..847ae742 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePersonView.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class AdminPurgePersonView( + val admin_purge_person: AdminPurgePerson, + val admin: Person? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePost.kt new file mode 100644 index 00000000..9d1982b8 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePost.kt @@ -0,0 +1,12 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class AdminPurgePost( + val id: AdminPurgePostId, + val admin_person_id: PersonId, + val community_id: CommunityId, + val reason: String? = null, + val published: String, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePostId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePostId.kt new file mode 100644 index 00000000..45a1dbb9 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePostId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +typealias AdminPurgePostId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePostView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePostView.kt new file mode 100644 index 00000000..a09c9ae2 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePostView.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class AdminPurgePostView( + val admin_purge_post: AdminPurgePost, + val admin: Person? = null, + val community: Community, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ApproveCommunityPendingFollower.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ApproveCommunityPendingFollower.kt new file mode 100644 index 00000000..5d476163 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ApproveCommunityPendingFollower.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ApproveCommunityPendingFollower( + val community_id: CommunityId, + val follower_id: PersonId, + val approve: Boolean, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ApproveRegistrationApplication.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ApproveRegistrationApplication.kt new file mode 100644 index 00000000..b8a4ca72 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ApproveRegistrationApplication.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ApproveRegistrationApplication( + val id: RegistrationApplicationId, + val approve: Boolean, + val deny_reason: String? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AuthenticateWithOauth.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AuthenticateWithOauth.kt new file mode 100644 index 00000000..7dfaa907 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AuthenticateWithOauth.kt @@ -0,0 +1,14 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class AuthenticateWithOauth( + val code: String, + val oauth_provider_id: OAuthProviderId, + val redirect_uri: String, + val show_nsfw: Boolean? = null, + val username: String? = null, + val answer: String? = null, + val pkce_code_verifier: String? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BanFromCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BanFromCommunity.kt new file mode 100644 index 00000000..53d5fd93 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BanFromCommunity.kt @@ -0,0 +1,13 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class BanFromCommunity( + val community_id: CommunityId, + val person_id: PersonId, + val ban: Boolean, + val remove_or_restore_data: Boolean? = null, + val reason: String? = null, + val expires: Long? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BanFromCommunityResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BanFromCommunityResponse.kt new file mode 100644 index 00000000..7a8f4ed7 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BanFromCommunityResponse.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class BanFromCommunityResponse( + val person_view: PersonView, + val banned: Boolean, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BanPerson.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BanPerson.kt new file mode 100644 index 00000000..706b15d5 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BanPerson.kt @@ -0,0 +1,12 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class BanPerson( + val person_id: PersonId, + val ban: Boolean, + val remove_or_restore_data: Boolean? = null, + val reason: String? = null, + val expires: Long? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BanPersonResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BanPersonResponse.kt new file mode 100644 index 00000000..24872c7a --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BanPersonResponse.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class BanPersonResponse( + val person_view: PersonView, + val banned: Boolean, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BannedPersonsResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BannedPersonsResponse.kt new file mode 100644 index 00000000..9b16f5ea --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BannedPersonsResponse.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class BannedPersonsResponse( + val banned: List, + val next_page: PaginationCursor? = null, + val prev_page: PaginationCursor? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BlockCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BlockCommunity.kt new file mode 100644 index 00000000..2d069d19 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BlockCommunity.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class BlockCommunity( + val community_id: CommunityId, + val block: Boolean, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BlockCommunityResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BlockCommunityResponse.kt new file mode 100644 index 00000000..37e100c6 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BlockCommunityResponse.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class BlockCommunityResponse( + val community_view: CommunityView, + val blocked: Boolean, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BlockPerson.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BlockPerson.kt new file mode 100644 index 00000000..40e44e7e --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BlockPerson.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class BlockPerson( + val person_id: PersonId, + val block: Boolean, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BlockPersonResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BlockPersonResponse.kt new file mode 100644 index 00000000..64d5f0e0 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BlockPersonResponse.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class BlockPersonResponse( + val person_view: PersonView, + val blocked: Boolean, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CaptchaResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CaptchaResponse.kt new file mode 100644 index 00000000..b18f588e --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CaptchaResponse.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class CaptchaResponse( + val png: String, + val wav: String, + val uuid: String, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ChangePassword.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ChangePassword.kt new file mode 100644 index 00000000..fb101837 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ChangePassword.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ChangePassword( + val new_password: SensitiveString, + val new_password_verify: SensitiveString, + val old_password: SensitiveString, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Comment.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Comment.kt new file mode 100644 index 00000000..e4e44146 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Comment.kt @@ -0,0 +1,27 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class Comment( + val id: CommentId, + val creator_id: PersonId, + val post_id: PostId, + val content: String, + val removed: Boolean, + val published: String, + val updated: String? = null, + val deleted: Boolean, + val ap_id: DbUrl, + val local: Boolean, + val path: String, + val distinguished: Boolean, + val language_id: LanguageId, + val score: Long, + val upvotes: Long, + val downvotes: Long, + val child_count: Long, + val report_count: Long, + val unresolved_report_count: Long, + val federation_pending: Boolean, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentActions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentActions.kt new file mode 100644 index 00000000..ddb679f8 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentActions.kt @@ -0,0 +1,12 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class CommentActions( + val person_id: PersonId, + val comment_id: CommentId, + val like_score: Long? = null, + val liked: String? = null, + val saved: String? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentId.kt new file mode 100644 index 00000000..b40aedc2 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +typealias CommentId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReply.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReply.kt new file mode 100644 index 00000000..be66ae9c --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReply.kt @@ -0,0 +1,12 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class CommentReply( + val id: CommentReplyId, + val recipient_id: PersonId, + val comment_id: CommentId, + val read: Boolean, + val published: String, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReplyId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReplyId.kt new file mode 100644 index 00000000..73319aca --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReplyId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +typealias CommentReplyId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReplyView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReplyView.kt new file mode 100644 index 00000000..f0a822e8 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReplyView.kt @@ -0,0 +1,24 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class CommentReplyView( + val comment_reply: CommentReply, + val recipient: Person, + val comment: Comment, + val creator: Person, + val post: Post, + val community: Community, + val community_actions: CommunityActions? = null, + val comment_actions: CommentActions? = null, + val person_actions: PersonActions? = null, + val instance_actions: InstanceActions? = null, + val creator_home_instance_actions: InstanceActions? = null, + val creator_local_instance_actions: InstanceActions? = null, + val creator_community_actions: CommunityActions? = null, + val creator_is_admin: Boolean, + val post_tags: TagsView, + val can_mod: Boolean, + val creator_banned: Boolean, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReport.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReport.kt new file mode 100644 index 00000000..e69891f8 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReport.kt @@ -0,0 +1,17 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class CommentReport( + val id: CommentReportId, + val creator_id: PersonId, + val comment_id: CommentId, + val original_comment_text: String, + val reason: String, + val resolved: Boolean, + val resolver_id: PersonId? = null, + val published: String, + val updated: String? = null, + val violates_instance_rules: Boolean, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReportId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReportId.kt new file mode 100644 index 00000000..42a66594 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReportId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +typealias CommentReportId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReportResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReportResponse.kt new file mode 100644 index 00000000..f4eae132 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReportResponse.kt @@ -0,0 +1,8 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class CommentReportResponse( + val comment_report_view: CommentReportView, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReportView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReportView.kt new file mode 100644 index 00000000..53e91d4c --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReportView.kt @@ -0,0 +1,19 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class CommentReportView( + val comment_report: CommentReport, + val comment: Comment, + val post: Post, + val community: Community, + val creator: Person, + val comment_creator: Person, + val comment_actions: CommentActions? = null, + val resolver: Person? = null, + val creator_community_actions: CommunityActions? = null, + val person_actions: PersonActions? = null, + val community_actions: CommunityActions? = null, + val creator_is_admin: Boolean, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentResponse.kt new file mode 100644 index 00000000..9b892eb6 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentResponse.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class CommentResponse( + val comment_view: CommentView, + val recipient_ids: List, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentSlimView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentSlimView.kt new file mode 100644 index 00000000..817e2333 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentSlimView.kt @@ -0,0 +1,18 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class CommentSlimView( + val comment: Comment, + val creator: Person, + val comment_actions: CommentActions? = null, + val person_actions: PersonActions? = null, + val creator_community_actions: CommunityActions? = null, + val instance_actions: InstanceActions? = null, + val creator_home_instance_actions: InstanceActions? = null, + val creator_local_instance_actions: InstanceActions? = null, + val creator_is_admin: Boolean, + val can_mod: Boolean, + val creator_banned: Boolean, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentView.kt new file mode 100644 index 00000000..5a9a79a1 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentView.kt @@ -0,0 +1,22 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class CommentView( + val comment: Comment, + val creator: Person, + val post: Post, + val community: Community, + val community_actions: CommunityActions? = null, + val comment_actions: CommentActions? = null, + val person_actions: PersonActions? = null, + val instance_actions: InstanceActions? = null, + val creator_home_instance_actions: InstanceActions? = null, + val creator_local_instance_actions: InstanceActions? = null, + val creator_community_actions: CommunityActions? = null, + val creator_is_admin: Boolean, + val post_tags: TagsView, + val can_mod: Boolean, + val creator_banned: Boolean, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Community.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Community.kt new file mode 100644 index 00000000..1ea40d76 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Community.kt @@ -0,0 +1,35 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class Community( + val id: CommunityId, + val name: String, + val title: String, + val sidebar: String? = null, + val removed: Boolean, + val published: String, + val updated: String? = null, + val deleted: Boolean, + val nsfw: Boolean, + val ap_id: DbUrl, + val local: Boolean, + val icon: DbUrl? = null, + val banner: DbUrl? = null, + val posting_restricted_to_mods: Boolean, + val instance_id: InstanceId, + val visibility: String /* "Public" | "Unlisted" | "LocalOnlyPublic" | "LocalOnlyPrivate" | "Private" */, + val description: String? = null, + val subscribers: Long, + val posts: Long, + val comments: Long, + val users_active_day: Long, + val users_active_week: Long, + val users_active_month: Long, + val users_active_half_year: Long, + val subscribers_local: Long, + val report_count: Long, + val unresolved_report_count: Long, + val local_removed: Boolean, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityActions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityActions.kt new file mode 100644 index 00000000..a3a0f0cd --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityActions.kt @@ -0,0 +1,16 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class CommunityActions( + val community_id: CommunityId, + val person_id: PersonId, + val followed: String? = null, + val follow_state: String? /* "Accepted" | "Pending" | "ApprovalRequired" */ = null, + val follow_approver_id: PersonId? = null, + val blocked: String? = null, + val became_moderator: String? = null, + val received_ban: String? = null, + val ban_expires: String? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityFollowerView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityFollowerView.kt new file mode 100644 index 00000000..0247a074 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityFollowerView.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class CommunityFollowerView( + val community: Community, + val follower: Person, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityId.kt new file mode 100644 index 00000000..70d08586 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +typealias CommunityId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityModeratorView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityModeratorView.kt new file mode 100644 index 00000000..20a174fa --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityModeratorView.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class CommunityModeratorView( + val community: Community, + val moderator: Person, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityReport.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityReport.kt new file mode 100644 index 00000000..a915e3f1 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityReport.kt @@ -0,0 +1,21 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class CommunityReport( + val id: CommunityReportId, + val creator_id: PersonId, + val community_id: CommunityId, + val original_community_name: String, + val original_community_title: String, + val original_community_description: String? = null, + val original_community_sidebar: String? = null, + val original_community_icon: String? = null, + val original_community_banner: String? = null, + val reason: String, + val resolved: Boolean, + val resolver_id: PersonId? = null, + val published: String, + val updated: String? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityReportId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityReportId.kt new file mode 100644 index 00000000..b32cc617 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityReportId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +typealias CommunityReportId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityReportResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityReportResponse.kt new file mode 100644 index 00000000..377adb3f --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityReportResponse.kt @@ -0,0 +1,8 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class CommunityReportResponse( + val community_report_view: CommunityReportView, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityReportView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityReportView.kt new file mode 100644 index 00000000..8d3d3bb8 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityReportView.kt @@ -0,0 +1,11 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class CommunityReportView( + val community_report: CommunityReport, + val community: Community, + val creator: Person, + val resolver: Person? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityResponse.kt new file mode 100644 index 00000000..a37acd22 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityResponse.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class CommunityResponse( + val community_view: CommunityView, + val discussion_languages: List, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityView.kt new file mode 100644 index 00000000..8e94593c --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityView.kt @@ -0,0 +1,12 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class CommunityView( + val community: Community, + val community_actions: CommunityActions? = null, + val instance_actions: InstanceActions? = null, + val can_mod: Boolean, + val post_tags: TagsView, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateComment.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateComment.kt new file mode 100644 index 00000000..0e07daa7 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateComment.kt @@ -0,0 +1,11 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class CreateComment( + val content: String, + val post_id: PostId, + val parent_id: CommentId? = null, + val language_id: LanguageId? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCommentLike.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCommentLike.kt new file mode 100644 index 00000000..4cdf4cd8 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCommentLike.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class CreateCommentLike( + val comment_id: CommentId, + val score: Long, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCommentReport.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCommentReport.kt new file mode 100644 index 00000000..016877aa --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCommentReport.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class CreateCommentReport( + val comment_id: CommentId, + val reason: String, + val violates_instance_rules: Boolean? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCommunity.kt new file mode 100644 index 00000000..2b8dd3ed --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCommunity.kt @@ -0,0 +1,17 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class CreateCommunity( + val name: String, + val title: String, + val sidebar: String? = null, + val description: String? = null, + val icon: String? = null, + val banner: String? = null, + val nsfw: Boolean? = null, + val posting_restricted_to_mods: Boolean? = null, + val discussion_languages: List? = null, + val visibility: String? /* "Public" | "Unlisted" | "LocalOnlyPublic" | "LocalOnlyPrivate" | "Private" */ = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCommunityReport.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCommunityReport.kt new file mode 100644 index 00000000..8528ea66 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCommunityReport.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class CreateCommunityReport( + val community_id: CommunityId, + val reason: String, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCommunityTag.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCommunityTag.kt new file mode 100644 index 00000000..c09469a1 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCommunityTag.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class CreateCommunityTag( + val community_id: CommunityId, + val display_name: String, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCustomEmoji.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCustomEmoji.kt new file mode 100644 index 00000000..e5d4aeda --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCustomEmoji.kt @@ -0,0 +1,12 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class CreateCustomEmoji( + val category: String, + val shortcode: String, + val image_url: String, + val alt_text: String, + val keywords: List, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateOAuthProvider.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateOAuthProvider.kt new file mode 100644 index 00000000..11598fc3 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateOAuthProvider.kt @@ -0,0 +1,20 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class CreateOAuthProvider( + val display_name: String, + val issuer: String, + val authorization_endpoint: String, + val token_endpoint: String, + val userinfo_endpoint: String, + val id_claim: String, + val client_id: String, + val client_secret: String, + val scopes: String, + val auto_verify_email: Boolean? = null, + val account_linking_enabled: Boolean? = null, + val use_pkce: Boolean? = null, + val enabled: Boolean? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreatePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreatePost.kt new file mode 100644 index 00000000..bd3d9a53 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreatePost.kt @@ -0,0 +1,18 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class CreatePost( + val name: String, + val community_id: CommunityId, + val url: String? = null, + val body: String? = null, + val alt_text: String? = null, + val honeypot: String? = null, + val nsfw: Boolean? = null, + val language_id: LanguageId? = null, + val custom_thumbnail: String? = null, + val tags: List? = null, + val scheduled_publish_time: Long? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreatePostLike.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreatePostLike.kt new file mode 100644 index 00000000..8fbee602 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreatePostLike.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class CreatePostLike( + val post_id: PostId, + val score: Long, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreatePostReport.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreatePostReport.kt new file mode 100644 index 00000000..fca01d26 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreatePostReport.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class CreatePostReport( + val post_id: PostId, + val reason: String, + val violates_instance_rules: Boolean? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreatePrivateMessage.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreatePrivateMessage.kt new file mode 100644 index 00000000..7d9b0b19 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreatePrivateMessage.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class CreatePrivateMessage( + val content: String, + val recipient_id: PersonId, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreatePrivateMessageReport.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreatePrivateMessageReport.kt new file mode 100644 index 00000000..7950d63d --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreatePrivateMessageReport.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class CreatePrivateMessageReport( + val private_message_id: PrivateMessageId, + val reason: String, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateSite.kt new file mode 100644 index 00000000..e914d782 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateSite.kt @@ -0,0 +1,55 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import it.vercruysse.lemmyapi.dto.RegistrationMode +import it.vercruysse.lemmyapi.dto.SortType +import it.vercruysse.lemmyapi.dto.SortType +import it.vercruysse.lemmyapi.dto.PostListingMode +import it.vercruysse.lemmyapi.dto.ListingType +import kotlinx.serialization.Serializable + +@Serializable +internal data class CreateSite( + val name: String, + val sidebar: String? = null, + val description: String? = null, + val community_creation_admin_only: Boolean? = null, + val require_email_verification: Boolean? = null, + val application_question: String? = null, + val private_instance: Boolean? = null, + val default_theme: String? = null, + val default_post_listing_type: ListingType? /* "All" | "Local" | "Subscribed" | "ModeratorView" */ = null, + val default_post_listing_mode: PostListingMode? /* "List" | "Card" | "SmallCard" */ = null, + val default_post_sort_type: SortType? /* "Active" | "Hot" | "New" | "Old" | "Top" | "MostComments" | "NewComments" | "Controversial" | "Scaled" */ = null, + val default_post_time_range_seconds: Long? = null, + val default_comment_sort_type: SortType? /* "Hot" | "Top" | "New" | "Old" | "Controversial" */ = null, + val legal_information: String? = null, + val application_email_admins: Boolean? = null, + val hide_modlog_mod_names: Boolean? = null, + val discussion_languages: List? = null, + val slur_filter_regex: String? = null, + val actor_name_max_length: Long? = null, + val rate_limit_message: Long? = null, + val rate_limit_message_per_second: Long? = null, + val rate_limit_post: Long? = null, + val rate_limit_post_per_second: Long? = null, + val rate_limit_register: Long? = null, + val rate_limit_register_per_second: Long? = null, + val rate_limit_image: Long? = null, + val rate_limit_image_per_second: Long? = null, + val rate_limit_comment: Long? = null, + val rate_limit_comment_per_second: Long? = null, + val rate_limit_search: Long? = null, + val rate_limit_search_per_second: Long? = null, + val federation_enabled: Boolean? = null, + val captcha_enabled: Boolean? = null, + val captcha_difficulty: String? = null, + val registration_mode: RegistrationMode? /* "Closed" | "RequireApplication" | "Open" */ = null, + val oauth_registration: Boolean? = null, + val content_warning: String? = null, + val post_upvotes: String? /* "All" | "Local" | "Disable" */ = null, + val post_downvotes: String? /* "All" | "Local" | "Disable" */ = null, + val comment_upvotes: String? /* "All" | "Local" | "Disable" */ = null, + val comment_downvotes: String? /* "All" | "Local" | "Disable" */ = null, + val disallow_nsfw_content: Boolean? = null, + val disable_email_notifications: Boolean? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateTagline.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateTagline.kt new file mode 100644 index 00000000..6922fb8f --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateTagline.kt @@ -0,0 +1,8 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class CreateTagline( + val content: String, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CustomEmoji.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CustomEmoji.kt new file mode 100644 index 00000000..2647f145 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CustomEmoji.kt @@ -0,0 +1,14 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class CustomEmoji( + val id: CustomEmojiId, + val shortcode: String, + val image_url: DbUrl, + val alt_text: String, + val category: String, + val published: String, + val updated: String? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CustomEmojiId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CustomEmojiId.kt new file mode 100644 index 00000000..6dc0d861 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CustomEmojiId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +typealias CustomEmojiId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CustomEmojiKeyword.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CustomEmojiKeyword.kt new file mode 100644 index 00000000..d727841b --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CustomEmojiKeyword.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class CustomEmojiKeyword( + val custom_emoji_id: CustomEmojiId, + val keyword: String, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CustomEmojiResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CustomEmojiResponse.kt new file mode 100644 index 00000000..daac001e --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CustomEmojiResponse.kt @@ -0,0 +1,8 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class CustomEmojiResponse( + val custom_emoji: CustomEmojiView, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CustomEmojiView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CustomEmojiView.kt new file mode 100644 index 00000000..5dbea9d1 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CustomEmojiView.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class CustomEmojiView( + val custom_emoji: CustomEmoji, + val keywords: List, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/DbUrl.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/DbUrl.kt new file mode 100644 index 00000000..5dd3a1a8 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/DbUrl.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +typealias DbUrl = String diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/DeleteAccount.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/DeleteAccount.kt new file mode 100644 index 00000000..f1c4affb --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/DeleteAccount.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class DeleteAccount( + val password: SensitiveString, + val delete_content: Boolean, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/DeleteComment.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/DeleteComment.kt new file mode 100644 index 00000000..5b697ab4 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/DeleteComment.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class DeleteComment( + val comment_id: CommentId, + val deleted: Boolean, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/DeleteCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/DeleteCommunity.kt new file mode 100644 index 00000000..bba8ac4b --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/DeleteCommunity.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class DeleteCommunity( + val community_id: CommunityId, + val deleted: Boolean, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/DeleteCommunityTag.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/DeleteCommunityTag.kt new file mode 100644 index 00000000..b9f6b9f8 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/DeleteCommunityTag.kt @@ -0,0 +1,8 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class DeleteCommunityTag( + val tag_id: TagId, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/DeleteCustomEmoji.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/DeleteCustomEmoji.kt new file mode 100644 index 00000000..a965e02f --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/DeleteCustomEmoji.kt @@ -0,0 +1,8 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class DeleteCustomEmoji( + val id: CustomEmojiId, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/DeleteImageParams.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/DeleteImageParams.kt new file mode 100644 index 00000000..36961a1f --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/DeleteImageParams.kt @@ -0,0 +1,8 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class DeleteImageParams( + val filename: String, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/DeleteOAuthProvider.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/DeleteOAuthProvider.kt new file mode 100644 index 00000000..25cdc745 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/DeleteOAuthProvider.kt @@ -0,0 +1,8 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class DeleteOAuthProvider( + val id: OAuthProviderId, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/DeletePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/DeletePost.kt new file mode 100644 index 00000000..4c3ccdbd --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/DeletePost.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class DeletePost( + val post_id: PostId, + val deleted: Boolean, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/DeletePrivateMessage.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/DeletePrivateMessage.kt new file mode 100644 index 00000000..b4893db5 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/DeletePrivateMessage.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class DeletePrivateMessage( + val private_message_id: PrivateMessageId, + val deleted: Boolean, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/DeleteTagline.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/DeleteTagline.kt new file mode 100644 index 00000000..e25c91e1 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/DeleteTagline.kt @@ -0,0 +1,8 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class DeleteTagline( + val id: TaglineId, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/DistinguishComment.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/DistinguishComment.kt new file mode 100644 index 00000000..8cf3e1f4 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/DistinguishComment.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class DistinguishComment( + val comment_id: CommentId, + val distinguished: Boolean, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditComment.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditComment.kt new file mode 100644 index 00000000..9f49b4f5 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditComment.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class EditComment( + val comment_id: CommentId, + val content: String? = null, + val language_id: LanguageId? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditCommunity.kt new file mode 100644 index 00000000..840bfc15 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditCommunity.kt @@ -0,0 +1,15 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class EditCommunity( + val community_id: CommunityId, + val title: String? = null, + val sidebar: String? = null, + val description: String? = null, + val nsfw: Boolean? = null, + val posting_restricted_to_mods: Boolean? = null, + val discussion_languages: List? = null, + val visibility: String? /* "Public" | "Unlisted" | "LocalOnlyPublic" | "LocalOnlyPrivate" | "Private" */ = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditCustomEmoji.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditCustomEmoji.kt new file mode 100644 index 00000000..52459c58 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditCustomEmoji.kt @@ -0,0 +1,12 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class EditCustomEmoji( + val id: CustomEmojiId, + val category: String, + val image_url: String, + val alt_text: String, + val keywords: List, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditOAuthProvider.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditOAuthProvider.kt new file mode 100644 index 00000000..504048dd --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditOAuthProvider.kt @@ -0,0 +1,19 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class EditOAuthProvider( + val id: OAuthProviderId, + val display_name: String? = null, + val authorization_endpoint: String? = null, + val token_endpoint: String? = null, + val userinfo_endpoint: String? = null, + val id_claim: String? = null, + val client_secret: String? = null, + val scopes: String? = null, + val auto_verify_email: Boolean? = null, + val account_linking_enabled: Boolean? = null, + val use_pkce: Boolean? = null, + val enabled: Boolean? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditPost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditPost.kt new file mode 100644 index 00000000..3d71f396 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditPost.kt @@ -0,0 +1,17 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class EditPost( + val post_id: PostId, + val name: String? = null, + val url: String? = null, + val body: String? = null, + val alt_text: String? = null, + val nsfw: Boolean? = null, + val language_id: LanguageId? = null, + val custom_thumbnail: String? = null, + val scheduled_publish_time: Long? = null, + val tags: List? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditPrivateMessage.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditPrivateMessage.kt new file mode 100644 index 00000000..e6c5246a --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditPrivateMessage.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class EditPrivateMessage( + val private_message_id: PrivateMessageId, + val content: String, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditSite.kt new file mode 100644 index 00000000..1508986b --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditSite.kt @@ -0,0 +1,57 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import it.vercruysse.lemmyapi.dto.RegistrationMode +import it.vercruysse.lemmyapi.dto.SortType +import it.vercruysse.lemmyapi.dto.SortType +import it.vercruysse.lemmyapi.dto.PostListingMode +import it.vercruysse.lemmyapi.dto.ListingType +import kotlinx.serialization.Serializable + +@Serializable +internal data class EditSite( + val name: String? = null, + val sidebar: String? = null, + val description: String? = null, + val community_creation_admin_only: Boolean? = null, + val require_email_verification: Boolean? = null, + val application_question: String? = null, + val private_instance: Boolean? = null, + val default_theme: String? = null, + val default_post_listing_type: ListingType? /* "All" | "Local" | "Subscribed" | "ModeratorView" */ = null, + val default_post_listing_mode: PostListingMode? /* "List" | "Card" | "SmallCard" */ = null, + val default_post_sort_type: SortType? /* "Active" | "Hot" | "New" | "Old" | "Top" | "MostComments" | "NewComments" | "Controversial" | "Scaled" */ = null, + val default_post_time_range_seconds: Long? = null, + val default_comment_sort_type: SortType? /* "Hot" | "Top" | "New" | "Old" | "Controversial" */ = null, + val legal_information: String? = null, + val application_email_admins: Boolean? = null, + val hide_modlog_mod_names: Boolean? = null, + val discussion_languages: List? = null, + val slur_filter_regex: String? = null, + val actor_name_max_length: Long? = null, + val rate_limit_message: Long? = null, + val rate_limit_message_per_second: Long? = null, + val rate_limit_post: Long? = null, + val rate_limit_post_per_second: Long? = null, + val rate_limit_register: Long? = null, + val rate_limit_register_per_second: Long? = null, + val rate_limit_image: Long? = null, + val rate_limit_image_per_second: Long? = null, + val rate_limit_comment: Long? = null, + val rate_limit_comment_per_second: Long? = null, + val rate_limit_search: Long? = null, + val rate_limit_search_per_second: Long? = null, + val federation_enabled: Boolean? = null, + val captcha_enabled: Boolean? = null, + val captcha_difficulty: String? = null, + val blocked_urls: List? = null, + val registration_mode: RegistrationMode? /* "Closed" | "RequireApplication" | "Open" */ = null, + val reports_email_admins: Boolean? = null, + val content_warning: String? = null, + val oauth_registration: Boolean? = null, + val post_upvotes: String? /* "All" | "Local" | "Disable" */ = null, + val post_downvotes: String? /* "All" | "Local" | "Disable" */ = null, + val comment_upvotes: String? /* "All" | "Local" | "Disable" */ = null, + val comment_downvotes: String? /* "All" | "Local" | "Disable" */ = null, + val disallow_nsfw_content: Boolean? = null, + val disable_email_notifications: Boolean? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/FeaturePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/FeaturePost.kt new file mode 100644 index 00000000..5ce35d64 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/FeaturePost.kt @@ -0,0 +1,11 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import it.vercruysse.lemmyapi.dto.PostFeatureType +import kotlinx.serialization.Serializable + +@Serializable +internal data class FeaturePost( + val post_id: PostId, + val featured: Boolean, + val feature_type: PostFeatureType /* "Local" | "Community" */, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/FederatedInstances.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/FederatedInstances.kt new file mode 100644 index 00000000..e057f007 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/FederatedInstances.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class FederatedInstances( + val linked: List, + val allowed: List, + val blocked: List, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/FederationBlockList.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/FederationBlockList.kt new file mode 100644 index 00000000..a4006345 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/FederationBlockList.kt @@ -0,0 +1,11 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class FederationBlockList( + val instance_id: InstanceId, + val published: String, + val updated: String? = null, + val expires: String? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/FollowCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/FollowCommunity.kt new file mode 100644 index 00000000..080d0f72 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/FollowCommunity.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class FollowCommunity( + val community_id: CommunityId, + val follow: Boolean, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GenerateTotpSecretResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GenerateTotpSecretResponse.kt new file mode 100644 index 00000000..3a6f8f06 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GenerateTotpSecretResponse.kt @@ -0,0 +1,8 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class GenerateTotpSecretResponse( + val totp_secret_url: SensitiveString, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetCaptchaResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetCaptchaResponse.kt new file mode 100644 index 00000000..d787f0fa --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetCaptchaResponse.kt @@ -0,0 +1,8 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class GetCaptchaResponse( + val ok: CaptchaResponse? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetComment.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetComment.kt new file mode 100644 index 00000000..b19f2fcd --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetComment.kt @@ -0,0 +1,8 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class GetComment( + val id: CommentId, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetComments.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetComments.kt new file mode 100644 index 00000000..f021a2b3 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetComments.kt @@ -0,0 +1,22 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import it.vercruysse.lemmyapi.dto.CommentSortType +import it.vercruysse.lemmyapi.dto.ListingType +import kotlinx.serialization.Serializable + +@Serializable +internal data class GetComments( + val type_: ListingType? /* "All" | "Local" | "Subscribed" | "ModeratorView" */ = null, + val sort: CommentSortType? /* "Hot" | "Top" | "New" | "Old" | "Controversial" */ = null, + val time_range_seconds: Long? = null, + val max_depth: Long? = null, + val page_cursor: PaginationCursor? = null, + val page_back: Boolean? = null, + val limit: Long? = null, + val community_id: CommunityId? = null, + val community_name: String? = null, + val post_id: PostId? = null, + val parent_id: CommentId? = null, + val liked_only: Boolean? = null, + val disliked_only: Boolean? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetCommentsResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetCommentsResponse.kt new file mode 100644 index 00000000..bd21e883 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetCommentsResponse.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class GetCommentsResponse( + val comments: List, + val next_page: PaginationCursor? = null, + val prev_page: PaginationCursor? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetCommentsSlimResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetCommentsSlimResponse.kt new file mode 100644 index 00000000..59b2d2ac --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetCommentsSlimResponse.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class GetCommentsSlimResponse( + val comments: List, + val next_page: PaginationCursor? = null, + val prev_page: PaginationCursor? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetCommunity.kt new file mode 100644 index 00000000..be6c9071 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetCommunity.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class GetCommunity( + val id: CommunityId? = null, + val name: String? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetCommunityPendingFollowsCount.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetCommunityPendingFollowsCount.kt new file mode 100644 index 00000000..8dc46707 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetCommunityPendingFollowsCount.kt @@ -0,0 +1,8 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class GetCommunityPendingFollowsCount( + val community_id: CommunityId, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetCommunityPendingFollowsCountResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetCommunityPendingFollowsCountResponse.kt new file mode 100644 index 00000000..b37859b1 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetCommunityPendingFollowsCountResponse.kt @@ -0,0 +1,8 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class GetCommunityPendingFollowsCountResponse( + val count: Long, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetCommunityResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetCommunityResponse.kt new file mode 100644 index 00000000..0a3e430a --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetCommunityResponse.kt @@ -0,0 +1,11 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class GetCommunityResponse( + val community_view: CommunityView, + val site: Site? = null, + val moderators: List, + val discussion_languages: List, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetFederatedInstancesResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetFederatedInstancesResponse.kt new file mode 100644 index 00000000..72f8d6fc --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetFederatedInstancesResponse.kt @@ -0,0 +1,8 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class GetFederatedInstancesResponse( + val federated_instances: FederatedInstances? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetModlog.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetModlog.kt new file mode 100644 index 00000000..a992e716 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetModlog.kt @@ -0,0 +1,19 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import it.vercruysse.lemmyapi.dto.ListingType +import it.vercruysse.lemmyapi.dto.ModlogActionType +import kotlinx.serialization.Serializable + +@Serializable +internal data class GetModlog( + val mod_person_id: PersonId? = null, + val community_id: CommunityId? = null, + val type_: ModlogActionType? /* "All" | "ModRemovePost" | "ModLockPost" | "ModFeaturePost" | "ModRemoveComment" | "ModRemoveCommunity" | "ModBanFromCommunity" | "ModAddCommunity" | "ModTransferCommunity" | "ModAdd" | "ModBan" | "ModChangeCommunityVisibility" | "AdminPurgePerson" | "AdminPurgeCommunity" | "AdminPurgePost" | "AdminPurgeComment" | "AdminBlockInstance" | "AdminAllowInstance" */ = null, + val listing_type: ListingType? /* "All" | "Local" | "Subscribed" | "ModeratorView" */ = null, + val other_person_id: PersonId? = null, + val post_id: PostId? = null, + val comment_id: CommentId? = null, + val page_cursor: PaginationCursor? = null, + val page_back: Boolean? = null, + val limit: Long? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetModlogResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetModlogResponse.kt new file mode 100644 index 00000000..47a2b617 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetModlogResponse.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class GetModlogResponse( + val modlog: List, + val next_page: PaginationCursor? = null, + val prev_page: PaginationCursor? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetPersonDetails.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetPersonDetails.kt new file mode 100644 index 00000000..aa504e7f --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetPersonDetails.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class GetPersonDetails( + val person_id: PersonId? = null, + val username: String? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetPersonDetailsResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetPersonDetailsResponse.kt new file mode 100644 index 00000000..d87b4d33 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetPersonDetailsResponse.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class GetPersonDetailsResponse( + val person_view: PersonView, + val site: Site? = null, + val moderates: List, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetPost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetPost.kt new file mode 100644 index 00000000..6a0dca4f --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetPost.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class GetPost( + val id: PostId? = null, + val comment_id: CommentId? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetPostResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetPostResponse.kt new file mode 100644 index 00000000..07f153bf --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetPostResponse.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class GetPostResponse( + val post_view: PostView, + val community_view: CommunityView, + val cross_posts: List, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetPosts.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetPosts.kt new file mode 100644 index 00000000..c8aed619 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetPosts.kt @@ -0,0 +1,25 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import it.vercruysse.lemmyapi.dto.SortType +import it.vercruysse.lemmyapi.dto.ListingType +import kotlinx.serialization.Serializable + +@Serializable +internal data class GetPosts( + val type_: ListingType? /* "All" | "Local" | "Subscribed" | "ModeratorView" */ = null, + val sort: SortType? /* "Active" | "Hot" | "New" | "Old" | "Top" | "MostComments" | "NewComments" | "Controversial" | "Scaled" */ = null, + val time_range_seconds: Long? = null, + val community_id: CommunityId? = null, + val community_name: String? = null, + val liked_only: Boolean? = null, + val disliked_only: Boolean? = null, + val show_hidden: Boolean? = null, + val show_read: Boolean? = null, + val show_nsfw: Boolean? = null, + val hide_media: Boolean? = null, + val mark_as_read: Boolean? = null, + val no_comments_only: Boolean? = null, + val page_cursor: PaginationCursor? = null, + val page_back: Boolean? = null, + val limit: Long? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetPostsResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetPostsResponse.kt new file mode 100644 index 00000000..d8e38532 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetPostsResponse.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class GetPostsResponse( + val posts: List, + val next_page: PaginationCursor? = null, + val prev_page: PaginationCursor? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetRandomCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetRandomCommunity.kt new file mode 100644 index 00000000..12c97794 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetRandomCommunity.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import it.vercruysse.lemmyapi.dto.ListingType +import kotlinx.serialization.Serializable + +@Serializable +internal data class GetRandomCommunity( + val type_: ListingType? /* "All" | "Local" | "Subscribed" | "ModeratorView" */ = null, + val show_nsfw: Boolean? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetRegistrationApplication.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetRegistrationApplication.kt new file mode 100644 index 00000000..d0e0341d --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetRegistrationApplication.kt @@ -0,0 +1,8 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class GetRegistrationApplication( + val person_id: PersonId, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetReportCount.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetReportCount.kt new file mode 100644 index 00000000..f875770f --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetReportCount.kt @@ -0,0 +1,8 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class GetReportCount( + val community_id: CommunityId? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetReportCountResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetReportCountResponse.kt new file mode 100644 index 00000000..aae9a3c6 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetReportCountResponse.kt @@ -0,0 +1,8 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class GetReportCountResponse( + val count: Long, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetSiteMetadata.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetSiteMetadata.kt new file mode 100644 index 00000000..04a1187e --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetSiteMetadata.kt @@ -0,0 +1,8 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class GetSiteMetadata( + val url: String, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetSiteMetadataResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetSiteMetadataResponse.kt new file mode 100644 index 00000000..13ca3e0e --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetSiteMetadataResponse.kt @@ -0,0 +1,8 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class GetSiteMetadataResponse( + val metadata: LinkMetadata, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetSiteResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetSiteResponse.kt new file mode 100644 index 00000000..3852de89 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetSiteResponse.kt @@ -0,0 +1,18 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class GetSiteResponse( + val site_view: SiteView, + val admins: List, + val version: String, + val all_languages: List, + val discussion_languages: List, + val tagline: Tagline? = null, + val oauth_providers: List, + val admin_oauth_providers: List, + val blocked_urls: List, + val image_upload_disabled: Boolean, + val active_plugins: List, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetUnreadCountResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetUnreadCountResponse.kt new file mode 100644 index 00000000..39dcf2ba --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetUnreadCountResponse.kt @@ -0,0 +1,8 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class GetUnreadCountResponse( + val count: Long, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetUnreadRegistrationApplicationCountResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetUnreadRegistrationApplicationCountResponse.kt new file mode 100644 index 00000000..0dbd59e5 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetUnreadRegistrationApplicationCountResponse.kt @@ -0,0 +1,8 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class GetUnreadRegistrationApplicationCountResponse( + val registration_applications: Long, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/HideCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/HideCommunity.kt new file mode 100644 index 00000000..51049fe5 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/HideCommunity.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class HideCommunity( + val community_id: CommunityId, + val hidden: Boolean, + val reason: String? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/HidePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/HidePost.kt new file mode 100644 index 00000000..da94312e --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/HidePost.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class HidePost( + val post_id: PostId, + val hide: Boolean, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ImageDetails.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ImageDetails.kt new file mode 100644 index 00000000..a88f69ef --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ImageDetails.kt @@ -0,0 +1,12 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ImageDetails( + val link: DbUrl, + val width: Long, + val height: Long, + val content_type: String, + val blurhash: String? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ImageGetParams.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ImageGetParams.kt new file mode 100644 index 00000000..2600890d --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ImageGetParams.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ImageGetParams( + val file_type: String? = null, + val max_size: Long? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ImageProxyParams.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ImageProxyParams.kt new file mode 100644 index 00000000..fdf62867 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ImageProxyParams.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ImageProxyParams( + val url: String, + val file_type: String? = null, + val max_size: Long? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Instance.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Instance.kt new file mode 100644 index 00000000..7e608402 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Instance.kt @@ -0,0 +1,13 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class Instance( + val id: InstanceId, + val domain: String, + val published: String, + val updated: String? = null, + val software: String? = null, + val version: String? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/InstanceActions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/InstanceActions.kt new file mode 100644 index 00000000..7b57e3b1 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/InstanceActions.kt @@ -0,0 +1,12 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class InstanceActions( + val person_id: PersonId, + val instance_id: InstanceId, + val blocked: String? = null, + val received_ban: String? = null, + val ban_expires: String? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/InstanceId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/InstanceId.kt new file mode 100644 index 00000000..11fcceb5 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/InstanceId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +typealias InstanceId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/InstanceWithFederationState.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/InstanceWithFederationState.kt new file mode 100644 index 00000000..487557cc --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/InstanceWithFederationState.kt @@ -0,0 +1,14 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class InstanceWithFederationState( + val federation_state: ReadableFederationState? = null, + val id: InstanceId, + val domain: String, + val published: String, + val updated: String? = null, + val software: String? = null, + val version: String? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Language.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Language.kt new file mode 100644 index 00000000..ec9a1731 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Language.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class Language( + val id: LanguageId, + val code: String, + val name: String, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LanguageId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LanguageId.kt new file mode 100644 index 00000000..b6368d27 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LanguageId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +typealias LanguageId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LemmyErrorType.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LemmyErrorType.kt new file mode 100644 index 00000000..0f7dd646 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LemmyErrorType.kt @@ -0,0 +1,12 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +external internal data class `T$130`( + val reason: String? = null, +) + +external internal data class `T$162`( + val error: dynamic /* "InvalidCommunity" | "CannotCreatePostOrCommentInDeletedOrRemovedCommunity" | "CannotReceivePage" | "OnlyLocalAdminCanRemoveCommunity" | "OnlyLocalAdminCanRestoreCommunity" | "PostIsLocked" | `T$0`? | "InvalidVoteValue" | "PageDoesNotSpecifyCreator" | "CouldntGetComments" | "CouldntGetPosts" | "FederationDisabled" | `T$1`? | `T$2`? | "FederationDisabledByStrictAllowList" | "ContradictingFilters" | "UrlWithoutDomain" | "InboxTimeout" | "CantDeleteSite" | "ObjectIsNotPublic" | "ObjectIsNotPrivate" | "PlatformLackingPrivateCommunitySupport" | "Unreachable" */ = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LinkMetadata.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LinkMetadata.kt new file mode 100644 index 00000000..5615c38c --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LinkMetadata.kt @@ -0,0 +1,12 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class LinkMetadata( + val content_type: String? = null, + val title: String? = null, + val description: String? = null, + val image: DbUrl? = null, + val embed_video_url: DbUrl? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListBannedPersons.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListBannedPersons.kt new file mode 100644 index 00000000..554bc229 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListBannedPersons.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ListBannedPersons( + val page_cursor: PaginationCursor? = null, + val page_back: Boolean? = null, + val limit: Long? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommentLikes.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommentLikes.kt new file mode 100644 index 00000000..c44946f0 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommentLikes.kt @@ -0,0 +1,11 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ListCommentLikes( + val comment_id: CommentId, + val page_cursor: PaginationCursor? = null, + val page_back: Boolean? = null, + val limit: Long? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommentLikesResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommentLikesResponse.kt new file mode 100644 index 00000000..4c414960 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommentLikesResponse.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ListCommentLikesResponse( + val comment_likes: List, + val next_page: PaginationCursor? = null, + val prev_page: PaginationCursor? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommunities.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommunities.kt new file mode 100644 index 00000000..f2e5c519 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommunities.kt @@ -0,0 +1,16 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import it.vercruysse.lemmyapi.dto.SortType +import it.vercruysse.lemmyapi.dto.ListingType +import kotlinx.serialization.Serializable + +@Serializable +internal data class ListCommunities( + val type_: ListingType? /* "All" | "Local" | "Subscribed" | "ModeratorView" */ = null, + val sort: SortType? /* "ActiveSixMonths" | "ActiveMonthly" | "ActiveWeekly" | "ActiveDaily" | "Hot" | "New" | "Old" | "NameAsc" | "NameDesc" | "Comments" | "Posts" | "Subscribers" | "SubscribersLocal" */ = null, + val time_range_seconds: Long? = null, + val show_nsfw: Boolean? = null, + val page_cursor: PaginationCursor? = null, + val page_back: Boolean? = null, + val limit: Long? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommunitiesResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommunitiesResponse.kt new file mode 100644 index 00000000..30d712d6 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommunitiesResponse.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ListCommunitiesResponse( + val communities: List, + val next_page: PaginationCursor? = null, + val prev_page: PaginationCursor? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommunityPendingFollows.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommunityPendingFollows.kt new file mode 100644 index 00000000..d6bf00b7 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommunityPendingFollows.kt @@ -0,0 +1,12 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ListCommunityPendingFollows( + val pending_only: Boolean? = null, + val all_communities: Boolean? = null, + val page_cursor: PaginationCursor? = null, + val page_back: Boolean? = null, + val limit: Long? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommunityPendingFollowsResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommunityPendingFollowsResponse.kt new file mode 100644 index 00000000..917e6f41 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommunityPendingFollowsResponse.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ListCommunityPendingFollowsResponse( + val items: List, + val next_page: PaginationCursor? = null, + val prev_page: PaginationCursor? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCustomEmojis.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCustomEmojis.kt new file mode 100644 index 00000000..58947e78 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCustomEmojis.kt @@ -0,0 +1,8 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ListCustomEmojis( + val category: String? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCustomEmojisResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCustomEmojisResponse.kt new file mode 100644 index 00000000..64f6048b --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCustomEmojisResponse.kt @@ -0,0 +1,8 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ListCustomEmojisResponse( + val custom_emojis: List, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListInbox.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListInbox.kt new file mode 100644 index 00000000..fea15cac --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListInbox.kt @@ -0,0 +1,13 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import it.vercruysse.lemmyapi.dto.ListingType +import kotlinx.serialization.Serializable + +@Serializable +internal data class ListInbox( + val type_: ListingType? /* "All" | "CommentReply" | "CommentMention" | "PostMention" | "PrivateMessage" */ = null, + val unread_only: Boolean? = null, + val page_cursor: PaginationCursor? = null, + val page_back: Boolean? = null, + val limit: Long? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListInboxResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListInboxResponse.kt new file mode 100644 index 00000000..eeaec176 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListInboxResponse.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ListInboxResponse( + val inbox: List, + val next_page: PaginationCursor? = null, + val prev_page: PaginationCursor? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListLoginsResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListLoginsResponse.kt new file mode 100644 index 00000000..e59a28ac --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListLoginsResponse.kt @@ -0,0 +1,8 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ListLoginsResponse( + val logins: List, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListMedia.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListMedia.kt new file mode 100644 index 00000000..7ff104e6 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListMedia.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ListMedia( + val page_cursor: PaginationCursor? = null, + val page_back: Boolean? = null, + val limit: Long? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListMediaResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListMediaResponse.kt new file mode 100644 index 00000000..77650509 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListMediaResponse.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ListMediaResponse( + val images: List, + val next_page: PaginationCursor? = null, + val prev_page: PaginationCursor? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonContent.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonContent.kt new file mode 100644 index 00000000..3a063196 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonContent.kt @@ -0,0 +1,14 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import it.vercruysse.lemmyapi.dto.ListingType +import kotlinx.serialization.Serializable + +@Serializable +internal data class ListPersonContent( + val type_: ListingType? /* "All" | "Comments" | "Posts" */ = null, + val person_id: PersonId? = null, + val username: String? = null, + val page_cursor: PaginationCursor? = null, + val page_back: Boolean? = null, + val limit: Long? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonContentResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonContentResponse.kt new file mode 100644 index 00000000..ecfdb384 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonContentResponse.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ListPersonContentResponse( + val content: List, + val next_page: PaginationCursor? = null, + val prev_page: PaginationCursor? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonSaved.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonSaved.kt new file mode 100644 index 00000000..8a726d0e --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonSaved.kt @@ -0,0 +1,12 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import it.vercruysse.lemmyapi.dto.ListingType +import kotlinx.serialization.Serializable + +@Serializable +internal data class ListPersonSaved( + val type_: ListingType? /* "All" | "Comments" | "Posts" */ = null, + val page_cursor: PaginationCursor? = null, + val page_back: Boolean? = null, + val limit: Long? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonSavedResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonSavedResponse.kt new file mode 100644 index 00000000..39b527d7 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonSavedResponse.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ListPersonSavedResponse( + val saved: List, + val next_page: PaginationCursor? = null, + val prev_page: PaginationCursor? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPostLikes.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPostLikes.kt new file mode 100644 index 00000000..bd95e296 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPostLikes.kt @@ -0,0 +1,11 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ListPostLikes( + val post_id: PostId, + val page_cursor: PaginationCursor? = null, + val page_back: Boolean? = null, + val limit: Long? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPostLikesResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPostLikesResponse.kt new file mode 100644 index 00000000..340708a1 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPostLikesResponse.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ListPostLikesResponse( + val post_likes: List, + val next_page: PaginationCursor? = null, + val prev_page: PaginationCursor? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListRegistrationApplications.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListRegistrationApplications.kt new file mode 100644 index 00000000..d3a004ec --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListRegistrationApplications.kt @@ -0,0 +1,11 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ListRegistrationApplications( + val unread_only: Boolean? = null, + val page_cursor: PaginationCursor? = null, + val page_back: Boolean? = null, + val limit: Long? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListRegistrationApplicationsResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListRegistrationApplicationsResponse.kt new file mode 100644 index 00000000..46d81ce9 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListRegistrationApplicationsResponse.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ListRegistrationApplicationsResponse( + val registration_applications: List, + val next_page: PaginationCursor? = null, + val prev_page: PaginationCursor? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListReports.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListReports.kt new file mode 100644 index 00000000..e5126075 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListReports.kt @@ -0,0 +1,17 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import it.vercruysse.lemmyapi.dto.ListingType +import kotlinx.serialization.Serializable + +@Serializable +internal data class ListReports( + val unresolved_only: Boolean? = null, + val type_: ListingType? /* "All" | "Posts" | "Comments" | "PrivateMessages" | "Communities" */ = null, + val post_id: PostId? = null, + val community_id: CommunityId? = null, + val page_cursor: PaginationCursor? = null, + val page_back: Boolean? = null, + val limit: Long? = null, + val show_community_rule_violations: Boolean? = null, + val my_reports_only: Boolean? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListReportsResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListReportsResponse.kt new file mode 100644 index 00000000..5479ce52 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListReportsResponse.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ListReportsResponse( + val reports: List, + val next_page: PaginationCursor? = null, + val prev_page: PaginationCursor? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListTaglines.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListTaglines.kt new file mode 100644 index 00000000..ac0564d0 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListTaglines.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ListTaglines( + val page_cursor: PaginationCursor? = null, + val page_back: Boolean? = null, + val limit: Long? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListTaglinesResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListTaglinesResponse.kt new file mode 100644 index 00000000..217e2677 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListTaglinesResponse.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ListTaglinesResponse( + val taglines: List, + val next_page: PaginationCursor? = null, + val prev_page: PaginationCursor? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalImage.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalImage.kt new file mode 100644 index 00000000..591a5a1e --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalImage.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class LocalImage( + val local_user_id: LocalUserId? = null, + val pictrs_alias: String, + val published: String, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalImageView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalImageView.kt new file mode 100644 index 00000000..ac586bb8 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalImageView.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class LocalImageView( + val local_image: LocalImage, + val person: Person, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSite.kt new file mode 100644 index 00000000..3698d6ee --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSite.kt @@ -0,0 +1,53 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import it.vercruysse.lemmyapi.dto.SortType +import it.vercruysse.lemmyapi.dto.SortType +import it.vercruysse.lemmyapi.dto.PostListingMode +import it.vercruysse.lemmyapi.dto.RegistrationMode +import it.vercruysse.lemmyapi.dto.ListingType +import kotlinx.serialization.Serializable + +@Serializable +internal data class LocalSite( + val id: LocalSiteId, + val site_id: SiteId, + val site_setup: Boolean, + val community_creation_admin_only: Boolean, + val require_email_verification: Boolean, + val application_question: String? = null, + val private_instance: Boolean, + val default_theme: String, + val default_post_listing_type: ListingType /* "All" | "Local" | "Subscribed" | "ModeratorView" */, + val legal_information: String? = null, + val hide_modlog_mod_names: Boolean, + val application_email_admins: Boolean, + val slur_filter_regex: String? = null, + val actor_name_max_length: Long, + val federation_enabled: Boolean, + val captcha_enabled: Boolean, + val captcha_difficulty: String, + val published: String, + val updated: String? = null, + val registration_mode: RegistrationMode /* "Closed" | "RequireApplication" | "Open" */, + val reports_email_admins: Boolean, + val federation_signed_fetch: Boolean, + val default_post_listing_mode: PostListingMode /* "List" | "Card" | "SmallCard" */, + val default_post_sort_type: SortType /* "Active" | "Hot" | "New" | "Old" | "Top" | "MostComments" | "NewComments" | "Controversial" | "Scaled" */, + val default_comment_sort_type: SortType /* "Hot" | "Top" | "New" | "Old" | "Controversial" */, + val oauth_registration: Boolean, + val post_upvotes: String /* "All" | "Local" | "Disable" */, + val post_downvotes: String /* "All" | "Local" | "Disable" */, + val comment_upvotes: String /* "All" | "Local" | "Disable" */, + val comment_downvotes: String /* "All" | "Local" | "Disable" */, + val default_post_time_range_seconds: Long? = null, + val disallow_nsfw_content: Boolean, + val users: Long, + val posts: Long, + val comments: Long, + val communities: Long, + val users_active_day: Long, + val users_active_week: Long, + val users_active_month: Long, + val users_active_half_year: Long, + val disable_email_notifications: Boolean, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSiteId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSiteId.kt new file mode 100644 index 00000000..5c794834 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSiteId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +typealias LocalSiteId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSiteRateLimit.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSiteRateLimit.kt new file mode 100644 index 00000000..bd9aa8b3 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSiteRateLimit.kt @@ -0,0 +1,24 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class LocalSiteRateLimit( + val local_site_id: LocalSiteId, + val message: Long, + val message_per_second: Long, + val post: Long, + val post_per_second: Long, + val register: Long, + val register_per_second: Long, + val image: Long, + val image_per_second: Long, + val comment: Long, + val comment_per_second: Long, + val search: Long, + val search_per_second: Long, + val published: String, + val updated: String? = null, + val import_user_settings: Long, + val import_user_settings_per_second: Long, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSiteUrlBlocklist.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSiteUrlBlocklist.kt new file mode 100644 index 00000000..eba57ea2 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSiteUrlBlocklist.kt @@ -0,0 +1,11 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class LocalSiteUrlBlocklist( + val id: Long, + val url: String, + val published: String, + val updated: String? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUser.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUser.kt new file mode 100644 index 00000000..16b17024 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUser.kt @@ -0,0 +1,44 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import it.vercruysse.lemmyapi.dto.SortType +import it.vercruysse.lemmyapi.dto.PostListingMode +import it.vercruysse.lemmyapi.dto.ListingType +import it.vercruysse.lemmyapi.dto.SortType +import kotlinx.serialization.Serializable + +@Serializable +internal data class LocalUser( + val id: LocalUserId, + val person_id: PersonId, + val email: SensitiveString? = null, + val show_nsfw: Boolean, + val theme: String, + val default_post_sort_type: SortType /* "Active" | "Hot" | "New" | "Old" | "Top" | "MostComments" | "NewComments" | "Controversial" | "Scaled" */, + val default_listing_type: ListingType /* "All" | "Local" | "Subscribed" | "ModeratorView" */, + val interface_language: String, + val show_avatars: Boolean, + val send_notifications_to_email: Boolean, + val show_bot_accounts: Boolean, + val show_read_posts: Boolean, + val email_verified: Boolean, + val accepted_application: Boolean, + val open_links_in_new_tab: Boolean, + val blur_nsfw: Boolean, + val infinite_scroll_enabled: Boolean, + val admin: Boolean, + val post_listing_mode: PostListingMode /* "List" | "Card" | "SmallCard" */, + val totp_2fa_enabled: Boolean, + val enable_keyboard_navigation: Boolean, + val enable_animated_images: Boolean, + val enable_private_messages: Boolean, + val collapse_bot_comments: Boolean, + val default_comment_sort_type: SortType /* "Hot" | "Top" | "New" | "Old" | "Controversial" */, + val auto_mark_fetched_posts_as_read: Boolean, + val last_donation_notification: String, + val hide_media: Boolean, + val default_post_time_range_seconds: Long? = null, + val show_score: Boolean, + val show_upvotes: Boolean, + val show_downvotes: Boolean, + val show_upvote_percentage: Boolean, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUserId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUserId.kt new file mode 100644 index 00000000..6677edda --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUserId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +typealias LocalUserId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUserView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUserView.kt new file mode 100644 index 00000000..b792434a --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUserView.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class LocalUserView( + val local_user: LocalUser, + val person: Person, + val instance_actions: InstanceActions? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LockPost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LockPost.kt new file mode 100644 index 00000000..360ec3c9 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LockPost.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class LockPost( + val post_id: PostId, + val locked: Boolean, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Login.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Login.kt new file mode 100644 index 00000000..d5da4fb5 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Login.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class Login( + val username_or_email: SensitiveString, + val password: SensitiveString, + val totp_2fa_token: String? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LoginResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LoginResponse.kt new file mode 100644 index 00000000..8160ff0e --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LoginResponse.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class LoginResponse( + val jwt: SensitiveString? = null, + val registration_created: Boolean, + val verify_email_sent: Boolean, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LoginToken.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LoginToken.kt new file mode 100644 index 00000000..1c3b099c --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LoginToken.kt @@ -0,0 +1,11 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class LoginToken( + val user_id: LocalUserId, + val published: String, + val ip: String? = null, + val user_agent: String? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MarkCommentReplyAsRead.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MarkCommentReplyAsRead.kt new file mode 100644 index 00000000..b5ed47e9 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MarkCommentReplyAsRead.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class MarkCommentReplyAsRead( + val comment_reply_id: CommentReplyId, + val read: Boolean, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MarkManyPostsAsRead.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MarkManyPostsAsRead.kt new file mode 100644 index 00000000..23ff540e --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MarkManyPostsAsRead.kt @@ -0,0 +1,8 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class MarkManyPostsAsRead( + val post_ids: List, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MarkPersonCommentMentionAsRead.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MarkPersonCommentMentionAsRead.kt new file mode 100644 index 00000000..4d2781c9 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MarkPersonCommentMentionAsRead.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class MarkPersonCommentMentionAsRead( + val person_comment_mention_id: PersonCommentMentionId, + val read: Boolean, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MarkPersonPostMentionAsRead.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MarkPersonPostMentionAsRead.kt new file mode 100644 index 00000000..e369dc94 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MarkPersonPostMentionAsRead.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class MarkPersonPostMentionAsRead( + val person_post_mention_id: PersonPostMentionId, + val read: Boolean, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MarkPostAsRead.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MarkPostAsRead.kt new file mode 100644 index 00000000..22424884 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MarkPostAsRead.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class MarkPostAsRead( + val post_id: PostId, + val read: Boolean, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MarkPrivateMessageAsRead.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MarkPrivateMessageAsRead.kt new file mode 100644 index 00000000..374a3484 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MarkPrivateMessageAsRead.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class MarkPrivateMessageAsRead( + val private_message_id: PrivateMessageId, + val read: Boolean, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAdd.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAdd.kt new file mode 100644 index 00000000..3866031a --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAdd.kt @@ -0,0 +1,12 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ModAdd( + val id: ModAddId, + val mod_person_id: PersonId, + val other_person_id: PersonId, + val removed: Boolean, + val published: String, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddCommunity.kt new file mode 100644 index 00000000..099beaae --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddCommunity.kt @@ -0,0 +1,13 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ModAddCommunity( + val id: ModAddCommunityId, + val mod_person_id: PersonId, + val other_person_id: PersonId, + val community_id: CommunityId, + val removed: Boolean, + val published: String, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddCommunityId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddCommunityId.kt new file mode 100644 index 00000000..36628d6b --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddCommunityId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +typealias ModAddCommunityId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddCommunityView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddCommunityView.kt new file mode 100644 index 00000000..92de30d1 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddCommunityView.kt @@ -0,0 +1,11 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ModAddCommunityView( + val mod_add_community: ModAddCommunity, + val moderator: Person? = null, + val community: Community, + val other_person: Person, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddId.kt new file mode 100644 index 00000000..d047d14e --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +typealias ModAddId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddView.kt new file mode 100644 index 00000000..5fe282a8 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddView.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ModAddView( + val mod_add: ModAdd, + val moderator: Person? = null, + val other_person: Person, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBan.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBan.kt new file mode 100644 index 00000000..11119da9 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBan.kt @@ -0,0 +1,15 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ModBan( + val id: ModBanId, + val mod_person_id: PersonId, + val other_person_id: PersonId, + val reason: String? = null, + val banned: Boolean, + val expires: String? = null, + val published: String, + val instance_id: InstanceId, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanFromCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanFromCommunity.kt new file mode 100644 index 00000000..9ef1fadd --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanFromCommunity.kt @@ -0,0 +1,15 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ModBanFromCommunity( + val id: ModBanFromCommunityId, + val mod_person_id: PersonId, + val other_person_id: PersonId, + val community_id: CommunityId, + val reason: String? = null, + val banned: Boolean, + val expires: String? = null, + val published: String, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanFromCommunityId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanFromCommunityId.kt new file mode 100644 index 00000000..2af7819b --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanFromCommunityId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +typealias ModBanFromCommunityId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanFromCommunityView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanFromCommunityView.kt new file mode 100644 index 00000000..7640916f --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanFromCommunityView.kt @@ -0,0 +1,11 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ModBanFromCommunityView( + val mod_ban_from_community: ModBanFromCommunity, + val moderator: Person? = null, + val community: Community, + val other_person: Person, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanId.kt new file mode 100644 index 00000000..b2dd49a6 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +typealias ModBanId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanView.kt new file mode 100644 index 00000000..c9e65e97 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanView.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ModBanView( + val mod_ban: ModBan, + val moderator: Person? = null, + val other_person: Person, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModChangeCommunityVisibility.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModChangeCommunityVisibility.kt new file mode 100644 index 00000000..a596cbb7 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModChangeCommunityVisibility.kt @@ -0,0 +1,13 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ModChangeCommunityVisibility( + val id: ModChangeCommunityVisibilityId, + val community_id: CommunityId, + val mod_person_id: PersonId, + val published: String, + val reason: String? = null, + val visibility: String /* "Public" | "Unlisted" | "LocalOnlyPublic" | "LocalOnlyPrivate" | "Private" */, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModChangeCommunityVisibilityId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModChangeCommunityVisibilityId.kt new file mode 100644 index 00000000..ca69bd5a --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModChangeCommunityVisibilityId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +typealias ModChangeCommunityVisibilityId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModChangeCommunityVisibilityView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModChangeCommunityVisibilityView.kt new file mode 100644 index 00000000..15cc9699 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModChangeCommunityVisibilityView.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ModChangeCommunityVisibilityView( + val mod_change_community_visibility: ModChangeCommunityVisibility, + val moderator: Person? = null, + val community: Community, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModFeaturePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModFeaturePost.kt new file mode 100644 index 00000000..ad393162 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModFeaturePost.kt @@ -0,0 +1,13 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ModFeaturePost( + val id: ModFeaturePostId, + val mod_person_id: PersonId, + val post_id: PostId, + val featured: Boolean, + val published: String, + val is_featured_community: Boolean, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModFeaturePostId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModFeaturePostId.kt new file mode 100644 index 00000000..e1162cd1 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModFeaturePostId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +typealias ModFeaturePostId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModFeaturePostView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModFeaturePostView.kt new file mode 100644 index 00000000..5805a311 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModFeaturePostView.kt @@ -0,0 +1,12 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ModFeaturePostView( + val mod_feature_post: ModFeaturePost, + val moderator: Person? = null, + val other_person: Person, + val post: Post, + val community: Community, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockPost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockPost.kt new file mode 100644 index 00000000..40b3ed2d --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockPost.kt @@ -0,0 +1,12 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ModLockPost( + val id: ModLockPostId, + val mod_person_id: PersonId, + val post_id: PostId, + val locked: Boolean, + val published: String, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockPostId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockPostId.kt new file mode 100644 index 00000000..01b19f98 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockPostId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +typealias ModLockPostId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockPostView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockPostView.kt new file mode 100644 index 00000000..0a26b344 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockPostView.kt @@ -0,0 +1,12 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ModLockPostView( + val mod_lock_post: ModLockPost, + val moderator: Person? = null, + val other_person: Person, + val post: Post, + val community: Community, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveComment.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveComment.kt new file mode 100644 index 00000000..0d04febb --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveComment.kt @@ -0,0 +1,13 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ModRemoveComment( + val id: ModRemoveCommentId, + val mod_person_id: PersonId, + val comment_id: CommentId, + val reason: String? = null, + val removed: Boolean, + val published: String, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveCommentId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveCommentId.kt new file mode 100644 index 00000000..9c9a5a9a --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveCommentId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +typealias ModRemoveCommentId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveCommentView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveCommentView.kt new file mode 100644 index 00000000..e5531307 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveCommentView.kt @@ -0,0 +1,13 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ModRemoveCommentView( + val mod_remove_comment: ModRemoveComment, + val moderator: Person? = null, + val other_person: Person, + val comment: Comment, + val post: Post, + val community: Community, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveCommunity.kt new file mode 100644 index 00000000..335d3bdb --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveCommunity.kt @@ -0,0 +1,13 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ModRemoveCommunity( + val id: ModRemoveCommunityId, + val mod_person_id: PersonId, + val community_id: CommunityId, + val reason: String? = null, + val removed: Boolean, + val published: String, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveCommunityId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveCommunityId.kt new file mode 100644 index 00000000..67e37438 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveCommunityId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +typealias ModRemoveCommunityId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveCommunityView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveCommunityView.kt new file mode 100644 index 00000000..9d56fa81 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveCommunityView.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ModRemoveCommunityView( + val mod_remove_community: ModRemoveCommunity, + val moderator: Person? = null, + val community: Community, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemovePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemovePost.kt new file mode 100644 index 00000000..67e70a0d --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemovePost.kt @@ -0,0 +1,13 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ModRemovePost( + val id: ModRemovePostId, + val mod_person_id: PersonId, + val post_id: PostId, + val reason: String? = null, + val removed: Boolean, + val published: String, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemovePostId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemovePostId.kt new file mode 100644 index 00000000..e47e1ae8 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemovePostId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +typealias ModRemovePostId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemovePostView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemovePostView.kt new file mode 100644 index 00000000..97a402f9 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemovePostView.kt @@ -0,0 +1,12 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ModRemovePostView( + val mod_remove_post: ModRemovePost, + val moderator: Person? = null, + val other_person: Person, + val post: Post, + val community: Community, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModTransferCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModTransferCommunity.kt new file mode 100644 index 00000000..4ddb9bbc --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModTransferCommunity.kt @@ -0,0 +1,12 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ModTransferCommunity( + val id: ModTransferCommunityId, + val mod_person_id: PersonId, + val other_person_id: PersonId, + val community_id: CommunityId, + val published: String, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModTransferCommunityId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModTransferCommunityId.kt new file mode 100644 index 00000000..f9357a12 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModTransferCommunityId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +typealias ModTransferCommunityId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModTransferCommunityView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModTransferCommunityView.kt new file mode 100644 index 00000000..6a97d32b --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModTransferCommunityView.kt @@ -0,0 +1,11 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ModTransferCommunityView( + val mod_transfer_community: ModTransferCommunity, + val moderator: Person? = null, + val community: Community, + val other_person: Person, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MyUserInfo.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MyUserInfo.kt new file mode 100644 index 00000000..57ac2a53 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MyUserInfo.kt @@ -0,0 +1,15 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class MyUserInfo( + val local_user_view: LocalUserView, + val follows: List, + val moderates: List, + val community_blocks: List, + val instance_blocks: List, + val person_blocks: List, + val keyword_blocks: List, + val discussion_languages: List, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/OAuthAccount.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/OAuthAccount.kt new file mode 100644 index 00000000..19cc5546 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/OAuthAccount.kt @@ -0,0 +1,12 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class OAuthAccount( + val local_user_id: LocalUserId, + val oauth_provider_id: OAuthProviderId, + val oauth_user_id: String, + val published: String, + val updated: String? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/OAuthProvider.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/OAuthProvider.kt new file mode 100644 index 00000000..703ab221 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/OAuthProvider.kt @@ -0,0 +1,22 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class OAuthProvider( + val id: OAuthProviderId, + val display_name: String, + val issuer: String, + val authorization_endpoint: String, + val token_endpoint: String, + val userinfo_endpoint: String, + val id_claim: String, + val client_id: String, + val scopes: String, + val auto_verify_email: Boolean, + val account_linking_enabled: Boolean, + val enabled: Boolean, + val published: String, + val updated: String? = null, + val use_pkce: Boolean, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/OAuthProviderId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/OAuthProviderId.kt new file mode 100644 index 00000000..9197a52a --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/OAuthProviderId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +typealias OAuthProviderId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/OpenGraphData.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/OpenGraphData.kt new file mode 100644 index 00000000..232610e1 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/OpenGraphData.kt @@ -0,0 +1,11 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class OpenGraphData( + val title: String? = null, + val description: String? = null, + val image: DbUrl? = null, + val embed_video_url: DbUrl? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PaginationCursor.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PaginationCursor.kt new file mode 100644 index 00000000..0471931c --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PaginationCursor.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +typealias PaginationCursor = String diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PasswordChangeAfterReset.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PasswordChangeAfterReset.kt new file mode 100644 index 00000000..fc8a716e --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PasswordChangeAfterReset.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class PasswordChangeAfterReset( + val token: SensitiveString, + val password: SensitiveString, + val password_verify: SensitiveString, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PasswordReset.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PasswordReset.kt new file mode 100644 index 00000000..24bfd26f --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PasswordReset.kt @@ -0,0 +1,8 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class PasswordReset( + val email: SensitiveString, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PendingFollow.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PendingFollow.kt new file mode 100644 index 00000000..cbbea39d --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PendingFollow.kt @@ -0,0 +1,11 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class PendingFollow( + val person: Person, + val community: Community, + val is_new_instance: Boolean, + val follow_state: String? /* "Accepted" | "Pending" | "ApprovalRequired" */ = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Person.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Person.kt new file mode 100644 index 00000000..bcab8f44 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Person.kt @@ -0,0 +1,23 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class Person( + val id: PersonId, + val name: String, + val display_name: String? = null, + val avatar: DbUrl? = null, + val published: String, + val updated: String? = null, + val ap_id: DbUrl, + val bio: String? = null, + val local: Boolean, + val banner: DbUrl? = null, + val deleted: Boolean, + val matrix_user_id: String? = null, + val bot_account: Boolean, + val instance_id: InstanceId, + val post_count: Long, + val comment_count: Long, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonActions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonActions.kt new file mode 100644 index 00000000..b6a5510b --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonActions.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class PersonActions( + val target_id: PersonId, + val person_id: PersonId, + val blocked: String? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonCommentMention.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonCommentMention.kt new file mode 100644 index 00000000..95732c8d --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonCommentMention.kt @@ -0,0 +1,12 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class PersonCommentMention( + val id: PersonCommentMentionId, + val recipient_id: PersonId, + val comment_id: CommentId, + val read: Boolean, + val published: String, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonCommentMentionId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonCommentMentionId.kt new file mode 100644 index 00000000..4759a5f3 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonCommentMentionId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +typealias PersonCommentMentionId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonCommentMentionView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonCommentMentionView.kt new file mode 100644 index 00000000..21b9d45b --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonCommentMentionView.kt @@ -0,0 +1,23 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class PersonCommentMentionView( + val person_comment_mention: PersonCommentMention, + val recipient: Person, + val comment: Comment, + val creator: Person, + val post: Post, + val community: Community, + val community_actions: CommunityActions? = null, + val comment_actions: CommentActions? = null, + val person_actions: PersonActions? = null, + val instance_actions: InstanceActions? = null, + val creator_home_instance_actions: InstanceActions? = null, + val creator_local_instance_actions: InstanceActions? = null, + val creator_community_actions: CommunityActions? = null, + val creator_is_admin: Boolean, + val can_mod: Boolean, + val creator_banned: Boolean, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonId.kt new file mode 100644 index 00000000..7561cd61 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +typealias PersonId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonPostMention.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonPostMention.kt new file mode 100644 index 00000000..9a6231e6 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonPostMention.kt @@ -0,0 +1,12 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class PersonPostMention( + val id: PersonPostMentionId, + val recipient_id: PersonId, + val post_id: PostId, + val read: Boolean, + val published: String, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonPostMentionId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonPostMentionId.kt new file mode 100644 index 00000000..986dc406 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonPostMentionId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +typealias PersonPostMentionId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonPostMentionView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonPostMentionView.kt new file mode 100644 index 00000000..4cca1b51 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonPostMentionView.kt @@ -0,0 +1,24 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class PersonPostMentionView( + val person_post_mention: PersonPostMention, + val recipient: Person, + val post: Post, + val creator: Person, + val community: Community, + val image_details: ImageDetails? = null, + val community_actions: CommunityActions? = null, + val person_actions: PersonActions? = null, + val post_actions: PostActions? = null, + val instance_actions: InstanceActions? = null, + val creator_home_instance_actions: InstanceActions? = null, + val creator_local_instance_actions: InstanceActions? = null, + val creator_community_actions: CommunityActions? = null, + val post_tags: TagsView, + val creator_is_admin: Boolean, + val can_mod: Boolean, + val creator_banned: Boolean, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonView.kt new file mode 100644 index 00000000..3a2c8a4a --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonView.kt @@ -0,0 +1,12 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class PersonView( + val person: Person, + val is_admin: Boolean, + val home_instance_actions: InstanceActions? = null, + val local_instance_actions: InstanceActions? = null, + val creator_banned: Boolean, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PluginMetadata.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PluginMetadata.kt new file mode 100644 index 00000000..347961f4 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PluginMetadata.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class PluginMetadata( + val name: String, + val url: String, + val description: String, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Post.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Post.kt new file mode 100644 index 00000000..4458f19d --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Post.kt @@ -0,0 +1,39 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class Post( + val id: PostId, + val name: String, + val url: DbUrl? = null, + val body: String? = null, + val creator_id: PersonId, + val community_id: CommunityId, + val removed: Boolean, + val locked: Boolean, + val published: String, + val updated: String? = null, + val deleted: Boolean, + val nsfw: Boolean, + val embed_title: String? = null, + val embed_description: String? = null, + val thumbnail_url: DbUrl? = null, + val ap_id: DbUrl, + val local: Boolean, + val embed_video_url: DbUrl? = null, + val language_id: LanguageId, + val featured_community: Boolean, + val featured_local: Boolean, + val url_content_type: String? = null, + val alt_text: String? = null, + val scheduled_publish_time: String? = null, + val comments: Long, + val score: Long, + val upvotes: Long, + val downvotes: Long, + val newest_comment_time: String, + val report_count: Long, + val unresolved_report_count: Long, + val federation_pending: Boolean, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostActions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostActions.kt new file mode 100644 index 00000000..f587720c --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostActions.kt @@ -0,0 +1,16 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class PostActions( + val post_id: PostId, + val person_id: PersonId, + val read: String? = null, + val read_comments: String? = null, + val read_comments_amount: Long? = null, + val saved: String? = null, + val liked: String? = null, + val like_score: Long? = null, + val hidden: String? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostId.kt new file mode 100644 index 00000000..dfda5c63 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +typealias PostId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostReport.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostReport.kt new file mode 100644 index 00000000..e2aa1582 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostReport.kt @@ -0,0 +1,19 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class PostReport( + val id: PostReportId, + val creator_id: PersonId, + val post_id: PostId, + val original_post_name: String, + val original_post_url: DbUrl? = null, + val original_post_body: String? = null, + val reason: String, + val resolved: Boolean, + val resolver_id: PersonId? = null, + val published: String, + val updated: String? = null, + val violates_instance_rules: Boolean, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostReportId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostReportId.kt new file mode 100644 index 00000000..8c1dacd9 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostReportId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +typealias PostReportId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostReportResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostReportResponse.kt new file mode 100644 index 00000000..7a6ea95e --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostReportResponse.kt @@ -0,0 +1,8 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class PostReportResponse( + val post_report_view: PostReportView, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostReportView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostReportView.kt new file mode 100644 index 00000000..ffa31495 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostReportView.kt @@ -0,0 +1,18 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class PostReportView( + val post_report: PostReport, + val post: Post, + val community: Community, + val creator: Person, + val post_creator: Person, + val creator_community_actions: CommunityActions? = null, + val community_actions: CommunityActions? = null, + val post_actions: PostActions? = null, + val person_actions: PersonActions? = null, + val resolver: Person? = null, + val creator_is_admin: Boolean, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostResponse.kt new file mode 100644 index 00000000..3770226d --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostResponse.kt @@ -0,0 +1,8 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class PostResponse( + val post_view: PostView, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostView.kt new file mode 100644 index 00000000..1674910a --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostView.kt @@ -0,0 +1,22 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class PostView( + val post: Post, + val creator: Person, + val community: Community, + val image_details: ImageDetails? = null, + val community_actions: CommunityActions? = null, + val person_actions: PersonActions? = null, + val post_actions: PostActions? = null, + val instance_actions: InstanceActions? = null, + val creator_home_instance_actions: InstanceActions? = null, + val creator_local_instance_actions: InstanceActions? = null, + val creator_community_actions: CommunityActions? = null, + val creator_is_admin: Boolean, + val tags: TagsView, + val can_mod: Boolean, + val creator_banned: Boolean, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessage.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessage.kt new file mode 100644 index 00000000..b202cb3f --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessage.kt @@ -0,0 +1,18 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class PrivateMessage( + val id: PrivateMessageId, + val creator_id: PersonId, + val recipient_id: PersonId, + val content: String, + val deleted: Boolean, + val read: Boolean, + val published: String, + val updated: String? = null, + val ap_id: DbUrl, + val local: Boolean, + val removed: Boolean, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessageId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessageId.kt new file mode 100644 index 00000000..540ec1eb --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessageId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +typealias PrivateMessageId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessageReport.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessageReport.kt new file mode 100644 index 00000000..dbc17d10 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessageReport.kt @@ -0,0 +1,16 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class PrivateMessageReport( + val id: PrivateMessageReportId, + val creator_id: PersonId, + val private_message_id: PrivateMessageId, + val original_pm_text: String, + val reason: String, + val resolved: Boolean, + val resolver_id: PersonId? = null, + val published: String, + val updated: String? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessageReportId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessageReportId.kt new file mode 100644 index 00000000..135f5a3a --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessageReportId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +typealias PrivateMessageReportId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessageReportResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessageReportResponse.kt new file mode 100644 index 00000000..2c985b7c --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessageReportResponse.kt @@ -0,0 +1,8 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class PrivateMessageReportResponse( + val private_message_report_view: PrivateMessageReportView, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessageReportView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessageReportView.kt new file mode 100644 index 00000000..3ea1cce6 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessageReportView.kt @@ -0,0 +1,12 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class PrivateMessageReportView( + val private_message_report: PrivateMessageReport, + val private_message: PrivateMessage, + val creator: Person, + val private_message_creator: Person, + val resolver: Person? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessageResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessageResponse.kt new file mode 100644 index 00000000..ff485764 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessageResponse.kt @@ -0,0 +1,8 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class PrivateMessageResponse( + val private_message_view: PrivateMessageView, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessageView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessageView.kt new file mode 100644 index 00000000..d56bb04f --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessageView.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class PrivateMessageView( + val private_message: PrivateMessage, + val creator: Person, + val recipient: Person, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PublicOAuthProvider.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PublicOAuthProvider.kt new file mode 100644 index 00000000..2d048392 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PublicOAuthProvider.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +typealias PublicOAuthProvider = OAuthProvider diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PurgeComment.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PurgeComment.kt new file mode 100644 index 00000000..2aa2eb72 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PurgeComment.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class PurgeComment( + val comment_id: CommentId, + val reason: String? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PurgeCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PurgeCommunity.kt new file mode 100644 index 00000000..469c0144 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PurgeCommunity.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class PurgeCommunity( + val community_id: CommunityId, + val reason: String? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PurgePerson.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PurgePerson.kt new file mode 100644 index 00000000..098f2d19 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PurgePerson.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class PurgePerson( + val person_id: PersonId, + val reason: String? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PurgePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PurgePost.kt new file mode 100644 index 00000000..b994ada0 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PurgePost.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class PurgePost( + val post_id: PostId, + val reason: String? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ReadableFederationState.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ReadableFederationState.kt new file mode 100644 index 00000000..2743ac41 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ReadableFederationState.kt @@ -0,0 +1,13 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ReadableFederationState( + val next_retry: String? = null, + val instance_id: InstanceId, + val last_successful_id: ActivityId? = null, + val last_successful_published_time: String? = null, + val fail_count: Long, + val last_retry: String? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Register.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Register.kt new file mode 100644 index 00000000..29ed6ea7 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Register.kt @@ -0,0 +1,16 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class Register( + val username: String, + val password: SensitiveString, + val password_verify: SensitiveString, + val show_nsfw: Boolean? = null, + val email: SensitiveString? = null, + val captcha_uuid: String? = null, + val captcha_answer: String? = null, + val honeypot: String? = null, + val answer: String? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RegistrationApplication.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RegistrationApplication.kt new file mode 100644 index 00000000..507f378f --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RegistrationApplication.kt @@ -0,0 +1,13 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class RegistrationApplication( + val id: RegistrationApplicationId, + val local_user_id: LocalUserId, + val answer: String, + val admin_id: PersonId? = null, + val deny_reason: String? = null, + val published: String, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RegistrationApplicationId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RegistrationApplicationId.kt new file mode 100644 index 00000000..375533ee --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RegistrationApplicationId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +typealias RegistrationApplicationId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RegistrationApplicationResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RegistrationApplicationResponse.kt new file mode 100644 index 00000000..39536b68 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RegistrationApplicationResponse.kt @@ -0,0 +1,8 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class RegistrationApplicationResponse( + val registration_application: RegistrationApplicationView, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RegistrationApplicationView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RegistrationApplicationView.kt new file mode 100644 index 00000000..72577ca8 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RegistrationApplicationView.kt @@ -0,0 +1,11 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class RegistrationApplicationView( + val registration_application: RegistrationApplication, + val creator_local_user: LocalUser, + val creator: Person, + val admin: Person? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RemoveComment.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RemoveComment.kt new file mode 100644 index 00000000..79aa7efa --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RemoveComment.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class RemoveComment( + val comment_id: CommentId, + val removed: Boolean, + val reason: String? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RemoveCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RemoveCommunity.kt new file mode 100644 index 00000000..067e30f4 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RemoveCommunity.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class RemoveCommunity( + val community_id: CommunityId, + val removed: Boolean, + val reason: String? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RemovePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RemovePost.kt new file mode 100644 index 00000000..af931ff5 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RemovePost.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class RemovePost( + val post_id: PostId, + val removed: Boolean, + val reason: String? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ResendVerificationEmail.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ResendVerificationEmail.kt new file mode 100644 index 00000000..c8408822 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ResendVerificationEmail.kt @@ -0,0 +1,8 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ResendVerificationEmail( + val email: SensitiveString, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ResolveCommentReport.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ResolveCommentReport.kt new file mode 100644 index 00000000..5019bc05 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ResolveCommentReport.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ResolveCommentReport( + val report_id: CommentReportId, + val resolved: Boolean, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ResolveCommunityReport.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ResolveCommunityReport.kt new file mode 100644 index 00000000..e84d8c3c --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ResolveCommunityReport.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ResolveCommunityReport( + val report_id: CommunityReportId, + val resolved: Boolean, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ResolveObject.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ResolveObject.kt new file mode 100644 index 00000000..692b6b05 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ResolveObject.kt @@ -0,0 +1,8 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ResolveObject( + val q: String, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ResolveObjectResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ResolveObjectResponse.kt new file mode 100644 index 00000000..d0cc7e42 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ResolveObjectResponse.kt @@ -0,0 +1,11 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ResolveObjectResponse( + val comment: CommentView? = null, + val post: PostView? = null, + val community: CommunityView? = null, + val person: PersonView? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ResolvePostReport.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ResolvePostReport.kt new file mode 100644 index 00000000..d7005693 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ResolvePostReport.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ResolvePostReport( + val report_id: PostReportId, + val resolved: Boolean, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ResolvePrivateMessageReport.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ResolvePrivateMessageReport.kt new file mode 100644 index 00000000..23bbb3ef --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ResolvePrivateMessageReport.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ResolvePrivateMessageReport( + val report_id: PrivateMessageReportId, + val resolved: Boolean, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SaveComment.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SaveComment.kt new file mode 100644 index 00000000..bdea5882 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SaveComment.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class SaveComment( + val comment_id: CommentId, + val save: Boolean, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SavePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SavePost.kt new file mode 100644 index 00000000..904f893e --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SavePost.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class SavePost( + val post_id: PostId, + val save: Boolean, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SaveUserSettings.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SaveUserSettings.kt new file mode 100644 index 00000000..5efc80fa --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SaveUserSettings.kt @@ -0,0 +1,43 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import it.vercruysse.lemmyapi.dto.SortType +import it.vercruysse.lemmyapi.dto.SortType +import it.vercruysse.lemmyapi.dto.PostListingMode +import it.vercruysse.lemmyapi.dto.ListingType +import kotlinx.serialization.Serializable + +@Serializable +internal data class SaveUserSettings( + val show_nsfw: Boolean? = null, + val blur_nsfw: Boolean? = null, + val theme: String? = null, + val default_listing_type: ListingType? /* "All" | "Local" | "Subscribed" | "ModeratorView" */ = null, + val post_listing_mode: PostListingMode? /* "List" | "Card" | "SmallCard" */ = null, + val default_post_sort_type: SortType? /* "Active" | "Hot" | "New" | "Old" | "Top" | "MostComments" | "NewComments" | "Controversial" | "Scaled" */ = null, + val default_post_time_range_seconds: Long? = null, + val default_comment_sort_type: SortType? /* "Hot" | "Top" | "New" | "Old" | "Controversial" */ = null, + val interface_language: String? = null, + val display_name: String? = null, + val email: SensitiveString? = null, + val bio: String? = null, + val matrix_user_id: String? = null, + val show_avatars: Boolean? = null, + val send_notifications_to_email: Boolean? = null, + val bot_account: Boolean? = null, + val show_bot_accounts: Boolean? = null, + val show_read_posts: Boolean? = null, + val discussion_languages: List? = null, + val blocking_keywords: List? = null, + val open_links_in_new_tab: Boolean? = null, + val infinite_scroll_enabled: Boolean? = null, + val enable_keyboard_navigation: Boolean? = null, + val enable_animated_images: Boolean? = null, + val enable_private_messages: Boolean? = null, + val collapse_bot_comments: Boolean? = null, + val show_scores: Boolean? = null, + val show_upvotes: Boolean? = null, + val show_downvotes: Boolean? = null, + val show_upvote_percentage: Boolean? = null, + val auto_mark_fetched_posts_as_read: Boolean? = null, + val hide_media: Boolean? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Search.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Search.kt new file mode 100644 index 00000000..bfad8fb8 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Search.kt @@ -0,0 +1,25 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import it.vercruysse.lemmyapi.dto.ListingType +import it.vercruysse.lemmyapi.dto.SortType +import it.vercruysse.lemmyapi.dto.SearchType +import kotlinx.serialization.Serializable + +@Serializable +internal data class Search( + val search_term: String? = null, + val community_id: CommunityId? = null, + val community_name: String? = null, + val creator_id: PersonId? = null, + val type_: SearchType? /* "All" | "Comments" | "Posts" | "Communities" | "Users" */ = null, + val sort: SortType? /* "New" | "Top" | "Old" */ = null, + val time_range_seconds: Long? = null, + val listing_type: ListingType? /* "All" | "Local" | "Subscribed" | "ModeratorView" */ = null, + val title_only: Boolean? = null, + val post_url_only: Boolean? = null, + val liked_only: Boolean? = null, + val disliked_only: Boolean? = null, + val page_cursor: PaginationCursor? = null, + val page_back: Boolean? = null, + val limit: Long? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SearchResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SearchResponse.kt new file mode 100644 index 00000000..95f3e49c --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SearchResponse.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class SearchResponse( + val results: List, + val next_page: PaginationCursor? = null, + val prev_page: PaginationCursor? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SensitiveString.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SensitiveString.kt new file mode 100644 index 00000000..a0a2896a --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SensitiveString.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +typealias SensitiveString = String diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Site.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Site.kt new file mode 100644 index 00000000..0ba2a698 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Site.kt @@ -0,0 +1,21 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class Site( + val id: SiteId, + val name: String, + val sidebar: String? = null, + val published: String, + val updated: String? = null, + val icon: DbUrl? = null, + val banner: DbUrl? = null, + val description: String? = null, + val ap_id: DbUrl, + val last_refreshed_at: String, + val inbox_url: DbUrl, + val public_key: String, + val instance_id: InstanceId, + val content_warning: String? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SiteId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SiteId.kt new file mode 100644 index 00000000..023c2cbf --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SiteId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +typealias SiteId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SiteResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SiteResponse.kt new file mode 100644 index 00000000..3050fd3f --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SiteResponse.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class SiteResponse( + val site_view: SiteView, + val taglines: List = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SiteView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SiteView.kt new file mode 100644 index 00000000..2eeec6f7 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SiteView.kt @@ -0,0 +1,11 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class SiteView( + val site: Site, + val local_site: LocalSite, + val local_site_rate_limit: LocalSiteRateLimit, + val instance: Instance, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SuccessResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SuccessResponse.kt new file mode 100644 index 00000000..cf44cf41 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SuccessResponse.kt @@ -0,0 +1,8 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class SuccessResponse( + val success: Boolean, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Tag.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Tag.kt new file mode 100644 index 00000000..02a2243d --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Tag.kt @@ -0,0 +1,14 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class Tag( + val id: TagId, + val ap_id: DbUrl, + val display_name: String, + val community_id: CommunityId, + val published: String, + val updated: String? = null, + val deleted: Boolean, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/TagId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/TagId.kt new file mode 100644 index 00000000..fb6aee7f --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/TagId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +typealias TagId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Tagline.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Tagline.kt new file mode 100644 index 00000000..45eff328 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Tagline.kt @@ -0,0 +1,11 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class Tagline( + val id: TaglineId, + val content: String, + val published: String, + val updated: String? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/TaglineId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/TaglineId.kt new file mode 100644 index 00000000..b792b94d --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/TaglineId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +typealias TaglineId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/TaglineResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/TaglineResponse.kt new file mode 100644 index 00000000..2dad3bee --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/TaglineResponse.kt @@ -0,0 +1,8 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class TaglineResponse( + val tagline: Tagline, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/TagsView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/TagsView.kt new file mode 100644 index 00000000..3a80abf7 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/TagsView.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +typealias TagsView = List diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/TransferCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/TransferCommunity.kt new file mode 100644 index 00000000..352a11e5 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/TransferCommunity.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class TransferCommunity( + val community_id: CommunityId, + val person_id: PersonId, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UpdateCommunityTag.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UpdateCommunityTag.kt new file mode 100644 index 00000000..49cc6aa7 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UpdateCommunityTag.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class UpdateCommunityTag( + val tag_id: TagId, + val display_name: String, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UpdateTagline.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UpdateTagline.kt new file mode 100644 index 00000000..4493957f --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UpdateTagline.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class UpdateTagline( + val id: TaglineId, + val content: String, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UpdateTotp.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UpdateTotp.kt new file mode 100644 index 00000000..c801a4a3 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UpdateTotp.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class UpdateTotp( + val totp_token: String, + val enabled: Boolean, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UpdateTotpResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UpdateTotpResponse.kt new file mode 100644 index 00000000..a56646e1 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UpdateTotpResponse.kt @@ -0,0 +1,8 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class UpdateTotpResponse( + val enabled: Boolean, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UploadImageResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UploadImageResponse.kt new file mode 100644 index 00000000..99b733e1 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UploadImageResponse.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class UploadImageResponse( + val image_url: String, + val filename: String, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UserBlockInstanceParams.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UserBlockInstanceParams.kt new file mode 100644 index 00000000..46ef6814 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UserBlockInstanceParams.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class UserBlockInstanceParams( + val instance_id: InstanceId, + val block: Boolean, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/VerifyEmail.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/VerifyEmail.kt new file mode 100644 index 00000000..a97b39ad --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/VerifyEmail.kt @@ -0,0 +1,8 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class VerifyEmail( + val token: String, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/VoteView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/VoteView.kt new file mode 100644 index 00000000..4f02c9bb --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/VoteView.kt @@ -0,0 +1,11 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class VoteView( + val creator: Person, + val item_id: Long, + val creator_banned_from_community: Boolean, + val score: Long, +) From 86c2b429e71718cc68724c9993f8d11239ba6087 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Sun, 25 May 2025 05:34:37 +0200 Subject: [PATCH 002/110] Add Initial new uni types changes --- GeneratorScripts/build.gradle.kts | 2 + .../src/main/kotlin/MapperGenerator0x18x5.kt | 2 - .../src/main/kotlin/MapperGenerator0x19x0.kt | 4 - .../src/main/kotlin/MapperGenerator0x19x11.kt | 4 - .../src/main/kotlin/MapperGenerator0x19x3.kt | 4 - .../src/main/kotlin/MapperGenerator0x19x4.kt | 4 - .../src/main/kotlin/MapperGenerator0x19x6.kt | 4 - .../main/kotlin/autogenscripts/GenTypes.kt | 16 ++-- .../kotlin/it/vercruysse/lemmyapi/Identity.kt | 2 +- .../lemmyapi/LemmyApiBaseController.kt | 2 +- .../lemmyapi/datatypes/AdminAllowInstance.kt | 16 ++++ .../datatypes/AdminAllowInstanceId.kt | 3 + .../datatypes/AdminAllowInstanceParams.kt | 13 +++ ...BlockView.kt => AdminAllowInstanceView.kt} | 11 ++- .../lemmyapi/datatypes/AdminBlockInstance.kt | 17 ++++ .../datatypes/AdminBlockInstanceId.kt | 3 + .../datatypes/AdminBlockInstanceView.kt | 13 +++ .../lemmyapi/datatypes/AdminPurgeComment.kt | 4 +- .../lemmyapi/datatypes/AdminPurgeCommentId.kt | 3 + .../lemmyapi/datatypes/AdminPurgeCommunity.kt | 4 +- .../datatypes/AdminPurgeCommunityId.kt | 3 + .../lemmyapi/datatypes/AdminPurgePerson.kt | 4 +- .../lemmyapi/datatypes/AdminPurgePersonId.kt | 3 + .../lemmyapi/datatypes/AdminPurgePost.kt | 4 +- .../lemmyapi/datatypes/AdminPurgePostId.kt | 3 + .../ApproveCommunityPendingFollower.kt | 13 +++ .../datatypes/AuthenticateWithOauth.kt | 17 ++++ .../lemmyapi/datatypes/BanFromCommunity.kt | 2 +- .../lemmyapi/datatypes/BanPerson.kt | 2 +- .../datatypes/BannedPersonsResponse.kt | 1 + .../lemmyapi/datatypes/BlockInstance.kt | 2 + .../lemmyapi/datatypes/ChangePassword.kt | 6 +- .../vercruysse/lemmyapi/datatypes/Comment.kt | 2 + .../lemmyapi/datatypes/CommentActions.kt | 15 ++++ .../lemmyapi/datatypes/CommentAggregates.kt | 2 + .../datatypes/CommentReplyResponse.kt | 2 + .../lemmyapi/datatypes/CommentReplyView.kt | 2 + .../lemmyapi/datatypes/CommentReportView.kt | 2 + .../lemmyapi/datatypes/CommentSlimView.kt | 21 +++++ .../lemmyapi/datatypes/CommentView.kt | 2 + .../lemmyapi/datatypes/Community.kt | 2 + .../lemmyapi/datatypes/CommunityActions.kt | 19 +++++ .../lemmyapi/datatypes/CommunityAggregates.kt | 2 + .../lemmyapi/datatypes/CommunityReport.kt | 25 ++++++ .../lemmyapi/datatypes/CommunityReportId.kt | 3 + .../datatypes/CommunityReportResponse.kt | 11 +++ .../lemmyapi/datatypes/CommunityReportView.kt | 14 ++++ .../lemmyapi/datatypes/CommunityView.kt | 2 + .../lemmyapi/datatypes/CreateCommentReport.kt | 2 + .../lemmyapi/datatypes/CreateCommunity.kt | 2 + .../datatypes/CreateCommunityReport.kt | 12 +++ .../lemmyapi/datatypes/CreateCommunityTag.kt | 12 +++ .../lemmyapi/datatypes/CreateOAuthProvider.kt | 23 +++++ .../lemmyapi/datatypes/CreatePost.kt | 5 ++ .../lemmyapi/datatypes/CreatePostReport.kt | 2 + .../lemmyapi/datatypes/CreateSite.kt | 2 + ...ckInstanceResponse.kt => CreateTagline.kt} | 9 +- .../lemmyapi/datatypes/CustomEmoji.kt | 2 + .../lemmyapi/datatypes/DeleteAccount.kt | 2 +- .../lemmyapi/datatypes/DeleteCommunityTag.kt | 12 +++ ...ersonBlockView.kt => DeleteImageParams.kt} | 10 +-- .../lemmyapi/datatypes/DeleteOAuthProvider.kt | 12 +++ ...CommunityBlockView.kt => DeleteTagline.kt} | 10 +-- .../lemmyapi/datatypes/EditCommunity.kt | 4 + .../lemmyapi/datatypes/EditOAuthProvider.kt | 22 +++++ .../vercruysse/lemmyapi/datatypes/EditPost.kt | 4 + .../vercruysse/lemmyapi/datatypes/EditSite.kt | 2 + .../lemmyapi/datatypes/FederationBlockList.kt | 15 ++++ .../datatypes/GenerateTotpSecretResponse.kt | 2 +- .../lemmyapi/datatypes/GetComments.kt | 2 + .../lemmyapi/datatypes/GetCommentsResponse.kt | 4 + .../datatypes/GetCommentsSlimResponse.kt | 13 +++ .../GetCommunityPendingFollowsCount.kt | 11 +++ ...GetCommunityPendingFollowsCountResponse.kt | 11 +++ .../lemmyapi/datatypes/GetModlog.kt | 2 + .../lemmyapi/datatypes/GetModlogResponse.kt | 2 + .../lemmyapi/datatypes/GetPersonDetails.kt | 2 + .../datatypes/GetPersonDetailsResponse.kt | 2 + .../lemmyapi/datatypes/GetPostResponse.kt | 2 + .../vercruysse/lemmyapi/datatypes/GetPosts.kt | 2 + .../lemmyapi/datatypes/GetPostsResponse.kt | 1 + .../lemmyapi/datatypes/GetRandomCommunity.kt | 13 +++ .../datatypes/GetReportCountResponse.kt | 2 + .../lemmyapi/datatypes/GetSiteResponse.kt | 2 + .../datatypes/GetUnreadCountResponse.kt | 2 + .../vercruysse/lemmyapi/datatypes/HidePost.kt | 2 + .../lemmyapi/datatypes/ImageDetails.kt | 2 + .../lemmyapi/datatypes/ImageGetParams.kt | 12 +++ .../lemmyapi/datatypes/ImageProxyParams.kt | 13 +++ .../lemmyapi/datatypes/InstanceActions.kt | 15 ++++ .../lemmyapi/datatypes/ListBannedPersons.kt | 15 ++++ .../lemmyapi/datatypes/ListCommentLikes.kt | 2 + .../datatypes/ListCommentLikesResponse.kt | 4 + .../lemmyapi/datatypes/ListCommentReports.kt | 2 + .../datatypes/ListCommentReportsResponse.kt | 2 + .../lemmyapi/datatypes/ListCommunities.kt | 2 + .../datatypes/ListCommunitiesResponse.kt | 4 + .../datatypes/ListCommunityPendingFollows.kt | 15 ++++ .../ListCommunityPendingFollowsResponse.kt | 13 +++ .../lemmyapi/datatypes/ListCustomEmojis.kt | 11 +++ .../datatypes/ListCustomEmojisResponse.kt | 11 +++ .../lemmyapi/datatypes/ListInbox.kt | 16 ++++ .../lemmyapi/datatypes/ListInboxResponse.kt | 14 ++++ .../lemmyapi/datatypes/ListMedia.kt | 2 + .../lemmyapi/datatypes/ListMediaResponse.kt | 4 + .../lemmyapi/datatypes/ListPersonContent.kt | 17 ++++ .../datatypes/ListPersonContentResponse.kt | 15 ++++ .../lemmyapi/datatypes/ListPersonSaved.kt | 15 ++++ .../datatypes/ListPersonSavedResponse.kt | 16 ++++ .../lemmyapi/datatypes/ListPostLikes.kt | 2 + .../datatypes/ListPostLikesResponse.kt | 4 + .../lemmyapi/datatypes/ListPostReports.kt | 2 + .../datatypes/ListPostReportsResponse.kt | 2 + .../datatypes/ListPrivateMessageReports.kt | 2 + .../ListPrivateMessageReportsResponse.kt | 2 + .../datatypes/ListRegistrationApplications.kt | 2 + .../ListRegistrationApplicationsResponse.kt | 4 + .../lemmyapi/datatypes/ListReports.kt | 20 +++++ .../lemmyapi/datatypes/ListReportsResponse.kt | 15 ++++ .../datatypes/ListTaglinesResponse.kt | 13 +++ .../lemmyapi/datatypes/LocalImage.kt | 2 + .../lemmyapi/datatypes/LocalSite.kt | 2 + .../lemmyapi/datatypes/LocalUser.kt | 2 + .../lemmyapi/datatypes/LocalUserView.kt | 2 + .../datatypes/LocalUserVoteDisplayMode.kt | 2 + .../it/vercruysse/lemmyapi/datatypes/Login.kt | 4 +- .../lemmyapi/datatypes/LoginResponse.kt | 2 +- .../lemmyapi/datatypes/MarkManyPostsAsRead.kt | 13 +++ .../MarkPersonCommentMentionAsRead.kt | 12 +++ .../datatypes/MarkPersonMentionAsRead.kt | 2 + .../datatypes/MarkPersonPostMentionAsRead.kt | 11 +++ .../lemmyapi/datatypes/MarkPostAsRead.kt | 2 + .../vercruysse/lemmyapi/datatypes/ModAdd.kt | 2 +- .../lemmyapi/datatypes/ModAddCommunity.kt | 2 +- .../lemmyapi/datatypes/ModAddCommunityView.kt | 2 +- .../lemmyapi/datatypes/ModAddView.kt | 2 +- .../vercruysse/lemmyapi/datatypes/ModBan.kt | 4 +- .../lemmyapi/datatypes/ModBanFromCommunity.kt | 2 +- .../datatypes/ModBanFromCommunityView.kt | 2 +- .../lemmyapi/datatypes/ModBanView.kt | 2 +- .../datatypes/ModChangeCommunityVisibility.kt | 17 ++++ .../ModChangeCommunityVisibilityView.kt | 13 +++ .../lemmyapi/datatypes/ModFeaturePost.kt | 2 +- .../lemmyapi/datatypes/ModFeaturePostView.kt | 2 + .../lemmyapi/datatypes/ModHideCommunity.kt | 2 + .../datatypes/ModHideCommunityView.kt | 2 + .../lemmyapi/datatypes/ModLockPost.kt | 2 +- .../lemmyapi/datatypes/ModLockPostView.kt | 2 + .../lemmyapi/datatypes/ModRemoveComment.kt | 2 +- .../datatypes/ModRemoveCommentView.kt | 2 +- .../lemmyapi/datatypes/ModRemoveCommunity.kt | 2 +- .../lemmyapi/datatypes/ModRemovePost.kt | 2 +- .../datatypes/ModTransferCommunity.kt | 2 +- .../datatypes/ModTransferCommunityView.kt | 2 +- .../lemmyapi/datatypes/ModlogListParams.kt | 2 + .../lemmyapi/datatypes/MyUserInfo.kt | 8 +- .../lemmyapi/datatypes/OAuthAccount.kt | 15 ++++ .../lemmyapi/datatypes/OAuthProvider.kt | 25 ++++++ .../lemmyapi/datatypes/OAuthProviderId.kt | 3 + .../datatypes/PasswordChangeAfterReset.kt | 6 +- .../lemmyapi/datatypes/PasswordReset.kt | 2 +- .../lemmyapi/datatypes/PendingFollow.kt | 16 ++++ .../vercruysse/lemmyapi/datatypes/Person.kt | 2 + .../lemmyapi/datatypes/PersonActions.kt | 13 +++ .../lemmyapi/datatypes/PersonAggregates.kt | 2 + .../datatypes/PersonCommentMention.kt | 15 ++++ .../datatypes/PersonCommentMentionId.kt | 3 + .../datatypes/PersonCommentMentionView.kt | 26 ++++++ .../lemmyapi/datatypes/PersonMention.kt | 2 + .../lemmyapi/datatypes/PersonMentionId.kt | 2 + .../datatypes/PersonMentionResponse.kt | 2 + .../lemmyapi/datatypes/PersonMentionView.kt | 2 + .../lemmyapi/datatypes/PersonPostMention.kt | 15 ++++ .../lemmyapi/datatypes/PersonPostMentionId.kt | 3 + .../datatypes/PersonPostMentionView.kt | 26 ++++++ .../lemmyapi/datatypes/PersonView.kt | 2 + .../lemmyapi/datatypes/PluginMetadata.kt | 13 +++ .../it/vercruysse/lemmyapi/datatypes/Post.kt | 2 + .../lemmyapi/datatypes/PostActions.kt | 19 +++++ .../lemmyapi/datatypes/PostAggregates.kt | 2 + .../lemmyapi/datatypes/PostReport.kt | 2 + .../lemmyapi/datatypes/PostReportView.kt | 2 + .../vercruysse/lemmyapi/datatypes/PostView.kt | 2 + .../lemmyapi/datatypes/PrivateMessage.kt | 2 + .../datatypes/PrivateMessagesResponse.kt | 2 + .../lemmyapi/datatypes/PublicOAuthProvider.kt | 3 + .../vercruysse/lemmyapi/datatypes/Register.kt | 6 +- .../datatypes/ResendVerificationEmail.kt | 12 +++ .../datatypes/ResolveCommunityReport.kt | 9 ++ .../lemmyapi/datatypes/SaveUserSettings.kt | 2 + .../vercruysse/lemmyapi/datatypes/Search.kt | 2 + .../lemmyapi/datatypes/SearchResponse.kt | 2 + .../lemmyapi/datatypes/SensitiveString.kt | 3 + .../lemmyapi/datatypes/SiteAggregates.kt | 2 + .../lemmyapi/datatypes/SiteResponse.kt | 2 + .../vercruysse/lemmyapi/datatypes/SiteView.kt | 2 + .../it/vercruysse/lemmyapi/datatypes/Tag.kt | 19 +++++ .../it/vercruysse/lemmyapi/datatypes/TagId.kt | 3 + .../vercruysse/lemmyapi/datatypes/Tagline.kt | 4 +- .../lemmyapi/datatypes/TaglineId.kt | 3 + .../lemmyapi/datatypes/TaglineResponse.kt | 11 +++ .../vercruysse/lemmyapi/datatypes/TagsView.kt | 3 + .../lemmyapi/datatypes/UpdateCommunityTag.kt | 12 +++ .../lemmyapi/datatypes/UpdateTagline.kt | 12 +++ .../lemmyapi/datatypes/UploadImageResponse.kt | 12 +++ .../datatypes/UserBlockInstanceParams.kt | 12 +++ .../vercruysse/lemmyapi/datatypes/VoteView.kt | 2 + .../lemmyapi/dto/CustomDataTypes.kt | 2 + .../lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt | 2 +- .../lemmyapi/v0/x18/x5/MapperGenerator.kt | 2 - .../lemmyapi/v0/x18/x5/Transformer.kt | 65 ++++++--------- .../lemmyapi/v0/x19/x0/LemmyApiController.kt | 2 +- .../lemmyapi/v0/x19/x0/LemmyApiRouter.kt | 2 +- .../lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt | 4 +- .../lemmyapi/v0/x19/x0/MapperGenerator.kt | 4 - .../lemmyapi/v0/x19/x0/Transformer.kt | 83 ++++++------------- .../x19/x0/datatypes/BlockInstanceResponse.kt | 8 -- .../lemmyapi/v0/x19/x11/LemmyApiController.kt | 2 +- .../lemmyapi/v0/x19/x11/LemmyApiRouter.kt | 2 +- .../lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt | 4 +- .../lemmyapi/v0/x19/x11/MapperGenerator.kt | 4 - .../lemmyapi/v0/x19/x11/Transformer.kt | 82 ++++++------------ .../x11/datatypes/BlockInstanceResponse.kt | 8 -- .../v0/x19/x11/datatypes/OpenGraphData.kt | 11 --- .../lemmyapi/v0/x19/x3/LemmyApiController.kt | 2 +- .../lemmyapi/v0/x19/x3/LemmyApiRouter.kt | 2 +- .../lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt | 4 +- .../lemmyapi/v0/x19/x3/MapperGenerator.kt | 4 - .../lemmyapi/v0/x19/x3/Transformer.kt | 83 ++++++------------- .../x19/x3/datatypes/BlockInstanceResponse.kt | 8 -- .../lemmyapi/v0/x19/x4/LemmyApiController.kt | 2 +- .../lemmyapi/v0/x19/x4/LemmyApiRouter.kt | 2 +- .../lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt | 4 +- .../lemmyapi/v0/x19/x4/MapperGenerator.kt | 4 - .../lemmyapi/v0/x19/x4/Transformer.kt | 83 ++++++------------- .../x19/x4/datatypes/BlockInstanceResponse.kt | 8 -- .../lemmyapi/v0/x19/x6/LemmyApiController.kt | 2 +- .../lemmyapi/v0/x19/x6/LemmyApiRouter.kt | 2 +- .../lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt | 4 +- .../lemmyapi/v0/x19/x6/MapperGenerator.kt | 4 - .../lemmyapi/v0/x19/x6/Transformer.kt | 83 ++++++------------- .../x19/x6/datatypes/BlockInstanceResponse.kt | 8 -- .../x0/x0/datatypes/AdminAllowInstanceId.kt | 2 +- .../x0/x0/datatypes/AdminBlockInstanceId.kt | 2 +- .../v1/x0/x0/datatypes/AdminPurgeCommentId.kt | 2 +- .../x0/x0/datatypes/AdminPurgeCommunityId.kt | 2 +- .../v1/x0/x0/datatypes/AdminPurgePersonId.kt | 2 +- .../v1/x0/x0/datatypes/AdminPurgePostId.kt | 2 +- .../lemmyapi/v1/x0/x0/datatypes/CommentId.kt | 2 +- .../v1/x0/x0/datatypes/CommentReplyId.kt | 2 +- .../v1/x0/x0/datatypes/CommentReportId.kt | 2 +- .../v1/x0/x0/datatypes/CommunityId.kt | 2 +- .../v1/x0/x0/datatypes/CommunityReportId.kt | 2 +- .../v1/x0/x0/datatypes/CreateCommentLike.kt | 2 +- .../v1/x0/x0/datatypes/CreateCommunity.kt | 3 +- .../v1/x0/x0/datatypes/CreatePostLike.kt | 2 +- .../lemmyapi/v1/x0/x0/datatypes/CreateSite.kt | 1 - .../v1/x0/x0/datatypes/CustomEmojiId.kt | 2 +- .../lemmyapi/v1/x0/x0/datatypes/DbUrl.kt | 2 +- .../v1/x0/x0/datatypes/EditCommunity.kt | 3 +- .../lemmyapi/v1/x0/x0/datatypes/EditSite.kt | 1 - .../lemmyapi/v1/x0/x0/datatypes/InstanceId.kt | 2 +- .../lemmyapi/v1/x0/x0/datatypes/LanguageId.kt | 2 +- .../v1/x0/x0/datatypes/LemmyErrorType.kt | 2 + .../v1/x0/x0/datatypes/ListLoginsResponse.kt | 8 -- .../lemmyapi/v1/x0/x0/datatypes/LocalSite.kt | 1 - .../v1/x0/x0/datatypes/LocalSiteId.kt | 2 +- .../lemmyapi/v1/x0/x0/datatypes/LocalUser.kt | 1 - .../v1/x0/x0/datatypes/LocalUserId.kt | 2 +- .../lemmyapi/v1/x0/x0/datatypes/ModAdd.kt | 2 +- .../v1/x0/x0/datatypes/ModAddCommunity.kt | 2 +- .../v1/x0/x0/datatypes/ModAddCommunityId.kt | 3 - .../lemmyapi/v1/x0/x0/datatypes/ModAddId.kt | 3 - .../lemmyapi/v1/x0/x0/datatypes/ModBan.kt | 2 +- .../v1/x0/x0/datatypes/ModBanFromCommunity.kt | 2 +- .../x0/x0/datatypes/ModBanFromCommunityId.kt | 3 - .../lemmyapi/v1/x0/x0/datatypes/ModBanId.kt | 3 - .../datatypes/ModChangeCommunityVisibility.kt | 5 +- .../ModChangeCommunityVisibilityId.kt | 3 - .../v1/x0/x0/datatypes/ModFeaturePost.kt | 2 +- .../v1/x0/x0/datatypes/ModFeaturePostId.kt | 3 - .../v1/x0/x0/datatypes/ModLockPost.kt | 2 +- .../v1/x0/x0/datatypes/ModLockPostId.kt | 3 - .../v1/x0/x0/datatypes/ModRemoveComment.kt | 2 +- .../v1/x0/x0/datatypes/ModRemoveCommentId.kt | 3 - .../v1/x0/x0/datatypes/ModRemoveCommunity.kt | 2 +- .../x0/x0/datatypes/ModRemoveCommunityId.kt | 3 - .../v1/x0/x0/datatypes/ModRemovePost.kt | 2 +- .../v1/x0/x0/datatypes/ModRemovePostId.kt | 3 - .../x0/x0/datatypes/ModTransferCommunity.kt | 2 +- .../x0/x0/datatypes/ModTransferCommunityId.kt | 3 - .../v1/x0/x0/datatypes/OAuthProviderId.kt | 2 +- .../v1/x0/x0/datatypes/OpenGraphData.kt | 11 --- .../v1/x0/x0/datatypes/PaginationCursor.kt | 2 +- .../x0/x0/datatypes/PersonCommentMentionId.kt | 2 +- .../lemmyapi/v1/x0/x0/datatypes/PersonId.kt | 2 +- .../v1/x0/x0/datatypes/PersonPostMentionId.kt | 2 +- .../lemmyapi/v1/x0/x0/datatypes/PostId.kt | 2 +- .../v1/x0/x0/datatypes/PostReportId.kt | 2 +- .../v1/x0/x0/datatypes/PrivateMessageId.kt | 2 +- .../x0/x0/datatypes/PrivateMessageReportId.kt | 2 +- .../v1/x0/x0/datatypes/PublicOAuthProvider.kt | 2 +- .../x0/datatypes/RegistrationApplicationId.kt | 2 +- .../v1/x0/x0/datatypes/SaveUserSettings.kt | 1 - .../v1/x0/x0/datatypes/SensitiveString.kt | 2 +- .../lemmyapi/v1/x0/x0/datatypes/Site.kt | 2 + .../lemmyapi/v1/x0/x0/datatypes/SiteId.kt | 2 +- .../v1/x0/x0/datatypes/SiteResponse.kt | 2 + .../v1/x0/x0/datatypes/SuccessResponse.kt | 8 -- .../lemmyapi/v1/x0/x0/datatypes/TagId.kt | 2 +- .../lemmyapi/v1/x0/x0/datatypes/TaglineId.kt | 2 +- .../lemmyapi/v1/x0/x0/datatypes/TagsView.kt | 2 +- 312 files changed, 1487 insertions(+), 633 deletions(-) create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminAllowInstance.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminAllowInstanceId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminAllowInstanceParams.kt rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/{InstanceBlockView.kt => AdminAllowInstanceView.kt} (63%) create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminBlockInstance.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminBlockInstanceId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminBlockInstanceView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgeCommentId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgeCommunityId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgePersonId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgePostId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ApproveCommunityPendingFollower.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AuthenticateWithOauth.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentActions.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentSlimView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityActions.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityReport.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityReportId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityReportResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityReportView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommunityReport.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommunityTag.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateOAuthProvider.kt rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/{BlockInstanceResponse.kt => CreateTagline.kt} (72%) create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeleteCommunityTag.kt rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/{PersonBlockView.kt => DeleteImageParams.kt} (68%) create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeleteOAuthProvider.kt rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/{CommunityBlockView.kt => DeleteTagline.kt} (66%) create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditOAuthProvider.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/FederationBlockList.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetCommentsSlimResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetCommunityPendingFollowsCount.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetCommunityPendingFollowsCountResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetRandomCommunity.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ImageGetParams.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ImageProxyParams.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/InstanceActions.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListBannedPersons.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommunityPendingFollows.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommunityPendingFollowsResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCustomEmojis.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCustomEmojisResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListInbox.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListInboxResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonContent.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonContentResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonSaved.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonSavedResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListReports.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListReportsResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListTaglinesResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkManyPostsAsRead.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkPersonCommentMentionAsRead.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkPersonPostMentionAsRead.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModChangeCommunityVisibility.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModChangeCommunityVisibilityView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/OAuthAccount.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/OAuthProvider.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/OAuthProviderId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PendingFollow.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonActions.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonCommentMention.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonCommentMentionId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonCommentMentionView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonPostMention.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonPostMentionId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonPostMentionView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PluginMetadata.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostActions.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PublicOAuthProvider.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ResendVerificationEmail.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ResolveCommunityReport.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SensitiveString.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Tag.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/TagId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/TaglineId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/TaglineResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/TagsView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UpdateCommunityTag.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UpdateTagline.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UploadImageResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UserBlockInstanceParams.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/BlockInstanceResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/BlockInstanceResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/OpenGraphData.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/BlockInstanceResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/BlockInstanceResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/BlockInstanceResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListLoginsResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddCommunityId.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddId.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanFromCommunityId.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanId.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModChangeCommunityVisibilityId.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModFeaturePostId.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockPostId.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveCommentId.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveCommunityId.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemovePostId.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModTransferCommunityId.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/OpenGraphData.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SuccessResponse.kt diff --git a/GeneratorScripts/build.gradle.kts b/GeneratorScripts/build.gradle.kts index 845fab31..8f321d5e 100644 --- a/GeneratorScripts/build.gradle.kts +++ b/GeneratorScripts/build.gradle.kts @@ -37,3 +37,5 @@ tasks.test { kotlin { jvmToolchain(17) } + +//TODO: make all typealias internal in sub datatypes diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x18x5.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x18x5.kt index 72f62d8d..04ee9b76 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x18x5.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x18x5.kt @@ -191,7 +191,6 @@ internal interface MapperGenerator0x18x5 { fun toUni(d: CommentResponse): it.vercruysse.lemmyapi.datatypes.CommentResponse - fun toUni(d: CommunityBlockView): it.vercruysse.lemmyapi.datatypes.CommunityBlockView fun toUni(d: CommunityFollowerView): it.vercruysse.lemmyapi.datatypes.CommunityFollowerView fun toUni(d: CommunityModeratorView): it.vercruysse.lemmyapi.datatypes.CommunityModeratorView fun toUni(d: CommunityResponse): it.vercruysse.lemmyapi.datatypes.CommunityResponse @@ -251,7 +250,6 @@ internal interface MapperGenerator0x18x5 { fun toUni(d: ModTransferCommunityView): it.vercruysse.lemmyapi.datatypes.ModTransferCommunityView fun toUni(d: Person): it.vercruysse.lemmyapi.datatypes.Person fun toUni(d: PersonAggregates): it.vercruysse.lemmyapi.datatypes.PersonAggregates - fun toUni(d: PersonBlockView): it.vercruysse.lemmyapi.datatypes.PersonBlockView fun toUni(d: PersonMention): it.vercruysse.lemmyapi.datatypes.PersonMention fun toUni(d: PersonMentionResponse): it.vercruysse.lemmyapi.datatypes.PersonMentionResponse diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x0.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x0.kt index 58ec1273..c6725f37 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x0.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x0.kt @@ -136,7 +136,6 @@ internal interface MapperGenerator0x19x0 { fun toUni(d: BannedPersonsResponse): it.vercruysse.lemmyapi.datatypes.BannedPersonsResponse fun toUni(d: BanPersonResponse): it.vercruysse.lemmyapi.datatypes.BanPersonResponse fun toUni(d: BlockCommunityResponse): it.vercruysse.lemmyapi.datatypes.BlockCommunityResponse - fun toUni(d: BlockInstanceResponse): it.vercruysse.lemmyapi.datatypes.BlockInstanceResponse fun toUni(d: BlockPersonResponse): it.vercruysse.lemmyapi.datatypes.BlockPersonResponse fun toUni(d: CaptchaResponse): it.vercruysse.lemmyapi.datatypes.CaptchaResponse fun toUni(d: Comment): it.vercruysse.lemmyapi.datatypes.Comment @@ -151,7 +150,6 @@ internal interface MapperGenerator0x19x0 { - fun toUni(d: CommunityBlockView): it.vercruysse.lemmyapi.datatypes.CommunityBlockView fun toUni(d: CommunityFollowerView): it.vercruysse.lemmyapi.datatypes.CommunityFollowerView fun toUni(d: CommunityModeratorView): it.vercruysse.lemmyapi.datatypes.CommunityModeratorView fun toUni(d: CommunityResponse): it.vercruysse.lemmyapi.datatypes.CommunityResponse @@ -178,7 +176,6 @@ internal interface MapperGenerator0x19x0 { fun toUni(d: GetUnreadCountResponse): it.vercruysse.lemmyapi.datatypes.GetUnreadCountResponse fun toUni(d: GetUnreadRegistrationApplicationCountResponse): it.vercruysse.lemmyapi.datatypes.GetUnreadRegistrationApplicationCountResponse fun toUni(d: Instance): it.vercruysse.lemmyapi.datatypes.Instance - fun toUni(d: InstanceBlockView): it.vercruysse.lemmyapi.datatypes.InstanceBlockView fun toUni(d: InstanceWithFederationState): it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState fun toUni(d: Language): it.vercruysse.lemmyapi.datatypes.Language fun toUni(d: ListCommentReportsResponse): it.vercruysse.lemmyapi.datatypes.ListCommentReportsResponse @@ -218,7 +215,6 @@ internal interface MapperGenerator0x19x0 { fun toUni(d: MyUserInfo): it.vercruysse.lemmyapi.datatypes.MyUserInfo fun toUni(d: Person): it.vercruysse.lemmyapi.datatypes.Person fun toUni(d: PersonAggregates): it.vercruysse.lemmyapi.datatypes.PersonAggregates - fun toUni(d: PersonBlockView): it.vercruysse.lemmyapi.datatypes.PersonBlockView fun toUni(d: PersonMention): it.vercruysse.lemmyapi.datatypes.PersonMention fun toUni(d: PersonMentionResponse): it.vercruysse.lemmyapi.datatypes.PersonMentionResponse diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt index 192f838a..1e64d699 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt @@ -25,7 +25,6 @@ internal interface MapperGenerator0x19x11 { fun toUni(d: BannedPersonsResponse): it.vercruysse.lemmyapi.datatypes.BannedPersonsResponse fun toUni(d: BanPersonResponse): it.vercruysse.lemmyapi.datatypes.BanPersonResponse fun toUni(d: BlockCommunityResponse): it.vercruysse.lemmyapi.datatypes.BlockCommunityResponse - fun toUni(d: BlockInstanceResponse): it.vercruysse.lemmyapi.datatypes.BlockInstanceResponse fun toUni(d: BlockPersonResponse): it.vercruysse.lemmyapi.datatypes.BlockPersonResponse fun toUni(d: CaptchaResponse): it.vercruysse.lemmyapi.datatypes.CaptchaResponse fun toUni(d: Comment): it.vercruysse.lemmyapi.datatypes.Comment @@ -40,7 +39,6 @@ internal interface MapperGenerator0x19x11 { fun toUni(d: CommentView): it.vercruysse.lemmyapi.datatypes.CommentView fun toUni(d: Community): it.vercruysse.lemmyapi.datatypes.Community fun toUni(d: CommunityAggregates): it.vercruysse.lemmyapi.datatypes.CommunityAggregates - fun toUni(d: CommunityBlockView): it.vercruysse.lemmyapi.datatypes.CommunityBlockView fun toUni(d: CommunityFollowerView): it.vercruysse.lemmyapi.datatypes.CommunityFollowerView fun toUni(d: CommunityModeratorView): it.vercruysse.lemmyapi.datatypes.CommunityModeratorView fun toUni(d: CommunityResponse): it.vercruysse.lemmyapi.datatypes.CommunityResponse @@ -68,7 +66,6 @@ internal interface MapperGenerator0x19x11 { fun toUni(d: GetUnreadRegistrationApplicationCountResponse): it.vercruysse.lemmyapi.datatypes.GetUnreadRegistrationApplicationCountResponse fun toUni(d: ImageDetails): it.vercruysse.lemmyapi.datatypes.ImageDetails fun toUni(d: Instance): it.vercruysse.lemmyapi.datatypes.Instance - fun toUni(d: InstanceBlockView): it.vercruysse.lemmyapi.datatypes.InstanceBlockView fun toUni(d: InstanceWithFederationState): it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState fun toUni(d: Language): it.vercruysse.lemmyapi.datatypes.Language fun toUni(d: LinkMetadata): it.vercruysse.lemmyapi.datatypes.LinkMetadata @@ -116,7 +113,6 @@ internal interface MapperGenerator0x19x11 { fun toUni(d: MyUserInfo): it.vercruysse.lemmyapi.datatypes.MyUserInfo fun toUni(d: Person): it.vercruysse.lemmyapi.datatypes.Person fun toUni(d: PersonAggregates): it.vercruysse.lemmyapi.datatypes.PersonAggregates - fun toUni(d: PersonBlockView): it.vercruysse.lemmyapi.datatypes.PersonBlockView fun toUni(d: PersonMention): it.vercruysse.lemmyapi.datatypes.PersonMention fun toUni(d: PersonMentionResponse): it.vercruysse.lemmyapi.datatypes.PersonMentionResponse fun toUni(d: PersonMentionView): it.vercruysse.lemmyapi.datatypes.PersonMentionView diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x3.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x3.kt index 33e1d079..0e05b467 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x3.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x3.kt @@ -129,7 +129,6 @@ internal interface MapperGenerator0x19x3 { fun toUni(d: BannedPersonsResponse): it.vercruysse.lemmyapi.datatypes.BannedPersonsResponse fun toUni(d: BanPersonResponse): it.vercruysse.lemmyapi.datatypes.BanPersonResponse fun toUni(d: BlockCommunityResponse): it.vercruysse.lemmyapi.datatypes.BlockCommunityResponse - fun toUni(d: BlockInstanceResponse): it.vercruysse.lemmyapi.datatypes.BlockInstanceResponse fun toUni(d: BlockPersonResponse): it.vercruysse.lemmyapi.datatypes.BlockPersonResponse fun toUni(d: CaptchaResponse): it.vercruysse.lemmyapi.datatypes.CaptchaResponse fun toUni(d: Comment): it.vercruysse.lemmyapi.datatypes.Comment @@ -144,7 +143,6 @@ internal interface MapperGenerator0x19x3 { - fun toUni(d: CommunityBlockView): it.vercruysse.lemmyapi.datatypes.CommunityBlockView fun toUni(d: CommunityFollowerView): it.vercruysse.lemmyapi.datatypes.CommunityFollowerView fun toUni(d: CommunityModeratorView): it.vercruysse.lemmyapi.datatypes.CommunityModeratorView fun toUni(d: CommunityResponse): it.vercruysse.lemmyapi.datatypes.CommunityResponse @@ -171,7 +169,6 @@ internal interface MapperGenerator0x19x3 { fun toUni(d: GetUnreadCountResponse): it.vercruysse.lemmyapi.datatypes.GetUnreadCountResponse fun toUni(d: GetUnreadRegistrationApplicationCountResponse): it.vercruysse.lemmyapi.datatypes.GetUnreadRegistrationApplicationCountResponse fun toUni(d: Instance): it.vercruysse.lemmyapi.datatypes.Instance - fun toUni(d: InstanceBlockView): it.vercruysse.lemmyapi.datatypes.InstanceBlockView fun toUni(d: InstanceWithFederationState): it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState fun toUni(d: Language): it.vercruysse.lemmyapi.datatypes.Language fun toUni(d: ListCommentLikesResponse): it.vercruysse.lemmyapi.datatypes.ListCommentLikesResponse @@ -213,7 +210,6 @@ internal interface MapperGenerator0x19x3 { fun toUni(d: MyUserInfo): it.vercruysse.lemmyapi.datatypes.MyUserInfo fun toUni(d: Person): it.vercruysse.lemmyapi.datatypes.Person fun toUni(d: PersonAggregates): it.vercruysse.lemmyapi.datatypes.PersonAggregates - fun toUni(d: PersonBlockView): it.vercruysse.lemmyapi.datatypes.PersonBlockView fun toUni(d: PersonMention): it.vercruysse.lemmyapi.datatypes.PersonMention fun toUni(d: PersonMentionResponse): it.vercruysse.lemmyapi.datatypes.PersonMentionResponse diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt index 7786c223..3297e23b 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt @@ -27,7 +27,6 @@ internal interface MapperGenerator0x19x4 { fun toUni(d: BannedPersonsResponse): it.vercruysse.lemmyapi.datatypes.BannedPersonsResponse fun toUni(d: BanPersonResponse): it.vercruysse.lemmyapi.datatypes.BanPersonResponse fun toUni(d: BlockCommunityResponse): it.vercruysse.lemmyapi.datatypes.BlockCommunityResponse - fun toUni(d: BlockInstanceResponse): it.vercruysse.lemmyapi.datatypes.BlockInstanceResponse fun toUni(d: BlockPersonResponse): it.vercruysse.lemmyapi.datatypes.BlockPersonResponse fun toUni(d: CaptchaResponse): it.vercruysse.lemmyapi.datatypes.CaptchaResponse fun toUni(d: Comment): it.vercruysse.lemmyapi.datatypes.Comment @@ -42,7 +41,6 @@ internal interface MapperGenerator0x19x4 { fun toUni(d: CommentView): it.vercruysse.lemmyapi.datatypes.CommentView fun toUni(d: Community): it.vercruysse.lemmyapi.datatypes.Community fun toUni(d: CommunityAggregates): it.vercruysse.lemmyapi.datatypes.CommunityAggregates - fun toUni(d: CommunityBlockView): it.vercruysse.lemmyapi.datatypes.CommunityBlockView fun toUni(d: CommunityFollowerView): it.vercruysse.lemmyapi.datatypes.CommunityFollowerView fun toUni(d: CommunityModeratorView): it.vercruysse.lemmyapi.datatypes.CommunityModeratorView fun toUni(d: CommunityResponse): it.vercruysse.lemmyapi.datatypes.CommunityResponse @@ -69,7 +67,6 @@ internal interface MapperGenerator0x19x4 { fun toUni(d: GetUnreadCountResponse): it.vercruysse.lemmyapi.datatypes.GetUnreadCountResponse fun toUni(d: GetUnreadRegistrationApplicationCountResponse): it.vercruysse.lemmyapi.datatypes.GetUnreadRegistrationApplicationCountResponse fun toUni(d: Instance): it.vercruysse.lemmyapi.datatypes.Instance - fun toUni(d: InstanceBlockView): it.vercruysse.lemmyapi.datatypes.InstanceBlockView fun toUni(d: InstanceWithFederationState): it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState fun toUni(d: Language): it.vercruysse.lemmyapi.datatypes.Language fun toUni(d: LinkMetadata): it.vercruysse.lemmyapi.datatypes.LinkMetadata @@ -117,7 +114,6 @@ internal interface MapperGenerator0x19x4 { fun toUni(d: MyUserInfo): it.vercruysse.lemmyapi.datatypes.MyUserInfo fun toUni(d: Person): it.vercruysse.lemmyapi.datatypes.Person fun toUni(d: PersonAggregates): it.vercruysse.lemmyapi.datatypes.PersonAggregates - fun toUni(d: PersonBlockView): it.vercruysse.lemmyapi.datatypes.PersonBlockView fun toUni(d: PersonMention): it.vercruysse.lemmyapi.datatypes.PersonMention fun toUni(d: PersonMentionResponse): it.vercruysse.lemmyapi.datatypes.PersonMentionResponse fun toUni(d: PersonMentionView): it.vercruysse.lemmyapi.datatypes.PersonMentionView diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt index 51f100bd..d11352e9 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt @@ -27,7 +27,6 @@ internal interface MapperGenerator0x19x6 { fun toUni(d: BannedPersonsResponse): it.vercruysse.lemmyapi.datatypes.BannedPersonsResponse fun toUni(d: BanPersonResponse): it.vercruysse.lemmyapi.datatypes.BanPersonResponse fun toUni(d: BlockCommunityResponse): it.vercruysse.lemmyapi.datatypes.BlockCommunityResponse - fun toUni(d: BlockInstanceResponse): it.vercruysse.lemmyapi.datatypes.BlockInstanceResponse fun toUni(d: BlockPersonResponse): it.vercruysse.lemmyapi.datatypes.BlockPersonResponse fun toUni(d: CaptchaResponse): it.vercruysse.lemmyapi.datatypes.CaptchaResponse fun toUni(d: Comment): it.vercruysse.lemmyapi.datatypes.Comment @@ -42,7 +41,6 @@ internal interface MapperGenerator0x19x6 { fun toUni(d: CommentView): it.vercruysse.lemmyapi.datatypes.CommentView fun toUni(d: Community): it.vercruysse.lemmyapi.datatypes.Community fun toUni(d: CommunityAggregates): it.vercruysse.lemmyapi.datatypes.CommunityAggregates - fun toUni(d: CommunityBlockView): it.vercruysse.lemmyapi.datatypes.CommunityBlockView fun toUni(d: CommunityFollowerView): it.vercruysse.lemmyapi.datatypes.CommunityFollowerView fun toUni(d: CommunityModeratorView): it.vercruysse.lemmyapi.datatypes.CommunityModeratorView fun toUni(d: CommunityResponse): it.vercruysse.lemmyapi.datatypes.CommunityResponse @@ -70,7 +68,6 @@ internal interface MapperGenerator0x19x6 { fun toUni(d: GetUnreadRegistrationApplicationCountResponse): it.vercruysse.lemmyapi.datatypes.GetUnreadRegistrationApplicationCountResponse fun toUni(d: ImageDetails): it.vercruysse.lemmyapi.datatypes.ImageDetails fun toUni(d: Instance): it.vercruysse.lemmyapi.datatypes.Instance - fun toUni(d: InstanceBlockView): it.vercruysse.lemmyapi.datatypes.InstanceBlockView fun toUni(d: InstanceWithFederationState): it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState fun toUni(d: Language): it.vercruysse.lemmyapi.datatypes.Language fun toUni(d: LinkMetadata): it.vercruysse.lemmyapi.datatypes.LinkMetadata @@ -118,7 +115,6 @@ internal interface MapperGenerator0x19x6 { fun toUni(d: MyUserInfo): it.vercruysse.lemmyapi.datatypes.MyUserInfo fun toUni(d: Person): it.vercruysse.lemmyapi.datatypes.Person fun toUni(d: PersonAggregates): it.vercruysse.lemmyapi.datatypes.PersonAggregates - fun toUni(d: PersonBlockView): it.vercruysse.lemmyapi.datatypes.PersonBlockView fun toUni(d: PersonMention): it.vercruysse.lemmyapi.datatypes.PersonMention fun toUni(d: PersonMentionResponse): it.vercruysse.lemmyapi.datatypes.PersonMentionResponse fun toUni(d: PersonMentionView): it.vercruysse.lemmyapi.datatypes.PersonMentionView diff --git a/GeneratorScripts/src/main/kotlin/autogenscripts/GenTypes.kt b/GeneratorScripts/src/main/kotlin/autogenscripts/GenTypes.kt index 354c761e..f803e7af 100644 --- a/GeneratorScripts/src/main/kotlin/autogenscripts/GenTypes.kt +++ b/GeneratorScripts/src/main/kotlin/autogenscripts/GenTypes.kt @@ -16,7 +16,7 @@ const val ROOT_PACKAGE_PATH = "it/vercruysse/lemmyapi/" const val ROOT_PACKAGE = "it.vercruysse.lemmyapi." const val CUSTOM_DATATYPES_PACKAGE = "dto." -val filesThatShouldNotBeAdded = setOf("others.ts", "DeleteAccountResponse.ts", "PasswordResetResponse.ts", "VerifyEmailResponse.ts", "SuccessResponse.ts") +val filesThatShouldNotBeAdded = setOf("SuccessResponse.ts", "OpenGraphData.ts") val propsThatShouldBeInt = setOf("my_vote") fun getTypesPath( @@ -60,6 +60,11 @@ fun downloadTypes( if (entry.name.startsWith(path) && !entry.isDirectory) { val name = entry.name.substring(path.length) val f = File(dest, name) + + if(filesThatShouldNotBeAdded.contains(name)) { + continue + } + f.createNewFile() f.writeBytes(zip.getInputStream(entry).readAllBytes()) } @@ -77,13 +82,6 @@ fun downloadTypes( "exit" ) - // Adds all the ts files to the command, "*.ts" does not work and causes an error -// for (f in dest.listFiles()!!) { -// if (f.name.endsWith(".ts") && f.isFile() && filesThatShouldNotBeAdded.contains(f.name).not()) { -// command.add("temp/${f.name}") -// } -// } - println("Starting Dukat process...") val proc = ProcessBuilder(command) .directory(datatypes) @@ -119,7 +117,7 @@ fun downloadTypes( var imports = "" // typealiases are not serializable - if (!originalTypeFile.contains("typealias")) { + if (!originalTypeFile.contains("internal typealias")) { imports += "import kotlinx.serialization.Serializable\n\n@Serializable" } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/Identity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/Identity.kt index 73987d1c..0f8be9e0 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/Identity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/Identity.kt @@ -3,7 +3,7 @@ package it.vercruysse.lemmyapi /** * This declares a property to compare the identity of two objects of the same type * - * This is useful to create to define uniqueness when the other fields can be different + * This is useful to define uniqueness when the other fields can be different */ interface Identity { val id: Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt index 92d1a8ea..2684fa7a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt @@ -627,7 +627,7 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version * * @POST("site/block") */ - abstract suspend fun blockInstance(form: BlockInstance): Result + abstract suspend fun blockInstance(form: BlockInstance): Result /** * Generate a TOTP / two-factor secret. diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminAllowInstance.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminAllowInstance.kt new file mode 100644 index 00000000..90dc4e3a --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminAllowInstance.kt @@ -0,0 +1,16 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class AdminAllowInstance( + val id: AdminAllowInstanceId, + val instance_id: InstanceId, + val admin_person_id: PersonId, + val allowed: Boolean, + val reason: String? = null, + val published: String, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminAllowInstanceId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminAllowInstanceId.kt new file mode 100644 index 00000000..054f5d74 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminAllowInstanceId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.datatypes + +typealias AdminAllowInstanceId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminAllowInstanceParams.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminAllowInstanceParams.kt new file mode 100644 index 00000000..6446e6e6 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminAllowInstanceParams.kt @@ -0,0 +1,13 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class AdminAllowInstanceParams( + val instance: String, + val allow: Boolean, + val reason: String? = null, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/InstanceBlockView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminAllowInstanceView.kt similarity index 63% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/InstanceBlockView.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminAllowInstanceView.kt index 989a3b90..c02e84ec 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/InstanceBlockView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminAllowInstanceView.kt @@ -1,14 +1,13 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable -data class InstanceBlockView( - val person: Person, +data class AdminAllowInstanceView( + val admin_allow_instance: AdminAllowInstance, val instance: Instance, - val site: Site? = null, -) : DatatypeRoot + val admin: Person? = null, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminBlockInstance.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminBlockInstance.kt new file mode 100644 index 00000000..a678481f --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminBlockInstance.kt @@ -0,0 +1,17 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class AdminBlockInstance( + val id: AdminBlockInstanceId, + val instance_id: InstanceId, + val admin_person_id: PersonId, + val blocked: Boolean, + val reason: String? = null, + val expires: String? = null, + val published: String, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminBlockInstanceId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminBlockInstanceId.kt new file mode 100644 index 00000000..2b5431bc --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminBlockInstanceId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.datatypes + +typealias AdminBlockInstanceId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminBlockInstanceView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminBlockInstanceView.kt new file mode 100644 index 00000000..461fe542 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminBlockInstanceView.kt @@ -0,0 +1,13 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class AdminBlockInstanceView( + val admin_block_instance: AdminBlockInstance, + val instance: Instance, + val admin: Person? = null, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgeComment.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgeComment.kt index b9f86111..79515768 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgeComment.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgeComment.kt @@ -8,9 +8,9 @@ import it.vercruysse.lemmyapi.CommonParcelize @CommonParcelize @Serializable data class AdminPurgeComment( - val id: Long, + val id: AdminPurgeCommentId, val admin_person_id: PersonId, val post_id: PostId, val reason: String? = null, - val when_: String, + val published: String, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgeCommentId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgeCommentId.kt new file mode 100644 index 00000000..bcadab43 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgeCommentId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.datatypes + +typealias AdminPurgeCommentId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgeCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgeCommunity.kt index cca3375e..8869cdaa 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgeCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgeCommunity.kt @@ -9,8 +9,8 @@ import it.vercruysse.lemmyapi.CommonParcelize @CommonParcelize @Serializable data class AdminPurgeCommunity( - override val id: Long, + override val id: AdminPurgeCommunityId, val admin_person_id: PersonId, val reason: String? = null, - val when_: String, + val published: String, ) : DatatypeRoot, Identity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgeCommunityId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgeCommunityId.kt new file mode 100644 index 00000000..c35539cf --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgeCommunityId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.datatypes + +typealias AdminPurgeCommunityId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgePerson.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgePerson.kt index 40d969e2..e39b5928 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgePerson.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgePerson.kt @@ -9,8 +9,8 @@ import it.vercruysse.lemmyapi.CommonParcelize @CommonParcelize @Serializable data class AdminPurgePerson( - override val id: Long, + override val id: AdminPurgePersonId, val admin_person_id: PersonId, val reason: String? = null, - val when_: String, + val published: String, ) : DatatypeRoot, Identity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgePersonId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgePersonId.kt new file mode 100644 index 00000000..98e7d056 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgePersonId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.datatypes + +typealias AdminPurgePersonId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgePost.kt index e6a12cbd..b067d12b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgePost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgePost.kt @@ -9,9 +9,9 @@ import it.vercruysse.lemmyapi.CommonParcelize @CommonParcelize @Serializable data class AdminPurgePost( - override val id: Long, + override val id: AdminPurgePostId, val admin_person_id: PersonId, val community_id: CommunityId, val reason: String? = null, - val when_: String, + val published: String, ) : DatatypeRoot, Identity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgePostId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgePostId.kt new file mode 100644 index 00000000..4eed36cb --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgePostId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.datatypes + +typealias AdminPurgePostId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ApproveCommunityPendingFollower.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ApproveCommunityPendingFollower.kt new file mode 100644 index 00000000..7693afc1 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ApproveCommunityPendingFollower.kt @@ -0,0 +1,13 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +internal data class ApproveCommunityPendingFollower( + val community_id: CommunityId, + val follower_id: PersonId, + val approve: Boolean, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AuthenticateWithOauth.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AuthenticateWithOauth.kt new file mode 100644 index 00000000..6da43790 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AuthenticateWithOauth.kt @@ -0,0 +1,17 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class AuthenticateWithOauth( + val code: String, + val oauth_provider_id: OAuthProviderId, + val redirect_uri: String, + val show_nsfw: Boolean? = null, + val username: String? = null, + val answer: String? = null, + val pkce_code_verifier: String? = null, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BanFromCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BanFromCommunity.kt index 40ae44b7..d0039854 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BanFromCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BanFromCommunity.kt @@ -11,7 +11,7 @@ data class BanFromCommunity( val community_id: CommunityId, val person_id: PersonId, val ban: Boolean, - val remove_data: Boolean? = null, + val remove_or_restore_data: Boolean? = null, val reason: String? = null, val expires: Long? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BanPerson.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BanPerson.kt index 0598cf6c..20d93c32 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BanPerson.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BanPerson.kt @@ -10,7 +10,7 @@ import it.vercruysse.lemmyapi.CommonParcelize data class BanPerson( val person_id: PersonId, val ban: Boolean, - val remove_data: Boolean? = null, + val remove_or_restore_data: Boolean? = null, val reason: String? = null, val expires: Long? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BannedPersonsResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BannedPersonsResponse.kt index fdb13b31..883b69cd 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BannedPersonsResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BannedPersonsResponse.kt @@ -5,6 +5,7 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: 1.0.0 lemmy types are outdated Banned renamed to Hidden @CommonParcelize @Serializable data class BannedPersonsResponse( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BlockInstance.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BlockInstance.kt index 41bbbcb0..d4c3e1d6 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BlockInstance.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BlockInstance.kt @@ -5,6 +5,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: renamed to UserBlockInstanceParams + @CommonParcelize @Serializable data class BlockInstance( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ChangePassword.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ChangePassword.kt index 17b81fde..5a842fbc 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ChangePassword.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ChangePassword.kt @@ -8,7 +8,7 @@ import it.vercruysse.lemmyapi.CommonParcelize @CommonParcelize @Serializable data class ChangePassword( - val new_password: String, - val new_password_verify: String, - val old_password: String, + val new_password: SensitiveString, + val new_password_verify: SensitiveString, + val old_password: SensitiveString, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Comment.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Comment.kt index a6f8caf2..1acd37ea 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Comment.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Comment.kt @@ -6,6 +6,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: many changes look into it + @CommonParcelize @Serializable data class Comment( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentActions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentActions.kt new file mode 100644 index 00000000..013f120c --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentActions.kt @@ -0,0 +1,15 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class CommentActions( + val person_id: PersonId, + val comment_id: CommentId, + val like_score: Long? = null, + val liked: String? = null, + val saved: String? = null, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentAggregates.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentAggregates.kt index aed77cc1..bacda810 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentAggregates.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentAggregates.kt @@ -5,6 +5,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: seems to be flat pressed into Comment + @CommonParcelize @Serializable data class CommentAggregates( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReplyResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReplyResponse.kt index 694643cd..55d80a5b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReplyResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReplyResponse.kt @@ -5,6 +5,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: Inbox endpoints merged + @CommonParcelize @Serializable data class CommentReplyResponse( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReplyView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReplyView.kt index 0745ad64..79a3cea0 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReplyView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReplyView.kt @@ -7,6 +7,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: changed look into it + @CommonParcelize @Serializable data class CommentReplyView( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReportView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReportView.kt index 682a0728..99e148e0 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReportView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReportView.kt @@ -7,6 +7,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: changed + @CommonParcelize @Serializable data class CommentReportView( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentSlimView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentSlimView.kt new file mode 100644 index 00000000..2d361460 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentSlimView.kt @@ -0,0 +1,21 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class CommentSlimView( + val comment: Comment, + val creator: Person, + val comment_actions: CommentActions? = null, + val person_actions: PersonActions? = null, + val creator_community_actions: CommunityActions? = null, + val instance_actions: InstanceActions? = null, + val creator_home_instance_actions: InstanceActions? = null, + val creator_local_instance_actions: InstanceActions? = null, + val creator_is_admin: Boolean, + val can_mod: Boolean, + val creator_banned: Boolean, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentView.kt index e8688a90..f82ec4b1 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentView.kt @@ -7,6 +7,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: changed + @CommonParcelize @Serializable data class CommentView( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Community.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Community.kt index 1b6f3841..ac5143a1 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Community.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Community.kt @@ -7,6 +7,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// Changed + @CommonParcelize @Serializable data class Community( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityActions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityActions.kt new file mode 100644 index 00000000..1bf97c68 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityActions.kt @@ -0,0 +1,19 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class CommunityActions( + val community_id: CommunityId, + val person_id: PersonId, + val followed: String? = null, + val follow_state: String? /* "Accepted" | "Pending" | "ApprovalRequired" */ = null, + val follow_approver_id: PersonId? = null, + val blocked: String? = null, + val became_moderator: String? = null, + val received_ban: String? = null, + val ban_expires: String? = null, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityAggregates.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityAggregates.kt index 29d5db5f..c689d1e4 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityAggregates.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityAggregates.kt @@ -5,6 +5,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: changed, prob flat pressed + @CommonParcelize @Serializable data class CommunityAggregates( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityReport.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityReport.kt new file mode 100644 index 00000000..48e462c0 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityReport.kt @@ -0,0 +1,25 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import it.vercruysse.lemmyapi.Identity +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class CommunityReport( + override val id: CommunityReportId, + val creator_id: it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PersonId, + val community_id: CommunityId, + val original_community_name: String, + val original_community_title: String, + val original_community_description: String? = null, + val original_community_sidebar: String? = null, + val original_community_icon: String? = null, + val original_community_banner: String? = null, + val reason: String, + val resolved: Boolean, + val resolver_id: PersonId? = null, + val published: String, + val updated: String? = null, +): DatatypeRoot, Identity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityReportId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityReportId.kt new file mode 100644 index 00000000..f8e33742 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityReportId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.datatypes + +typealias CommunityReportId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityReportResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityReportResponse.kt new file mode 100644 index 00000000..696a09e3 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityReportResponse.kt @@ -0,0 +1,11 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class CommunityReportResponse( + val community_report_view: CommunityReportView, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityReportView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityReportView.kt new file mode 100644 index 00000000..14a4f01d --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityReportView.kt @@ -0,0 +1,14 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class CommunityReportView( + val community_report: CommunityReport, + val community: Community, + val creator: Person, + val resolver: Person? = null, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityView.kt index 1b3b8591..080d6760 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityView.kt @@ -6,6 +6,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: changed + @CommonParcelize @Serializable data class CommunityView( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommentReport.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommentReport.kt index b2557f36..6cd2f3ab 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommentReport.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommentReport.kt @@ -10,4 +10,6 @@ import it.vercruysse.lemmyapi.CommonParcelize data class CreateCommentReport( val comment_id: CommentId, val reason: String, + /** Added in Lemmy 1.0.0 */ + val violates_instance_rules: Boolean? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommunity.kt index 7d2963f1..230ca8a9 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommunity.kt @@ -6,6 +6,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: changed + @CommonParcelize @Serializable data class CreateCommunity( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommunityReport.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommunityReport.kt new file mode 100644 index 00000000..c9447e32 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommunityReport.kt @@ -0,0 +1,12 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class CreateCommunityReport( + val community_id: CommunityId, + val reason: String, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommunityTag.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommunityTag.kt new file mode 100644 index 00000000..9908f5a8 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommunityTag.kt @@ -0,0 +1,12 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +internal data class CreateCommunityTag( + val community_id: CommunityId, + val display_name: String, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateOAuthProvider.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateOAuthProvider.kt new file mode 100644 index 00000000..8895aed0 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateOAuthProvider.kt @@ -0,0 +1,23 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class CreateOAuthProvider( + val display_name: String, + val issuer: String, + val authorization_endpoint: String, + val token_endpoint: String, + val userinfo_endpoint: String, + val id_claim: String, + val client_id: String, + val client_secret: String, + val scopes: String, + val auto_verify_email: Boolean? = null, + val account_linking_enabled: Boolean? = null, + val use_pkce: Boolean? = null, + val enabled: Boolean? = null, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreatePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreatePost.kt index 1a51d878..e3d8b0ae 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreatePost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreatePost.kt @@ -4,6 +4,7 @@ import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.TagId @CommonParcelize @Serializable @@ -17,4 +18,8 @@ data class CreatePost( val nsfw: Boolean? = null, val language_id: LanguageId? = null, val custom_thumbnail: String? = null, + /** Added in Lemmy 1.0.0 */ + val tags: List? = null, + /** Added in Lemmy 1.0.0 */ + val scheduled_publish_time: Long? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreatePostReport.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreatePostReport.kt index a22d3915..0627e954 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreatePostReport.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreatePostReport.kt @@ -10,4 +10,6 @@ import it.vercruysse.lemmyapi.CommonParcelize data class CreatePostReport( val post_id: PostId, val reason: String, + /** Added in Lemmy 1.0.0 */ + val violates_instance_rules: Boolean? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateSite.kt index 4e3c8fc3..e9329dc9 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateSite.kt @@ -9,6 +9,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: has changed + @CommonParcelize @Serializable data class CreateSite( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BlockInstanceResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateTagline.kt similarity index 72% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BlockInstanceResponse.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateTagline.kt index 1f876334..898418c2 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BlockInstanceResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateTagline.kt @@ -1,12 +1,11 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable -data class BlockInstanceResponse( - val blocked: Boolean, -) : DatatypeRoot +internal data class CreateTagline( + val content: String, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CustomEmoji.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CustomEmoji.kt index 6048266f..2e9380e5 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CustomEmoji.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CustomEmoji.kt @@ -5,6 +5,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: local_site_id is removed look into + @CommonParcelize @Serializable data class CustomEmoji( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeleteAccount.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeleteAccount.kt index e458d91b..64453c81 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeleteAccount.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeleteAccount.kt @@ -8,6 +8,6 @@ import it.vercruysse.lemmyapi.CommonParcelize @CommonParcelize @Serializable data class DeleteAccount( - val password: String, + val password: SensitiveString, val delete_content: Boolean, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeleteCommunityTag.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeleteCommunityTag.kt new file mode 100644 index 00000000..460d88a2 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeleteCommunityTag.kt @@ -0,0 +1,12 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.TagId +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class DeleteCommunityTag( + val tag_id: TagId, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonBlockView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeleteImageParams.kt similarity index 68% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonBlockView.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeleteImageParams.kt index 82f0005d..b4bd2e82 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonBlockView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeleteImageParams.kt @@ -1,13 +1,11 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable -data class PersonBlockView( - val person: Person, - val target: Person, -) : DatatypeRoot +data class DeleteImageParams( + val filename: String, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeleteOAuthProvider.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeleteOAuthProvider.kt new file mode 100644 index 00000000..3f6b51a2 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeleteOAuthProvider.kt @@ -0,0 +1,12 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.OAuthProviderId +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class DeleteOAuthProvider( + val id: OAuthProviderId, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityBlockView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeleteTagline.kt similarity index 66% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityBlockView.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeleteTagline.kt index 787e4073..2e89fe90 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityBlockView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeleteTagline.kt @@ -1,13 +1,11 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable -data class CommunityBlockView( - val person: Person, - val community: Community, -) : DatatypeRoot +data class DeleteTagline( + val id: TaglineId, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditCommunity.kt index c963523f..bb52a3bb 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditCommunity.kt @@ -11,8 +11,12 @@ import it.vercruysse.lemmyapi.CommonParcelize data class EditCommunity( val community_id: CommunityId, val title: String? = null, + /** Added in Lemmy 1.0.0 */ + val sidebar: String? = null, val description: String? = null, + /** Removed in Lemmy 1.0.0 */ val icon: String? = null, + /** Removed in Lemmy 1.0.0 */ val banner: String? = null, val nsfw: Boolean? = null, val posting_restricted_to_mods: Boolean? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditOAuthProvider.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditOAuthProvider.kt new file mode 100644 index 00000000..31c12ef6 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditOAuthProvider.kt @@ -0,0 +1,22 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +internal data class EditOAuthProvider( + val id: OAuthProviderId, + val display_name: String? = null, + val authorization_endpoint: String? = null, + val token_endpoint: String? = null, + val userinfo_endpoint: String? = null, + val id_claim: String? = null, + val client_secret: String? = null, + val scopes: String? = null, + val auto_verify_email: Boolean? = null, + val account_linking_enabled: Boolean? = null, + val use_pkce: Boolean? = null, + val enabled: Boolean? = null, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditPost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditPost.kt index d367bebf..391ac51f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditPost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditPost.kt @@ -16,4 +16,8 @@ data class EditPost( val nsfw: Boolean? = null, val language_id: LanguageId? = null, val custom_thumbnail: String? = null, + /** Added in Lemmy 1.0.0 */ + val scheduled_publish_time: Long? = null, + /** Added in Lemmy 1.0.0 */ + val tags: List? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt index 1867d795..f6a4fb64 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt @@ -9,6 +9,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: many changes + @CommonParcelize @Serializable data class EditSite( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/FederationBlockList.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/FederationBlockList.kt new file mode 100644 index 00000000..e200370b --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/FederationBlockList.kt @@ -0,0 +1,15 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.InstanceId +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class FederationBlockList( + val instance_id: InstanceId, + val published: String, + val updated: String? = null, + val expires: String? = null, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GenerateTotpSecretResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GenerateTotpSecretResponse.kt index 19cf23c1..2c166666 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GenerateTotpSecretResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GenerateTotpSecretResponse.kt @@ -8,5 +8,5 @@ import it.vercruysse.lemmyapi.CommonParcelize @CommonParcelize @Serializable data class GenerateTotpSecretResponse( - val totp_secret_url: String, + val totp_secret_url: SensitiveString, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetComments.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetComments.kt index c408a152..8deef48c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetComments.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetComments.kt @@ -7,6 +7,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: many changes + @CommonParcelize @Serializable data class GetComments( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetCommentsResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetCommentsResponse.kt index a30feb7a..27763ca3 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetCommentsResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetCommentsResponse.kt @@ -9,4 +9,8 @@ import it.vercruysse.lemmyapi.CommonParcelize @Serializable data class GetCommentsResponse( val comments: List, + /** Added in Lemmy 1.0.0 */ + val next_page: PaginationCursor? = null, + /** Added in Lemmy 1.0.0 */ + val prev_page: PaginationCursor? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetCommentsSlimResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetCommentsSlimResponse.kt new file mode 100644 index 00000000..daceef42 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetCommentsSlimResponse.kt @@ -0,0 +1,13 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +internal data class GetCommentsSlimResponse( + val comments: List, + val next_page: PaginationCursor? = null, + val prev_page: PaginationCursor? = null, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetCommunityPendingFollowsCount.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetCommunityPendingFollowsCount.kt new file mode 100644 index 00000000..d558ef1a --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetCommunityPendingFollowsCount.kt @@ -0,0 +1,11 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class GetCommunityPendingFollowsCount( + val community_id: CommunityId, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetCommunityPendingFollowsCountResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetCommunityPendingFollowsCountResponse.kt new file mode 100644 index 00000000..d67b9ee0 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetCommunityPendingFollowsCountResponse.kt @@ -0,0 +1,11 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class GetCommunityPendingFollowsCountResponse( + val count: Long, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetModlog.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetModlog.kt index b9c35494..dd622370 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetModlog.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetModlog.kt @@ -6,6 +6,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: many changes + @CommonParcelize @Serializable data class GetModlog( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetModlogResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetModlogResponse.kt index 86162c50..ae332d9e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetModlogResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetModlogResponse.kt @@ -5,6 +5,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: complex changes + @CommonParcelize @Serializable data class GetModlogResponse( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPersonDetails.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPersonDetails.kt index 004f21f0..38909e46 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPersonDetails.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPersonDetails.kt @@ -6,6 +6,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: many removed, research + @CommonParcelize @Serializable data class GetPersonDetails( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPersonDetailsResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPersonDetailsResponse.kt index a7f221f4..d9af1409 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPersonDetailsResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPersonDetailsResponse.kt @@ -5,6 +5,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: Removed research + @CommonParcelize @Serializable data class GetPersonDetailsResponse( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPostResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPostResponse.kt index 81720c3d..6abc00da 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPostResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPostResponse.kt @@ -5,6 +5,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: moderators removed + @CommonParcelize @Serializable data class GetPostResponse( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPosts.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPosts.kt index 52a1e941..24f1e7c9 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPosts.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPosts.kt @@ -8,6 +8,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.dto.PAGE_CURSOR_GUARD +// TODO: many changes + @CommonParcelize @Serializable data class GetPosts( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPostsResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPostsResponse.kt index 09cc5ec7..4c031765 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPostsResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPostsResponse.kt @@ -10,4 +10,5 @@ import it.vercruysse.lemmyapi.CommonParcelize data class GetPostsResponse( val posts: List, val next_page: PaginationCursor? = null, + val prev_page: PaginationCursor? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetRandomCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetRandomCommunity.kt new file mode 100644 index 00000000..d9144fe4 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetRandomCommunity.kt @@ -0,0 +1,13 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import it.vercruysse.lemmyapi.dto.ListingType +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class GetRandomCommunity( + val type_: ListingType? /* "All" | "Local" | "Subscribed" | "ModeratorView" */ = null, + val show_nsfw: Boolean? = null, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetReportCountResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetReportCountResponse.kt index 1a90d0f7..3a640baf 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetReportCountResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetReportCountResponse.kt @@ -5,6 +5,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: many removal + @CommonParcelize @Serializable data class GetReportCountResponse( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetSiteResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetSiteResponse.kt index 56e6e01f..f2592169 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetSiteResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetSiteResponse.kt @@ -5,6 +5,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: many changes + @CommonParcelize @Serializable data class GetSiteResponse( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetUnreadCountResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetUnreadCountResponse.kt index 98c67fa8..3c25b174 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetUnreadCountResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetUnreadCountResponse.kt @@ -5,6 +5,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO changes + @CommonParcelize @Serializable data class GetUnreadCountResponse( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/HidePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/HidePost.kt index 5a45a03d..fc9de690 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/HidePost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/HidePost.kt @@ -5,6 +5,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO changes again + @CommonParcelize @Serializable data class HidePost( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ImageDetails.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ImageDetails.kt index 7ace23e4..c27d93ad 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ImageDetails.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ImageDetails.kt @@ -11,4 +11,6 @@ data class ImageDetails( val width: Long, val height: Long, val content_type: String, + /** Added in Lemmy 1.0.0 */ + val blurhash: String? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ImageGetParams.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ImageGetParams.kt new file mode 100644 index 00000000..4cced727 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ImageGetParams.kt @@ -0,0 +1,12 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class ImageGetParams( + val file_type: String? = null, + val max_size: Long? = null, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ImageProxyParams.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ImageProxyParams.kt new file mode 100644 index 00000000..a6e7570f --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ImageProxyParams.kt @@ -0,0 +1,13 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class ImageProxyParams( + val url: String, + val file_type: String? = null, + val max_size: Long? = null, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/InstanceActions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/InstanceActions.kt new file mode 100644 index 00000000..43cae8a7 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/InstanceActions.kt @@ -0,0 +1,15 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class InstanceActions( + val person_id: PersonId, + val instance_id: InstanceId, + val blocked: String? = null, + val received_ban: String? = null, + val ban_expires: String? = null, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListBannedPersons.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListBannedPersons.kt new file mode 100644 index 00000000..8cc441fc --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListBannedPersons.kt @@ -0,0 +1,15 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +// TODO: prob changed in latest types + +@CommonParcelize +@Serializable +data class ListBannedPersons( + val page_cursor: PaginationCursor? = null, + val page_back: Boolean? = null, + val limit: Long? = null, +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommentLikes.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommentLikes.kt index ee599ba4..fb5144ad 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommentLikes.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommentLikes.kt @@ -5,6 +5,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: cursor changes + @CommonParcelize @Serializable data class ListCommentLikes( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommentLikesResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommentLikesResponse.kt index e0a99a6d..1b6e3ab2 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommentLikesResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommentLikesResponse.kt @@ -9,4 +9,8 @@ import it.vercruysse.lemmyapi.CommonParcelize @Serializable data class ListCommentLikesResponse( val comment_likes: List, + /** Added in Lemmy 1.0.0 */ + val next_page: PaginationCursor? = null, + /** Added in Lemmy 1.0.0 */ + val prev_page: PaginationCursor? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommentReports.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommentReports.kt index 2eaf9206..ae290c13 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommentReports.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommentReports.kt @@ -5,6 +5,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: removed + @CommonParcelize @Serializable data class ListCommentReports( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommentReportsResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommentReportsResponse.kt index b3f967f6..aa7f5116 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommentReportsResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommentReportsResponse.kt @@ -5,6 +5,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: removed + @CommonParcelize @Serializable data class ListCommentReportsResponse( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommunities.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommunities.kt index eb92ceec..4dd0a46c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommunities.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommunities.kt @@ -7,6 +7,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: changes + @CommonParcelize @Serializable data class ListCommunities( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommunitiesResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommunitiesResponse.kt index cc382df0..50062fc8 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommunitiesResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommunitiesResponse.kt @@ -9,4 +9,8 @@ import it.vercruysse.lemmyapi.CommonParcelize @Serializable data class ListCommunitiesResponse( val communities: List, + /** Added in Lemmy 1.0.0 */ + val next_page: PaginationCursor? = null, + /** Added in Lemmy 1.0.0 */ + val prev_page: PaginationCursor? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommunityPendingFollows.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommunityPendingFollows.kt new file mode 100644 index 00000000..e630e7b5 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommunityPendingFollows.kt @@ -0,0 +1,15 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class ListCommunityPendingFollows( + val pending_only: Boolean? = null, + val all_communities: Boolean? = null, + val page_cursor: PaginationCursor? = null, + val page_back: Boolean? = null, + val limit: Long? = null, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommunityPendingFollowsResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommunityPendingFollowsResponse.kt new file mode 100644 index 00000000..bdf49489 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommunityPendingFollowsResponse.kt @@ -0,0 +1,13 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class ListCommunityPendingFollowsResponse( + val items: List, + val next_page: PaginationCursor? = null, + val prev_page: PaginationCursor? = null, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCustomEmojis.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCustomEmojis.kt new file mode 100644 index 00000000..b21070d7 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCustomEmojis.kt @@ -0,0 +1,11 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class ListCustomEmojis( + val category: String? = null, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCustomEmojisResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCustomEmojisResponse.kt new file mode 100644 index 00000000..dd53dded --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCustomEmojisResponse.kt @@ -0,0 +1,11 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +internal data class ListCustomEmojisResponse( + val custom_emojis: List, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListInbox.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListInbox.kt new file mode 100644 index 00000000..dd8e5959 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListInbox.kt @@ -0,0 +1,16 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import it.vercruysse.lemmyapi.dto.ListingType +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class ListInbox( + val type_: ListingType? /* "All" | "CommentReply" | "CommentMention" | "PostMention" | "PrivateMessage" */ = null, + val unread_only: Boolean? = null, + val page_cursor: PaginationCursor? = null, + val page_back: Boolean? = null, + val limit: Long? = null, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListInboxResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListInboxResponse.kt new file mode 100644 index 00000000..853b646a --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListInboxResponse.kt @@ -0,0 +1,14 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +// TODO: deal with dynamic +@CommonParcelize +@Serializable +data class ListInboxResponse( + val inbox: List, + val next_page: it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PaginationCursor? = null, + val prev_page: PaginationCursor? = null, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListMedia.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListMedia.kt index 5c2b2fc9..ac1c06ef 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListMedia.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListMedia.kt @@ -5,6 +5,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: cursor changes + @CommonParcelize @Serializable data class ListMedia( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListMediaResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListMediaResponse.kt index 07ed3606..2d9132b2 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListMediaResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListMediaResponse.kt @@ -9,4 +9,8 @@ import it.vercruysse.lemmyapi.CommonParcelize @Serializable data class ListMediaResponse( val images: List, + /** Added in Lemmy 1.0.0 */ + val next_page: PaginationCursor? = null, + /** Added in Lemmy 1.0.0 */ + val prev_page: PaginationCursor? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonContent.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonContent.kt new file mode 100644 index 00000000..2c085b5e --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonContent.kt @@ -0,0 +1,17 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import it.vercruysse.lemmyapi.dto.ListingType +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class ListPersonContent( + val type_: ListingType? /* "All" | "Comments" | "Posts" */ = null, + val person_id: PersonId? = null, + val username: String? = null, + val page_cursor: PaginationCursor? = null, + val page_back: Boolean? = null, + val limit: Long? = null, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonContentResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonContentResponse.kt new file mode 100644 index 00000000..23bd2a33 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonContentResponse.kt @@ -0,0 +1,15 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +// TODO: dynamic stuff + +@CommonParcelize +@Serializable +data class ListPersonContentResponse( + val content: List, + val next_page: it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PaginationCursor? = null, + val prev_page: PaginationCursor? = null, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonSaved.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonSaved.kt new file mode 100644 index 00000000..02e8d829 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonSaved.kt @@ -0,0 +1,15 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import it.vercruysse.lemmyapi.dto.ListingType +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class ListPersonSaved( + val type_: ListingType? /* "All" | "Comments" | "Posts" */ = null, + val page_cursor: PaginationCursor? = null, + val page_back: Boolean? = null, + val limit: Long? = null, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonSavedResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonSavedResponse.kt new file mode 100644 index 00000000..e5bde5cf --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonSavedResponse.kt @@ -0,0 +1,16 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PaginationCursor +import kotlinx.serialization.Serializable + +// TODO: dynamic stuff + +@CommonParcelize +@Serializable +data class ListPersonSavedResponse( + val saved: List, + val next_page: it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PaginationCursor? = null, + val prev_page: PaginationCursor? = null, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPostLikes.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPostLikes.kt index 8c0165f4..ff93201f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPostLikes.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPostLikes.kt @@ -5,6 +5,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: cursor changes + @CommonParcelize @Serializable data class ListPostLikes( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPostLikesResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPostLikesResponse.kt index 10622243..8bc45783 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPostLikesResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPostLikesResponse.kt @@ -9,4 +9,8 @@ import it.vercruysse.lemmyapi.CommonParcelize @Serializable data class ListPostLikesResponse( val post_likes: List, + /** Added in Lemmy 1.0.0 */ + val next_page: PaginationCursor? = null, + /** Added in Lemmy 1.0.0 */ + val prev_page: PaginationCursor? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPostReports.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPostReports.kt index ebe99de4..63ac2cea 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPostReports.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPostReports.kt @@ -5,6 +5,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: removed + @CommonParcelize @Serializable data class ListPostReports( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPostReportsResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPostReportsResponse.kt index c3abf451..771f167e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPostReportsResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPostReportsResponse.kt @@ -5,6 +5,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: removed + @CommonParcelize @Serializable data class ListPostReportsResponse( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPrivateMessageReports.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPrivateMessageReports.kt index 7b0f1627..bb9d1b89 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPrivateMessageReports.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPrivateMessageReports.kt @@ -5,6 +5,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: removed + @CommonParcelize @Serializable data class ListPrivateMessageReports( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPrivateMessageReportsResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPrivateMessageReportsResponse.kt index 224cffe2..36e3141c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPrivateMessageReportsResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPrivateMessageReportsResponse.kt @@ -5,6 +5,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: removed + @CommonParcelize @Serializable data class ListPrivateMessageReportsResponse( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListRegistrationApplications.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListRegistrationApplications.kt index 211248da..a0d7f5ad 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListRegistrationApplications.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListRegistrationApplications.kt @@ -5,6 +5,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: cursor changes + @CommonParcelize @Serializable data class ListRegistrationApplications( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListRegistrationApplicationsResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListRegistrationApplicationsResponse.kt index b3461bb0..569c1051 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListRegistrationApplicationsResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListRegistrationApplicationsResponse.kt @@ -9,4 +9,8 @@ import it.vercruysse.lemmyapi.CommonParcelize @Serializable data class ListRegistrationApplicationsResponse( val registration_applications: List, + /** Added in Lemmy 1.0.0 */ + val next_page: PaginationCursor? = null, + /** Added in Lemmy 1.0.0 */ + val prev_page: PaginationCursor? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListReports.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListReports.kt new file mode 100644 index 00000000..b7c0486c --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListReports.kt @@ -0,0 +1,20 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import it.vercruysse.lemmyapi.dto.ListingType +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class ListReports( + val unresolved_only: Boolean? = null, + val type_: ListingType? /* "All" | "Posts" | "Comments" | "PrivateMessages" | "Communities" */ = null, + val post_id: PostId? = null, + val community_id: CommunityId? = null, + val page_cursor: PaginationCursor? = null, + val page_back: Boolean? = null, + val limit: Long? = null, + val show_community_rule_violations: Boolean? = null, + val my_reports_only: Boolean? = null, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListReportsResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListReportsResponse.kt new file mode 100644 index 00000000..6a046123 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListReportsResponse.kt @@ -0,0 +1,15 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +// TODO: dynamic + +@CommonParcelize +@Serializable +data class ListReportsResponse( + val reports: List, + val next_page: PaginationCursor? = null, + val prev_page: PaginationCursor? = null, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListTaglinesResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListTaglinesResponse.kt new file mode 100644 index 00000000..145b9d57 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListTaglinesResponse.kt @@ -0,0 +1,13 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class ListTaglinesResponse( + val taglines: List, + val next_page: PaginationCursor? = null, + val prev_page: PaginationCursor? = null, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalImage.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalImage.kt index 35cc8d7d..2f39e85e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalImage.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalImage.kt @@ -5,6 +5,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO research delete token removal + @CommonParcelize @Serializable data class LocalImage( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalSite.kt index da198c37..9ff509c2 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalSite.kt @@ -10,6 +10,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: lots of changes + @CommonParcelize @Serializable data class LocalSite( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUser.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUser.kt index 416bbbb2..bd9b3a0b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUser.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUser.kt @@ -9,6 +9,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: changes + @CommonParcelize @Serializable data class LocalUser( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUserView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUserView.kt index 8dafb3ad..1821db53 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUserView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUserView.kt @@ -6,6 +6,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: changes + @CommonParcelize @Serializable data class LocalUserView( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUserVoteDisplayMode.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUserVoteDisplayMode.kt index d4010d6d..03cdefe2 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUserVoteDisplayMode.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUserVoteDisplayMode.kt @@ -5,6 +5,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO seems removed + @CommonParcelize @Serializable data class LocalUserVoteDisplayMode( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Login.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Login.kt index 236aa4c0..c6d8eb83 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Login.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Login.kt @@ -8,7 +8,7 @@ import it.vercruysse.lemmyapi.CommonParcelize @CommonParcelize @Serializable data class Login( - val username_or_email: String, - val password: String, + val username_or_email: SensitiveString, + val password: SensitiveString, val totp_2fa_token: String? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LoginResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LoginResponse.kt index c72d4de6..dd94e0be 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LoginResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LoginResponse.kt @@ -8,7 +8,7 @@ import it.vercruysse.lemmyapi.CommonParcelize @CommonParcelize @Serializable data class LoginResponse( - val jwt: String? = null, + val jwt: SensitiveString? = null, val registration_created: Boolean, val verify_email_sent: Boolean, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkManyPostsAsRead.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkManyPostsAsRead.kt new file mode 100644 index 00000000..2f0f2da3 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkManyPostsAsRead.kt @@ -0,0 +1,13 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +// TODO: changes mark read + +@CommonParcelize +@Serializable +data class MarkManyPostsAsRead( + val post_ids: List, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkPersonCommentMentionAsRead.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkPersonCommentMentionAsRead.kt new file mode 100644 index 00000000..fd0dc059 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkPersonCommentMentionAsRead.kt @@ -0,0 +1,12 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class MarkPersonCommentMentionAsRead( + val person_comment_mention_id: PersonCommentMentionId, + val read: Boolean, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkPersonMentionAsRead.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkPersonMentionAsRead.kt index 3189ab1b..43f6533e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkPersonMentionAsRead.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkPersonMentionAsRead.kt @@ -5,6 +5,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: removed, possibly renamed to MarkPersonCommentMentionAsRead + @CommonParcelize @Serializable data class MarkPersonMentionAsRead( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkPersonPostMentionAsRead.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkPersonPostMentionAsRead.kt new file mode 100644 index 00000000..c3cfea6d --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkPersonPostMentionAsRead.kt @@ -0,0 +1,11 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot + +@CommonParcelize +@Serializable +data class MarkPersonPostMentionAsRead( + val person_post_mention_id: PersonPostMentionId, + val read: Boolean, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkPostAsRead.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkPostAsRead.kt index b21fbcb8..4383f080 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkPostAsRead.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkPostAsRead.kt @@ -5,6 +5,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO changes MarkPostAsRead amount list + @CommonParcelize @Serializable data class MarkPostAsRead( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModAdd.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModAdd.kt index 7fd726fc..84d62d4b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModAdd.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModAdd.kt @@ -12,5 +12,5 @@ data class ModAdd( val mod_person_id: PersonId, val other_person_id: PersonId, val removed: Boolean, - val when_: String, + val published: String, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModAddCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModAddCommunity.kt index 0bb4b75a..90a029c3 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModAddCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModAddCommunity.kt @@ -13,5 +13,5 @@ data class ModAddCommunity( val other_person_id: PersonId, val community_id: CommunityId, val removed: Boolean, - val when_: String, + val published: String, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModAddCommunityView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModAddCommunityView.kt index 0e43b85e..ff938044 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModAddCommunityView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModAddCommunityView.kt @@ -11,5 +11,5 @@ data class ModAddCommunityView( val mod_add_community: ModAddCommunity, val moderator: Person? = null, val community: Community, - val modded_person: Person, + val other_person: Person, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModAddView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModAddView.kt index c29cbe15..a3bd25d9 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModAddView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModAddView.kt @@ -10,5 +10,5 @@ import it.vercruysse.lemmyapi.CommonParcelize data class ModAddView( val mod_add: ModAdd, val moderator: Person? = null, - val modded_person: Person, + val other_person: Person, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModBan.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModBan.kt index 9611d835..3ed93a20 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModBan.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModBan.kt @@ -15,5 +15,7 @@ data class ModBan( val reason: String? = null, val banned: Boolean, val expires: String? = null, - val when_: String, + val published: String, + /** Added in Lemmy 1.0.0 */ + val instance_id: InstanceId, ) : DatatypeRoot, Identity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModBanFromCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModBanFromCommunity.kt index fa7977ca..47f78316 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModBanFromCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModBanFromCommunity.kt @@ -16,5 +16,5 @@ data class ModBanFromCommunity( val reason: String? = null, val banned: Boolean, val expires: String? = null, - val when_: String, + val published: String, ) : DatatypeRoot, Identity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModBanFromCommunityView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModBanFromCommunityView.kt index 3b19f909..c97309bc 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModBanFromCommunityView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModBanFromCommunityView.kt @@ -11,5 +11,5 @@ data class ModBanFromCommunityView( val mod_ban_from_community: ModBanFromCommunity, val moderator: Person? = null, val community: Community, - val banned_person: Person, + val other_person: Person, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModBanView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModBanView.kt index d588bdd0..0bc7ccf4 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModBanView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModBanView.kt @@ -11,7 +11,7 @@ import it.vercruysse.lemmyapi.CommonParcelize data class ModBanView( val mod_ban: ModBan, val moderator: Person? = null, - val banned_person: Person, + val other_person: Person, ) : DatatypeRoot, Identity { override val id: Long get() = mod_ban.id diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModChangeCommunityVisibility.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModChangeCommunityVisibility.kt new file mode 100644 index 00000000..23375c4f --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModChangeCommunityVisibility.kt @@ -0,0 +1,17 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import it.vercruysse.lemmyapi.dto.CommunityVisibility +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class ModChangeCommunityVisibility( + val id: Long, + val community_id: CommunityId, + val mod_person_id: PersonId, + val published: String, + val reason: String? = null, + val visibility: CommunityVisibility /* "Public" | "Unlisted" | "LocalOnlyPublic" | "LocalOnlyPrivate" | "Private" */, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModChangeCommunityVisibilityView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModChangeCommunityVisibilityView.kt new file mode 100644 index 00000000..644d341e --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModChangeCommunityVisibilityView.kt @@ -0,0 +1,13 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class ModChangeCommunityVisibilityView( + val mod_change_community_visibility: ModChangeCommunityVisibility, + val moderator: Person? = null, + val community: Community, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModFeaturePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModFeaturePost.kt index 123a8be0..1d323811 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModFeaturePost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModFeaturePost.kt @@ -12,6 +12,6 @@ data class ModFeaturePost( val mod_person_id: PersonId, val post_id: PostId, val featured: Boolean, - val when_: String, + val published: String, val is_featured_community: Boolean, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModFeaturePostView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModFeaturePostView.kt index ea8c10e6..2a19a8bf 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModFeaturePostView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModFeaturePostView.kt @@ -10,6 +10,8 @@ import it.vercruysse.lemmyapi.CommonParcelize data class ModFeaturePostView( val mod_feature_post: ModFeaturePost, val moderator: Person? = null, + /** Added in Lemmy 1.0.0 */ + val other_person: Person? = null, val post: Post, val community: Community, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModHideCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModHideCommunity.kt index ba2b893b..8af60d5c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModHideCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModHideCommunity.kt @@ -5,6 +5,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: removed + @CommonParcelize @Serializable data class ModHideCommunity( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModHideCommunityView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModHideCommunityView.kt index f29f525d..3fcf31a5 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModHideCommunityView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModHideCommunityView.kt @@ -5,6 +5,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: removed + @CommonParcelize @Serializable data class ModHideCommunityView( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModLockPost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModLockPost.kt index f44321c1..8c90d970 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModLockPost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModLockPost.kt @@ -12,5 +12,5 @@ data class ModLockPost( val mod_person_id: PersonId, val post_id: PostId, val locked: Boolean, - val when_: String, + val published: String, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModLockPostView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModLockPostView.kt index e55783bc..52242744 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModLockPostView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModLockPostView.kt @@ -10,6 +10,8 @@ import it.vercruysse.lemmyapi.CommonParcelize data class ModLockPostView( val mod_lock_post: ModLockPost, val moderator: Person? = null, + /** Added in Lemmy 1.0.0 */ + val other_person: Person? = null, val post: Post, val community: Community, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModRemoveComment.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModRemoveComment.kt index 8b266e35..a1b7d21e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModRemoveComment.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModRemoveComment.kt @@ -13,5 +13,5 @@ data class ModRemoveComment( val comment_id: CommentId, val reason: String? = null, val removed: Boolean, - val when_: String, + val published: String, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModRemoveCommentView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModRemoveCommentView.kt index 22fc3e9b..69a6e6bb 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModRemoveCommentView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModRemoveCommentView.kt @@ -11,7 +11,7 @@ data class ModRemoveCommentView( val mod_remove_comment: ModRemoveComment, val moderator: Person? = null, val comment: Comment, - val commenter: Person, + val other_person: Person, val post: Post, val community: Community, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModRemoveCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModRemoveCommunity.kt index 3b011dd8..d19e3149 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModRemoveCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModRemoveCommunity.kt @@ -13,5 +13,5 @@ data class ModRemoveCommunity( val community_id: CommunityId, val reason: String? = null, val removed: Boolean, - val when_: String, + val published: String, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModRemovePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModRemovePost.kt index a9f47552..3a6b4d32 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModRemovePost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModRemovePost.kt @@ -13,5 +13,5 @@ data class ModRemovePost( val post_id: PostId, val reason: String? = null, val removed: Boolean, - val when_: String, + val published: String, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModTransferCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModTransferCommunity.kt index b657064b..aa831551 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModTransferCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModTransferCommunity.kt @@ -12,5 +12,5 @@ data class ModTransferCommunity( val mod_person_id: PersonId, val other_person_id: PersonId, val community_id: CommunityId, - val when_: String, + val published: String, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModTransferCommunityView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModTransferCommunityView.kt index edbbe5de..63897c93 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModTransferCommunityView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModTransferCommunityView.kt @@ -11,5 +11,5 @@ data class ModTransferCommunityView( val mod_transfer_community: ModTransferCommunity, val moderator: Person? = null, val community: Community, - val modded_person: Person, + val other_person: Person, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModlogListParams.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModlogListParams.kt index 978a82aa..f0145b55 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModlogListParams.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModlogListParams.kt @@ -5,6 +5,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: removed in Lemmy 1.0.0 + @CommonParcelize @Serializable data class ModlogListParams( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MyUserInfo.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MyUserInfo.kt index bb2c96ab..d5e8b0f8 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MyUserInfo.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MyUserInfo.kt @@ -11,8 +11,10 @@ data class MyUserInfo( val local_user_view: LocalUserView, val follows: List, val moderates: List, - val community_blocks: List, - val instance_blocks: List, - val person_blocks: List, + val community_blocks: List, + val instance_blocks: List, + val person_blocks: List, + /** Added in Lemmy 1.0.0 */ + val keyword_blocks: List = emptyList(), val discussion_languages: List, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/OAuthAccount.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/OAuthAccount.kt new file mode 100644 index 00000000..264af78f --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/OAuthAccount.kt @@ -0,0 +1,15 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class OAuthAccount( + val local_user_id: LocalUserId, + val oauth_provider_id: OAuthProviderId, + val oauth_user_id: String, + val published: String, + val updated: String? = null, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/OAuthProvider.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/OAuthProvider.kt new file mode 100644 index 00000000..93e1ee1d --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/OAuthProvider.kt @@ -0,0 +1,25 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class OAuthProvider( + val id: OAuthProviderId, + val display_name: String, + val issuer: String, + val authorization_endpoint: String, + val token_endpoint: String, + val userinfo_endpoint: String, + val id_claim: String, + val client_id: String, + val scopes: String, + val auto_verify_email: Boolean, + val account_linking_enabled: Boolean, + val enabled: Boolean, + val published: String, + val updated: String? = null, + val use_pkce: Boolean, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/OAuthProviderId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/OAuthProviderId.kt new file mode 100644 index 00000000..02df8c76 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/OAuthProviderId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.datatypes + +typealias OAuthProviderId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PasswordChangeAfterReset.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PasswordChangeAfterReset.kt index e8f2fff3..2b1d308b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PasswordChangeAfterReset.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PasswordChangeAfterReset.kt @@ -8,7 +8,7 @@ import it.vercruysse.lemmyapi.CommonParcelize @CommonParcelize @Serializable data class PasswordChangeAfterReset( - val token: String, - val password: String, - val password_verify: String, + val token: SensitiveString, + val password: SensitiveString, + val password_verify: SensitiveString, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PasswordReset.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PasswordReset.kt index abe32030..0572672a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PasswordReset.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PasswordReset.kt @@ -8,5 +8,5 @@ import it.vercruysse.lemmyapi.CommonParcelize @CommonParcelize @Serializable data class PasswordReset( - val email: String, + val email: SensitiveString, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PendingFollow.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PendingFollow.kt new file mode 100644 index 00000000..bd15f2f3 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PendingFollow.kt @@ -0,0 +1,16 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +// TODO: followState enum + +@CommonParcelize +@Serializable +data class PendingFollow( + val person: Person, + val community: Community, + val is_new_instance: Boolean, + val follow_state: String? /* "Accepted" | "Pending" | "ApprovalRequired" */ = null, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Person.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Person.kt index 5b62b1f7..80e59858 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Person.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Person.kt @@ -6,6 +6,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: lots of changes + @CommonParcelize @Serializable data class Person( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonActions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonActions.kt new file mode 100644 index 00000000..05d1e958 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonActions.kt @@ -0,0 +1,13 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class PersonActions( + val target_id: PersonId, + val person_id: PersonId, + val blocked: String? = null, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonAggregates.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonAggregates.kt index 1892e443..eda1aefa 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonAggregates.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonAggregates.kt @@ -5,6 +5,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO removed + @CommonParcelize @Serializable data class PersonAggregates( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonCommentMention.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonCommentMention.kt new file mode 100644 index 00000000..15019d12 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonCommentMention.kt @@ -0,0 +1,15 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class PersonCommentMention( + val id: PersonCommentMentionId, + val recipient_id: PersonId, + val comment_id: CommentId, + val read: Boolean, + val published: String, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonCommentMentionId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonCommentMentionId.kt new file mode 100644 index 00000000..bb9bb6b0 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonCommentMentionId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.datatypes + +typealias PersonCommentMentionId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonCommentMentionView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonCommentMentionView.kt new file mode 100644 index 00000000..1b2ea6c3 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonCommentMentionView.kt @@ -0,0 +1,26 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class PersonCommentMentionView( + val person_comment_mention: PersonCommentMention, + val recipient: Person, + val comment: Comment, + val creator: Person, + val post: Post, + val community: Community, + val community_actions: CommunityActions? = null, + val comment_actions: CommentActions? = null, + val person_actions: PersonActions? = null, + val instance_actions: InstanceActions? = null, + val creator_home_instance_actions: InstanceActions? = null, + val creator_local_instance_actions: InstanceActions? = null, + val creator_community_actions: CommunityActions? = null, + val creator_is_admin: Boolean, + val can_mod: Boolean, + val creator_banned: Boolean, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonMention.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonMention.kt index 1cc6f0e8..24fecc9d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonMention.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonMention.kt @@ -6,6 +6,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: removed + @CommonParcelize @Serializable data class PersonMention( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonMentionId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonMentionId.kt index 25415b8f..b11c93e2 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonMentionId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonMentionId.kt @@ -1,3 +1,5 @@ package it.vercruysse.lemmyapi.datatypes +// TODO: removed + typealias PersonMentionId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonMentionResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonMentionResponse.kt index 6a52030e..ab827b8b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonMentionResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonMentionResponse.kt @@ -5,6 +5,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: removed + @CommonParcelize @Serializable data class PersonMentionResponse( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonMentionView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonMentionView.kt index a053c706..7d0fc0a4 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonMentionView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonMentionView.kt @@ -6,6 +6,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: removed + @CommonParcelize @Serializable data class PersonMentionView( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonPostMention.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonPostMention.kt new file mode 100644 index 00000000..fb311a32 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonPostMention.kt @@ -0,0 +1,15 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class PersonPostMention( + val id: PersonPostMentionId, + val recipient_id: PersonId, + val post_id: PostId, + val read: Boolean, + val published: String, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonPostMentionId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonPostMentionId.kt new file mode 100644 index 00000000..b669fd23 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonPostMentionId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.datatypes + +typealias PersonPostMentionId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonPostMentionView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonPostMentionView.kt new file mode 100644 index 00000000..5a7ef9f0 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonPostMentionView.kt @@ -0,0 +1,26 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot + +@CommonParcelize +@Serializable +data class PersonPostMentionView( + val person_post_mention: PersonPostMention, + val recipient: Person, + val post: Post, + val creator: Person, + val community: Community, + val image_details: ImageDetails? = null, + val community_actions: CommunityActions? = null, + val person_actions: PersonActions? = null, + val post_actions: PostActions? = null, + val instance_actions: InstanceActions? = null, + val creator_home_instance_actions: InstanceActions? = null, + val creator_local_instance_actions: InstanceActions? = null, + val creator_community_actions: CommunityActions? = null, + val post_tags: TagsView, + val creator_is_admin: Boolean, + val can_mod: Boolean, + val creator_banned: Boolean, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonView.kt index b119de88..bca2fe47 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonView.kt @@ -5,6 +5,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: changed + @CommonParcelize @Serializable data class PersonView( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PluginMetadata.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PluginMetadata.kt new file mode 100644 index 00000000..7ea01681 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PluginMetadata.kt @@ -0,0 +1,13 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class PluginMetadata( + val name: String, + val url: String, + val description: String, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Post.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Post.kt index b881ec7d..c856ea86 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Post.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Post.kt @@ -6,6 +6,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: changes + @CommonParcelize @Serializable data class Post( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostActions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostActions.kt new file mode 100644 index 00000000..cd03e36a --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostActions.kt @@ -0,0 +1,19 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +internal data class PostActions( + val post_id: PostId, + val person_id: PersonId, + val read: String? = null, + val read_comments: String? = null, + val read_comments_amount: Long? = null, + val saved: String? = null, + val liked: String? = null, + val like_score: Long? = null, + val hidden: String? = null, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostAggregates.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostAggregates.kt index 046e87ca..a963c3cd 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostAggregates.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostAggregates.kt @@ -5,6 +5,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: removed + @CommonParcelize @Serializable data class PostAggregates( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostReport.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostReport.kt index 6fed9763..e28746ed 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostReport.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostReport.kt @@ -20,4 +20,6 @@ data class PostReport( val resolver_id: PersonId? = null, val published: String, val updated: String? = null, + /** Added in Lemmy 1.0.0 */ + val violates_instance_rules: Boolean, ) : DatatypeRoot, Identity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostReportView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostReportView.kt index 740d3658..880305a3 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostReportView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostReportView.kt @@ -6,6 +6,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: changes + @CommonParcelize @Serializable data class PostReportView( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostView.kt index 0bd7c312..13c8611c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostView.kt @@ -7,6 +7,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.Identity +// TODO: changes + @CommonParcelize @Serializable data class PostView( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessage.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessage.kt index 7e2bbaf4..795f8160 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessage.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessage.kt @@ -19,4 +19,6 @@ data class PrivateMessage( val updated: String? = null, val ap_id: String, val local: Boolean, + /** Added in Lemmy 1.0.0 */ + val removed: Boolean, ) : DatatypeRoot, Identity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessagesResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessagesResponse.kt index 1642c7ca..27ca4d11 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessagesResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessagesResponse.kt @@ -5,6 +5,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: removed + @CommonParcelize @Serializable data class PrivateMessagesResponse( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PublicOAuthProvider.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PublicOAuthProvider.kt new file mode 100644 index 00000000..a37ae81c --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PublicOAuthProvider.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.datatypes + +typealias PublicOAuthProvider = OAuthProvider diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Register.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Register.kt index bb9c6770..8c883642 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Register.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Register.kt @@ -9,11 +9,11 @@ import it.vercruysse.lemmyapi.CommonParcelize @Serializable data class Register( val username: String, - val password: String, - val password_verify: String, + val password: SensitiveString, + val password_verify: SensitiveString, // TODO val show_nsfw: Boolean? = null, val show_nsfw: Boolean, - val email: String? = null, + val email: SensitiveString? = null, val captcha_uuid: String? = null, val captcha_answer: String? = null, val honeypot: String? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ResendVerificationEmail.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ResendVerificationEmail.kt new file mode 100644 index 00000000..5bf8b7ce --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ResendVerificationEmail.kt @@ -0,0 +1,12 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.SensitiveString +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class ResendVerificationEmail( + val email: SensitiveString, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ResolveCommunityReport.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ResolveCommunityReport.kt new file mode 100644 index 00000000..f22d15cc --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ResolveCommunityReport.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +data class ResolveCommunityReport( + val report_id: CommunityReportId, + val resolved: Boolean, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SaveUserSettings.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SaveUserSettings.kt index 4f6dbcb8..b9845048 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SaveUserSettings.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SaveUserSettings.kt @@ -8,6 +8,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: changes + @CommonParcelize @Serializable data class SaveUserSettings( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Search.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Search.kt index e325c1ae..883d575f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Search.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Search.kt @@ -8,6 +8,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: changes + @CommonParcelize @Serializable data class Search( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SearchResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SearchResponse.kt index 54d40e23..28893bc9 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SearchResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SearchResponse.kt @@ -6,6 +6,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: Changes + @CommonParcelize @Serializable data class SearchResponse( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SensitiveString.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SensitiveString.kt new file mode 100644 index 00000000..f8df7018 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SensitiveString.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.datatypes + +typealias SensitiveString = String diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SiteAggregates.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SiteAggregates.kt index d41147ec..9acdebc0 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SiteAggregates.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SiteAggregates.kt @@ -5,6 +5,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: changes + @CommonParcelize @Serializable data class SiteAggregates( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SiteResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SiteResponse.kt index 68c5ceb0..d9ba1a67 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SiteResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SiteResponse.kt @@ -5,6 +5,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: research taglines changes + @CommonParcelize @Serializable data class SiteResponse( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SiteView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SiteView.kt index d06e4532..95d06506 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SiteView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SiteView.kt @@ -6,6 +6,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: changes + @CommonParcelize @Serializable data class SiteView( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Tag.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Tag.kt new file mode 100644 index 00000000..a3db2b28 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Tag.kt @@ -0,0 +1,19 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +// TODO: ap_id + +@CommonParcelize +@Serializable +data class Tag( + val id: TagId, + val ap_id: String, + val display_name: String, + val community_id: CommunityId, + val published: String, + val updated: String? = null, + val deleted: Boolean, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/TagId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/TagId.kt new file mode 100644 index 00000000..7b43964a --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/TagId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.datatypes + +typealias TagId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Tagline.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Tagline.kt index f80a81fa..c14830ef 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Tagline.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Tagline.kt @@ -5,10 +5,12 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: local_site_id removal + @CommonParcelize @Serializable data class Tagline( - val id: Long, + val id: TaglineId, val local_site_id: LocalSiteId, val content: String, val published: String, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/TaglineId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/TaglineId.kt new file mode 100644 index 00000000..3b337205 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/TaglineId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.datatypes + +typealias TaglineId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/TaglineResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/TaglineResponse.kt new file mode 100644 index 00000000..b534f19c --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/TaglineResponse.kt @@ -0,0 +1,11 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class TaglineResponse( + val tagline: Tagline, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/TagsView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/TagsView.kt new file mode 100644 index 00000000..3cc0c539 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/TagsView.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.datatypes + +typealias TagsView = List diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UpdateCommunityTag.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UpdateCommunityTag.kt new file mode 100644 index 00000000..cde5d4b9 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UpdateCommunityTag.kt @@ -0,0 +1,12 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class UpdateCommunityTag( + val tag_id: TagId, + val display_name: String, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UpdateTagline.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UpdateTagline.kt new file mode 100644 index 00000000..f63b9596 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UpdateTagline.kt @@ -0,0 +1,12 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class UpdateTagline( + val id: TaglineId, + val content: String, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UploadImageResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UploadImageResponse.kt new file mode 100644 index 00000000..857c78e2 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UploadImageResponse.kt @@ -0,0 +1,12 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class UploadImageResponse( + val image_url: String, + val filename: String, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UserBlockInstanceParams.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UserBlockInstanceParams.kt new file mode 100644 index 00000000..e7750cae --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UserBlockInstanceParams.kt @@ -0,0 +1,12 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class UserBlockInstanceParams( + val instance_id: InstanceId, + val block: Boolean, +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/VoteView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/VoteView.kt index c1409d50..d14eaed3 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/VoteView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/VoteView.kt @@ -6,6 +6,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: added item_id + @CommonParcelize @Serializable data class VoteView( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/dto/CustomDataTypes.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/dto/CustomDataTypes.kt index 4d2f6327..9979d8f9 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/dto/CustomDataTypes.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/dto/CustomDataTypes.kt @@ -129,6 +129,8 @@ enum class PostListingMode(override val minimumVersion: Version = V0_19_0, overr SmallCard, } +// TODO: more options: "Public" | "Unlisted" | "LocalOnlyPublic" | "LocalOnlyPrivate" | "Private" + @Serializable enum class CommunityVisibility(override val minimumVersion: Version = V0_19_4, override val maximumVersion: Version? = null) : VersionTracker { diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt index e4d9f71d..9b648218 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt @@ -852,7 +852,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun blockInstance( form: it.vercruysse.lemmyapi.datatypes.BlockInstance, - ): Result = notSupported() + ): Result = notSupported() // TODO possible supported by using old logic, might not be worth the effort diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/MapperGenerator.kt index c662470b..71febd56 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/MapperGenerator.kt @@ -78,7 +78,6 @@ internal interface MapperGenerator { fun toUni(d: CommentResponse): it.vercruysse.lemmyapi.datatypes.CommentResponse - fun toUni(d: CommunityBlockView): it.vercruysse.lemmyapi.datatypes.CommunityBlockView fun toUni(d: CommunityFollowerView): it.vercruysse.lemmyapi.datatypes.CommunityFollowerView fun toUni(d: CommunityModeratorView): it.vercruysse.lemmyapi.datatypes.CommunityModeratorView fun toUni(d: CommunityResponse): it.vercruysse.lemmyapi.datatypes.CommunityResponse @@ -140,7 +139,6 @@ internal interface MapperGenerator { fun toUni(d: ModTransferCommunityView): it.vercruysse.lemmyapi.datatypes.ModTransferCommunityView fun toUni(d: Person): it.vercruysse.lemmyapi.datatypes.Person fun toUni(d: PersonAggregates): it.vercruysse.lemmyapi.datatypes.PersonAggregates - fun toUni(d: PersonBlockView): it.vercruysse.lemmyapi.datatypes.PersonBlockView fun toUni(d: PersonMention): it.vercruysse.lemmyapi.datatypes.PersonMention fun toUni(d: PersonMentionResponse): it.vercruysse.lemmyapi.datatypes.PersonMentionResponse diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt index e5426400..0a4c79af 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt @@ -44,7 +44,6 @@ import it.vercruysse.lemmyapi.datatypes.CommentResponse as LemmyapiDatatypesComm import it.vercruysse.lemmyapi.datatypes.CommentView as LemmyapiDatatypesCommentView import it.vercruysse.lemmyapi.datatypes.Community as LemmyapiDatatypesCommunity import it.vercruysse.lemmyapi.datatypes.CommunityAggregates as LemmyapiDatatypesCommunityAggregates -import it.vercruysse.lemmyapi.datatypes.CommunityBlockView as LemmyapiDatatypesCommunityBlockView import it.vercruysse.lemmyapi.datatypes.CommunityFollowerView as LemmyapiDatatypesCommunityFollowerView import it.vercruysse.lemmyapi.datatypes.CommunityModeratorView as LemmyapiDatatypesCommunityModeratorView import it.vercruysse.lemmyapi.datatypes.CommunityResponse as LemmyapiDatatypesCommunityResponse @@ -158,7 +157,6 @@ import it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset as LemmyapiData import it.vercruysse.lemmyapi.datatypes.PasswordReset as LemmyapiDatatypesPasswordReset import it.vercruysse.lemmyapi.datatypes.Person as LemmyapiDatatypesPerson import it.vercruysse.lemmyapi.datatypes.PersonAggregates as LemmyapiDatatypesPersonAggregates -import it.vercruysse.lemmyapi.datatypes.PersonBlockView as LemmyapiDatatypesPersonBlockView import it.vercruysse.lemmyapi.datatypes.PersonMention as LemmyapiDatatypesPersonMention import it.vercruysse.lemmyapi.datatypes.PersonMentionResponse as LemmyapiDatatypesPersonMentionResponse import it.vercruysse.lemmyapi.datatypes.PersonMentionView as LemmyapiDatatypesPersonMentionView @@ -241,7 +239,6 @@ import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.CommentResponse as X5Datatypes import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.CommentView as X5DatatypesCommentView import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.Community as X5DatatypesCommunity import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.CommunityAggregates as X5DatatypesCommunityAggregates -import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.CommunityBlockView as X5DatatypesCommunityBlockView import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.CommunityFollowerView as X5DatatypesCommunityFollowerView import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.CommunityModeratorView as X5DatatypesCommunityModeratorView import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.CommunityResponse as X5DatatypesCommunityResponse @@ -355,7 +352,6 @@ import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.PasswordChangeAfterReset as X5 import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.PasswordReset as X5DatatypesPasswordReset import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.Person as X5DatatypesPerson import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.PersonAggregates as X5DatatypesPersonAggregates -import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.PersonBlockView as X5DatatypesPersonBlockView import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.PersonMention as X5DatatypesPersonMention import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.PersonMentionResponse as X5DatatypesPersonMentionResponse import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.PersonMentionView as X5DatatypesPersonMentionView @@ -446,9 +442,9 @@ internal class Transformer(var auth: String) : MapperGenerator { local_user_view = this.toUni(d = d.local_user_view), follows = d.follows.map { this.toUni(d = it) }, moderates = d.moderates.map { this.toUni(d = it) }, - community_blocks = d.community_blocks.map { this.toUni(d = it) }, + community_blocks = d.community_blocks.map { this.toUni(d = it.community) }, instance_blocks = listOf(), - person_blocks = d.person_blocks.map { this.toUni(d = it) }, + person_blocks = d.person_blocks.map { this.toUni(d = it.target) }, discussion_languages = d.discussion_languages, ) @@ -697,7 +693,7 @@ internal class Transformer(var auth: String) : MapperGenerator { admin_person_id = d.admin_person_id, post_id = d.post_id, reason = d.reason, - when_ = addTimezoneOffset(d.when_), + published = addTimezoneOffset(d.when_), ) override fun toUni(d: X5DatatypesAdminPurgeCommentView): LemmyapiDatatypesAdminPurgeCommentView = @@ -712,7 +708,7 @@ internal class Transformer(var auth: String) : MapperGenerator { id = d.id, admin_person_id = d.admin_person_id, reason = d.reason, - when_ = addTimezoneOffset(d.when_), + published = addTimezoneOffset(d.when_), ) override fun toUni(d: X5DatatypesAdminPurgeCommunityView): LemmyapiDatatypesAdminPurgeCommunityView = LemmyapiDatatypesAdminPurgeCommunityView( @@ -725,7 +721,7 @@ internal class Transformer(var auth: String) : MapperGenerator { id = d.id, admin_person_id = d.admin_person_id, reason = d.reason, - when_ = addTimezoneOffset(d.when_), + published = addTimezoneOffset(d.when_), ) override fun toUni(d: X5DatatypesAdminPurgePersonView): LemmyapiDatatypesAdminPurgePersonView = @@ -740,7 +736,7 @@ internal class Transformer(var auth: String) : MapperGenerator { admin_person_id = d.admin_person_id, community_id = d.community_id, reason = d.reason, - when_ = addTimezoneOffset(d.when_), + published = addTimezoneOffset(d.when_), ) override fun toUni(d: X5DatatypesAdminPurgePostView): LemmyapiDatatypesAdminPurgePostView = @@ -848,12 +844,6 @@ internal class Transformer(var auth: String) : MapperGenerator { recipient_ids = d.recipient_ids, ) - override fun toUni(d: X5DatatypesCommunityBlockView): LemmyapiDatatypesCommunityBlockView = - LemmyapiDatatypesCommunityBlockView( - person = this.toUni(d = d.person), - community = this.toUni(d = d.community), - ) - override fun toUni(d: X5DatatypesCommunityFollowerView): LemmyapiDatatypesCommunityFollowerView = LemmyapiDatatypesCommunityFollowerView( community = this.toUni(d = d.community), @@ -1056,7 +1046,7 @@ internal class Transformer(var auth: String) : MapperGenerator { mod_person_id = d.mod_person_id, other_person_id = d.other_person_id, removed = d.removed, - when_ = addTimezoneOffset(d.when_), + published = addTimezoneOffset(d.when_), ) override fun toUni(d: X5DatatypesModAddCommunity): LemmyapiDatatypesModAddCommunity = @@ -1066,7 +1056,7 @@ internal class Transformer(var auth: String) : MapperGenerator { other_person_id = d.other_person_id, community_id = d.community_id, removed = d.removed, - when_ = addTimezoneOffset(d.when_), + published = addTimezoneOffset(d.when_), ) override fun toUni(d: X5DatatypesModAddCommunityView): LemmyapiDatatypesModAddCommunityView = @@ -1074,14 +1064,14 @@ internal class Transformer(var auth: String) : MapperGenerator { mod_add_community = this.toUni(d = d.mod_add_community), moderator = d.moderator?.let { this.toUni(d = it) }, community = this.toUni(d = d.community), - modded_person = this.toUni(d = d.modded_person), + other_person = this.toUni(d = d.modded_person), ) override fun toUni(d: X5DatatypesModAddView): LemmyapiDatatypesModAddView = LemmyapiDatatypesModAddView( mod_add = this.toUni(d = d.mod_add), moderator = d.moderator?.let { this.toUni(d = it) }, - modded_person = this.toUni(d = d.modded_person), + other_person = this.toUni(d = d.modded_person), ) override fun toUni(d: X5DatatypesModBan): LemmyapiDatatypesModBan = LemmyapiDatatypesModBan( @@ -1091,7 +1081,8 @@ internal class Transformer(var auth: String) : MapperGenerator { reason = d.reason, banned = d.banned, expires = addTimezoneOffsetNullable(d.expires), - when_ = addTimezoneOffset(d.when_), + published = addTimezoneOffset(d.when_), + instance_id = -1, ) override fun toUni(d: X5DatatypesModBanFromCommunity): LemmyapiDatatypesModBanFromCommunity = @@ -1103,21 +1094,21 @@ internal class Transformer(var auth: String) : MapperGenerator { reason = d.reason, banned = d.banned, expires = addTimezoneOffsetNullable(d.expires), - when_ = addTimezoneOffset(d.when_), + published = addTimezoneOffset(d.when_), ) override fun toUni(d: X5DatatypesModBanFromCommunityView): LemmyapiDatatypesModBanFromCommunityView = LemmyapiDatatypesModBanFromCommunityView( mod_ban_from_community = this.toUni(d = d.mod_ban_from_community), moderator = d.moderator?.let { this.toUni(d = it) }, community = this.toUni(d = d.community), - banned_person = this.toUni(d = d.banned_person), + other_person = this.toUni(d = d.banned_person), ) override fun toUni(d: X5DatatypesModBanView): LemmyapiDatatypesModBanView = LemmyapiDatatypesModBanView( mod_ban = this.toUni(d = d.mod_ban), moderator = d.moderator?.let { this.toUni(d = it) }, - banned_person = this.toUni(d = d.banned_person), + other_person = this.toUni(d = d.banned_person), ) override fun toUni(d: X5DatatypesModFeaturePost): LemmyapiDatatypesModFeaturePost = @@ -1126,7 +1117,7 @@ internal class Transformer(var auth: String) : MapperGenerator { mod_person_id = d.mod_person_id, post_id = d.post_id, featured = d.featured, - when_ = addTimezoneOffset(d.when_), + published = addTimezoneOffset(d.when_), is_featured_community = d.is_featured_community, ) @@ -1161,7 +1152,7 @@ internal class Transformer(var auth: String) : MapperGenerator { mod_person_id = d.mod_person_id, post_id = d.post_id, locked = d.locked, - when_ = addTimezoneOffset(d.when_), + published = addTimezoneOffset(d.when_), ) override fun toUni(d: X5DatatypesModLockPostView): LemmyapiDatatypesModLockPostView = @@ -1189,7 +1180,7 @@ internal class Transformer(var auth: String) : MapperGenerator { comment_id = d.comment_id, reason = d.reason, removed = d.removed, - when_ = addTimezoneOffset(d.when_), + published = addTimezoneOffset(d.when_), ) override fun toUni(d: X5DatatypesModRemoveCommentView): LemmyapiDatatypesModRemoveCommentView = @@ -1197,7 +1188,7 @@ internal class Transformer(var auth: String) : MapperGenerator { mod_remove_comment = this.toUni(d = d.mod_remove_comment), moderator = d.moderator?.let { this.toUni(d = it) }, comment = this.toUni(d = d.comment), - commenter = this.toUni(d = d.commenter), + other_person = this.toUni(d = d.commenter), post = this.toUni(d = d.post), community = this.toUni(d = d.community), ) @@ -1209,7 +1200,7 @@ internal class Transformer(var auth: String) : MapperGenerator { community_id = d.community_id, reason = d.reason, removed = d.removed, - when_ = addTimezoneOffset(d.when_), + published = addTimezoneOffset(d.when_), ) override fun toUni(d: X5DatatypesModRemoveCommunityView): LemmyapiDatatypesModRemoveCommunityView = LemmyapiDatatypesModRemoveCommunityView( @@ -1225,7 +1216,7 @@ internal class Transformer(var auth: String) : MapperGenerator { post_id = d.post_id, reason = d.reason, removed = d.removed, - when_ = addTimezoneOffset(d.when_), + published = addTimezoneOffset(d.when_), ) override fun toUni(d: X5DatatypesModRemovePostView): LemmyapiDatatypesModRemovePostView = @@ -1242,14 +1233,14 @@ internal class Transformer(var auth: String) : MapperGenerator { mod_person_id = d.mod_person_id, other_person_id = d.other_person_id, community_id = d.community_id, - when_ = addTimezoneOffset(d.when_), + published = addTimezoneOffset(d.when_), ) override fun toUni(d: X5DatatypesModTransferCommunityView): LemmyapiDatatypesModTransferCommunityView = LemmyapiDatatypesModTransferCommunityView( mod_transfer_community = this.toUni(d = d.mod_transfer_community), moderator = d.moderator?.let { this.toUni(d = it) }, community = this.toUni(d = d.community), - modded_person = this.toUni(d = d.modded_person), + other_person = this.toUni(d = d.modded_person), ) override fun toUni(d: X5DatatypesPerson): LemmyapiDatatypesPerson = LemmyapiDatatypesPerson( @@ -1278,12 +1269,6 @@ internal class Transformer(var auth: String) : MapperGenerator { comment_count = d.comment_count, ) - override fun toUni(d: X5DatatypesPersonBlockView): LemmyapiDatatypesPersonBlockView = - LemmyapiDatatypesPersonBlockView( - person = this.toUni(d = d.person), - target = this.toUni(d = d.target), - ) - override fun toUni(d: X5DatatypesPersonMention): LemmyapiDatatypesPersonMention = LemmyapiDatatypesPersonMention( id = d.id, @@ -1527,7 +1512,7 @@ internal class Transformer(var auth: String) : MapperGenerator { community_id = d.community_id, person_id = d.person_id, ban = d.ban, - remove_data = d.remove_data, + remove_data = d.remove_or_restore_data, reason = d.reason, expires = d.expires, auth = auth, @@ -1536,7 +1521,7 @@ internal class Transformer(var auth: String) : MapperGenerator { override fun fromUni(d: LemmyapiDatatypesBanPerson): X5DatatypesBanPerson = X5DatatypesBanPerson( person_id = d.person_id, ban = d.ban, - remove_data = d.remove_data, + remove_data = d.remove_or_restore_data, reason = d.reason, expires = d.expires, auth = auth, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiController.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiController.kt index 0a93234e..a424621d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiController.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiController.kt @@ -707,7 +707,7 @@ internal class LemmyApiController(client: HttpClient, auth: String?) : * * @POST("site/block") */ - override suspend fun blockInstance(form: BlockInstance): Result = + override suspend fun blockInstance(form: BlockInstance): Result = client.postResult("site/block", form) /** diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiRouter.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiRouter.kt index 6117dcd5..2334cec6 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiRouter.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiRouter.kt @@ -615,7 +615,7 @@ internal abstract class LemmyApiRouter(client: HttpClient, auth: String?) : Auth * * @POST("site/block") */ - abstract suspend fun blockInstance(form: BlockInstance): Result + abstract suspend fun blockInstance(form: BlockInstance): Result /** * Generate a TOTP / two-factor secret. diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt index 30750850..8a1b44f6 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt @@ -834,8 +834,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun blockInstance( form: it.vercruysse.lemmyapi.datatypes.BlockInstance, - ): Result = - api.blockInstance(transformer.fromUni(form)).map(transformer::toUni) + ): Result = + api.blockInstance(transformer.fromUni(form)) /** * Generate a TOTP / two-factor secret. diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt index 092be0a6..54f69cc7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt @@ -51,7 +51,6 @@ internal interface MapperGenerator { fun toUni(d: BannedPersonsResponse): it.vercruysse.lemmyapi.datatypes.BannedPersonsResponse fun toUni(d: BanPersonResponse): it.vercruysse.lemmyapi.datatypes.BanPersonResponse fun toUni(d: BlockCommunityResponse): it.vercruysse.lemmyapi.datatypes.BlockCommunityResponse - fun toUni(d: BlockInstanceResponse): it.vercruysse.lemmyapi.datatypes.BlockInstanceResponse fun toUni(d: BlockPersonResponse): it.vercruysse.lemmyapi.datatypes.BlockPersonResponse fun toUni(d: CaptchaResponse): it.vercruysse.lemmyapi.datatypes.CaptchaResponse fun toUni(d: Comment): it.vercruysse.lemmyapi.datatypes.Comment @@ -64,7 +63,6 @@ internal interface MapperGenerator { fun toUni(d: CommentResponse): it.vercruysse.lemmyapi.datatypes.CommentResponse - fun toUni(d: CommunityBlockView): it.vercruysse.lemmyapi.datatypes.CommunityBlockView fun toUni(d: CommunityFollowerView): it.vercruysse.lemmyapi.datatypes.CommunityFollowerView fun toUni(d: CommunityModeratorView): it.vercruysse.lemmyapi.datatypes.CommunityModeratorView fun toUni(d: CommunityResponse): it.vercruysse.lemmyapi.datatypes.CommunityResponse @@ -93,7 +91,6 @@ internal interface MapperGenerator { d: GetUnreadRegistrationApplicationCountResponse, ): it.vercruysse.lemmyapi.datatypes.GetUnreadRegistrationApplicationCountResponse fun toUni(d: Instance): it.vercruysse.lemmyapi.datatypes.Instance - fun toUni(d: InstanceBlockView): it.vercruysse.lemmyapi.datatypes.InstanceBlockView fun toUni(d: InstanceWithFederationState): it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState fun toUni(d: Language): it.vercruysse.lemmyapi.datatypes.Language fun toUni(d: ListCommentReportsResponse): it.vercruysse.lemmyapi.datatypes.ListCommentReportsResponse @@ -133,7 +130,6 @@ internal interface MapperGenerator { fun toUni(d: MyUserInfo): it.vercruysse.lemmyapi.datatypes.MyUserInfo fun toUni(d: Person): it.vercruysse.lemmyapi.datatypes.Person fun toUni(d: PersonAggregates): it.vercruysse.lemmyapi.datatypes.PersonAggregates - fun toUni(d: PersonBlockView): it.vercruysse.lemmyapi.datatypes.PersonBlockView fun toUni(d: PersonMention): it.vercruysse.lemmyapi.datatypes.PersonMention fun toUni(d: PersonMentionResponse): it.vercruysse.lemmyapi.datatypes.PersonMentionResponse diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt index 685de190..d20585ee 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt @@ -27,7 +27,6 @@ import it.vercruysse.lemmyapi.datatypes.BannedPersonsResponse as LemmyapiDatatyp import it.vercruysse.lemmyapi.datatypes.BlockCommunity as LemmyapiDatatypesBlockCommunity import it.vercruysse.lemmyapi.datatypes.BlockCommunityResponse as LemmyapiDatatypesBlockCommunityResponse import it.vercruysse.lemmyapi.datatypes.BlockInstance as LemmyapiDatatypesBlockInstance -import it.vercruysse.lemmyapi.datatypes.BlockInstanceResponse as LemmyapiDatatypesBlockInstanceResponse import it.vercruysse.lemmyapi.datatypes.BlockPerson as LemmyapiDatatypesBlockPerson import it.vercruysse.lemmyapi.datatypes.BlockPersonResponse as LemmyapiDatatypesBlockPersonResponse import it.vercruysse.lemmyapi.datatypes.CaptchaResponse as LemmyapiDatatypesCaptchaResponse @@ -44,7 +43,6 @@ import it.vercruysse.lemmyapi.datatypes.CommentResponse as LemmyapiDatatypesComm import it.vercruysse.lemmyapi.datatypes.CommentView as LemmyapiDatatypesCommentView import it.vercruysse.lemmyapi.datatypes.Community as LemmyapiDatatypesCommunity import it.vercruysse.lemmyapi.datatypes.CommunityAggregates as LemmyapiDatatypesCommunityAggregates -import it.vercruysse.lemmyapi.datatypes.CommunityBlockView as LemmyapiDatatypesCommunityBlockView import it.vercruysse.lemmyapi.datatypes.CommunityFollowerView as LemmyapiDatatypesCommunityFollowerView import it.vercruysse.lemmyapi.datatypes.CommunityModeratorView as LemmyapiDatatypesCommunityModeratorView import it.vercruysse.lemmyapi.datatypes.CommunityResponse as LemmyapiDatatypesCommunityResponse @@ -110,7 +108,6 @@ import it.vercruysse.lemmyapi.datatypes.GetUnreadCountResponse as LemmyapiDataty import it.vercruysse.lemmyapi.datatypes.GetUnreadRegistrationApplicationCountResponse as LemmyapiDatatypesGetUnreadRegistrationApplicationCountResponse import it.vercruysse.lemmyapi.datatypes.HideCommunity as LemmyapiDatatypesHideCommunity import it.vercruysse.lemmyapi.datatypes.Instance as LemmyapiDatatypesInstance -import it.vercruysse.lemmyapi.datatypes.InstanceBlockView as LemmyapiDatatypesInstanceBlockView import it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState as LemmyapiDatatypesInstanceWithFederationState import it.vercruysse.lemmyapi.datatypes.Language as LemmyapiDatatypesLanguage import it.vercruysse.lemmyapi.datatypes.ListCommentReports as LemmyapiDatatypesListCommentReports @@ -163,7 +160,6 @@ import it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset as LemmyapiData import it.vercruysse.lemmyapi.datatypes.PasswordReset as LemmyapiDatatypesPasswordReset import it.vercruysse.lemmyapi.datatypes.Person as LemmyapiDatatypesPerson import it.vercruysse.lemmyapi.datatypes.PersonAggregates as LemmyapiDatatypesPersonAggregates -import it.vercruysse.lemmyapi.datatypes.PersonBlockView as LemmyapiDatatypesPersonBlockView import it.vercruysse.lemmyapi.datatypes.PersonMention as LemmyapiDatatypesPersonMention import it.vercruysse.lemmyapi.datatypes.PersonMentionResponse as LemmyapiDatatypesPersonMentionResponse import it.vercruysse.lemmyapi.datatypes.PersonMentionView as LemmyapiDatatypesPersonMentionView @@ -234,7 +230,6 @@ import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.BannedPersonsResponse as X0Dat import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.BlockCommunity as X0DatatypesBlockCommunity import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.BlockCommunityResponse as X0DatatypesBlockCommunityResponse import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.BlockInstance as X0DatatypesBlockInstance -import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.BlockInstanceResponse as X0DatatypesBlockInstanceResponse import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.BlockPerson as X0DatatypesBlockPerson import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.BlockPersonResponse as X0DatatypesBlockPersonResponse import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.CaptchaResponse as X0DatatypesCaptchaResponse @@ -251,7 +246,6 @@ import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.CommentResponse as X0Datatypes import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.CommentView as X0DatatypesCommentView import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.Community as X0DatatypesCommunity import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.CommunityAggregates as X0DatatypesCommunityAggregates -import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.CommunityBlockView as X0DatatypesCommunityBlockView import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.CommunityFollowerView as X0DatatypesCommunityFollowerView import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.CommunityModeratorView as X0DatatypesCommunityModeratorView import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.CommunityResponse as X0DatatypesCommunityResponse @@ -317,7 +311,6 @@ import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.GetUnreadCountResponse as X0Da import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.GetUnreadRegistrationApplicationCountResponse as X0DatatypesGetUnreadRegistrationApplicationCountResponse import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.HideCommunity as X0DatatypesHideCommunity import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.Instance as X0DatatypesInstance -import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.InstanceBlockView as X0DatatypesInstanceBlockView import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.InstanceWithFederationState as X0DatatypesInstanceWithFederationState import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.Language as X0DatatypesLanguage import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.ListCommentReports as X0DatatypesListCommentReports @@ -370,7 +363,6 @@ import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.PasswordChangeAfterReset as X0 import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.PasswordReset as X0DatatypesPasswordReset import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.Person as X0DatatypesPerson import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.PersonAggregates as X0DatatypesPersonAggregates -import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.PersonBlockView as X0DatatypesPersonBlockView import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.PersonMention as X0DatatypesPersonMention import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.PersonMentionResponse as X0DatatypesPersonMentionResponse import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.PersonMentionView as X0DatatypesPersonMentionView @@ -651,7 +643,7 @@ internal class Transformer : MapperGenerator { admin_person_id = d.admin_person_id, post_id = d.post_id, reason = d.reason, - when_ = d.when_, + published = d.when_, ) override fun toUni(d: X0DatatypesAdminPurgeCommentView): LemmyapiDatatypesAdminPurgeCommentView = @@ -666,7 +658,7 @@ internal class Transformer : MapperGenerator { id = d.id, admin_person_id = d.admin_person_id, reason = d.reason, - when_ = d.when_, + published = d.when_, ) override fun toUni(d: X0DatatypesAdminPurgeCommunityView): LemmyapiDatatypesAdminPurgeCommunityView = LemmyapiDatatypesAdminPurgeCommunityView( @@ -679,7 +671,7 @@ internal class Transformer : MapperGenerator { id = d.id, admin_person_id = d.admin_person_id, reason = d.reason, - when_ = d.when_, + published = d.when_, ) override fun toUni(d: X0DatatypesAdminPurgePersonView): LemmyapiDatatypesAdminPurgePersonView = @@ -694,7 +686,7 @@ internal class Transformer : MapperGenerator { admin_person_id = d.admin_person_id, community_id = d.community_id, reason = d.reason, - when_ = d.when_, + published = d.when_, ) override fun toUni(d: X0DatatypesAdminPurgePostView): LemmyapiDatatypesAdminPurgePostView = @@ -725,11 +717,6 @@ internal class Transformer : MapperGenerator { blocked = d.blocked, ) - override fun toUni(d: X0DatatypesBlockInstanceResponse): LemmyapiDatatypesBlockInstanceResponse = - LemmyapiDatatypesBlockInstanceResponse( - blocked = d.blocked, - ) - override fun toUni(d: X0DatatypesBlockPersonResponse): LemmyapiDatatypesBlockPersonResponse = LemmyapiDatatypesBlockPersonResponse( person_view = this.toUni(d = d.person_view), @@ -807,12 +794,6 @@ internal class Transformer : MapperGenerator { recipient_ids = d.recipient_ids, ) - override fun toUni(d: X0DatatypesCommunityBlockView): LemmyapiDatatypesCommunityBlockView = - LemmyapiDatatypesCommunityBlockView( - person = this.toUni(d = d.person), - community = this.toUni(d = d.community), - ) - override fun toUni(d: X0DatatypesCommunityFollowerView): LemmyapiDatatypesCommunityFollowerView = LemmyapiDatatypesCommunityFollowerView( community = this.toUni(d = d.community), @@ -973,13 +954,6 @@ internal class Transformer : MapperGenerator { version = d.version, ) - override fun toUni(d: X0DatatypesInstanceBlockView): LemmyapiDatatypesInstanceBlockView = - LemmyapiDatatypesInstanceBlockView( - person = this.toUni(d = d.person), - instance = this.toUni(d = d.instance), - site = d.site?.let { this.toUni(d = it) }, - ) - override fun toUni(d: X0DatatypesInstanceWithFederationState): LemmyapiDatatypesInstanceWithFederationState = LemmyapiDatatypesInstanceWithFederationState( id = d.id, domain = d.domain, @@ -1096,7 +1070,7 @@ internal class Transformer : MapperGenerator { mod_person_id = d.mod_person_id, other_person_id = d.other_person_id, removed = d.removed, - when_ = d.when_, + published = d.when_, ) override fun toUni(d: X0DatatypesModAddCommunity): LemmyapiDatatypesModAddCommunity = @@ -1106,7 +1080,7 @@ internal class Transformer : MapperGenerator { other_person_id = d.other_person_id, community_id = d.community_id, removed = d.removed, - when_ = d.when_, + published = d.when_, ) override fun toUni(d: X0DatatypesModAddCommunityView): LemmyapiDatatypesModAddCommunityView = @@ -1114,14 +1088,14 @@ internal class Transformer : MapperGenerator { mod_add_community = this.toUni(d = d.mod_add_community), moderator = d.moderator?.let { this.toUni(d = it) }, community = this.toUni(d = d.community), - modded_person = this.toUni(d = d.modded_person), + other_person = this.toUni(d = d.modded_person), ) override fun toUni(d: X0DatatypesModAddView): LemmyapiDatatypesModAddView = LemmyapiDatatypesModAddView( mod_add = this.toUni(d = d.mod_add), moderator = d.moderator?.let { this.toUni(d = it) }, - modded_person = this.toUni(d = d.modded_person), + other_person = this.toUni(d = d.modded_person), ) override fun toUni(d: X0DatatypesModBan): LemmyapiDatatypesModBan = LemmyapiDatatypesModBan( @@ -1131,7 +1105,8 @@ internal class Transformer : MapperGenerator { reason = d.reason, banned = d.banned, expires = d.expires, - when_ = d.when_, + published = d.when_, + instance_id = -1, ) override fun toUni(d: X0DatatypesModBanFromCommunity): LemmyapiDatatypesModBanFromCommunity = @@ -1143,21 +1118,21 @@ internal class Transformer : MapperGenerator { reason = d.reason, banned = d.banned, expires = d.expires, - when_ = d.when_, + published = d.when_, ) override fun toUni(d: X0DatatypesModBanFromCommunityView): LemmyapiDatatypesModBanFromCommunityView = LemmyapiDatatypesModBanFromCommunityView( mod_ban_from_community = this.toUni(d = d.mod_ban_from_community), moderator = d.moderator?.let { this.toUni(d = it) }, community = this.toUni(d = d.community), - banned_person = this.toUni(d = d.banned_person), + other_person = this.toUni(d = d.banned_person), ) override fun toUni(d: X0DatatypesModBanView): LemmyapiDatatypesModBanView = LemmyapiDatatypesModBanView( mod_ban = this.toUni(d = d.mod_ban), moderator = d.moderator?.let { this.toUni(d = it) }, - banned_person = this.toUni(d = d.banned_person), + other_person = this.toUni(d = d.banned_person), ) override fun toUni(d: X0DatatypesModFeaturePost): LemmyapiDatatypesModFeaturePost = @@ -1166,7 +1141,7 @@ internal class Transformer : MapperGenerator { mod_person_id = d.mod_person_id, post_id = d.post_id, featured = d.featured, - when_ = d.when_, + published = d.when_, is_featured_community = d.is_featured_community, ) @@ -1201,7 +1176,7 @@ internal class Transformer : MapperGenerator { mod_person_id = d.mod_person_id, post_id = d.post_id, locked = d.locked, - when_ = d.when_, + published = d.when_, ) override fun toUni(d: X0DatatypesModLockPostView): LemmyapiDatatypesModLockPostView = @@ -1229,7 +1204,7 @@ internal class Transformer : MapperGenerator { comment_id = d.comment_id, reason = d.reason, removed = d.removed, - when_ = d.when_, + published = d.when_, ) override fun toUni(d: X0DatatypesModRemoveCommentView): LemmyapiDatatypesModRemoveCommentView = @@ -1237,7 +1212,7 @@ internal class Transformer : MapperGenerator { mod_remove_comment = this.toUni(d = d.mod_remove_comment), moderator = d.moderator?.let { this.toUni(d = it) }, comment = this.toUni(d = d.comment), - commenter = this.toUni(d = d.commenter), + other_person = this.toUni(d = d.commenter), post = this.toUni(d = d.post), community = this.toUni(d = d.community), ) @@ -1249,7 +1224,7 @@ internal class Transformer : MapperGenerator { community_id = d.community_id, reason = d.reason, removed = d.removed, - when_ = d.when_, + published = d.when_, ) override fun toUni(d: X0DatatypesModRemoveCommunityView): LemmyapiDatatypesModRemoveCommunityView = LemmyapiDatatypesModRemoveCommunityView( @@ -1265,7 +1240,7 @@ internal class Transformer : MapperGenerator { post_id = d.post_id, reason = d.reason, removed = d.removed, - when_ = d.when_, + published = d.when_, ) override fun toUni(d: X0DatatypesModRemovePostView): LemmyapiDatatypesModRemovePostView = @@ -1282,14 +1257,14 @@ internal class Transformer : MapperGenerator { mod_person_id = d.mod_person_id, other_person_id = d.other_person_id, community_id = d.community_id, - when_ = d.when_, + published = d.when_, ) override fun toUni(d: X0DatatypesModTransferCommunityView): LemmyapiDatatypesModTransferCommunityView = LemmyapiDatatypesModTransferCommunityView( mod_transfer_community = this.toUni(d = d.mod_transfer_community), moderator = d.moderator?.let { this.toUni(d = it) }, community = this.toUni(d = d.community), - modded_person = this.toUni(d = d.modded_person), + other_person = this.toUni(d = d.modded_person), ) override fun toUni(d: X0DatatypesMyUserInfo): LemmyapiDatatypesMyUserInfo = @@ -1297,9 +1272,9 @@ internal class Transformer : MapperGenerator { local_user_view = this.toUni(d = d.local_user_view), follows = d.follows.map { this.toUni(d = it) }, moderates = d.moderates.map { this.toUni(d = it) }, - community_blocks = d.community_blocks.map { this.toUni(d = it) }, - instance_blocks = d.instance_blocks.map { this.toUni(d = it) }, - person_blocks = d.person_blocks.map { this.toUni(d = it) }, + community_blocks = d.community_blocks.map { this.toUni(d = it.community) }, + instance_blocks = d.instance_blocks.map { this.toUni(d = it.instance) }, + person_blocks = d.person_blocks.map { this.toUni(d = it.target) }, discussion_languages = d.discussion_languages, ) @@ -1329,12 +1304,6 @@ internal class Transformer : MapperGenerator { comment_count = d.comment_count, ) - override fun toUni(d: X0DatatypesPersonBlockView): LemmyapiDatatypesPersonBlockView = - LemmyapiDatatypesPersonBlockView( - person = this.toUni(d = d.person), - target = this.toUni(d = d.target), - ) - override fun toUni(d: X0DatatypesPersonMention): LemmyapiDatatypesPersonMention = LemmyapiDatatypesPersonMention( id = d.id, @@ -1583,7 +1552,7 @@ internal class Transformer : MapperGenerator { community_id = d.community_id, person_id = d.person_id, ban = d.ban, - remove_data = d.remove_data, + remove_data = d.remove_or_restore_data, reason = d.reason, expires = d.expires, ) @@ -1591,7 +1560,7 @@ internal class Transformer : MapperGenerator { override fun fromUni(d: LemmyapiDatatypesBanPerson): X0DatatypesBanPerson = X0DatatypesBanPerson( person_id = d.person_id, ban = d.ban, - remove_data = d.remove_data, + remove_data = d.remove_or_restore_data, reason = d.reason, expires = d.expires, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/BlockInstanceResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/BlockInstanceResponse.kt deleted file mode 100644 index aa3fd9ec..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/BlockInstanceResponse.kt +++ /dev/null @@ -1,8 +0,0 @@ -package it.vercruysse.lemmyapi.v0.x19.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class BlockInstanceResponse( - val blocked: Boolean, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiController.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiController.kt index 27a57ff2..7313e0b0 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiController.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiController.kt @@ -715,7 +715,7 @@ internal class LemmyApiController(client: HttpClient, auth: String?) : * * @POST("site/block") */ - override suspend fun blockInstance(form: BlockInstance): Result = + override suspend fun blockInstance(form: BlockInstance): Result = client.postResult("site/block", form) /** diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiRouter.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiRouter.kt index 36c59b88..344ed227 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiRouter.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiRouter.kt @@ -622,7 +622,7 @@ internal abstract class LemmyApiRouter(client: HttpClient, auth: String?) : Auth * * @POST("site/block") */ - abstract suspend fun blockInstance(form: BlockInstance): Result + abstract suspend fun blockInstance(form: BlockInstance): Result /** * Generate a TOTP / two-factor secret. diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt index 48cab544..2199aa2b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt @@ -835,8 +835,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun blockInstance( form: it.vercruysse.lemmyapi.datatypes.BlockInstance, - ): Result = - api.blockInstance(transformer.fromUni(form)).map(transformer::toUni) + ): Result = + api.blockInstance(transformer.fromUni(form)) /** * Generate a TOTP / two-factor secret. diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt index d92abb58..96ec3a41 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt @@ -18,7 +18,6 @@ internal interface MapperGenerator { fun toUni(d: BannedPersonsResponse): it.vercruysse.lemmyapi.datatypes.BannedPersonsResponse fun toUni(d: BanPersonResponse): it.vercruysse.lemmyapi.datatypes.BanPersonResponse fun toUni(d: BlockCommunityResponse): it.vercruysse.lemmyapi.datatypes.BlockCommunityResponse - fun toUni(d: BlockInstanceResponse): it.vercruysse.lemmyapi.datatypes.BlockInstanceResponse fun toUni(d: BlockPersonResponse): it.vercruysse.lemmyapi.datatypes.BlockPersonResponse fun toUni(d: CaptchaResponse): it.vercruysse.lemmyapi.datatypes.CaptchaResponse fun toUni(d: Comment): it.vercruysse.lemmyapi.datatypes.Comment @@ -33,7 +32,6 @@ internal interface MapperGenerator { fun toUni(d: CommentView): it.vercruysse.lemmyapi.datatypes.CommentView fun toUni(d: Community): it.vercruysse.lemmyapi.datatypes.Community fun toUni(d: CommunityAggregates): it.vercruysse.lemmyapi.datatypes.CommunityAggregates - fun toUni(d: CommunityBlockView): it.vercruysse.lemmyapi.datatypes.CommunityBlockView fun toUni(d: CommunityFollowerView): it.vercruysse.lemmyapi.datatypes.CommunityFollowerView fun toUni(d: CommunityModeratorView): it.vercruysse.lemmyapi.datatypes.CommunityModeratorView fun toUni(d: CommunityResponse): it.vercruysse.lemmyapi.datatypes.CommunityResponse @@ -61,7 +59,6 @@ internal interface MapperGenerator { fun toUni(d: GetUnreadRegistrationApplicationCountResponse): it.vercruysse.lemmyapi.datatypes.GetUnreadRegistrationApplicationCountResponse fun toUni(d: ImageDetails): it.vercruysse.lemmyapi.datatypes.ImageDetails fun toUni(d: Instance): it.vercruysse.lemmyapi.datatypes.Instance - fun toUni(d: InstanceBlockView): it.vercruysse.lemmyapi.datatypes.InstanceBlockView fun toUni(d: InstanceWithFederationState): it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState fun toUni(d: Language): it.vercruysse.lemmyapi.datatypes.Language fun toUni(d: LinkMetadata): it.vercruysse.lemmyapi.datatypes.LinkMetadata @@ -109,7 +106,6 @@ internal interface MapperGenerator { fun toUni(d: MyUserInfo): it.vercruysse.lemmyapi.datatypes.MyUserInfo fun toUni(d: Person): it.vercruysse.lemmyapi.datatypes.Person fun toUni(d: PersonAggregates): it.vercruysse.lemmyapi.datatypes.PersonAggregates - fun toUni(d: PersonBlockView): it.vercruysse.lemmyapi.datatypes.PersonBlockView fun toUni(d: PersonMention): it.vercruysse.lemmyapi.datatypes.PersonMention fun toUni(d: PersonMentionResponse): it.vercruysse.lemmyapi.datatypes.PersonMentionResponse fun toUni(d: PersonMentionView): it.vercruysse.lemmyapi.datatypes.PersonMentionView diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt index 973820b9..62ae68fa 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt @@ -21,7 +21,6 @@ import it.vercruysse.lemmyapi.datatypes.BannedPersonsResponse as LemmyapiDatatyp import it.vercruysse.lemmyapi.datatypes.BlockCommunity as LemmyapiDatatypesBlockCommunity import it.vercruysse.lemmyapi.datatypes.BlockCommunityResponse as LemmyapiDatatypesBlockCommunityResponse import it.vercruysse.lemmyapi.datatypes.BlockInstance as LemmyapiDatatypesBlockInstance -import it.vercruysse.lemmyapi.datatypes.BlockInstanceResponse as LemmyapiDatatypesBlockInstanceResponse import it.vercruysse.lemmyapi.datatypes.BlockPerson as LemmyapiDatatypesBlockPerson import it.vercruysse.lemmyapi.datatypes.BlockPersonResponse as LemmyapiDatatypesBlockPersonResponse import it.vercruysse.lemmyapi.datatypes.CaptchaResponse as LemmyapiDatatypesCaptchaResponse @@ -38,7 +37,6 @@ import it.vercruysse.lemmyapi.datatypes.CommentResponse as LemmyapiDatatypesComm import it.vercruysse.lemmyapi.datatypes.CommentView as LemmyapiDatatypesCommentView import it.vercruysse.lemmyapi.datatypes.Community as LemmyapiDatatypesCommunity import it.vercruysse.lemmyapi.datatypes.CommunityAggregates as LemmyapiDatatypesCommunityAggregates -import it.vercruysse.lemmyapi.datatypes.CommunityBlockView as LemmyapiDatatypesCommunityBlockView import it.vercruysse.lemmyapi.datatypes.CommunityFollowerView as LemmyapiDatatypesCommunityFollowerView import it.vercruysse.lemmyapi.datatypes.CommunityModeratorView as LemmyapiDatatypesCommunityModeratorView import it.vercruysse.lemmyapi.datatypes.CommunityResponse as LemmyapiDatatypesCommunityResponse @@ -107,7 +105,6 @@ import it.vercruysse.lemmyapi.datatypes.HideCommunity as LemmyapiDatatypesHideCo import it.vercruysse.lemmyapi.datatypes.HidePost as LemmyapiDatatypesHidePost import it.vercruysse.lemmyapi.datatypes.ImageDetails as LemmyapiDatatypesImageDetails import it.vercruysse.lemmyapi.datatypes.Instance as LemmyapiDatatypesInstance -import it.vercruysse.lemmyapi.datatypes.InstanceBlockView as LemmyapiDatatypesInstanceBlockView import it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState as LemmyapiDatatypesInstanceWithFederationState import it.vercruysse.lemmyapi.datatypes.Language as LemmyapiDatatypesLanguage import it.vercruysse.lemmyapi.datatypes.LinkMetadata as LemmyapiDatatypesLinkMetadata @@ -171,7 +168,6 @@ import it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset as LemmyapiData import it.vercruysse.lemmyapi.datatypes.PasswordReset as LemmyapiDatatypesPasswordReset import it.vercruysse.lemmyapi.datatypes.Person as LemmyapiDatatypesPerson import it.vercruysse.lemmyapi.datatypes.PersonAggregates as LemmyapiDatatypesPersonAggregates -import it.vercruysse.lemmyapi.datatypes.PersonBlockView as LemmyapiDatatypesPersonBlockView import it.vercruysse.lemmyapi.datatypes.PersonMention as LemmyapiDatatypesPersonMention import it.vercruysse.lemmyapi.datatypes.PersonMentionResponse as LemmyapiDatatypesPersonMentionResponse import it.vercruysse.lemmyapi.datatypes.PersonMentionView as LemmyapiDatatypesPersonMentionView @@ -243,7 +239,6 @@ import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.BannedPersonsResponse as X11D import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.BlockCommunity as X11DatatypesBlockCommunity import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.BlockCommunityResponse as X11DatatypesBlockCommunityResponse import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.BlockInstance as X11DatatypesBlockInstance -import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.BlockInstanceResponse as X11DatatypesBlockInstanceResponse import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.BlockPerson as X11DatatypesBlockPerson import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.BlockPersonResponse as X11DatatypesBlockPersonResponse import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.CaptchaResponse as X11DatatypesCaptchaResponse @@ -329,7 +324,6 @@ import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.HideCommunity as X11Datatypes import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.HidePost as X11DatatypesHidePost import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.ImageDetails as X11DatatypesImageDetails import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.Instance as X11DatatypesInstance -import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.InstanceBlockView as X11DatatypesInstanceBlockView import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.InstanceWithFederationState as X11DatatypesInstanceWithFederationState import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.Language as X11DatatypesLanguage import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.LinkMetadata as X11DatatypesLinkMetadata @@ -393,7 +387,6 @@ import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.PasswordChangeAfterReset as X import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.PasswordReset as X11DatatypesPasswordReset import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.Person as X11DatatypesPerson import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.PersonAggregates as X11DatatypesPersonAggregates -import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.PersonBlockView as X11DatatypesPersonBlockView import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.PersonMention as X11DatatypesPersonMention import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.PersonMentionResponse as X11DatatypesPersonMentionResponse import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.PersonMentionView as X11DatatypesPersonMentionView @@ -462,7 +455,7 @@ internal class Transformer : MapperGenerator { admin_person_id = d.admin_person_id, post_id = d.post_id, reason = d.reason, - when_ = d.when_, + published = d.when_, ) override fun toUni(d: X11DatatypesAdminPurgeCommentView): LemmyapiDatatypesAdminPurgeCommentView = @@ -477,7 +470,7 @@ internal class Transformer : MapperGenerator { id = d.id, admin_person_id = d.admin_person_id, reason = d.reason, - when_ = d.when_, + published = d.when_, ) override fun toUni(d: X11DatatypesAdminPurgeCommunityView): LemmyapiDatatypesAdminPurgeCommunityView = LemmyapiDatatypesAdminPurgeCommunityView( @@ -490,7 +483,7 @@ internal class Transformer : MapperGenerator { id = d.id, admin_person_id = d.admin_person_id, reason = d.reason, - when_ = d.when_, + published = d.when_, ) override fun toUni(d: X11DatatypesAdminPurgePersonView): LemmyapiDatatypesAdminPurgePersonView = @@ -505,7 +498,7 @@ internal class Transformer : MapperGenerator { admin_person_id = d.admin_person_id, community_id = d.community_id, reason = d.reason, - when_ = d.when_, + published = d.when_, ) override fun toUni(d: X11DatatypesAdminPurgePostView): LemmyapiDatatypesAdminPurgePostView = @@ -536,11 +529,6 @@ internal class Transformer : MapperGenerator { blocked = d.blocked, ) - override fun toUni(d: X11DatatypesBlockInstanceResponse): LemmyapiDatatypesBlockInstanceResponse = - LemmyapiDatatypesBlockInstanceResponse( - blocked = d.blocked, - ) - override fun toUni(d: X11DatatypesBlockPersonResponse): LemmyapiDatatypesBlockPersonResponse = LemmyapiDatatypesBlockPersonResponse( person_view = this.toUni(d = d.person_view), @@ -708,12 +696,6 @@ internal class Transformer : MapperGenerator { subscribers_local = d.subscribers_local, ) - override fun toUni(d: X11DatatypesCommunityBlockView): LemmyapiDatatypesCommunityBlockView = - LemmyapiDatatypesCommunityBlockView( - person = this.toUni(d = d.person), - community = this.toUni(d = d.community), - ) - override fun toUni(d: X11DatatypesCommunityFollowerView): LemmyapiDatatypesCommunityFollowerView = LemmyapiDatatypesCommunityFollowerView( community = this.toUni(d = d.community), @@ -906,13 +888,6 @@ internal class Transformer : MapperGenerator { version = d.version, ) - override fun toUni(d: X11DatatypesInstanceBlockView): LemmyapiDatatypesInstanceBlockView = - LemmyapiDatatypesInstanceBlockView( - person = this.toUni(d = d.person), - instance = this.toUni(d = d.instance), - site = d.site?.let { this.toUni(d = it) }, - ) - override fun toUni(d: X11DatatypesInstanceWithFederationState): LemmyapiDatatypesInstanceWithFederationState = LemmyapiDatatypesInstanceWithFederationState( id = d.id, domain = d.domain, @@ -1114,7 +1089,7 @@ internal class Transformer : MapperGenerator { mod_person_id = d.mod_person_id, other_person_id = d.other_person_id, removed = d.removed, - when_ = d.when_, + published = d.when_, ) override fun toUni(d: X11DatatypesModAddCommunity): LemmyapiDatatypesModAddCommunity = @@ -1124,7 +1099,7 @@ internal class Transformer : MapperGenerator { other_person_id = d.other_person_id, community_id = d.community_id, removed = d.removed, - when_ = d.when_, + published = d.when_, ) override fun toUni(d: X11DatatypesModAddCommunityView): LemmyapiDatatypesModAddCommunityView = @@ -1132,14 +1107,14 @@ internal class Transformer : MapperGenerator { mod_add_community = this.toUni(d = d.mod_add_community), moderator = d.moderator?.let { this.toUni(d = it) }, community = this.toUni(d = d.community), - modded_person = this.toUni(d = d.modded_person), + other_person = this.toUni(d = d.modded_person), ) override fun toUni(d: X11DatatypesModAddView): LemmyapiDatatypesModAddView = LemmyapiDatatypesModAddView( mod_add = this.toUni(d = d.mod_add), moderator = d.moderator?.let { this.toUni(d = it) }, - modded_person = this.toUni(d = d.modded_person), + other_person = this.toUni(d = d.modded_person), ) override fun toUni(d: X11DatatypesModBan): LemmyapiDatatypesModBan = LemmyapiDatatypesModBan( @@ -1149,7 +1124,8 @@ internal class Transformer : MapperGenerator { reason = d.reason, banned = d.banned, expires = d.expires, - when_ = d.when_, + published = d.when_, + instance_id = -1, ) override fun toUni(d: X11DatatypesModBanFromCommunity): LemmyapiDatatypesModBanFromCommunity = @@ -1161,21 +1137,21 @@ internal class Transformer : MapperGenerator { reason = d.reason, banned = d.banned, expires = d.expires, - when_ = d.when_, + published = d.when_, ) override fun toUni(d: X11DatatypesModBanFromCommunityView): LemmyapiDatatypesModBanFromCommunityView = LemmyapiDatatypesModBanFromCommunityView( mod_ban_from_community = this.toUni(d = d.mod_ban_from_community), moderator = d.moderator?.let { this.toUni(d = it) }, community = this.toUni(d = d.community), - banned_person = this.toUni(d = d.banned_person), + other_person = this.toUni(d = d.banned_person), ) override fun toUni(d: X11DatatypesModBanView): LemmyapiDatatypesModBanView = LemmyapiDatatypesModBanView( mod_ban = this.toUni(d = d.mod_ban), moderator = d.moderator?.let { this.toUni(d = it) }, - banned_person = this.toUni(d = d.banned_person), + other_person = this.toUni(d = d.banned_person), ) override fun toUni(d: X11DatatypesModFeaturePost): LemmyapiDatatypesModFeaturePost = @@ -1184,7 +1160,7 @@ internal class Transformer : MapperGenerator { mod_person_id = d.mod_person_id, post_id = d.post_id, featured = d.featured, - when_ = d.when_, + published = d.when_, is_featured_community = d.is_featured_community, ) @@ -1219,7 +1195,7 @@ internal class Transformer : MapperGenerator { mod_person_id = d.mod_person_id, post_id = d.post_id, locked = d.locked, - when_ = d.when_, + published = d.when_, ) override fun toUni(d: X11DatatypesModLockPostView): LemmyapiDatatypesModLockPostView = @@ -1249,7 +1225,7 @@ internal class Transformer : MapperGenerator { comment_id = d.comment_id, reason = d.reason, removed = d.removed, - when_ = d.when_, + published = d.when_, ) override fun toUni(d: X11DatatypesModRemoveCommentView): LemmyapiDatatypesModRemoveCommentView = @@ -1257,7 +1233,7 @@ internal class Transformer : MapperGenerator { mod_remove_comment = this.toUni(d = d.mod_remove_comment), moderator = d.moderator?.let { this.toUni(d = it) }, comment = this.toUni(d = d.comment), - commenter = this.toUni(d = d.commenter), + other_person = this.toUni(d = d.commenter), post = this.toUni(d = d.post), community = this.toUni(d = d.community), ) @@ -1269,7 +1245,7 @@ internal class Transformer : MapperGenerator { community_id = d.community_id, reason = d.reason, removed = d.removed, - when_ = d.when_, + published = d.when_, ) override fun toUni(d: X11DatatypesModRemoveCommunityView): LemmyapiDatatypesModRemoveCommunityView = LemmyapiDatatypesModRemoveCommunityView( @@ -1285,7 +1261,7 @@ internal class Transformer : MapperGenerator { post_id = d.post_id, reason = d.reason, removed = d.removed, - when_ = d.when_, + published = d.when_, ) override fun toUni(d: X11DatatypesModRemovePostView): LemmyapiDatatypesModRemovePostView = @@ -1302,14 +1278,14 @@ internal class Transformer : MapperGenerator { mod_person_id = d.mod_person_id, other_person_id = d.other_person_id, community_id = d.community_id, - when_ = d.when_, + published = d.when_, ) override fun toUni(d: X11DatatypesModTransferCommunityView): LemmyapiDatatypesModTransferCommunityView = LemmyapiDatatypesModTransferCommunityView( mod_transfer_community = this.toUni(d = d.mod_transfer_community), moderator = d.moderator?.let { this.toUni(d = it) }, community = this.toUni(d = d.community), - modded_person = this.toUni(d = d.modded_person), + other_person = this.toUni(d = d.modded_person), ) override fun toUni(d: X11DatatypesMyUserInfo): LemmyapiDatatypesMyUserInfo = @@ -1317,9 +1293,9 @@ internal class Transformer : MapperGenerator { local_user_view = this.toUni(d = d.local_user_view), follows = d.follows.map { this.toUni(d = it) }, moderates = d.moderates.map { this.toUni(d = it) }, - community_blocks = d.community_blocks.map { this.toUni(d = it) }, - instance_blocks = d.instance_blocks.map { this.toUni(d = it) }, - person_blocks = d.person_blocks.map { this.toUni(d = it) }, + community_blocks = d.community_blocks.map { this.toUni(d = it.community) }, + instance_blocks = d.instance_blocks.map { this.toUni(d = it.instance) }, + person_blocks = d.person_blocks.map { this.toUni(d = it.target) }, discussion_languages = d.discussion_languages, ) @@ -1349,12 +1325,6 @@ internal class Transformer : MapperGenerator { comment_count = d.comment_count, ) - override fun toUni(d: X11DatatypesPersonBlockView): LemmyapiDatatypesPersonBlockView = - LemmyapiDatatypesPersonBlockView( - person = this.toUni(d = d.person), - target = this.toUni(d = d.target), - ) - override fun toUni(d: X11DatatypesPersonMention): LemmyapiDatatypesPersonMention = LemmyapiDatatypesPersonMention( id = d.id, @@ -1685,7 +1655,7 @@ internal class Transformer : MapperGenerator { community_id = d.community_id, person_id = d.person_id, ban = d.ban, - remove_data = d.remove_data, + remove_data = d.remove_or_restore_data, reason = d.reason, expires = d.expires, ) @@ -1694,7 +1664,7 @@ internal class Transformer : MapperGenerator { X11DatatypesBanPerson( person_id = d.person_id, ban = d.ban, - remove_data = d.remove_data, + remove_data = d.remove_or_restore_data, reason = d.reason, expires = d.expires, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/BlockInstanceResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/BlockInstanceResponse.kt deleted file mode 100644 index 9f1307c7..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/BlockInstanceResponse.kt +++ /dev/null @@ -1,8 +0,0 @@ -package it.vercruysse.lemmyapi.v0.x19.x11.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class BlockInstanceResponse( - val blocked: Boolean, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/OpenGraphData.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/OpenGraphData.kt deleted file mode 100644 index ba364b50..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/OpenGraphData.kt +++ /dev/null @@ -1,11 +0,0 @@ -package it.vercruysse.lemmyapi.v0.x19.x11.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class OpenGraphData( - val title: String? = null, - val description: String? = null, - val image: String? = null, - val embed_video_url: String? = null, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiController.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiController.kt index 665f59ab..6f352f8b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiController.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiController.kt @@ -707,7 +707,7 @@ internal class LemmyApiController(client: HttpClient, auth: String?) : * * @POST("site/block") */ - override suspend fun blockInstance(form: BlockInstance): Result = + override suspend fun blockInstance(form: BlockInstance): Result = client.postResult("site/block", form) /** diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiRouter.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiRouter.kt index d19b83b1..2e77a88a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiRouter.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiRouter.kt @@ -615,7 +615,7 @@ internal abstract class LemmyApiRouter(client: HttpClient, auth: String?) : Auth * * @POST("site/block") */ - abstract suspend fun blockInstance(form: BlockInstance): Result + abstract suspend fun blockInstance(form: BlockInstance): Result /** * Generate a TOTP / two-factor secret. diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt index da34bbf5..400917a1 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt @@ -835,8 +835,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun blockInstance( form: it.vercruysse.lemmyapi.datatypes.BlockInstance, - ): Result = - api.blockInstance(transformer.fromUni(form)).map(transformer::toUni) + ): Result = + api.blockInstance(transformer.fromUni(form)) /** * Generate a TOTP / two-factor secret. diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt index 39c2ef10..82ec31c3 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt @@ -45,7 +45,6 @@ internal interface MapperGenerator { fun toUni(d: BannedPersonsResponse): it.vercruysse.lemmyapi.datatypes.BannedPersonsResponse fun toUni(d: BanPersonResponse): it.vercruysse.lemmyapi.datatypes.BanPersonResponse fun toUni(d: BlockCommunityResponse): it.vercruysse.lemmyapi.datatypes.BlockCommunityResponse - fun toUni(d: BlockInstanceResponse): it.vercruysse.lemmyapi.datatypes.BlockInstanceResponse fun toUni(d: BlockPersonResponse): it.vercruysse.lemmyapi.datatypes.BlockPersonResponse fun toUni(d: CaptchaResponse): it.vercruysse.lemmyapi.datatypes.CaptchaResponse fun toUni(d: Comment): it.vercruysse.lemmyapi.datatypes.Comment @@ -58,7 +57,6 @@ internal interface MapperGenerator { fun toUni(d: CommentResponse): it.vercruysse.lemmyapi.datatypes.CommentResponse - fun toUni(d: CommunityBlockView): it.vercruysse.lemmyapi.datatypes.CommunityBlockView fun toUni(d: CommunityFollowerView): it.vercruysse.lemmyapi.datatypes.CommunityFollowerView fun toUni(d: CommunityModeratorView): it.vercruysse.lemmyapi.datatypes.CommunityModeratorView fun toUni(d: CommunityResponse): it.vercruysse.lemmyapi.datatypes.CommunityResponse @@ -87,7 +85,6 @@ internal interface MapperGenerator { d: GetUnreadRegistrationApplicationCountResponse, ): it.vercruysse.lemmyapi.datatypes.GetUnreadRegistrationApplicationCountResponse fun toUni(d: Instance): it.vercruysse.lemmyapi.datatypes.Instance - fun toUni(d: InstanceBlockView): it.vercruysse.lemmyapi.datatypes.InstanceBlockView fun toUni(d: InstanceWithFederationState): it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState fun toUni(d: Language): it.vercruysse.lemmyapi.datatypes.Language fun toUni(d: ListCommentLikesResponse): it.vercruysse.lemmyapi.datatypes.ListCommentLikesResponse @@ -129,7 +126,6 @@ internal interface MapperGenerator { fun toUni(d: MyUserInfo): it.vercruysse.lemmyapi.datatypes.MyUserInfo fun toUni(d: Person): it.vercruysse.lemmyapi.datatypes.Person fun toUni(d: PersonAggregates): it.vercruysse.lemmyapi.datatypes.PersonAggregates - fun toUni(d: PersonBlockView): it.vercruysse.lemmyapi.datatypes.PersonBlockView fun toUni(d: PersonMention): it.vercruysse.lemmyapi.datatypes.PersonMention fun toUni(d: PersonMentionResponse): it.vercruysse.lemmyapi.datatypes.PersonMentionResponse diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt index 62705af2..a9bfa253 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt @@ -27,7 +27,6 @@ import it.vercruysse.lemmyapi.datatypes.BannedPersonsResponse as LemmyapiDatatyp import it.vercruysse.lemmyapi.datatypes.BlockCommunity as LemmyapiDatatypesBlockCommunity import it.vercruysse.lemmyapi.datatypes.BlockCommunityResponse as LemmyapiDatatypesBlockCommunityResponse import it.vercruysse.lemmyapi.datatypes.BlockInstance as LemmyapiDatatypesBlockInstance -import it.vercruysse.lemmyapi.datatypes.BlockInstanceResponse as LemmyapiDatatypesBlockInstanceResponse import it.vercruysse.lemmyapi.datatypes.BlockPerson as LemmyapiDatatypesBlockPerson import it.vercruysse.lemmyapi.datatypes.BlockPersonResponse as LemmyapiDatatypesBlockPersonResponse import it.vercruysse.lemmyapi.datatypes.CaptchaResponse as LemmyapiDatatypesCaptchaResponse @@ -44,7 +43,6 @@ import it.vercruysse.lemmyapi.datatypes.CommentResponse as LemmyapiDatatypesComm import it.vercruysse.lemmyapi.datatypes.CommentView as LemmyapiDatatypesCommentView import it.vercruysse.lemmyapi.datatypes.Community as LemmyapiDatatypesCommunity import it.vercruysse.lemmyapi.datatypes.CommunityAggregates as LemmyapiDatatypesCommunityAggregates -import it.vercruysse.lemmyapi.datatypes.CommunityBlockView as LemmyapiDatatypesCommunityBlockView import it.vercruysse.lemmyapi.datatypes.CommunityFollowerView as LemmyapiDatatypesCommunityFollowerView import it.vercruysse.lemmyapi.datatypes.CommunityModeratorView as LemmyapiDatatypesCommunityModeratorView import it.vercruysse.lemmyapi.datatypes.CommunityResponse as LemmyapiDatatypesCommunityResponse @@ -110,7 +108,6 @@ import it.vercruysse.lemmyapi.datatypes.GetUnreadCountResponse as LemmyapiDataty import it.vercruysse.lemmyapi.datatypes.GetUnreadRegistrationApplicationCountResponse as LemmyapiDatatypesGetUnreadRegistrationApplicationCountResponse import it.vercruysse.lemmyapi.datatypes.HideCommunity as LemmyapiDatatypesHideCommunity import it.vercruysse.lemmyapi.datatypes.Instance as LemmyapiDatatypesInstance -import it.vercruysse.lemmyapi.datatypes.InstanceBlockView as LemmyapiDatatypesInstanceBlockView import it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState as LemmyapiDatatypesInstanceWithFederationState import it.vercruysse.lemmyapi.datatypes.Language as LemmyapiDatatypesLanguage import it.vercruysse.lemmyapi.datatypes.ListCommentLikes as LemmyapiDatatypesListCommentLikes @@ -167,7 +164,6 @@ import it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset as LemmyapiData import it.vercruysse.lemmyapi.datatypes.PasswordReset as LemmyapiDatatypesPasswordReset import it.vercruysse.lemmyapi.datatypes.Person as LemmyapiDatatypesPerson import it.vercruysse.lemmyapi.datatypes.PersonAggregates as LemmyapiDatatypesPersonAggregates -import it.vercruysse.lemmyapi.datatypes.PersonBlockView as LemmyapiDatatypesPersonBlockView import it.vercruysse.lemmyapi.datatypes.PersonMention as LemmyapiDatatypesPersonMention import it.vercruysse.lemmyapi.datatypes.PersonMentionResponse as LemmyapiDatatypesPersonMentionResponse import it.vercruysse.lemmyapi.datatypes.PersonMentionView as LemmyapiDatatypesPersonMentionView @@ -239,7 +235,6 @@ import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.BannedPersonsResponse as X3Dat import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.BlockCommunity as X3DatatypesBlockCommunity import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.BlockCommunityResponse as X3DatatypesBlockCommunityResponse import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.BlockInstance as X3DatatypesBlockInstance -import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.BlockInstanceResponse as X3DatatypesBlockInstanceResponse import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.BlockPerson as X3DatatypesBlockPerson import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.BlockPersonResponse as X3DatatypesBlockPersonResponse import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.CaptchaResponse as X3DatatypesCaptchaResponse @@ -256,7 +251,6 @@ import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.CommentResponse as X3Datatypes import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.CommentView as X3DatatypesCommentView import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.Community as X3DatatypesCommunity import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.CommunityAggregates as X3DatatypesCommunityAggregates -import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.CommunityBlockView as X3DatatypesCommunityBlockView import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.CommunityFollowerView as X3DatatypesCommunityFollowerView import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.CommunityModeratorView as X3DatatypesCommunityModeratorView import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.CommunityResponse as X3DatatypesCommunityResponse @@ -322,7 +316,6 @@ import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.GetUnreadCountResponse as X3Da import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.GetUnreadRegistrationApplicationCountResponse as X3DatatypesGetUnreadRegistrationApplicationCountResponse import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.HideCommunity as X3DatatypesHideCommunity import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.Instance as X3DatatypesInstance -import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.InstanceBlockView as X3DatatypesInstanceBlockView import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.InstanceWithFederationState as X3DatatypesInstanceWithFederationState import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.Language as X3DatatypesLanguage import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.ListCommentLikes as X3DatatypesListCommentLikes @@ -379,7 +372,6 @@ import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.PasswordChangeAfterReset as X3 import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.PasswordReset as X3DatatypesPasswordReset import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.Person as X3DatatypesPerson import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.PersonAggregates as X3DatatypesPersonAggregates -import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.PersonBlockView as X3DatatypesPersonBlockView import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.PersonMention as X3DatatypesPersonMention import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.PersonMentionResponse as X3DatatypesPersonMentionResponse import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.PersonMentionView as X3DatatypesPersonMentionView @@ -660,7 +652,7 @@ internal class Transformer : MapperGenerator { admin_person_id = d.admin_person_id, post_id = d.post_id, reason = d.reason, - when_ = d.when_, + published = d.when_, ) override fun toUni(d: X3DatatypesAdminPurgeCommentView): LemmyapiDatatypesAdminPurgeCommentView = @@ -675,7 +667,7 @@ internal class Transformer : MapperGenerator { id = d.id, admin_person_id = d.admin_person_id, reason = d.reason, - when_ = d.when_, + published = d.when_, ) override fun toUni(d: X3DatatypesAdminPurgeCommunityView): LemmyapiDatatypesAdminPurgeCommunityView = LemmyapiDatatypesAdminPurgeCommunityView( @@ -688,7 +680,7 @@ internal class Transformer : MapperGenerator { id = d.id, admin_person_id = d.admin_person_id, reason = d.reason, - when_ = d.when_, + published = d.when_, ) override fun toUni(d: X3DatatypesAdminPurgePersonView): LemmyapiDatatypesAdminPurgePersonView = @@ -703,7 +695,7 @@ internal class Transformer : MapperGenerator { admin_person_id = d.admin_person_id, community_id = d.community_id, reason = d.reason, - when_ = d.when_, + published = d.when_, ) override fun toUni(d: X3DatatypesAdminPurgePostView): LemmyapiDatatypesAdminPurgePostView = @@ -734,11 +726,6 @@ internal class Transformer : MapperGenerator { blocked = d.blocked, ) - override fun toUni(d: X3DatatypesBlockInstanceResponse): LemmyapiDatatypesBlockInstanceResponse = - LemmyapiDatatypesBlockInstanceResponse( - blocked = d.blocked, - ) - override fun toUni(d: X3DatatypesBlockPersonResponse): LemmyapiDatatypesBlockPersonResponse = LemmyapiDatatypesBlockPersonResponse( person_view = this.toUni(d = d.person_view), @@ -816,12 +803,6 @@ internal class Transformer : MapperGenerator { recipient_ids = d.recipient_ids, ) - override fun toUni(d: X3DatatypesCommunityBlockView): LemmyapiDatatypesCommunityBlockView = - LemmyapiDatatypesCommunityBlockView( - person = this.toUni(d = d.person), - community = this.toUni(d = d.community), - ) - override fun toUni(d: X3DatatypesCommunityFollowerView): LemmyapiDatatypesCommunityFollowerView = LemmyapiDatatypesCommunityFollowerView( community = this.toUni(d = d.community), @@ -983,13 +964,6 @@ internal class Transformer : MapperGenerator { version = d.version, ) - override fun toUni(d: X3DatatypesInstanceBlockView): LemmyapiDatatypesInstanceBlockView = - LemmyapiDatatypesInstanceBlockView( - person = this.toUni(d = d.person), - instance = this.toUni(d = d.instance), - site = d.site?.let { this.toUni(d = it) }, - ) - override fun toUni(d: X3DatatypesInstanceWithFederationState): LemmyapiDatatypesInstanceWithFederationState = LemmyapiDatatypesInstanceWithFederationState( id = d.id, domain = d.domain, @@ -1115,7 +1089,7 @@ internal class Transformer : MapperGenerator { mod_person_id = d.mod_person_id, other_person_id = d.other_person_id, removed = d.removed, - when_ = d.when_, + published = d.when_, ) override fun toUni(d: X3DatatypesModAddCommunity): LemmyapiDatatypesModAddCommunity = @@ -1125,7 +1099,7 @@ internal class Transformer : MapperGenerator { other_person_id = d.other_person_id, community_id = d.community_id, removed = d.removed, - when_ = d.when_, + published = d.when_, ) override fun toUni(d: X3DatatypesModAddCommunityView): LemmyapiDatatypesModAddCommunityView = @@ -1133,14 +1107,14 @@ internal class Transformer : MapperGenerator { mod_add_community = this.toUni(d = d.mod_add_community), moderator = d.moderator?.let { this.toUni(d = it) }, community = this.toUni(d = d.community), - modded_person = this.toUni(d = d.modded_person), + other_person = this.toUni(d = d.modded_person), ) override fun toUni(d: X3DatatypesModAddView): LemmyapiDatatypesModAddView = LemmyapiDatatypesModAddView( mod_add = this.toUni(d = d.mod_add), moderator = d.moderator?.let { this.toUni(d = it) }, - modded_person = this.toUni(d = d.modded_person), + other_person = this.toUni(d = d.modded_person), ) override fun toUni(d: X3DatatypesModBan): LemmyapiDatatypesModBan = LemmyapiDatatypesModBan( @@ -1150,7 +1124,8 @@ internal class Transformer : MapperGenerator { reason = d.reason, banned = d.banned, expires = d.expires, - when_ = d.when_, + published = d.when_, + instance_id = -1, ) override fun toUni(d: X3DatatypesModBanFromCommunity): LemmyapiDatatypesModBanFromCommunity = @@ -1162,21 +1137,21 @@ internal class Transformer : MapperGenerator { reason = d.reason, banned = d.banned, expires = d.expires, - when_ = d.when_, + published = d.when_, ) override fun toUni(d: X3DatatypesModBanFromCommunityView): LemmyapiDatatypesModBanFromCommunityView = LemmyapiDatatypesModBanFromCommunityView( mod_ban_from_community = this.toUni(d = d.mod_ban_from_community), moderator = d.moderator?.let { this.toUni(d = it) }, community = this.toUni(d = d.community), - banned_person = this.toUni(d = d.banned_person), + other_person = this.toUni(d = d.banned_person), ) override fun toUni(d: X3DatatypesModBanView): LemmyapiDatatypesModBanView = LemmyapiDatatypesModBanView( mod_ban = this.toUni(d = d.mod_ban), moderator = d.moderator?.let { this.toUni(d = it) }, - banned_person = this.toUni(d = d.banned_person), + other_person = this.toUni(d = d.banned_person), ) override fun toUni(d: X3DatatypesModFeaturePost): LemmyapiDatatypesModFeaturePost = @@ -1185,7 +1160,7 @@ internal class Transformer : MapperGenerator { mod_person_id = d.mod_person_id, post_id = d.post_id, featured = d.featured, - when_ = d.when_, + published = d.when_, is_featured_community = d.is_featured_community, ) @@ -1220,7 +1195,7 @@ internal class Transformer : MapperGenerator { mod_person_id = d.mod_person_id, post_id = d.post_id, locked = d.locked, - when_ = d.when_, + published = d.when_, ) override fun toUni(d: X3DatatypesModLockPostView): LemmyapiDatatypesModLockPostView = @@ -1248,7 +1223,7 @@ internal class Transformer : MapperGenerator { comment_id = d.comment_id, reason = d.reason, removed = d.removed, - when_ = d.when_, + published = d.when_, ) override fun toUni(d: X3DatatypesModRemoveCommentView): LemmyapiDatatypesModRemoveCommentView = @@ -1256,7 +1231,7 @@ internal class Transformer : MapperGenerator { mod_remove_comment = this.toUni(d = d.mod_remove_comment), moderator = d.moderator?.let { this.toUni(d = it) }, comment = this.toUni(d = d.comment), - commenter = this.toUni(d = d.commenter), + other_person = this.toUni(d = d.commenter), post = this.toUni(d = d.post), community = this.toUni(d = d.community), ) @@ -1268,7 +1243,7 @@ internal class Transformer : MapperGenerator { community_id = d.community_id, reason = d.reason, removed = d.removed, - when_ = d.when_, + published = d.when_, ) override fun toUni(d: X3DatatypesModRemoveCommunityView): LemmyapiDatatypesModRemoveCommunityView = LemmyapiDatatypesModRemoveCommunityView( @@ -1284,7 +1259,7 @@ internal class Transformer : MapperGenerator { post_id = d.post_id, reason = d.reason, removed = d.removed, - when_ = d.when_, + published = d.when_, ) override fun toUni(d: X3DatatypesModRemovePostView): LemmyapiDatatypesModRemovePostView = @@ -1301,14 +1276,14 @@ internal class Transformer : MapperGenerator { mod_person_id = d.mod_person_id, other_person_id = d.other_person_id, community_id = d.community_id, - when_ = d.when_, + published = d.when_, ) override fun toUni(d: X3DatatypesModTransferCommunityView): LemmyapiDatatypesModTransferCommunityView = LemmyapiDatatypesModTransferCommunityView( mod_transfer_community = this.toUni(d = d.mod_transfer_community), moderator = d.moderator?.let { this.toUni(d = it) }, community = this.toUni(d = d.community), - modded_person = this.toUni(d = d.modded_person), + other_person = this.toUni(d = d.modded_person), ) override fun toUni(d: X3DatatypesMyUserInfo): LemmyapiDatatypesMyUserInfo = @@ -1316,9 +1291,9 @@ internal class Transformer : MapperGenerator { local_user_view = this.toUni(d = d.local_user_view), follows = d.follows.map { this.toUni(d = it) }, moderates = d.moderates.map { this.toUni(d = it) }, - community_blocks = d.community_blocks.map { this.toUni(d = it) }, - instance_blocks = d.instance_blocks.map { this.toUni(d = it) }, - person_blocks = d.person_blocks.map { this.toUni(d = it) }, + community_blocks = d.community_blocks.map { this.toUni(d = it.community) }, + instance_blocks = d.instance_blocks.map { this.toUni(d = it.instance) }, + person_blocks = d.person_blocks.map { this.toUni(d = it.target) }, discussion_languages = d.discussion_languages, ) @@ -1348,12 +1323,6 @@ internal class Transformer : MapperGenerator { comment_count = d.comment_count, ) - override fun toUni(d: X3DatatypesPersonBlockView): LemmyapiDatatypesPersonBlockView = - LemmyapiDatatypesPersonBlockView( - person = this.toUni(d = d.person), - target = this.toUni(d = d.target), - ) - override fun toUni(d: X3DatatypesPersonMention): LemmyapiDatatypesPersonMention = LemmyapiDatatypesPersonMention( id = d.id, @@ -1613,7 +1582,7 @@ internal class Transformer : MapperGenerator { community_id = d.community_id, person_id = d.person_id, ban = d.ban, - remove_data = d.remove_data, + remove_data = d.remove_or_restore_data, reason = d.reason, expires = d.expires, ) @@ -1621,7 +1590,7 @@ internal class Transformer : MapperGenerator { override fun fromUni(d: LemmyapiDatatypesBanPerson): X3DatatypesBanPerson = X3DatatypesBanPerson( person_id = d.person_id, ban = d.ban, - remove_data = d.remove_data, + remove_data = d.remove_or_restore_data, reason = d.reason, expires = d.expires, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/BlockInstanceResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/BlockInstanceResponse.kt deleted file mode 100644 index af1d67e3..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/BlockInstanceResponse.kt +++ /dev/null @@ -1,8 +0,0 @@ -package it.vercruysse.lemmyapi.v0.x19.x3.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class BlockInstanceResponse( - val blocked: Boolean, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiController.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiController.kt index 14eb6496..96c56ea1 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiController.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiController.kt @@ -707,7 +707,7 @@ internal class LemmyApiController(client: HttpClient, auth: String?) : * * @POST("site/block") */ - override suspend fun blockInstance(form: BlockInstance): Result = + override suspend fun blockInstance(form: BlockInstance): Result = client.postResult("site/block", form) /** diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiRouter.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiRouter.kt index 904b15f1..3e8b60b9 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiRouter.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiRouter.kt @@ -615,7 +615,7 @@ internal abstract class LemmyApiRouter(client: HttpClient, auth: String?) : Auth * * @POST("site/block") */ - abstract suspend fun blockInstance(form: BlockInstance): Result + abstract suspend fun blockInstance(form: BlockInstance): Result /** * Generate a TOTP / two-factor secret. diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt index 73911bd8..45563d59 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt @@ -834,8 +834,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun blockInstance( form: it.vercruysse.lemmyapi.datatypes.BlockInstance, - ): Result = - api.blockInstance(transformer.fromUni(form)).map(transformer::toUni) + ): Result = + api.blockInstance(transformer.fromUni(form)) /** * Generate a TOTP / two-factor secret. diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt index 33392298..353d976a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt @@ -17,7 +17,6 @@ internal interface MapperGenerator { fun toUni(d: BannedPersonsResponse): it.vercruysse.lemmyapi.datatypes.BannedPersonsResponse fun toUni(d: BanPersonResponse): it.vercruysse.lemmyapi.datatypes.BanPersonResponse fun toUni(d: BlockCommunityResponse): it.vercruysse.lemmyapi.datatypes.BlockCommunityResponse - fun toUni(d: BlockInstanceResponse): it.vercruysse.lemmyapi.datatypes.BlockInstanceResponse fun toUni(d: BlockPersonResponse): it.vercruysse.lemmyapi.datatypes.BlockPersonResponse fun toUni(d: CaptchaResponse): it.vercruysse.lemmyapi.datatypes.CaptchaResponse fun toUni(d: Comment): it.vercruysse.lemmyapi.datatypes.Comment @@ -32,7 +31,6 @@ internal interface MapperGenerator { fun toUni(d: CommentView): it.vercruysse.lemmyapi.datatypes.CommentView fun toUni(d: Community): it.vercruysse.lemmyapi.datatypes.Community fun toUni(d: CommunityAggregates): it.vercruysse.lemmyapi.datatypes.CommunityAggregates - fun toUni(d: CommunityBlockView): it.vercruysse.lemmyapi.datatypes.CommunityBlockView fun toUni(d: CommunityFollowerView): it.vercruysse.lemmyapi.datatypes.CommunityFollowerView fun toUni(d: CommunityModeratorView): it.vercruysse.lemmyapi.datatypes.CommunityModeratorView fun toUni(d: CommunityResponse): it.vercruysse.lemmyapi.datatypes.CommunityResponse @@ -61,7 +59,6 @@ internal interface MapperGenerator { d: GetUnreadRegistrationApplicationCountResponse, ): it.vercruysse.lemmyapi.datatypes.GetUnreadRegistrationApplicationCountResponse fun toUni(d: Instance): it.vercruysse.lemmyapi.datatypes.Instance - fun toUni(d: InstanceBlockView): it.vercruysse.lemmyapi.datatypes.InstanceBlockView fun toUni(d: InstanceWithFederationState): it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState fun toUni(d: Language): it.vercruysse.lemmyapi.datatypes.Language fun toUni(d: LinkMetadata): it.vercruysse.lemmyapi.datatypes.LinkMetadata @@ -109,7 +106,6 @@ internal interface MapperGenerator { fun toUni(d: MyUserInfo): it.vercruysse.lemmyapi.datatypes.MyUserInfo fun toUni(d: Person): it.vercruysse.lemmyapi.datatypes.Person fun toUni(d: PersonAggregates): it.vercruysse.lemmyapi.datatypes.PersonAggregates - fun toUni(d: PersonBlockView): it.vercruysse.lemmyapi.datatypes.PersonBlockView fun toUni(d: PersonMention): it.vercruysse.lemmyapi.datatypes.PersonMention fun toUni(d: PersonMentionResponse): it.vercruysse.lemmyapi.datatypes.PersonMentionResponse fun toUni(d: PersonMentionView): it.vercruysse.lemmyapi.datatypes.PersonMentionView diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt index 30a8bb24..c79d1823 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt @@ -21,7 +21,6 @@ import it.vercruysse.lemmyapi.datatypes.BannedPersonsResponse as LemmyapiDatatyp import it.vercruysse.lemmyapi.datatypes.BlockCommunity as LemmyapiDatatypesBlockCommunity import it.vercruysse.lemmyapi.datatypes.BlockCommunityResponse as LemmyapiDatatypesBlockCommunityResponse import it.vercruysse.lemmyapi.datatypes.BlockInstance as LemmyapiDatatypesBlockInstance -import it.vercruysse.lemmyapi.datatypes.BlockInstanceResponse as LemmyapiDatatypesBlockInstanceResponse import it.vercruysse.lemmyapi.datatypes.BlockPerson as LemmyapiDatatypesBlockPerson import it.vercruysse.lemmyapi.datatypes.BlockPersonResponse as LemmyapiDatatypesBlockPersonResponse import it.vercruysse.lemmyapi.datatypes.CaptchaResponse as LemmyapiDatatypesCaptchaResponse @@ -38,7 +37,6 @@ import it.vercruysse.lemmyapi.datatypes.CommentResponse as LemmyapiDatatypesComm import it.vercruysse.lemmyapi.datatypes.CommentView as LemmyapiDatatypesCommentView import it.vercruysse.lemmyapi.datatypes.Community as LemmyapiDatatypesCommunity import it.vercruysse.lemmyapi.datatypes.CommunityAggregates as LemmyapiDatatypesCommunityAggregates -import it.vercruysse.lemmyapi.datatypes.CommunityBlockView as LemmyapiDatatypesCommunityBlockView import it.vercruysse.lemmyapi.datatypes.CommunityFollowerView as LemmyapiDatatypesCommunityFollowerView import it.vercruysse.lemmyapi.datatypes.CommunityModeratorView as LemmyapiDatatypesCommunityModeratorView import it.vercruysse.lemmyapi.datatypes.CommunityResponse as LemmyapiDatatypesCommunityResponse @@ -105,7 +103,6 @@ import it.vercruysse.lemmyapi.datatypes.GetUnreadRegistrationApplicationCountRes import it.vercruysse.lemmyapi.datatypes.HideCommunity as LemmyapiDatatypesHideCommunity import it.vercruysse.lemmyapi.datatypes.HidePost as LemmyapiDatatypesHidePost import it.vercruysse.lemmyapi.datatypes.Instance as LemmyapiDatatypesInstance -import it.vercruysse.lemmyapi.datatypes.InstanceBlockView as LemmyapiDatatypesInstanceBlockView import it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState as LemmyapiDatatypesInstanceWithFederationState import it.vercruysse.lemmyapi.datatypes.Language as LemmyapiDatatypesLanguage import it.vercruysse.lemmyapi.datatypes.LinkMetadata as LemmyapiDatatypesLinkMetadata @@ -169,7 +166,6 @@ import it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset as LemmyapiData import it.vercruysse.lemmyapi.datatypes.PasswordReset as LemmyapiDatatypesPasswordReset import it.vercruysse.lemmyapi.datatypes.Person as LemmyapiDatatypesPerson import it.vercruysse.lemmyapi.datatypes.PersonAggregates as LemmyapiDatatypesPersonAggregates -import it.vercruysse.lemmyapi.datatypes.PersonBlockView as LemmyapiDatatypesPersonBlockView import it.vercruysse.lemmyapi.datatypes.PersonMention as LemmyapiDatatypesPersonMention import it.vercruysse.lemmyapi.datatypes.PersonMentionResponse as LemmyapiDatatypesPersonMentionResponse import it.vercruysse.lemmyapi.datatypes.PersonMentionView as LemmyapiDatatypesPersonMentionView @@ -241,7 +237,6 @@ import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.BannedPersonsResponse as X4Dat import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.BlockCommunity as X4DatatypesBlockCommunity import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.BlockCommunityResponse as X4DatatypesBlockCommunityResponse import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.BlockInstance as X4DatatypesBlockInstance -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.BlockInstanceResponse as X4DatatypesBlockInstanceResponse import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.BlockPerson as X4DatatypesBlockPerson import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.BlockPersonResponse as X4DatatypesBlockPersonResponse import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.CaptchaResponse as X4DatatypesCaptchaResponse @@ -258,7 +253,6 @@ import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.CommentResponse as X4Datatypes import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.CommentView as X4DatatypesCommentView import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.Community as X4DatatypesCommunity import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.CommunityAggregates as X4DatatypesCommunityAggregates -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.CommunityBlockView as X4DatatypesCommunityBlockView import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.CommunityFollowerView as X4DatatypesCommunityFollowerView import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.CommunityModeratorView as X4DatatypesCommunityModeratorView import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.CommunityResponse as X4DatatypesCommunityResponse @@ -325,7 +319,6 @@ import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.GetUnreadRegistrationApplicati import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.HideCommunity as X4DatatypesHideCommunity import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.HidePost as X4DatatypesHidePost import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.Instance as X4DatatypesInstance -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.InstanceBlockView as X4DatatypesInstanceBlockView import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.InstanceWithFederationState as X4DatatypesInstanceWithFederationState import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.Language as X4DatatypesLanguage import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.LinkMetadata as X4DatatypesLinkMetadata @@ -389,7 +382,6 @@ import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.PasswordChangeAfterReset as X4 import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.PasswordReset as X4DatatypesPasswordReset import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.Person as X4DatatypesPerson import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.PersonAggregates as X4DatatypesPersonAggregates -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.PersonBlockView as X4DatatypesPersonBlockView import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.PersonMention as X4DatatypesPersonMention import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.PersonMentionResponse as X4DatatypesPersonMentionResponse import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.PersonMentionView as X4DatatypesPersonMentionView @@ -458,7 +450,7 @@ internal class Transformer : MapperGenerator { admin_person_id = d.admin_person_id, post_id = d.post_id, reason = d.reason, - when_ = d.when_, + published = d.when_, ) override fun toUni(d: X4DatatypesAdminPurgeCommentView): LemmyapiDatatypesAdminPurgeCommentView = @@ -473,7 +465,7 @@ internal class Transformer : MapperGenerator { id = d.id, admin_person_id = d.admin_person_id, reason = d.reason, - when_ = d.when_, + published = d.when_, ) override fun toUni(d: X4DatatypesAdminPurgeCommunityView): LemmyapiDatatypesAdminPurgeCommunityView = LemmyapiDatatypesAdminPurgeCommunityView( @@ -486,7 +478,7 @@ internal class Transformer : MapperGenerator { id = d.id, admin_person_id = d.admin_person_id, reason = d.reason, - when_ = d.when_, + published = d.when_, ) override fun toUni(d: X4DatatypesAdminPurgePersonView): LemmyapiDatatypesAdminPurgePersonView = @@ -501,7 +493,7 @@ internal class Transformer : MapperGenerator { admin_person_id = d.admin_person_id, community_id = d.community_id, reason = d.reason, - when_ = d.when_, + published = d.when_, ) override fun toUni(d: X4DatatypesAdminPurgePostView): LemmyapiDatatypesAdminPurgePostView = @@ -533,11 +525,6 @@ internal class Transformer : MapperGenerator { blocked = d.blocked, ) - override fun toUni(d: X4DatatypesBlockInstanceResponse): LemmyapiDatatypesBlockInstanceResponse = - LemmyapiDatatypesBlockInstanceResponse( - blocked = d.blocked, - ) - override fun toUni(d: X4DatatypesBlockPersonResponse): LemmyapiDatatypesBlockPersonResponse = LemmyapiDatatypesBlockPersonResponse( person_view = this.toUni(d = d.person_view), @@ -705,12 +692,6 @@ internal class Transformer : MapperGenerator { subscribers_local = d.subscribers_local, ) - override fun toUni(d: X4DatatypesCommunityBlockView): LemmyapiDatatypesCommunityBlockView = - LemmyapiDatatypesCommunityBlockView( - person = this.toUni(d = d.person), - community = this.toUni(d = d.community), - ) - override fun toUni(d: X4DatatypesCommunityFollowerView): LemmyapiDatatypesCommunityFollowerView = LemmyapiDatatypesCommunityFollowerView( community = this.toUni(d = d.community), @@ -897,13 +878,6 @@ internal class Transformer : MapperGenerator { version = d.version, ) - override fun toUni(d: X4DatatypesInstanceBlockView): LemmyapiDatatypesInstanceBlockView = - LemmyapiDatatypesInstanceBlockView( - person = this.toUni(d = d.person), - instance = this.toUni(d = d.instance), - site = d.site?.let { this.toUni(d = it) }, - ) - override fun toUni(d: X4DatatypesInstanceWithFederationState): LemmyapiDatatypesInstanceWithFederationState = LemmyapiDatatypesInstanceWithFederationState( id = d.id, domain = d.domain, @@ -1104,7 +1078,7 @@ internal class Transformer : MapperGenerator { mod_person_id = d.mod_person_id, other_person_id = d.other_person_id, removed = d.removed, - when_ = d.when_, + published = d.when_, ) override fun toUni(d: X4DatatypesModAddCommunity): LemmyapiDatatypesModAddCommunity = @@ -1114,7 +1088,7 @@ internal class Transformer : MapperGenerator { other_person_id = d.other_person_id, community_id = d.community_id, removed = d.removed, - when_ = d.when_, + published = d.when_, ) override fun toUni(d: X4DatatypesModAddCommunityView): LemmyapiDatatypesModAddCommunityView = @@ -1122,14 +1096,14 @@ internal class Transformer : MapperGenerator { mod_add_community = this.toUni(d = d.mod_add_community), moderator = d.moderator?.let { this.toUni(d = it) }, community = this.toUni(d = d.community), - modded_person = this.toUni(d = d.modded_person), + other_person = this.toUni(d = d.modded_person), ) override fun toUni(d: X4DatatypesModAddView): LemmyapiDatatypesModAddView = LemmyapiDatatypesModAddView( mod_add = this.toUni(d = d.mod_add), moderator = d.moderator?.let { this.toUni(d = it) }, - modded_person = this.toUni(d = d.modded_person), + other_person = this.toUni(d = d.modded_person), ) override fun toUni(d: X4DatatypesModBan): LemmyapiDatatypesModBan = LemmyapiDatatypesModBan( @@ -1139,7 +1113,8 @@ internal class Transformer : MapperGenerator { reason = d.reason, banned = d.banned, expires = d.expires, - when_ = d.when_, + published = d.when_, + instance_id = -1, ) override fun toUni(d: X4DatatypesModBanFromCommunity): LemmyapiDatatypesModBanFromCommunity = @@ -1151,21 +1126,21 @@ internal class Transformer : MapperGenerator { reason = d.reason, banned = d.banned, expires = d.expires, - when_ = d.when_, + published = d.when_, ) override fun toUni(d: X4DatatypesModBanFromCommunityView): LemmyapiDatatypesModBanFromCommunityView = LemmyapiDatatypesModBanFromCommunityView( mod_ban_from_community = this.toUni(d = d.mod_ban_from_community), moderator = d.moderator?.let { this.toUni(d = it) }, community = this.toUni(d = d.community), - banned_person = this.toUni(d = d.banned_person), + other_person = this.toUni(d = d.banned_person), ) override fun toUni(d: X4DatatypesModBanView): LemmyapiDatatypesModBanView = LemmyapiDatatypesModBanView( mod_ban = this.toUni(d = d.mod_ban), moderator = d.moderator?.let { this.toUni(d = it) }, - banned_person = this.toUni(d = d.banned_person), + other_person = this.toUni(d = d.banned_person), ) override fun toUni(d: X4DatatypesModFeaturePost): LemmyapiDatatypesModFeaturePost = @@ -1174,7 +1149,7 @@ internal class Transformer : MapperGenerator { mod_person_id = d.mod_person_id, post_id = d.post_id, featured = d.featured, - when_ = d.when_, + published = d.when_, is_featured_community = d.is_featured_community, ) @@ -1209,7 +1184,7 @@ internal class Transformer : MapperGenerator { mod_person_id = d.mod_person_id, post_id = d.post_id, locked = d.locked, - when_ = d.when_, + published = d.when_, ) override fun toUni(d: X4DatatypesModLockPostView): LemmyapiDatatypesModLockPostView = @@ -1239,7 +1214,7 @@ internal class Transformer : MapperGenerator { comment_id = d.comment_id, reason = d.reason, removed = d.removed, - when_ = d.when_, + published = d.when_, ) override fun toUni(d: X4DatatypesModRemoveCommentView): LemmyapiDatatypesModRemoveCommentView = @@ -1247,7 +1222,7 @@ internal class Transformer : MapperGenerator { mod_remove_comment = this.toUni(d = d.mod_remove_comment), moderator = d.moderator?.let { this.toUni(d = it) }, comment = this.toUni(d = d.comment), - commenter = this.toUni(d = d.commenter), + other_person = this.toUni(d = d.commenter), post = this.toUni(d = d.post), community = this.toUni(d = d.community), ) @@ -1259,7 +1234,7 @@ internal class Transformer : MapperGenerator { community_id = d.community_id, reason = d.reason, removed = d.removed, - when_ = d.when_, + published = d.when_, ) override fun toUni(d: X4DatatypesModRemoveCommunityView): LemmyapiDatatypesModRemoveCommunityView = @@ -1276,7 +1251,7 @@ internal class Transformer : MapperGenerator { post_id = d.post_id, reason = d.reason, removed = d.removed, - when_ = d.when_, + published = d.when_, ) override fun toUni(d: X4DatatypesModRemovePostView): LemmyapiDatatypesModRemovePostView = @@ -1293,14 +1268,14 @@ internal class Transformer : MapperGenerator { mod_person_id = d.mod_person_id, other_person_id = d.other_person_id, community_id = d.community_id, - when_ = d.when_, + published = d.when_, ) override fun toUni(d: X4DatatypesModTransferCommunityView): LemmyapiDatatypesModTransferCommunityView = LemmyapiDatatypesModTransferCommunityView( mod_transfer_community = this.toUni(d = d.mod_transfer_community), moderator = d.moderator?.let { this.toUni(d = it) }, community = this.toUni(d = d.community), - modded_person = this.toUni(d = d.modded_person), + other_person = this.toUni(d = d.modded_person), ) override fun toUni(d: X4DatatypesMyUserInfo): LemmyapiDatatypesMyUserInfo = @@ -1308,9 +1283,9 @@ internal class Transformer : MapperGenerator { local_user_view = this.toUni(d = d.local_user_view), follows = d.follows.map { this.toUni(d = it) }, moderates = d.moderates.map { this.toUni(d = it) }, - community_blocks = d.community_blocks.map { this.toUni(d = it) }, - instance_blocks = d.instance_blocks.map { this.toUni(d = it) }, - person_blocks = d.person_blocks.map { this.toUni(d = it) }, + community_blocks = d.community_blocks.map { this.toUni(d = it.community) }, + instance_blocks = d.instance_blocks.map { this.toUni(d = it.instance) }, + person_blocks = d.person_blocks.map { this.toUni(d = it.target) }, discussion_languages = d.discussion_languages, ) @@ -1340,12 +1315,6 @@ internal class Transformer : MapperGenerator { comment_count = d.comment_count, ) - override fun toUni(d: X4DatatypesPersonBlockView): LemmyapiDatatypesPersonBlockView = - LemmyapiDatatypesPersonBlockView( - person = this.toUni(d = d.person), - target = this.toUni(d = d.target), - ) - override fun toUni(d: X4DatatypesPersonMention): LemmyapiDatatypesPersonMention = LemmyapiDatatypesPersonMention( id = d.id, @@ -1673,7 +1642,7 @@ internal class Transformer : MapperGenerator { community_id = d.community_id, person_id = d.person_id, ban = d.ban, - remove_data = d.remove_data, + remove_data = d.remove_or_restore_data, reason = d.reason, expires = d.expires, ) @@ -1681,7 +1650,7 @@ internal class Transformer : MapperGenerator { override fun fromUni(d: LemmyapiDatatypesBanPerson): X4DatatypesBanPerson = X4DatatypesBanPerson( person_id = d.person_id, ban = d.ban, - remove_data = d.remove_data, + remove_data = d.remove_or_restore_data, reason = d.reason, expires = d.expires, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/BlockInstanceResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/BlockInstanceResponse.kt deleted file mode 100644 index da5d8c9b..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/BlockInstanceResponse.kt +++ /dev/null @@ -1,8 +0,0 @@ -package it.vercruysse.lemmyapi.v0.x19.x4.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class BlockInstanceResponse( - val blocked: Boolean, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiController.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiController.kt index a28eda04..3d459e97 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiController.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiController.kt @@ -707,7 +707,7 @@ internal class LemmyApiController(client: HttpClient, auth: String?) : * * @POST("site/block") */ - override suspend fun blockInstance(form: BlockInstance): Result = + override suspend fun blockInstance(form: BlockInstance): Result = client.postResult("site/block", form) /** diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiRouter.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiRouter.kt index ad1988fc..8d7b6ae3 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiRouter.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiRouter.kt @@ -615,7 +615,7 @@ internal abstract class LemmyApiRouter(client: HttpClient, auth: String?) : Auth * * @POST("site/block") */ - abstract suspend fun blockInstance(form: BlockInstance): Result + abstract suspend fun blockInstance(form: BlockInstance): Result /** * Generate a TOTP / two-factor secret. diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt index e4b92b46..3943af27 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt @@ -834,8 +834,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun blockInstance( form: it.vercruysse.lemmyapi.datatypes.BlockInstance, - ): Result = - api.blockInstance(transformer.fromUni(form)).map(transformer::toUni) + ): Result = + api.blockInstance(transformer.fromUni(form)) /** * Generate a TOTP / two-factor secret. diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt index f57ed44d..1e1a4519 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt @@ -18,7 +18,6 @@ internal interface MapperGenerator { fun toUni(d: BannedPersonsResponse): it.vercruysse.lemmyapi.datatypes.BannedPersonsResponse fun toUni(d: BanPersonResponse): it.vercruysse.lemmyapi.datatypes.BanPersonResponse fun toUni(d: BlockCommunityResponse): it.vercruysse.lemmyapi.datatypes.BlockCommunityResponse - fun toUni(d: BlockInstanceResponse): it.vercruysse.lemmyapi.datatypes.BlockInstanceResponse fun toUni(d: BlockPersonResponse): it.vercruysse.lemmyapi.datatypes.BlockPersonResponse fun toUni(d: CaptchaResponse): it.vercruysse.lemmyapi.datatypes.CaptchaResponse fun toUni(d: Comment): it.vercruysse.lemmyapi.datatypes.Comment @@ -33,7 +32,6 @@ internal interface MapperGenerator { fun toUni(d: CommentView): it.vercruysse.lemmyapi.datatypes.CommentView fun toUni(d: Community): it.vercruysse.lemmyapi.datatypes.Community fun toUni(d: CommunityAggregates): it.vercruysse.lemmyapi.datatypes.CommunityAggregates - fun toUni(d: CommunityBlockView): it.vercruysse.lemmyapi.datatypes.CommunityBlockView fun toUni(d: CommunityFollowerView): it.vercruysse.lemmyapi.datatypes.CommunityFollowerView fun toUni(d: CommunityModeratorView): it.vercruysse.lemmyapi.datatypes.CommunityModeratorView fun toUni(d: CommunityResponse): it.vercruysse.lemmyapi.datatypes.CommunityResponse @@ -63,7 +61,6 @@ internal interface MapperGenerator { ): it.vercruysse.lemmyapi.datatypes.GetUnreadRegistrationApplicationCountResponse fun toUni(d: ImageDetails): it.vercruysse.lemmyapi.datatypes.ImageDetails fun toUni(d: Instance): it.vercruysse.lemmyapi.datatypes.Instance - fun toUni(d: InstanceBlockView): it.vercruysse.lemmyapi.datatypes.InstanceBlockView fun toUni(d: InstanceWithFederationState): it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState fun toUni(d: Language): it.vercruysse.lemmyapi.datatypes.Language fun toUni(d: LinkMetadata): it.vercruysse.lemmyapi.datatypes.LinkMetadata @@ -111,7 +108,6 @@ internal interface MapperGenerator { fun toUni(d: MyUserInfo): it.vercruysse.lemmyapi.datatypes.MyUserInfo fun toUni(d: Person): it.vercruysse.lemmyapi.datatypes.Person fun toUni(d: PersonAggregates): it.vercruysse.lemmyapi.datatypes.PersonAggregates - fun toUni(d: PersonBlockView): it.vercruysse.lemmyapi.datatypes.PersonBlockView fun toUni(d: PersonMention): it.vercruysse.lemmyapi.datatypes.PersonMention fun toUni(d: PersonMentionResponse): it.vercruysse.lemmyapi.datatypes.PersonMentionResponse fun toUni(d: PersonMentionView): it.vercruysse.lemmyapi.datatypes.PersonMentionView diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt index 7cd3e755..74b60430 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt @@ -21,7 +21,6 @@ import it.vercruysse.lemmyapi.datatypes.BannedPersonsResponse as LemmyapiDatatyp import it.vercruysse.lemmyapi.datatypes.BlockCommunity as LemmyapiDatatypesBlockCommunity import it.vercruysse.lemmyapi.datatypes.BlockCommunityResponse as LemmyapiDatatypesBlockCommunityResponse import it.vercruysse.lemmyapi.datatypes.BlockInstance as LemmyapiDatatypesBlockInstance -import it.vercruysse.lemmyapi.datatypes.BlockInstanceResponse as LemmyapiDatatypesBlockInstanceResponse import it.vercruysse.lemmyapi.datatypes.BlockPerson as LemmyapiDatatypesBlockPerson import it.vercruysse.lemmyapi.datatypes.BlockPersonResponse as LemmyapiDatatypesBlockPersonResponse import it.vercruysse.lemmyapi.datatypes.CaptchaResponse as LemmyapiDatatypesCaptchaResponse @@ -38,7 +37,6 @@ import it.vercruysse.lemmyapi.datatypes.CommentResponse as LemmyapiDatatypesComm import it.vercruysse.lemmyapi.datatypes.CommentView as LemmyapiDatatypesCommentView import it.vercruysse.lemmyapi.datatypes.Community as LemmyapiDatatypesCommunity import it.vercruysse.lemmyapi.datatypes.CommunityAggregates as LemmyapiDatatypesCommunityAggregates -import it.vercruysse.lemmyapi.datatypes.CommunityBlockView as LemmyapiDatatypesCommunityBlockView import it.vercruysse.lemmyapi.datatypes.CommunityFollowerView as LemmyapiDatatypesCommunityFollowerView import it.vercruysse.lemmyapi.datatypes.CommunityModeratorView as LemmyapiDatatypesCommunityModeratorView import it.vercruysse.lemmyapi.datatypes.CommunityResponse as LemmyapiDatatypesCommunityResponse @@ -107,7 +105,6 @@ import it.vercruysse.lemmyapi.datatypes.HideCommunity as LemmyapiDatatypesHideCo import it.vercruysse.lemmyapi.datatypes.HidePost as LemmyapiDatatypesHidePost import it.vercruysse.lemmyapi.datatypes.ImageDetails as LemmyapiDatatypesImageDetails import it.vercruysse.lemmyapi.datatypes.Instance as LemmyapiDatatypesInstance -import it.vercruysse.lemmyapi.datatypes.InstanceBlockView as LemmyapiDatatypesInstanceBlockView import it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState as LemmyapiDatatypesInstanceWithFederationState import it.vercruysse.lemmyapi.datatypes.Language as LemmyapiDatatypesLanguage import it.vercruysse.lemmyapi.datatypes.LinkMetadata as LemmyapiDatatypesLinkMetadata @@ -171,7 +168,6 @@ import it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset as LemmyapiData import it.vercruysse.lemmyapi.datatypes.PasswordReset as LemmyapiDatatypesPasswordReset import it.vercruysse.lemmyapi.datatypes.Person as LemmyapiDatatypesPerson import it.vercruysse.lemmyapi.datatypes.PersonAggregates as LemmyapiDatatypesPersonAggregates -import it.vercruysse.lemmyapi.datatypes.PersonBlockView as LemmyapiDatatypesPersonBlockView import it.vercruysse.lemmyapi.datatypes.PersonMention as LemmyapiDatatypesPersonMention import it.vercruysse.lemmyapi.datatypes.PersonMentionResponse as LemmyapiDatatypesPersonMentionResponse import it.vercruysse.lemmyapi.datatypes.PersonMentionView as LemmyapiDatatypesPersonMentionView @@ -243,7 +239,6 @@ import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.BannedPersonsResponse as X6Dat import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.BlockCommunity as X6DatatypesBlockCommunity import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.BlockCommunityResponse as X6DatatypesBlockCommunityResponse import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.BlockInstance as X6DatatypesBlockInstance -import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.BlockInstanceResponse as X6DatatypesBlockInstanceResponse import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.BlockPerson as X6DatatypesBlockPerson import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.BlockPersonResponse as X6DatatypesBlockPersonResponse import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.CaptchaResponse as X6DatatypesCaptchaResponse @@ -260,7 +255,6 @@ import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.CommentResponse as X6Datatypes import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.CommentView as X6DatatypesCommentView import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.Community as X6DatatypesCommunity import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.CommunityAggregates as X6DatatypesCommunityAggregates -import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.CommunityBlockView as X6DatatypesCommunityBlockView import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.CommunityFollowerView as X6DatatypesCommunityFollowerView import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.CommunityModeratorView as X6DatatypesCommunityModeratorView import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.CommunityResponse as X6DatatypesCommunityResponse @@ -329,7 +323,6 @@ import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.HideCommunity as X6DatatypesHi import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.HidePost as X6DatatypesHidePost import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.ImageDetails as X6DatatypesImageDetails import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.Instance as X6DatatypesInstance -import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.InstanceBlockView as X6DatatypesInstanceBlockView import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.InstanceWithFederationState as X6DatatypesInstanceWithFederationState import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.Language as X6DatatypesLanguage import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.LinkMetadata as X6DatatypesLinkMetadata @@ -393,7 +386,6 @@ import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.PasswordChangeAfterReset as X6 import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.PasswordReset as X6DatatypesPasswordReset import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.Person as X6DatatypesPerson import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.PersonAggregates as X6DatatypesPersonAggregates -import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.PersonBlockView as X6DatatypesPersonBlockView import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.PersonMention as X6DatatypesPersonMention import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.PersonMentionResponse as X6DatatypesPersonMentionResponse import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.PersonMentionView as X6DatatypesPersonMentionView @@ -462,7 +454,7 @@ internal class Transformer : MapperGenerator { admin_person_id = d.admin_person_id, post_id = d.post_id, reason = d.reason, - when_ = d.when_, + published = d.when_, ) override fun toUni(d: X6DatatypesAdminPurgeCommentView): LemmyapiDatatypesAdminPurgeCommentView = @@ -477,7 +469,7 @@ internal class Transformer : MapperGenerator { id = d.id, admin_person_id = d.admin_person_id, reason = d.reason, - when_ = d.when_, + published = d.when_, ) override fun toUni(d: X6DatatypesAdminPurgeCommunityView): LemmyapiDatatypesAdminPurgeCommunityView = LemmyapiDatatypesAdminPurgeCommunityView( @@ -490,7 +482,7 @@ internal class Transformer : MapperGenerator { id = d.id, admin_person_id = d.admin_person_id, reason = d.reason, - when_ = d.when_, + published = d.when_, ) override fun toUni(d: X6DatatypesAdminPurgePersonView): LemmyapiDatatypesAdminPurgePersonView = @@ -505,7 +497,7 @@ internal class Transformer : MapperGenerator { admin_person_id = d.admin_person_id, community_id = d.community_id, reason = d.reason, - when_ = d.when_, + published = d.when_, ) override fun toUni(d: X6DatatypesAdminPurgePostView): LemmyapiDatatypesAdminPurgePostView = @@ -536,11 +528,6 @@ internal class Transformer : MapperGenerator { blocked = d.blocked, ) - override fun toUni(d: X6DatatypesBlockInstanceResponse): LemmyapiDatatypesBlockInstanceResponse = - LemmyapiDatatypesBlockInstanceResponse( - blocked = d.blocked, - ) - override fun toUni(d: X6DatatypesBlockPersonResponse): LemmyapiDatatypesBlockPersonResponse = LemmyapiDatatypesBlockPersonResponse( person_view = this.toUni(d = d.person_view), @@ -708,12 +695,6 @@ internal class Transformer : MapperGenerator { subscribers_local = d.subscribers_local, ) - override fun toUni(d: X6DatatypesCommunityBlockView): LemmyapiDatatypesCommunityBlockView = - LemmyapiDatatypesCommunityBlockView( - person = this.toUni(d = d.person), - community = this.toUni(d = d.community), - ) - override fun toUni(d: X6DatatypesCommunityFollowerView): LemmyapiDatatypesCommunityFollowerView = LemmyapiDatatypesCommunityFollowerView( community = this.toUni(d = d.community), @@ -905,13 +886,6 @@ internal class Transformer : MapperGenerator { version = d.version, ) - override fun toUni(d: X6DatatypesInstanceBlockView): LemmyapiDatatypesInstanceBlockView = - LemmyapiDatatypesInstanceBlockView( - person = this.toUni(d = d.person), - instance = this.toUni(d = d.instance), - site = d.site?.let { this.toUni(d = it) }, - ) - override fun toUni(d: X6DatatypesInstanceWithFederationState): LemmyapiDatatypesInstanceWithFederationState = LemmyapiDatatypesInstanceWithFederationState( id = d.id, domain = d.domain, @@ -1112,7 +1086,7 @@ internal class Transformer : MapperGenerator { mod_person_id = d.mod_person_id, other_person_id = d.other_person_id, removed = d.removed, - when_ = d.when_, + published = d.when_, ) override fun toUni(d: X6DatatypesModAddCommunity): LemmyapiDatatypesModAddCommunity = @@ -1122,7 +1096,7 @@ internal class Transformer : MapperGenerator { other_person_id = d.other_person_id, community_id = d.community_id, removed = d.removed, - when_ = d.when_, + published = d.when_, ) override fun toUni(d: X6DatatypesModAddCommunityView): LemmyapiDatatypesModAddCommunityView = @@ -1130,14 +1104,14 @@ internal class Transformer : MapperGenerator { mod_add_community = this.toUni(d = d.mod_add_community), moderator = d.moderator?.let { this.toUni(d = it) }, community = this.toUni(d = d.community), - modded_person = this.toUni(d = d.modded_person), + other_person = this.toUni(d = d.modded_person), ) override fun toUni(d: X6DatatypesModAddView): LemmyapiDatatypesModAddView = LemmyapiDatatypesModAddView( mod_add = this.toUni(d = d.mod_add), moderator = d.moderator?.let { this.toUni(d = it) }, - modded_person = this.toUni(d = d.modded_person), + other_person = this.toUni(d = d.modded_person), ) override fun toUni(d: X6DatatypesModBan): LemmyapiDatatypesModBan = LemmyapiDatatypesModBan( @@ -1147,7 +1121,8 @@ internal class Transformer : MapperGenerator { reason = d.reason, banned = d.banned, expires = d.expires, - when_ = d.when_, + published = d.when_, + instance_id = -1, ) override fun toUni(d: X6DatatypesModBanFromCommunity): LemmyapiDatatypesModBanFromCommunity = @@ -1159,21 +1134,21 @@ internal class Transformer : MapperGenerator { reason = d.reason, banned = d.banned, expires = d.expires, - when_ = d.when_, + published = d.when_, ) override fun toUni(d: X6DatatypesModBanFromCommunityView): LemmyapiDatatypesModBanFromCommunityView = LemmyapiDatatypesModBanFromCommunityView( mod_ban_from_community = this.toUni(d = d.mod_ban_from_community), moderator = d.moderator?.let { this.toUni(d = it) }, community = this.toUni(d = d.community), - banned_person = this.toUni(d = d.banned_person), + other_person = this.toUni(d = d.banned_person), ) override fun toUni(d: X6DatatypesModBanView): LemmyapiDatatypesModBanView = LemmyapiDatatypesModBanView( mod_ban = this.toUni(d = d.mod_ban), moderator = d.moderator?.let { this.toUni(d = it) }, - banned_person = this.toUni(d = d.banned_person), + other_person = this.toUni(d = d.banned_person), ) override fun toUni(d: X6DatatypesModFeaturePost): LemmyapiDatatypesModFeaturePost = @@ -1182,7 +1157,7 @@ internal class Transformer : MapperGenerator { mod_person_id = d.mod_person_id, post_id = d.post_id, featured = d.featured, - when_ = d.when_, + published = d.when_, is_featured_community = d.is_featured_community, ) @@ -1217,7 +1192,7 @@ internal class Transformer : MapperGenerator { mod_person_id = d.mod_person_id, post_id = d.post_id, locked = d.locked, - when_ = d.when_, + published = d.when_, ) override fun toUni(d: X6DatatypesModLockPostView): LemmyapiDatatypesModLockPostView = @@ -1247,7 +1222,7 @@ internal class Transformer : MapperGenerator { comment_id = d.comment_id, reason = d.reason, removed = d.removed, - when_ = d.when_, + published = d.when_, ) override fun toUni(d: X6DatatypesModRemoveCommentView): LemmyapiDatatypesModRemoveCommentView = @@ -1255,7 +1230,7 @@ internal class Transformer : MapperGenerator { mod_remove_comment = this.toUni(d = d.mod_remove_comment), moderator = d.moderator?.let { this.toUni(d = it) }, comment = this.toUni(d = d.comment), - commenter = this.toUni(d = d.commenter), + other_person = this.toUni(d = d.commenter), post = this.toUni(d = d.post), community = this.toUni(d = d.community), ) @@ -1267,7 +1242,7 @@ internal class Transformer : MapperGenerator { community_id = d.community_id, reason = d.reason, removed = d.removed, - when_ = d.when_, + published = d.when_, ) override fun toUni(d: X6DatatypesModRemoveCommunityView): LemmyapiDatatypesModRemoveCommunityView = LemmyapiDatatypesModRemoveCommunityView( @@ -1283,7 +1258,7 @@ internal class Transformer : MapperGenerator { post_id = d.post_id, reason = d.reason, removed = d.removed, - when_ = d.when_, + published = d.when_, ) override fun toUni(d: X6DatatypesModRemovePostView): LemmyapiDatatypesModRemovePostView = @@ -1300,14 +1275,14 @@ internal class Transformer : MapperGenerator { mod_person_id = d.mod_person_id, other_person_id = d.other_person_id, community_id = d.community_id, - when_ = d.when_, + published = d.when_, ) override fun toUni(d: X6DatatypesModTransferCommunityView): LemmyapiDatatypesModTransferCommunityView = LemmyapiDatatypesModTransferCommunityView( mod_transfer_community = this.toUni(d = d.mod_transfer_community), moderator = d.moderator?.let { this.toUni(d = it) }, community = this.toUni(d = d.community), - modded_person = this.toUni(d = d.modded_person), + other_person = this.toUni(d = d.modded_person), ) override fun toUni(d: X6DatatypesMyUserInfo): LemmyapiDatatypesMyUserInfo = @@ -1315,9 +1290,9 @@ internal class Transformer : MapperGenerator { local_user_view = this.toUni(d = d.local_user_view), follows = d.follows.map { this.toUni(d = it) }, moderates = d.moderates.map { this.toUni(d = it) }, - community_blocks = d.community_blocks.map { this.toUni(d = it) }, - instance_blocks = d.instance_blocks.map { this.toUni(d = it) }, - person_blocks = d.person_blocks.map { this.toUni(d = it) }, + community_blocks = d.community_blocks.map { this.toUni(d = it.community) }, + instance_blocks = d.instance_blocks.map { this.toUni(d = it.instance) }, + person_blocks = d.person_blocks.map { this.toUni(d = it.target) }, discussion_languages = d.discussion_languages, ) @@ -1347,12 +1322,6 @@ internal class Transformer : MapperGenerator { comment_count = d.comment_count, ) - override fun toUni(d: X6DatatypesPersonBlockView): LemmyapiDatatypesPersonBlockView = - LemmyapiDatatypesPersonBlockView( - person = this.toUni(d = d.person), - target = this.toUni(d = d.target), - ) - override fun toUni(d: X6DatatypesPersonMention): LemmyapiDatatypesPersonMention = LemmyapiDatatypesPersonMention( id = d.id, @@ -1680,7 +1649,7 @@ internal class Transformer : MapperGenerator { community_id = d.community_id, person_id = d.person_id, ban = d.ban, - remove_data = d.remove_data, + remove_data = d.remove_or_restore_data, reason = d.reason, expires = d.expires, ) @@ -1688,7 +1657,7 @@ internal class Transformer : MapperGenerator { override fun fromUni(d: LemmyapiDatatypesBanPerson): X6DatatypesBanPerson = X6DatatypesBanPerson( person_id = d.person_id, ban = d.ban, - remove_data = d.remove_data, + remove_data = d.remove_or_restore_data, reason = d.reason, expires = d.expires, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/BlockInstanceResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/BlockInstanceResponse.kt deleted file mode 100644 index c20a0e9d..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/BlockInstanceResponse.kt +++ /dev/null @@ -1,8 +0,0 @@ -package it.vercruysse.lemmyapi.v0.x19.x6.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class BlockInstanceResponse( - val blocked: Boolean, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAllowInstanceId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAllowInstanceId.kt index 7b80e6c5..f4a8777f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAllowInstanceId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAllowInstanceId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -typealias AdminAllowInstanceId = Long +internal typealias AdminAllowInstanceId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBlockInstanceId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBlockInstanceId.kt index a73b4cba..a0322edf 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBlockInstanceId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBlockInstanceId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -typealias AdminBlockInstanceId = Long +internal typealias AdminBlockInstanceId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeCommentId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeCommentId.kt index 413e71aa..f74b0457 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeCommentId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeCommentId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -typealias AdminPurgeCommentId = Long +internal typealias AdminPurgeCommentId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeCommunityId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeCommunityId.kt index 0148683b..ca598359 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeCommunityId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeCommunityId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -typealias AdminPurgeCommunityId = Long +internal typealias AdminPurgeCommunityId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePersonId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePersonId.kt index 897ec0ee..bf59ef26 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePersonId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePersonId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -typealias AdminPurgePersonId = Long +internal typealias AdminPurgePersonId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePostId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePostId.kt index 45a1dbb9..bb76c57b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePostId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePostId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -typealias AdminPurgePostId = Long +internal typealias AdminPurgePostId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentId.kt index b40aedc2..f2e9da65 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -typealias CommentId = Long +internal typealias CommentId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReplyId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReplyId.kt index 73319aca..bcd91325 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReplyId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReplyId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -typealias CommentReplyId = Long +internal typealias CommentReplyId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReportId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReportId.kt index 42a66594..5183842e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReportId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReportId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -typealias CommentReportId = Long +internal typealias CommentReportId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityId.kt index 70d08586..575a7685 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -typealias CommunityId = Long +internal typealias CommunityId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityReportId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityReportId.kt index b32cc617..ad27ac90 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityReportId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityReportId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -typealias CommunityReportId = Long +internal typealias CommunityReportId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCommentLike.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCommentLike.kt index 4cdf4cd8..c025e85e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCommentLike.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCommentLike.kt @@ -5,5 +5,5 @@ import kotlinx.serialization.Serializable @Serializable internal data class CreateCommentLike( val comment_id: CommentId, - val score: Long, + val score: Int, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCommunity.kt index 2b8dd3ed..14c0a507 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCommunity.kt @@ -1,5 +1,6 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes +import it.vercruysse.lemmyapi.dto.CommunityVisibility import kotlinx.serialization.Serializable @Serializable @@ -13,5 +14,5 @@ internal data class CreateCommunity( val nsfw: Boolean? = null, val posting_restricted_to_mods: Boolean? = null, val discussion_languages: List? = null, - val visibility: String? /* "Public" | "Unlisted" | "LocalOnlyPublic" | "LocalOnlyPrivate" | "Private" */ = null, + val visibility: CommunityVisibility? /* "Public" | "Unlisted" | "LocalOnlyPublic" | "LocalOnlyPrivate" | "Private" */ = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreatePostLike.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreatePostLike.kt index 8fbee602..abe9f64e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreatePostLike.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreatePostLike.kt @@ -5,5 +5,5 @@ import kotlinx.serialization.Serializable @Serializable internal data class CreatePostLike( val post_id: PostId, - val score: Long, + val score: Int, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateSite.kt index e914d782..bae3c601 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateSite.kt @@ -2,7 +2,6 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes import it.vercruysse.lemmyapi.dto.RegistrationMode import it.vercruysse.lemmyapi.dto.SortType -import it.vercruysse.lemmyapi.dto.SortType import it.vercruysse.lemmyapi.dto.PostListingMode import it.vercruysse.lemmyapi.dto.ListingType import kotlinx.serialization.Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CustomEmojiId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CustomEmojiId.kt index 6dc0d861..6b48e944 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CustomEmojiId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CustomEmojiId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -typealias CustomEmojiId = Long +internal typealias CustomEmojiId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/DbUrl.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/DbUrl.kt index 5dd3a1a8..6a762cef 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/DbUrl.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/DbUrl.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -typealias DbUrl = String +internal typealias DbUrl = String diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditCommunity.kt index 840bfc15..7ad7aced 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditCommunity.kt @@ -1,5 +1,6 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes +import it.vercruysse.lemmyapi.dto.CommunityVisibility import kotlinx.serialization.Serializable @Serializable @@ -11,5 +12,5 @@ internal data class EditCommunity( val nsfw: Boolean? = null, val posting_restricted_to_mods: Boolean? = null, val discussion_languages: List? = null, - val visibility: String? /* "Public" | "Unlisted" | "LocalOnlyPublic" | "LocalOnlyPrivate" | "Private" */ = null, + val visibility: CommunityVisibility? /* "Public" | "Unlisted" | "LocalOnlyPublic" | "LocalOnlyPrivate" | "Private" */ = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditSite.kt index 1508986b..3685a0bf 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditSite.kt @@ -2,7 +2,6 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes import it.vercruysse.lemmyapi.dto.RegistrationMode import it.vercruysse.lemmyapi.dto.SortType -import it.vercruysse.lemmyapi.dto.SortType import it.vercruysse.lemmyapi.dto.PostListingMode import it.vercruysse.lemmyapi.dto.ListingType import kotlinx.serialization.Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/InstanceId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/InstanceId.kt index 11fcceb5..b65639fa 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/InstanceId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/InstanceId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -typealias InstanceId = Long +internal typealias InstanceId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LanguageId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LanguageId.kt index b6368d27..3f3c3a4d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LanguageId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LanguageId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -typealias LanguageId = Long +internal typealias LanguageId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LemmyErrorType.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LemmyErrorType.kt index 0f7dd646..9a7c6f8a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LemmyErrorType.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LemmyErrorType.kt @@ -2,6 +2,8 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes import kotlinx.serialization.Serializable +//TODO: decided with this + @Serializable external internal data class `T$130`( val reason: String? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListLoginsResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListLoginsResponse.kt deleted file mode 100644 index e59a28ac..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListLoginsResponse.kt +++ /dev/null @@ -1,8 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class ListLoginsResponse( - val logins: List, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSite.kt index 3698d6ee..4644bc5d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSite.kt @@ -1,6 +1,5 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -import it.vercruysse.lemmyapi.dto.SortType import it.vercruysse.lemmyapi.dto.SortType import it.vercruysse.lemmyapi.dto.PostListingMode import it.vercruysse.lemmyapi.dto.RegistrationMode diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSiteId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSiteId.kt index 5c794834..1872b217 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSiteId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSiteId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -typealias LocalSiteId = Long +internal typealias LocalSiteId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUser.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUser.kt index 16b17024..cd77ed71 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUser.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUser.kt @@ -3,7 +3,6 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes import it.vercruysse.lemmyapi.dto.SortType import it.vercruysse.lemmyapi.dto.PostListingMode import it.vercruysse.lemmyapi.dto.ListingType -import it.vercruysse.lemmyapi.dto.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUserId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUserId.kt index 6677edda..cde3571c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUserId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUserId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -typealias LocalUserId = Long +internal typealias LocalUserId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAdd.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAdd.kt index 3866031a..cf671617 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAdd.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAdd.kt @@ -4,7 +4,7 @@ import kotlinx.serialization.Serializable @Serializable internal data class ModAdd( - val id: ModAddId, + val id: Long, val mod_person_id: PersonId, val other_person_id: PersonId, val removed: Boolean, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddCommunity.kt index 099beaae..101e98d8 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddCommunity.kt @@ -4,7 +4,7 @@ import kotlinx.serialization.Serializable @Serializable internal data class ModAddCommunity( - val id: ModAddCommunityId, + val id: Long, val mod_person_id: PersonId, val other_person_id: PersonId, val community_id: CommunityId, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddCommunityId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddCommunityId.kt deleted file mode 100644 index 36628d6b..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddCommunityId.kt +++ /dev/null @@ -1,3 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -typealias ModAddCommunityId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddId.kt deleted file mode 100644 index d047d14e..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddId.kt +++ /dev/null @@ -1,3 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -typealias ModAddId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBan.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBan.kt index 11119da9..f6e1ea4b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBan.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBan.kt @@ -4,7 +4,7 @@ import kotlinx.serialization.Serializable @Serializable internal data class ModBan( - val id: ModBanId, + val id: Long, val mod_person_id: PersonId, val other_person_id: PersonId, val reason: String? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanFromCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanFromCommunity.kt index 9ef1fadd..eac2ebc2 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanFromCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanFromCommunity.kt @@ -4,7 +4,7 @@ import kotlinx.serialization.Serializable @Serializable internal data class ModBanFromCommunity( - val id: ModBanFromCommunityId, + val id: Long, val mod_person_id: PersonId, val other_person_id: PersonId, val community_id: CommunityId, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanFromCommunityId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanFromCommunityId.kt deleted file mode 100644 index 2af7819b..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanFromCommunityId.kt +++ /dev/null @@ -1,3 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -typealias ModBanFromCommunityId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanId.kt deleted file mode 100644 index b2dd49a6..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanId.kt +++ /dev/null @@ -1,3 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -typealias ModBanId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModChangeCommunityVisibility.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModChangeCommunityVisibility.kt index a596cbb7..06e96839 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModChangeCommunityVisibility.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModChangeCommunityVisibility.kt @@ -1,13 +1,14 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes +import it.vercruysse.lemmyapi.dto.CommunityVisibility import kotlinx.serialization.Serializable @Serializable internal data class ModChangeCommunityVisibility( - val id: ModChangeCommunityVisibilityId, + val id: Long, val community_id: CommunityId, val mod_person_id: PersonId, val published: String, val reason: String? = null, - val visibility: String /* "Public" | "Unlisted" | "LocalOnlyPublic" | "LocalOnlyPrivate" | "Private" */, + val visibility: CommunityVisibility /* "Public" | "Unlisted" | "LocalOnlyPublic" | "LocalOnlyPrivate" | "Private" */, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModChangeCommunityVisibilityId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModChangeCommunityVisibilityId.kt deleted file mode 100644 index ca69bd5a..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModChangeCommunityVisibilityId.kt +++ /dev/null @@ -1,3 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -typealias ModChangeCommunityVisibilityId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModFeaturePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModFeaturePost.kt index ad393162..90e4b7e5 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModFeaturePost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModFeaturePost.kt @@ -4,7 +4,7 @@ import kotlinx.serialization.Serializable @Serializable internal data class ModFeaturePost( - val id: ModFeaturePostId, + val id: Long, val mod_person_id: PersonId, val post_id: PostId, val featured: Boolean, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModFeaturePostId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModFeaturePostId.kt deleted file mode 100644 index e1162cd1..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModFeaturePostId.kt +++ /dev/null @@ -1,3 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -typealias ModFeaturePostId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockPost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockPost.kt index 40b3ed2d..a43d8c9f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockPost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockPost.kt @@ -4,7 +4,7 @@ import kotlinx.serialization.Serializable @Serializable internal data class ModLockPost( - val id: ModLockPostId, + val id: Long, val mod_person_id: PersonId, val post_id: PostId, val locked: Boolean, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockPostId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockPostId.kt deleted file mode 100644 index 01b19f98..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockPostId.kt +++ /dev/null @@ -1,3 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -typealias ModLockPostId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveComment.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveComment.kt index 0d04febb..d0af642a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveComment.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveComment.kt @@ -4,7 +4,7 @@ import kotlinx.serialization.Serializable @Serializable internal data class ModRemoveComment( - val id: ModRemoveCommentId, + val id: Long, val mod_person_id: PersonId, val comment_id: CommentId, val reason: String? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveCommentId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveCommentId.kt deleted file mode 100644 index 9c9a5a9a..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveCommentId.kt +++ /dev/null @@ -1,3 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -typealias ModRemoveCommentId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveCommunity.kt index 335d3bdb..3eafd99c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveCommunity.kt @@ -4,7 +4,7 @@ import kotlinx.serialization.Serializable @Serializable internal data class ModRemoveCommunity( - val id: ModRemoveCommunityId, + val id: Long, val mod_person_id: PersonId, val community_id: CommunityId, val reason: String? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveCommunityId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveCommunityId.kt deleted file mode 100644 index 67e37438..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveCommunityId.kt +++ /dev/null @@ -1,3 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -typealias ModRemoveCommunityId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemovePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemovePost.kt index 67e70a0d..f94f8997 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemovePost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemovePost.kt @@ -4,7 +4,7 @@ import kotlinx.serialization.Serializable @Serializable internal data class ModRemovePost( - val id: ModRemovePostId, + val id: Long, val mod_person_id: PersonId, val post_id: PostId, val reason: String? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemovePostId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemovePostId.kt deleted file mode 100644 index e47e1ae8..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemovePostId.kt +++ /dev/null @@ -1,3 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -typealias ModRemovePostId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModTransferCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModTransferCommunity.kt index 4ddb9bbc..f469f82b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModTransferCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModTransferCommunity.kt @@ -4,7 +4,7 @@ import kotlinx.serialization.Serializable @Serializable internal data class ModTransferCommunity( - val id: ModTransferCommunityId, + val id: Long, val mod_person_id: PersonId, val other_person_id: PersonId, val community_id: CommunityId, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModTransferCommunityId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModTransferCommunityId.kt deleted file mode 100644 index f9357a12..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModTransferCommunityId.kt +++ /dev/null @@ -1,3 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -typealias ModTransferCommunityId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/OAuthProviderId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/OAuthProviderId.kt index 9197a52a..0fcea1cf 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/OAuthProviderId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/OAuthProviderId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -typealias OAuthProviderId = Long +internal typealias OAuthProviderId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/OpenGraphData.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/OpenGraphData.kt deleted file mode 100644 index 232610e1..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/OpenGraphData.kt +++ /dev/null @@ -1,11 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class OpenGraphData( - val title: String? = null, - val description: String? = null, - val image: DbUrl? = null, - val embed_video_url: DbUrl? = null, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PaginationCursor.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PaginationCursor.kt index 0471931c..08d4f57e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PaginationCursor.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PaginationCursor.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -typealias PaginationCursor = String +internal typealias PaginationCursor = String diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonCommentMentionId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonCommentMentionId.kt index 4759a5f3..aeed1422 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonCommentMentionId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonCommentMentionId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -typealias PersonCommentMentionId = Long +internal typealias PersonCommentMentionId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonId.kt index 7561cd61..6a0f1f09 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -typealias PersonId = Long +internal typealias PersonId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonPostMentionId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonPostMentionId.kt index 986dc406..29e3d769 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonPostMentionId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonPostMentionId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -typealias PersonPostMentionId = Long +internal typealias PersonPostMentionId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostId.kt index dfda5c63..ddaebe65 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -typealias PostId = Long +internal typealias PostId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostReportId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostReportId.kt index 8c1dacd9..57a3c4d1 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostReportId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostReportId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -typealias PostReportId = Long +internal typealias PostReportId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessageId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessageId.kt index 540ec1eb..e04d7f7c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessageId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessageId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -typealias PrivateMessageId = Long +internal typealias PrivateMessageId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessageReportId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessageReportId.kt index 135f5a3a..74ba9156 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessageReportId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessageReportId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -typealias PrivateMessageReportId = Long +internal typealias PrivateMessageReportId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PublicOAuthProvider.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PublicOAuthProvider.kt index 2d048392..4f0cf388 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PublicOAuthProvider.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PublicOAuthProvider.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -typealias PublicOAuthProvider = OAuthProvider +internal typealias PublicOAuthProvider = OAuthProvider diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RegistrationApplicationId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RegistrationApplicationId.kt index 375533ee..cfa34d45 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RegistrationApplicationId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RegistrationApplicationId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -typealias RegistrationApplicationId = Long +internal typealias RegistrationApplicationId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SaveUserSettings.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SaveUserSettings.kt index 5efc80fa..d6aa1171 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SaveUserSettings.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SaveUserSettings.kt @@ -1,6 +1,5 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -import it.vercruysse.lemmyapi.dto.SortType import it.vercruysse.lemmyapi.dto.SortType import it.vercruysse.lemmyapi.dto.PostListingMode import it.vercruysse.lemmyapi.dto.ListingType diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SensitiveString.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SensitiveString.kt index a0a2896a..3b494c4c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SensitiveString.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SensitiveString.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -typealias SensitiveString = String +internal typealias SensitiveString = String diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Site.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Site.kt index 0ba2a698..2bb63905 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Site.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Site.kt @@ -2,6 +2,8 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes import kotlinx.serialization.Serializable +// TODO: changes + @Serializable internal data class Site( val id: SiteId, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SiteId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SiteId.kt index 023c2cbf..25b4f2a9 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SiteId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SiteId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -typealias SiteId = Long +internal typealias SiteId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SiteResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SiteResponse.kt index 3050fd3f..e5358c80 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SiteResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SiteResponse.kt @@ -2,6 +2,8 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes import kotlinx.serialization.Serializable +// TODO: research taglines changes + @Serializable internal data class SiteResponse( val site_view: SiteView, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SuccessResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SuccessResponse.kt deleted file mode 100644 index cf44cf41..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SuccessResponse.kt +++ /dev/null @@ -1,8 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class SuccessResponse( - val success: Boolean, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/TagId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/TagId.kt index fb6aee7f..16be36e8 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/TagId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/TagId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -typealias TagId = Long +internal typealias TagId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/TaglineId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/TaglineId.kt index b792b94d..345c2b4f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/TaglineId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/TaglineId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -typealias TaglineId = Long +internal typealias TaglineId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/TagsView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/TagsView.kt index 3a80abf7..e9e14424 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/TagsView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/TagsView.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -typealias TagsView = List +internal typealias TagsView = List From b353bebe17785e37dee2785029e2ed97b9270262 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Sun, 25 May 2025 08:29:00 +0200 Subject: [PATCH 003/110] Make all impl specific typealias internal --- GeneratorScripts/build.gradle.kts | 1 - .../it/vercruysse/lemmyapi/v0/x18/x5/datatypes/CommentId.kt | 2 +- .../vercruysse/lemmyapi/v0/x18/x5/datatypes/CommentReplyId.kt | 2 +- .../vercruysse/lemmyapi/v0/x18/x5/datatypes/CommentReportId.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x18/x5/datatypes/CommunityId.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x18/x5/datatypes/CustomEmojiId.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x18/x5/datatypes/InstanceId.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x18/x5/datatypes/LanguageId.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x18/x5/datatypes/LocalSiteId.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x18/x5/datatypes/LocalUserId.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x18/x5/datatypes/PersonId.kt | 2 +- .../vercruysse/lemmyapi/v0/x18/x5/datatypes/PersonMentionId.kt | 2 +- .../kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/PostId.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x18/x5/datatypes/PostReportId.kt | 2 +- .../vercruysse/lemmyapi/v0/x18/x5/datatypes/PrivateMessageId.kt | 2 +- .../lemmyapi/v0/x18/x5/datatypes/PrivateMessageReportId.kt | 2 +- .../kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/SiteId.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x19/x0/datatypes/ActivityId.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x19/x0/datatypes/CommentId.kt | 2 +- .../vercruysse/lemmyapi/v0/x19/x0/datatypes/CommentReplyId.kt | 2 +- .../vercruysse/lemmyapi/v0/x19/x0/datatypes/CommentReportId.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x19/x0/datatypes/CommunityId.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x19/x0/datatypes/CustomEmojiId.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x19/x0/datatypes/InstanceId.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x19/x0/datatypes/LanguageId.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x19/x0/datatypes/LocalSiteId.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x19/x0/datatypes/LocalUserId.kt | 2 +- .../vercruysse/lemmyapi/v0/x19/x0/datatypes/PaginationCursor.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x19/x0/datatypes/PersonId.kt | 2 +- .../vercruysse/lemmyapi/v0/x19/x0/datatypes/PersonMentionId.kt | 2 +- .../kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/PostId.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x19/x0/datatypes/PostReportId.kt | 2 +- .../vercruysse/lemmyapi/v0/x19/x0/datatypes/PrivateMessageId.kt | 2 +- .../lemmyapi/v0/x19/x0/datatypes/PrivateMessageReportId.kt | 2 +- .../kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/SiteId.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x19/x11/datatypes/ActivityId.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CommentId.kt | 2 +- .../vercruysse/lemmyapi/v0/x19/x11/datatypes/CommentReplyId.kt | 2 +- .../vercruysse/lemmyapi/v0/x19/x11/datatypes/CommentReportId.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CommunityId.kt | 2 +- .../vercruysse/lemmyapi/v0/x19/x11/datatypes/CustomEmojiId.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x19/x11/datatypes/InstanceId.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x19/x11/datatypes/LanguageId.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x19/x11/datatypes/LocalSiteId.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x19/x11/datatypes/LocalUserId.kt | 2 +- .../lemmyapi/v0/x19/x11/datatypes/PaginationCursor.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x19/x11/datatypes/PersonId.kt | 2 +- .../vercruysse/lemmyapi/v0/x19/x11/datatypes/PersonMentionId.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x19/x11/datatypes/PostId.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x19/x11/datatypes/PostReportId.kt | 2 +- .../lemmyapi/v0/x19/x11/datatypes/PrivateMessageId.kt | 2 +- .../lemmyapi/v0/x19/x11/datatypes/PrivateMessageReportId.kt | 2 +- .../lemmyapi/v0/x19/x11/datatypes/RegistrationApplicationId.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x19/x11/datatypes/SiteId.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x19/x3/datatypes/ActivityId.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x19/x3/datatypes/CommentId.kt | 2 +- .../vercruysse/lemmyapi/v0/x19/x3/datatypes/CommentReplyId.kt | 2 +- .../vercruysse/lemmyapi/v0/x19/x3/datatypes/CommentReportId.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x19/x3/datatypes/CommunityId.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x19/x3/datatypes/CustomEmojiId.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x19/x3/datatypes/InstanceId.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x19/x3/datatypes/LanguageId.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x19/x3/datatypes/LocalSiteId.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x19/x3/datatypes/LocalUserId.kt | 2 +- .../vercruysse/lemmyapi/v0/x19/x3/datatypes/PaginationCursor.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x19/x3/datatypes/PersonId.kt | 2 +- .../vercruysse/lemmyapi/v0/x19/x3/datatypes/PersonMentionId.kt | 2 +- .../kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/PostId.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x19/x3/datatypes/PostReportId.kt | 2 +- .../vercruysse/lemmyapi/v0/x19/x3/datatypes/PrivateMessageId.kt | 2 +- .../lemmyapi/v0/x19/x3/datatypes/PrivateMessageReportId.kt | 2 +- .../kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/SiteId.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x19/x4/datatypes/ActivityId.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CommentId.kt | 2 +- .../vercruysse/lemmyapi/v0/x19/x4/datatypes/CommentReplyId.kt | 2 +- .../vercruysse/lemmyapi/v0/x19/x4/datatypes/CommentReportId.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CommunityId.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CustomEmojiId.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x19/x4/datatypes/InstanceId.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x19/x4/datatypes/LanguageId.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x19/x4/datatypes/LocalSiteId.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x19/x4/datatypes/LocalUserId.kt | 2 +- .../vercruysse/lemmyapi/v0/x19/x4/datatypes/PaginationCursor.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x19/x4/datatypes/PersonId.kt | 2 +- .../vercruysse/lemmyapi/v0/x19/x4/datatypes/PersonMentionId.kt | 2 +- .../kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/PostId.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x19/x4/datatypes/PostReportId.kt | 2 +- .../vercruysse/lemmyapi/v0/x19/x4/datatypes/PrivateMessageId.kt | 2 +- .../lemmyapi/v0/x19/x4/datatypes/PrivateMessageReportId.kt | 2 +- .../kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/SiteId.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x19/x6/datatypes/ActivityId.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CommentId.kt | 2 +- .../vercruysse/lemmyapi/v0/x19/x6/datatypes/CommentReplyId.kt | 2 +- .../vercruysse/lemmyapi/v0/x19/x6/datatypes/CommentReportId.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CommunityId.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CustomEmojiId.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x19/x6/datatypes/InstanceId.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x19/x6/datatypes/LanguageId.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x19/x6/datatypes/LocalSiteId.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x19/x6/datatypes/LocalUserId.kt | 2 +- .../vercruysse/lemmyapi/v0/x19/x6/datatypes/PaginationCursor.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x19/x6/datatypes/PersonId.kt | 2 +- .../vercruysse/lemmyapi/v0/x19/x6/datatypes/PersonMentionId.kt | 2 +- .../kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/PostId.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x19/x6/datatypes/PostReportId.kt | 2 +- .../vercruysse/lemmyapi/v0/x19/x6/datatypes/PrivateMessageId.kt | 2 +- .../lemmyapi/v0/x19/x6/datatypes/PrivateMessageReportId.kt | 2 +- .../lemmyapi/v0/x19/x6/datatypes/RegistrationApplicationId.kt | 2 +- .../kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/SiteId.kt | 2 +- .../it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ActivityId.kt | 2 +- 110 files changed, 109 insertions(+), 110 deletions(-) diff --git a/GeneratorScripts/build.gradle.kts b/GeneratorScripts/build.gradle.kts index 8f321d5e..c3f0085e 100644 --- a/GeneratorScripts/build.gradle.kts +++ b/GeneratorScripts/build.gradle.kts @@ -38,4 +38,3 @@ kotlin { jvmToolchain(17) } -//TODO: make all typealias internal in sub datatypes diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/CommentId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/CommentId.kt index 4805f9d5..f80cac11 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/CommentId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/CommentId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x18.x5.datatypes -typealias CommentId = Long +internal typealias CommentId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/CommentReplyId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/CommentReplyId.kt index 5f9d0e7e..8797b458 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/CommentReplyId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/CommentReplyId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x18.x5.datatypes -typealias CommentReplyId = Long +internal typealias CommentReplyId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/CommentReportId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/CommentReportId.kt index 5a8b4411..c6afc636 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/CommentReportId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/CommentReportId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x18.x5.datatypes -typealias CommentReportId = Long +internal typealias CommentReportId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/CommunityId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/CommunityId.kt index b3437a64..cf7aa1c4 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/CommunityId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/CommunityId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x18.x5.datatypes -typealias CommunityId = Long +internal typealias CommunityId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/CustomEmojiId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/CustomEmojiId.kt index 616606f7..4308312f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/CustomEmojiId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/CustomEmojiId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x18.x5.datatypes -typealias CustomEmojiId = Long +internal typealias CustomEmojiId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/InstanceId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/InstanceId.kt index 0244b898..dcce228b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/InstanceId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/InstanceId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x18.x5.datatypes -typealias InstanceId = Long +internal typealias InstanceId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/LanguageId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/LanguageId.kt index 1dab8ff6..aff4003b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/LanguageId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/LanguageId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x18.x5.datatypes -typealias LanguageId = Long +internal typealias LanguageId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/LocalSiteId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/LocalSiteId.kt index 0598d012..466e7894 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/LocalSiteId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/LocalSiteId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x18.x5.datatypes -typealias LocalSiteId = Long +internal typealias LocalSiteId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/LocalUserId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/LocalUserId.kt index 38ae48fe..f00bf78f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/LocalUserId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/LocalUserId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x18.x5.datatypes -typealias LocalUserId = Long +internal typealias LocalUserId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/PersonId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/PersonId.kt index 40d3abbb..4734b3fc 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/PersonId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/PersonId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x18.x5.datatypes -typealias PersonId = Long +internal typealias PersonId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/PersonMentionId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/PersonMentionId.kt index 9c197bdd..8f510a69 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/PersonMentionId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/PersonMentionId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x18.x5.datatypes -typealias PersonMentionId = Long +internal typealias PersonMentionId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/PostId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/PostId.kt index ecaebaa6..891099a2 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/PostId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/PostId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x18.x5.datatypes -typealias PostId = Long +internal typealias PostId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/PostReportId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/PostReportId.kt index cc7e3265..00e1231c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/PostReportId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/PostReportId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x18.x5.datatypes -typealias PostReportId = Long +internal typealias PostReportId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/PrivateMessageId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/PrivateMessageId.kt index 036e57b3..b5cd470d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/PrivateMessageId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/PrivateMessageId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x18.x5.datatypes -typealias PrivateMessageId = Long +internal typealias PrivateMessageId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/PrivateMessageReportId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/PrivateMessageReportId.kt index a8e4059f..f657dad4 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/PrivateMessageReportId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/PrivateMessageReportId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x18.x5.datatypes -typealias PrivateMessageReportId = Long +internal typealias PrivateMessageReportId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/SiteId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/SiteId.kt index a8ca5d95..f06ce48b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/SiteId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/SiteId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x18.x5.datatypes -typealias SiteId = Long +internal typealias SiteId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/ActivityId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/ActivityId.kt index a225ad6c..6541ae85 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/ActivityId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/ActivityId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -typealias ActivityId = Long +internal typealias ActivityId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/CommentId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/CommentId.kt index 923adea0..ff63a98f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/CommentId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/CommentId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -typealias CommentId = Long +internal typealias CommentId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/CommentReplyId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/CommentReplyId.kt index 23743575..40b7180e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/CommentReplyId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/CommentReplyId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -typealias CommentReplyId = Long +internal typealias CommentReplyId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/CommentReportId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/CommentReportId.kt index 0bcb4398..21505c84 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/CommentReportId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/CommentReportId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -typealias CommentReportId = Long +internal typealias CommentReportId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/CommunityId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/CommunityId.kt index 3d82f734..d48e5176 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/CommunityId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/CommunityId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -typealias CommunityId = Long +internal typealias CommunityId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/CustomEmojiId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/CustomEmojiId.kt index bef4b37c..6fbbb5c4 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/CustomEmojiId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/CustomEmojiId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -typealias CustomEmojiId = Long +internal typealias CustomEmojiId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/InstanceId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/InstanceId.kt index 3cf97dd0..3107a6b2 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/InstanceId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/InstanceId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -typealias InstanceId = Long +internal typealias InstanceId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/LanguageId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/LanguageId.kt index 6662d3a0..23b9b139 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/LanguageId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/LanguageId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -typealias LanguageId = Long +internal typealias LanguageId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/LocalSiteId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/LocalSiteId.kt index 57415549..d080bb14 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/LocalSiteId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/LocalSiteId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -typealias LocalSiteId = Long +internal typealias LocalSiteId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/LocalUserId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/LocalUserId.kt index ddcbf1a4..1ac05262 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/LocalUserId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/LocalUserId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -typealias LocalUserId = Long +internal typealias LocalUserId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/PaginationCursor.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/PaginationCursor.kt index 6aef9c04..431d46fc 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/PaginationCursor.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/PaginationCursor.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -typealias PaginationCursor = String +internal typealias PaginationCursor = String diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/PersonId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/PersonId.kt index 4b78b8bb..36282beb 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/PersonId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/PersonId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -typealias PersonId = Long +internal typealias PersonId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/PersonMentionId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/PersonMentionId.kt index 3ce46613..b664b0e1 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/PersonMentionId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/PersonMentionId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -typealias PersonMentionId = Long +internal typealias PersonMentionId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/PostId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/PostId.kt index c3a085ca..1594ffca 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/PostId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/PostId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -typealias PostId = Long +internal typealias PostId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/PostReportId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/PostReportId.kt index 85e3e19c..bd8a6304 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/PostReportId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/PostReportId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -typealias PostReportId = Long +internal typealias PostReportId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/PrivateMessageId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/PrivateMessageId.kt index 76363368..a1bc6fc7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/PrivateMessageId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/PrivateMessageId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -typealias PrivateMessageId = Long +internal typealias PrivateMessageId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/PrivateMessageReportId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/PrivateMessageReportId.kt index 044fe409..efc507cd 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/PrivateMessageReportId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/PrivateMessageReportId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -typealias PrivateMessageReportId = Long +internal typealias PrivateMessageReportId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/SiteId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/SiteId.kt index 72de88d1..3486f440 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/SiteId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/SiteId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -typealias SiteId = Long +internal typealias SiteId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/ActivityId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/ActivityId.kt index 386851e7..0dd03fdd 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/ActivityId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/ActivityId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -typealias ActivityId = Long +internal typealias ActivityId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CommentId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CommentId.kt index 4c8a4e6d..a7b6ec8b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CommentId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CommentId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -typealias CommentId = Long +internal typealias CommentId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CommentReplyId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CommentReplyId.kt index 22ef803d..9814b43e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CommentReplyId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CommentReplyId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -typealias CommentReplyId = Long +internal typealias CommentReplyId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CommentReportId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CommentReportId.kt index a68722e9..2b00abd4 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CommentReportId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CommentReportId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -typealias CommentReportId = Long +internal typealias CommentReportId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CommunityId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CommunityId.kt index 6034e489..5fa86a85 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CommunityId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CommunityId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -typealias CommunityId = Long +internal typealias CommunityId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CustomEmojiId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CustomEmojiId.kt index f3125bae..751f63ce 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CustomEmojiId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CustomEmojiId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -typealias CustomEmojiId = Long +internal typealias CustomEmojiId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/InstanceId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/InstanceId.kt index de9a4e26..0e68613c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/InstanceId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/InstanceId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -typealias InstanceId = Long +internal typealias InstanceId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/LanguageId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/LanguageId.kt index 08900ae0..3c98874b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/LanguageId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/LanguageId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -typealias LanguageId = Long +internal typealias LanguageId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/LocalSiteId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/LocalSiteId.kt index cb501365..45f86717 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/LocalSiteId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/LocalSiteId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -typealias LocalSiteId = Long +internal typealias LocalSiteId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/LocalUserId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/LocalUserId.kt index ea859b00..34eb3f84 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/LocalUserId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/LocalUserId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -typealias LocalUserId = Long +internal typealias LocalUserId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/PaginationCursor.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/PaginationCursor.kt index 790dfdad..f3c330d4 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/PaginationCursor.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/PaginationCursor.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -typealias PaginationCursor = String +internal typealias PaginationCursor = String diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/PersonId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/PersonId.kt index 948f849a..60bec687 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/PersonId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/PersonId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -typealias PersonId = Long +internal typealias PersonId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/PersonMentionId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/PersonMentionId.kt index 57d28429..32975731 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/PersonMentionId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/PersonMentionId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -typealias PersonMentionId = Long +internal typealias PersonMentionId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/PostId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/PostId.kt index 883befeb..2b6a61a3 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/PostId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/PostId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -typealias PostId = Long +internal typealias PostId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/PostReportId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/PostReportId.kt index d4f1f076..77eb3e97 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/PostReportId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/PostReportId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -typealias PostReportId = Long +internal typealias PostReportId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/PrivateMessageId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/PrivateMessageId.kt index 64251dec..43acfbb7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/PrivateMessageId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/PrivateMessageId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -typealias PrivateMessageId = Long +internal typealias PrivateMessageId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/PrivateMessageReportId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/PrivateMessageReportId.kt index f57670ff..4a283c3b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/PrivateMessageReportId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/PrivateMessageReportId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -typealias PrivateMessageReportId = Long +internal typealias PrivateMessageReportId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/RegistrationApplicationId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/RegistrationApplicationId.kt index 0dab6343..1bdfb368 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/RegistrationApplicationId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/RegistrationApplicationId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -typealias RegistrationApplicationId = Long +internal typealias RegistrationApplicationId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/SiteId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/SiteId.kt index 33213af0..77f12ff3 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/SiteId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/SiteId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -typealias SiteId = Long +internal typealias SiteId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/ActivityId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/ActivityId.kt index 3cfab6cb..0304512e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/ActivityId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/ActivityId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -typealias ActivityId = Long +internal typealias ActivityId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/CommentId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/CommentId.kt index f4fc7e36..66ce8bd9 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/CommentId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/CommentId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -typealias CommentId = Long +internal typealias CommentId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/CommentReplyId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/CommentReplyId.kt index b5798a6c..6a9cbe81 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/CommentReplyId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/CommentReplyId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -typealias CommentReplyId = Long +internal typealias CommentReplyId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/CommentReportId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/CommentReportId.kt index e2f036ed..c4d13e51 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/CommentReportId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/CommentReportId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -typealias CommentReportId = Long +internal typealias CommentReportId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/CommunityId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/CommunityId.kt index 5bc39ad1..8c7f7f10 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/CommunityId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/CommunityId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -typealias CommunityId = Long +internal typealias CommunityId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/CustomEmojiId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/CustomEmojiId.kt index 6dc7c7a1..bfd7b4d6 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/CustomEmojiId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/CustomEmojiId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -typealias CustomEmojiId = Long +internal typealias CustomEmojiId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/InstanceId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/InstanceId.kt index 67085819..3bd91458 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/InstanceId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/InstanceId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -typealias InstanceId = Long +internal typealias InstanceId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/LanguageId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/LanguageId.kt index 1e36e2f5..a0cbbb85 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/LanguageId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/LanguageId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -typealias LanguageId = Long +internal typealias LanguageId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/LocalSiteId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/LocalSiteId.kt index 93998e03..29dd0034 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/LocalSiteId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/LocalSiteId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -typealias LocalSiteId = Long +internal typealias LocalSiteId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/LocalUserId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/LocalUserId.kt index a20f33a1..fc55f63c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/LocalUserId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/LocalUserId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -typealias LocalUserId = Long +internal typealias LocalUserId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/PaginationCursor.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/PaginationCursor.kt index 073ac3b9..cc2aaa37 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/PaginationCursor.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/PaginationCursor.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -typealias PaginationCursor = String +internal typealias PaginationCursor = String diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/PersonId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/PersonId.kt index a956d9b4..9c32346c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/PersonId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/PersonId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -typealias PersonId = Long +internal typealias PersonId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/PersonMentionId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/PersonMentionId.kt index 9b94da64..a51fc571 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/PersonMentionId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/PersonMentionId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -typealias PersonMentionId = Long +internal typealias PersonMentionId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/PostId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/PostId.kt index d65d1c89..bb378653 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/PostId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/PostId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -typealias PostId = Long +internal typealias PostId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/PostReportId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/PostReportId.kt index e53ae890..3e650219 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/PostReportId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/PostReportId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -typealias PostReportId = Long +internal typealias PostReportId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/PrivateMessageId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/PrivateMessageId.kt index 6ec4292d..f8606e30 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/PrivateMessageId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/PrivateMessageId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -typealias PrivateMessageId = Long +internal typealias PrivateMessageId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/PrivateMessageReportId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/PrivateMessageReportId.kt index b7df3b07..a68cd665 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/PrivateMessageReportId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/PrivateMessageReportId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -typealias PrivateMessageReportId = Long +internal typealias PrivateMessageReportId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/SiteId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/SiteId.kt index c96a54e7..b94988de 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/SiteId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/SiteId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -typealias SiteId = Long +internal typealias SiteId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/ActivityId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/ActivityId.kt index a622aefe..120c955a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/ActivityId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/ActivityId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -typealias ActivityId = Long +internal typealias ActivityId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CommentId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CommentId.kt index 3a8623fe..226d2c25 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CommentId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CommentId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -typealias CommentId = Long +internal typealias CommentId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CommentReplyId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CommentReplyId.kt index 1728b30a..aa9cb528 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CommentReplyId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CommentReplyId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -typealias CommentReplyId = Long +internal typealias CommentReplyId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CommentReportId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CommentReportId.kt index ab9ae7d8..6f060daf 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CommentReportId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CommentReportId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -typealias CommentReportId = Long +internal typealias CommentReportId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CommunityId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CommunityId.kt index 978be11c..25509b82 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CommunityId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CommunityId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -typealias CommunityId = Long +internal typealias CommunityId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CustomEmojiId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CustomEmojiId.kt index d3f57efa..e7fb9680 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CustomEmojiId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CustomEmojiId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -typealias CustomEmojiId = Long +internal typealias CustomEmojiId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/InstanceId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/InstanceId.kt index 7dd92608..c7087d72 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/InstanceId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/InstanceId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -typealias InstanceId = Long +internal typealias InstanceId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/LanguageId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/LanguageId.kt index 07e333b0..ff2b1718 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/LanguageId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/LanguageId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -typealias LanguageId = Long +internal typealias LanguageId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/LocalSiteId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/LocalSiteId.kt index 82f60e82..9395ec29 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/LocalSiteId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/LocalSiteId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -typealias LocalSiteId = Long +internal typealias LocalSiteId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/LocalUserId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/LocalUserId.kt index be7ffc9e..89e0d805 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/LocalUserId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/LocalUserId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -typealias LocalUserId = Long +internal typealias LocalUserId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/PaginationCursor.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/PaginationCursor.kt index 67ccebac..4f25ce04 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/PaginationCursor.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/PaginationCursor.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -typealias PaginationCursor = String +internal typealias PaginationCursor = String diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/PersonId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/PersonId.kt index ceca0ee7..b45ec59d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/PersonId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/PersonId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -typealias PersonId = Long +internal typealias PersonId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/PersonMentionId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/PersonMentionId.kt index e1c6f7fe..c67c6564 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/PersonMentionId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/PersonMentionId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -typealias PersonMentionId = Long +internal typealias PersonMentionId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/PostId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/PostId.kt index dd443e75..87ec27df 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/PostId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/PostId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -typealias PostId = Long +internal typealias PostId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/PostReportId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/PostReportId.kt index 28279a15..87194ca1 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/PostReportId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/PostReportId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -typealias PostReportId = Long +internal typealias PostReportId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/PrivateMessageId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/PrivateMessageId.kt index 0b15a775..18407d6f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/PrivateMessageId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/PrivateMessageId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -typealias PrivateMessageId = Long +internal typealias PrivateMessageId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/PrivateMessageReportId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/PrivateMessageReportId.kt index 7baab765..e7209cd0 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/PrivateMessageReportId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/PrivateMessageReportId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -typealias PrivateMessageReportId = Long +internal typealias PrivateMessageReportId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/SiteId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/SiteId.kt index 71c1be3d..9af06f49 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/SiteId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/SiteId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -typealias SiteId = Long +internal typealias SiteId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/ActivityId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/ActivityId.kt index c304f90a..a4bfc193 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/ActivityId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/ActivityId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -typealias ActivityId = Long +internal typealias ActivityId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CommentId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CommentId.kt index b1b3a907..2df85ae3 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CommentId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CommentId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -typealias CommentId = Long +internal typealias CommentId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CommentReplyId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CommentReplyId.kt index 9ad939c7..caa3cebf 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CommentReplyId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CommentReplyId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -typealias CommentReplyId = Long +internal typealias CommentReplyId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CommentReportId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CommentReportId.kt index 7cdc545f..11bfee6a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CommentReportId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CommentReportId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -typealias CommentReportId = Long +internal typealias CommentReportId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CommunityId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CommunityId.kt index ee5e7dc8..e8184236 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CommunityId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CommunityId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -typealias CommunityId = Long +internal typealias CommunityId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CustomEmojiId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CustomEmojiId.kt index 3461c16b..f450cb48 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CustomEmojiId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CustomEmojiId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -typealias CustomEmojiId = Long +internal typealias CustomEmojiId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/InstanceId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/InstanceId.kt index ed4b3055..321da257 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/InstanceId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/InstanceId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -typealias InstanceId = Long +internal typealias InstanceId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/LanguageId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/LanguageId.kt index 756013bc..d8b2addc 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/LanguageId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/LanguageId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -typealias LanguageId = Long +internal typealias LanguageId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/LocalSiteId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/LocalSiteId.kt index df138f98..96b3a8a0 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/LocalSiteId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/LocalSiteId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -typealias LocalSiteId = Long +internal typealias LocalSiteId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/LocalUserId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/LocalUserId.kt index 7df0af4c..81066fee 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/LocalUserId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/LocalUserId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -typealias LocalUserId = Long +internal typealias LocalUserId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/PaginationCursor.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/PaginationCursor.kt index a6827087..5df1828e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/PaginationCursor.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/PaginationCursor.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -typealias PaginationCursor = String +internal typealias PaginationCursor = String diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/PersonId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/PersonId.kt index b9eced39..a48febf7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/PersonId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/PersonId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -typealias PersonId = Long +internal typealias PersonId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/PersonMentionId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/PersonMentionId.kt index c7997995..368c54e9 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/PersonMentionId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/PersonMentionId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -typealias PersonMentionId = Long +internal typealias PersonMentionId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/PostId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/PostId.kt index e6665a4a..ac0a58be 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/PostId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/PostId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -typealias PostId = Long +internal typealias PostId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/PostReportId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/PostReportId.kt index 17927756..a682510d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/PostReportId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/PostReportId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -typealias PostReportId = Long +internal typealias PostReportId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/PrivateMessageId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/PrivateMessageId.kt index d756618c..974e64f0 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/PrivateMessageId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/PrivateMessageId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -typealias PrivateMessageId = Long +internal typealias PrivateMessageId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/PrivateMessageReportId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/PrivateMessageReportId.kt index eb7e5093..bcfc16df 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/PrivateMessageReportId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/PrivateMessageReportId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -typealias PrivateMessageReportId = Long +internal typealias PrivateMessageReportId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/RegistrationApplicationId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/RegistrationApplicationId.kt index 498590dc..ea39ffef 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/RegistrationApplicationId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/RegistrationApplicationId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -typealias RegistrationApplicationId = Long +internal typealias RegistrationApplicationId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/SiteId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/SiteId.kt index 7771c0c6..b156baa9 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/SiteId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/SiteId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -typealias SiteId = Long +internal typealias SiteId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ActivityId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ActivityId.kt index 8e4c2420..a97fb349 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ActivityId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ActivityId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -typealias ActivityId = Long +internal typealias ActivityId = Long From cf1ef56d55179ba47cd19c5b57e926f70367a9f0 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Sun, 25 May 2025 14:18:56 +0200 Subject: [PATCH 004/110] Fix some TODOs --- .../kotlin/it/vercruysse/lemmyapi/Constants.kt | 1 + .../it/vercruysse/lemmyapi/datatypes/CustomEmoji.kt | 3 --- .../it/vercruysse/lemmyapi/datatypes/GetPostResponse.kt | 5 ++--- .../it/vercruysse/lemmyapi/datatypes/LocalImage.kt | 3 +-- .../kotlin/it/vercruysse/lemmyapi/datatypes/Site.kt | 2 ++ .../kotlin/it/vercruysse/lemmyapi/datatypes/Tag.kt | 2 -- .../kotlin/it/vercruysse/lemmyapi/datatypes/Tagline.kt | 3 --- .../kotlin/it/vercruysse/lemmyapi/datatypes/VoteView.kt | 2 +- .../kotlin/it/vercruysse/lemmyapi/dto/CustomDataTypes.kt | 9 ++++++--- .../it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt | 4 ++-- .../it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt | 4 ++-- .../it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt | 5 ++--- .../vercruysse/lemmyapi/v0/x19/x11/datatypes/VoteView.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt | 4 ++-- .../vercruysse/lemmyapi/v0/x19/x3/datatypes/VoteView.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt | 4 ++-- .../vercruysse/lemmyapi/v0/x19/x4/datatypes/VoteView.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt | 4 ++-- .../vercruysse/lemmyapi/v0/x19/x6/datatypes/VoteView.kt | 2 +- .../vercruysse/lemmyapi/v1/x0/x0/datatypes/PostReport.kt | 1 + 20 files changed, 30 insertions(+), 34 deletions(-) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/Constants.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/Constants.kt index 25fedb57..7a9afb2d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/Constants.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/Constants.kt @@ -7,6 +7,7 @@ val MINIMUM_API_VERSION = "0.17.0".toVersion() val V0_18_0 = "0.18.0".toVersion() val V0_19_0 = "0.19.0".toVersion() val V0_19_4 = "0.19.4".toVersion() +val V1_0_0 = "1.0.0".toVersion() const val TIMEOUT_MS = 20000L diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CustomEmoji.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CustomEmoji.kt index 2e9380e5..2232da42 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CustomEmoji.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CustomEmoji.kt @@ -5,13 +5,10 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize -// TODO: local_site_id is removed look into - @CommonParcelize @Serializable data class CustomEmoji( val id: CustomEmojiId, - val local_site_id: LocalSiteId, val shortcode: String, val image_url: String, val alt_text: String, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPostResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPostResponse.kt index 6abc00da..169a1e5f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPostResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPostResponse.kt @@ -5,13 +5,12 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize -// TODO: moderators removed - @CommonParcelize @Serializable data class GetPostResponse( val post_view: PostView, val community_view: CommunityView, - val moderators: List, + /** Removed in Lemmy 1.0.0 */ + val moderators: List = emptyList(), val cross_posts: List, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalImage.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalImage.kt index 2f39e85e..6bc976f5 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalImage.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalImage.kt @@ -5,13 +5,12 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize -// TODO research delete token removal - @CommonParcelize @Serializable data class LocalImage( val local_user_id: LocalUserId? = null, val pictrs_alias: String, + /** Removed in Lemmy 1.0.0 */ val pictrs_delete_token: String, val published: String, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Site.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Site.kt index 854c2ef8..cc533901 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Site.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Site.kt @@ -6,6 +6,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: changes + @CommonParcelize @Serializable data class Site( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Tag.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Tag.kt index a3db2b28..bf2f799b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Tag.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Tag.kt @@ -4,8 +4,6 @@ import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -// TODO: ap_id - @CommonParcelize @Serializable data class Tag( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Tagline.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Tagline.kt index c14830ef..7152125e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Tagline.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Tagline.kt @@ -5,13 +5,10 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize -// TODO: local_site_id removal - @CommonParcelize @Serializable data class Tagline( val id: TaglineId, - val local_site_id: LocalSiteId, val content: String, val published: String, val updated: String? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/VoteView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/VoteView.kt index d14eaed3..7c073fdb 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/VoteView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/VoteView.kt @@ -13,7 +13,7 @@ import it.vercruysse.lemmyapi.CommonParcelize data class VoteView( val creator: Person, val creator_banned_from_community: Boolean, - val score: Long, + val score: Int, ) : DatatypeRoot, Identity { override val id: Long get() = creator.id diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/dto/CustomDataTypes.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/dto/CustomDataTypes.kt index 9979d8f9..45f3bbaa 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/dto/CustomDataTypes.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/dto/CustomDataTypes.kt @@ -9,6 +9,7 @@ import it.vercruysse.lemmyapi.MINIMUM_API_VERSION import it.vercruysse.lemmyapi.V0_18_0 import it.vercruysse.lemmyapi.V0_19_0 import it.vercruysse.lemmyapi.V0_19_4 +import it.vercruysse.lemmyapi.V1_0_0 import it.vercruysse.lemmyapi.utils.isBetweenVersions import kotlinx.serialization.Serializable @@ -129,13 +130,15 @@ enum class PostListingMode(override val minimumVersion: Version = V0_19_0, overr SmallCard, } -// TODO: more options: "Public" | "Unlisted" | "LocalOnlyPublic" | "LocalOnlyPrivate" | "Private" - @Serializable enum class CommunityVisibility(override val minimumVersion: Version = V0_19_4, override val maximumVersion: Version? = null) : VersionTracker { Public, - LocalOnly, + LocalOnly(V0_19_4, V1_0_0), + Unlisted(V1_0_0), + LocalOnlyPublic(V1_0_0), + LocalOnlyPrivate(V1_0_0), + Private(V1_0_0), } /** diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt index 0a4c79af..5ad28777 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt @@ -864,7 +864,6 @@ internal class Transformer(var auth: String) : MapperGenerator { override fun toUni(d: X5DatatypesCustomEmoji): LemmyapiDatatypesCustomEmoji = LemmyapiDatatypesCustomEmoji( id = d.id, - local_site_id = d.local_site_id, shortcode = d.shortcode, image_url = d.image_url, alt_text = d.alt_text, @@ -1331,6 +1330,7 @@ internal class Transformer(var auth: String) : MapperGenerator { resolver_id = d.resolver_id, published = addTimezoneOffset(d.published), updated = d.updated, + violates_instance_rules = false, ) override fun toUni(d: X5DatatypesPostReportResponse): LemmyapiDatatypesPostReportResponse = @@ -1355,6 +1355,7 @@ internal class Transformer(var auth: String) : MapperGenerator { updated = addTimezoneOffsetNullable(d.updated), ap_id = d.ap_id, local = d.local, + removed = false, ) override fun toUni(d: X5DatatypesPrivateMessageReport): LemmyapiDatatypesPrivateMessageReport = @@ -1478,7 +1479,6 @@ internal class Transformer(var auth: String) : MapperGenerator { override fun toUni(d: X5DatatypesTagline): LemmyapiDatatypesTagline = LemmyapiDatatypesTagline( id = d.id, - local_site_id = d.local_site_id, content = d.content, published = addTimezoneOffset(d.published), updated = d.updated, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt index d20585ee..5ff734e0 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt @@ -814,7 +814,6 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X0DatatypesCustomEmoji): LemmyapiDatatypesCustomEmoji = LemmyapiDatatypesCustomEmoji( id = d.id, - local_site_id = d.local_site_id, shortcode = d.shortcode, image_url = d.image_url, alt_text = d.alt_text, @@ -1362,6 +1361,7 @@ internal class Transformer : MapperGenerator { resolver_id = d.resolver_id, published = d.published, updated = d.updated, + violates_instance_rules = false, ) override fun toUni(d: X0DatatypesPostReportResponse): LemmyapiDatatypesPostReportResponse = @@ -1386,6 +1386,7 @@ internal class Transformer : MapperGenerator { updated = d.updated, ap_id = d.ap_id, local = d.local, + removed = false, ) override fun toUni(d: X0DatatypesPrivateMessageReport): LemmyapiDatatypesPrivateMessageReport = @@ -1518,7 +1519,6 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X0DatatypesTagline): LemmyapiDatatypesTagline = LemmyapiDatatypesTagline( id = d.id, - local_site_id = d.local_site_id, content = d.content, published = d.published, updated = d.updated, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt index 62ae68fa..489473dd 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt @@ -255,7 +255,6 @@ import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.CommentResponse as X11Datatyp import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.CommentView as X11DatatypesCommentView import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.Community as X11DatatypesCommunity import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.CommunityAggregates as X11DatatypesCommunityAggregates -import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.CommunityBlockView as X11DatatypesCommunityBlockView import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.CommunityFollowerView as X11DatatypesCommunityFollowerView import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.CommunityModeratorView as X11DatatypesCommunityModeratorView import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.CommunityResponse as X11DatatypesCommunityResponse @@ -725,7 +724,6 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X11DatatypesCustomEmoji): LemmyapiDatatypesCustomEmoji = LemmyapiDatatypesCustomEmoji( id = d.id, - local_site_id = d.local_site_id, shortcode = d.shortcode, image_url = d.image_url, alt_text = d.alt_text, @@ -1415,6 +1413,7 @@ internal class Transformer : MapperGenerator { resolver_id = d.resolver_id, published = d.published, updated = d.updated, + violates_instance_rules = false, ) override fun toUni(d: X11DatatypesPostReportResponse): LemmyapiDatatypesPostReportResponse = @@ -1480,6 +1479,7 @@ internal class Transformer : MapperGenerator { updated = d.updated, ap_id = d.ap_id, local = d.local, + removed = false, ) override fun toUni(d: X11DatatypesPrivateMessageReport): LemmyapiDatatypesPrivateMessageReport = @@ -1614,7 +1614,6 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X11DatatypesTagline): LemmyapiDatatypesTagline = LemmyapiDatatypesTagline( id = d.id, - local_site_id = d.local_site_id, content = d.content, published = d.published, updated = d.updated, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/VoteView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/VoteView.kt index a371b880..7090cf35 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/VoteView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/VoteView.kt @@ -6,5 +6,5 @@ import kotlinx.serialization.Serializable internal data class VoteView( val creator: Person, val creator_banned_from_community: Boolean, - val score: Long, + val score: Int, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt index a9bfa253..aaaf31ba 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt @@ -823,7 +823,6 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X3DatatypesCustomEmoji): LemmyapiDatatypesCustomEmoji = LemmyapiDatatypesCustomEmoji( id = d.id, - local_site_id = d.local_site_id, shortcode = d.shortcode, image_url = d.image_url, alt_text = d.alt_text, @@ -1392,6 +1391,7 @@ internal class Transformer : MapperGenerator { resolver_id = d.resolver_id, published = d.published, updated = d.updated, + violates_instance_rules = false, ) override fun toUni(d: X3DatatypesPostReportResponse): LemmyapiDatatypesPostReportResponse = @@ -1416,6 +1416,7 @@ internal class Transformer : MapperGenerator { updated = d.updated, ap_id = d.ap_id, local = d.local, + removed = false, ) override fun toUni(d: X3DatatypesPrivateMessageReport): LemmyapiDatatypesPrivateMessageReport = @@ -1548,7 +1549,6 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X3DatatypesTagline): LemmyapiDatatypesTagline = LemmyapiDatatypesTagline( id = d.id, - local_site_id = d.local_site_id, content = d.content, published = d.published, updated = d.updated, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/VoteView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/VoteView.kt index aa92e6a3..a16776ea 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/VoteView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/VoteView.kt @@ -5,5 +5,5 @@ import kotlinx.serialization.Serializable @Serializable internal data class VoteView( val creator: Person, - val score: Long, + val score: Int, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt index c79d1823..d1fe44a1 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt @@ -722,7 +722,6 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X4DatatypesCustomEmoji): LemmyapiDatatypesCustomEmoji = LemmyapiDatatypesCustomEmoji( id = d.id, - local_site_id = d.local_site_id, shortcode = d.shortcode, image_url = d.image_url, alt_text = d.alt_text, @@ -1405,6 +1404,7 @@ internal class Transformer : MapperGenerator { resolver_id = d.resolver_id, published = d.published, updated = d.updated, + violates_instance_rules = false, ) override fun toUni(d: X4DatatypesPostReportResponse): LemmyapiDatatypesPostReportResponse = @@ -1468,6 +1468,7 @@ internal class Transformer : MapperGenerator { updated = d.updated, ap_id = d.ap_id, local = d.local, + removed = false, ) override fun toUni(d: X4DatatypesPrivateMessageReport): LemmyapiDatatypesPrivateMessageReport = @@ -1602,7 +1603,6 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X4DatatypesTagline): LemmyapiDatatypesTagline = LemmyapiDatatypesTagline( id = d.id, - local_site_id = d.local_site_id, content = d.content, published = d.published, updated = d.updated, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/VoteView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/VoteView.kt index 4d7a08e3..4a08d3ce 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/VoteView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/VoteView.kt @@ -6,5 +6,5 @@ import kotlinx.serialization.Serializable internal data class VoteView( val creator: Person, val creator_banned_from_community: Boolean, - val score: Long, + val score: Int, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt index 74b60430..c2a687ad 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt @@ -724,7 +724,6 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X6DatatypesCustomEmoji): LemmyapiDatatypesCustomEmoji = LemmyapiDatatypesCustomEmoji( id = d.id, - local_site_id = d.local_site_id, shortcode = d.shortcode, image_url = d.image_url, alt_text = d.alt_text, @@ -1412,6 +1411,7 @@ internal class Transformer : MapperGenerator { resolver_id = d.resolver_id, published = d.published, updated = d.updated, + violates_instance_rules = false, ) override fun toUni(d: X6DatatypesPostReportResponse): LemmyapiDatatypesPostReportResponse = @@ -1476,6 +1476,7 @@ internal class Transformer : MapperGenerator { updated = d.updated, ap_id = d.ap_id, local = d.local, + removed = false, ) override fun toUni(d: X6DatatypesPrivateMessageReport): LemmyapiDatatypesPrivateMessageReport = @@ -1609,7 +1610,6 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X6DatatypesTagline): LemmyapiDatatypesTagline = LemmyapiDatatypesTagline( id = d.id, - local_site_id = d.local_site_id, content = d.content, published = d.published, updated = d.updated, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/VoteView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/VoteView.kt index cb4cc74c..1c3e35ea 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/VoteView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/VoteView.kt @@ -6,5 +6,5 @@ import kotlinx.serialization.Serializable internal data class VoteView( val creator: Person, val creator_banned_from_community: Boolean, - val score: Long, + val score: Int, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostReport.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostReport.kt index e2aa1582..bfb5111d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostReport.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostReport.kt @@ -15,5 +15,6 @@ internal data class PostReport( val resolver_id: PersonId? = null, val published: String, val updated: String? = null, + /** Added in Lemmy 1.0.0 */ val violates_instance_rules: Boolean, ) From db6fff0fda0ba2896fbc635908e43e641da00dbc Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Sun, 25 May 2025 16:10:24 +0200 Subject: [PATCH 005/110] Fix dynamic types with Kotlinx.serialization polymorphic --- .../lemmyapi/datatypes/GetModlogResponse.kt | 20 +-- .../lemmyapi/datatypes/InboxCombinedView.kt | 43 ++++++ .../lemmyapi/datatypes/ListInboxResponse.kt | 2 +- .../datatypes/ListPersonContentResponse.kt | 6 +- .../datatypes/ListPersonSavedResponse.kt | 7 +- .../lemmyapi/datatypes/ListReportsResponse.kt | 4 +- .../datatypes/MarkPersonPostMentionAsRead.kt | 1 + .../lemmyapi/datatypes/ModlogCombinedView.kt | 133 ++++++++++++++++++ .../datatypes/PersonContentCombinedView.kt | 28 ++++ .../datatypes/PersonPostMentionView.kt | 1 + .../datatypes/PersonSavedCombinedView.kt | 28 ++++ .../lemmyapi/datatypes/PostActions.kt | 2 +- .../lemmyapi/datatypes/ReportCombinedView.kt | 42 ++++++ .../v1/x0/x0/datatypes/GetModlogResponse.kt | 2 +- .../v1/x0/x0/datatypes/InboxCombinedView.kt | 35 +++++ .../v1/x0/x0/datatypes/LemmyErrorType.kt | 14 -- .../v1/x0/x0/datatypes/ListInboxResponse.kt | 2 +- .../x0/datatypes/ListPersonContentResponse.kt | 2 +- .../x0/datatypes/ListPersonSavedResponse.kt | 2 +- .../v1/x0/x0/datatypes/ListReportsResponse.kt | 2 +- .../v1/x0/x0/datatypes/ModlogCombinedView.kt | 113 +++++++++++++++ .../x0/datatypes/PersonContentCombinedView.kt | 23 +++ .../x0/datatypes/PersonSavedCombinedView.kt | 23 +++ .../v1/x0/x0/datatypes/ReportCombinedView.kt | 35 +++++ .../v1/x0/x0/datatypes/SearchCombinedView.kt | 35 +++++ .../v1/x0/x0/datatypes/SearchResponse.kt | 2 +- 26 files changed, 557 insertions(+), 50 deletions(-) create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/InboxCombinedView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModlogCombinedView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonContentCombinedView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonSavedCombinedView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ReportCombinedView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/InboxCombinedView.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LemmyErrorType.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModlogCombinedView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonContentCombinedView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonSavedCombinedView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ReportCombinedView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SearchCombinedView.kt diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetModlogResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetModlogResponse.kt index ae332d9e..eb5808b3 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetModlogResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetModlogResponse.kt @@ -5,24 +5,12 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize -// TODO: complex changes +// TODO: mapping changes @CommonParcelize @Serializable data class GetModlogResponse( - val removed_posts: List, - val locked_posts: List, - val featured_posts: List, - val removed_comments: List, - val removed_communities: List, - val banned_from_community: List, - val banned: List, - val added_to_community: List, - val transferred_to_community: List, - val added: List, - val admin_purged_persons: List, - val admin_purged_communities: List, - val admin_purged_posts: List, - val admin_purged_comments: List, - val hidden_communities: List, + val modlog: List, + val next_page: PaginationCursor? = null, + val prev_page: PaginationCursor? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/InboxCombinedView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/InboxCombinedView.kt new file mode 100644 index 00000000..d275f64e --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/InboxCombinedView.kt @@ -0,0 +1,43 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.ExperimentalSerializationApi +import kotlinx.serialization.SerialName +import kotlinx.serialization.json.JsonClassDiscriminator +import kotlinx.serialization.Serializable + + +@CommonParcelize +@Serializable +@OptIn(ExperimentalSerializationApi::class) +@JsonClassDiscriminator("type_") +sealed class InboxCombinedView: DatatypeRoot { + @CommonParcelize + @Serializable + @SerialName("CommentReply") + data class CommentReply( + val comment_reply: CommentReplyView + ) : InboxCombinedView() + + @CommonParcelize + @Serializable + @SerialName("CommentMention") + data class CommentMention( + val comment_mention: PersonCommentMentionView + ) : InboxCombinedView() + + @CommonParcelize + @Serializable + @SerialName("PostMention") + data class PostMention( + val post_mention: PersonPostMentionView + ) : InboxCombinedView() + + @CommonParcelize + @Serializable + @SerialName("PrivateMessage") + data class PrivateMessage( + val private_message: PrivateMessageView + ) : InboxCombinedView() +} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListInboxResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListInboxResponse.kt index 853b646a..8efae8e2 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListInboxResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListInboxResponse.kt @@ -8,7 +8,7 @@ import kotlinx.serialization.Serializable @CommonParcelize @Serializable data class ListInboxResponse( - val inbox: List, + val inbox: List, val next_page: it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PaginationCursor? = null, val prev_page: PaginationCursor? = null, ): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonContentResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonContentResponse.kt index 23bd2a33..0a329dba 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonContentResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonContentResponse.kt @@ -4,12 +4,10 @@ import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -// TODO: dynamic stuff - @CommonParcelize @Serializable data class ListPersonContentResponse( - val content: List, - val next_page: it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PaginationCursor? = null, + val content: List, + val next_page: PaginationCursor? = null, val prev_page: PaginationCursor? = null, ): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonSavedResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonSavedResponse.kt index e5bde5cf..c6415728 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonSavedResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonSavedResponse.kt @@ -2,15 +2,12 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PaginationCursor import kotlinx.serialization.Serializable -// TODO: dynamic stuff - @CommonParcelize @Serializable data class ListPersonSavedResponse( - val saved: List, - val next_page: it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PaginationCursor? = null, + val saved: List, + val next_page: PaginationCursor? = null, val prev_page: PaginationCursor? = null, ): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListReportsResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListReportsResponse.kt index 6a046123..61b2ad92 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListReportsResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListReportsResponse.kt @@ -4,12 +4,10 @@ import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -// TODO: dynamic - @CommonParcelize @Serializable data class ListReportsResponse( - val reports: List, + val reports: List, val next_page: PaginationCursor? = null, val prev_page: PaginationCursor? = null, ): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkPersonPostMentionAsRead.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkPersonPostMentionAsRead.kt index c3cfea6d..0c6d718b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkPersonPostMentionAsRead.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkPersonPostMentionAsRead.kt @@ -2,6 +2,7 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable @CommonParcelize @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModlogCombinedView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModlogCombinedView.kt new file mode 100644 index 00000000..1aabbeaa --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModlogCombinedView.kt @@ -0,0 +1,133 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.ExperimentalSerializationApi +import kotlinx.serialization.SerialName +import kotlinx.serialization.json.JsonClassDiscriminator +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +@OptIn(ExperimentalSerializationApi::class) +@JsonClassDiscriminator("type_") +sealed class ModlogCombinedView: DatatypeRoot { + @CommonParcelize + @Serializable + @SerialName("AdminAllowInstance") + data class AdminAllowInstance( + val admin_allow_instance: AdminAllowInstanceView + ) : ModlogCombinedView() + + @CommonParcelize + @Serializable + @SerialName("AdminBlockInstance") + data class AdminBlockInstance( + val admin_block_instance: AdminBlockInstanceView + ) : ModlogCombinedView() + + @CommonParcelize + @Serializable + @SerialName("AdminPurgeComment") + data class AdminPurgeComment( + val admin_purge_comment: AdminPurgeCommentView + ) : ModlogCombinedView() + + @CommonParcelize + @Serializable + @SerialName("AdminPurgeCommunity") + data class AdminPurgeCommunity( + val admin_purge_community: AdminPurgeCommunityView + ) : ModlogCombinedView() + + @CommonParcelize + @Serializable + @SerialName("AdminPurgePerson") + data class AdminPurgePerson( + val admin_purge_person: AdminPurgePersonView + ) : ModlogCombinedView() + + @CommonParcelize + @Serializable + @SerialName("AdminPurgePost") + data class AdminPurgePost( + val admin_purge_post: AdminPurgePostView + ) : ModlogCombinedView() + + @CommonParcelize + @Serializable + @SerialName("ModAdd") + data class ModAdd( + val mod_add: ModAddView + ) : ModlogCombinedView() + + @CommonParcelize + @Serializable + @SerialName("ModAddCommunity") + data class ModAddCommunity( + val mod_add_community: ModAddCommunityView + ) : ModlogCombinedView() + + @CommonParcelize + @Serializable + @SerialName("ModBan") + data class ModBan( + val mod_ban: ModBanView + ) : ModlogCombinedView() + + @CommonParcelize + @Serializable + @SerialName("ModBanFromCommunity") + data class ModBanFromCommunity( + val mod_ban_from_community: ModBanFromCommunityView + ) : ModlogCombinedView() + + @CommonParcelize + @Serializable + @SerialName("ModFeaturePost") + data class ModFeaturePost( + val mod_feature_post: ModFeaturePostView + ) : ModlogCombinedView() + + @CommonParcelize + @Serializable + @SerialName("ModChangeCommunityVisibility") + data class ModChangeCommunityVisibility( + val mod_change_community_visibility: ModChangeCommunityVisibilityView + ) : ModlogCombinedView() + + @CommonParcelize + @Serializable + @SerialName("ModLockPost") + data class ModLockPost( + val mod_lock_post: ModLockPostView + ) : ModlogCombinedView() + + @CommonParcelize + @Serializable + @SerialName("ModRemoveComment") + data class ModRemoveComment( + val mod_remove_comment: ModRemoveCommentView + ) : ModlogCombinedView() + + @CommonParcelize + @Serializable + @SerialName("ModRemoveCommunity") + data class ModRemoveCommunity( + val mod_remove_community: ModRemoveCommunityView + ) : ModlogCombinedView() + + @CommonParcelize + @Serializable + @SerialName("ModRemovePost") + data class ModRemovePost( + val mod_remove_post: ModRemovePostView + ) : ModlogCombinedView() + + @CommonParcelize + @Serializable + @SerialName("ModTransferCommunity") + data class ModTransferCommunity( + val mod_transfer_community: ModTransferCommunityView + ) : ModlogCombinedView() +} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonContentCombinedView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonContentCombinedView.kt new file mode 100644 index 00000000..6413e1b5 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonContentCombinedView.kt @@ -0,0 +1,28 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.ExperimentalSerializationApi +import kotlinx.serialization.SerialName +import kotlinx.serialization.json.JsonClassDiscriminator +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +@OptIn(ExperimentalSerializationApi::class) +@JsonClassDiscriminator("type_") +sealed class PersonContentCombinedView: DatatypeRoot { + @CommonParcelize + @Serializable + @SerialName("Post") + data class Post( + val post: PostView + ) : PersonContentCombinedView() + + @CommonParcelize + @Serializable + @SerialName("Comment") + data class Comment( + val comment: CommentView + ) : PersonContentCombinedView() +} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonPostMentionView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonPostMentionView.kt index 5a7ef9f0..79c28a55 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonPostMentionView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonPostMentionView.kt @@ -2,6 +2,7 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable @CommonParcelize @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonSavedCombinedView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonSavedCombinedView.kt new file mode 100644 index 00000000..d66aab26 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonSavedCombinedView.kt @@ -0,0 +1,28 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.ExperimentalSerializationApi +import kotlinx.serialization.SerialName +import kotlinx.serialization.json.JsonClassDiscriminator +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +@OptIn(ExperimentalSerializationApi::class) +@JsonClassDiscriminator("type_") +sealed class PersonSavedCombinedView: DatatypeRoot { + @CommonParcelize + @Serializable + @SerialName("Post") + data class Post( + val post: PostView + ) : PersonSavedCombinedView() + + @CommonParcelize + @Serializable + @SerialName("Comment") + data class Comment( + val comment: CommentView + ) : PersonSavedCombinedView() +} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostActions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostActions.kt index cd03e36a..36c5ca4a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostActions.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostActions.kt @@ -6,7 +6,7 @@ import kotlinx.serialization.Serializable @CommonParcelize @Serializable -internal data class PostActions( +data class PostActions( val post_id: PostId, val person_id: PersonId, val read: String? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ReportCombinedView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ReportCombinedView.kt new file mode 100644 index 00000000..04417a9e --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ReportCombinedView.kt @@ -0,0 +1,42 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.ExperimentalSerializationApi +import kotlinx.serialization.SerialName +import kotlinx.serialization.json.JsonClassDiscriminator +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +@OptIn(ExperimentalSerializationApi::class) +@JsonClassDiscriminator("type_") +sealed class ReportCombinedView: DatatypeRoot { + @CommonParcelize + @Serializable + @SerialName("Post") + data class Post( + val post: PostReportView + ) : ReportCombinedView() + + @CommonParcelize + @Serializable + @SerialName("Comment") + data class Comment( + val comment: CommentReportView + ) : ReportCombinedView() + + @CommonParcelize + @Serializable + @SerialName("PrivateMessage") + data class PrivateMessage( + val private_message: PrivateMessageReportView + ) : ReportCombinedView() + + @CommonParcelize + @Serializable + @SerialName("Community") + data class Community( + val community: CommunityReportView + ) : ReportCombinedView() +} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetModlogResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetModlogResponse.kt index 47a2b617..d1696e65 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetModlogResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetModlogResponse.kt @@ -4,7 +4,7 @@ import kotlinx.serialization.Serializable @Serializable internal data class GetModlogResponse( - val modlog: List, + val modlog: List, val next_page: PaginationCursor? = null, val prev_page: PaginationCursor? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/InboxCombinedView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/InboxCombinedView.kt new file mode 100644 index 00000000..88af3d09 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/InboxCombinedView.kt @@ -0,0 +1,35 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.ExperimentalSerializationApi +import kotlinx.serialization.SerialName +import kotlinx.serialization.json.JsonClassDiscriminator +import kotlinx.serialization.Serializable + +@Serializable +@OptIn(ExperimentalSerializationApi::class) +@JsonClassDiscriminator("type_") +internal sealed class InboxCombinedView { + @Serializable + @SerialName("CommentReply") + internal data class CommentReply( + val comment_reply: CommentReplyView + ) : InboxCombinedView() + + @Serializable + @SerialName("CommentMention") + internal data class CommentMention( + val comment_mention: PersonCommentMentionView + ) : InboxCombinedView() + + @Serializable + @SerialName("PostMention") + internal data class PostMention( + val post_mention: PersonPostMentionView + ) : InboxCombinedView() + + @Serializable + @SerialName("PrivateMessage") + internal data class PrivateMessage( + val private_message: PrivateMessageView + ) : InboxCombinedView() +} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LemmyErrorType.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LemmyErrorType.kt deleted file mode 100644 index 9a7c6f8a..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LemmyErrorType.kt +++ /dev/null @@ -1,14 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -//TODO: decided with this - -@Serializable -external internal data class `T$130`( - val reason: String? = null, -) - -external internal data class `T$162`( - val error: dynamic /* "InvalidCommunity" | "CannotCreatePostOrCommentInDeletedOrRemovedCommunity" | "CannotReceivePage" | "OnlyLocalAdminCanRemoveCommunity" | "OnlyLocalAdminCanRestoreCommunity" | "PostIsLocked" | `T$0`? | "InvalidVoteValue" | "PageDoesNotSpecifyCreator" | "CouldntGetComments" | "CouldntGetPosts" | "FederationDisabled" | `T$1`? | `T$2`? | "FederationDisabledByStrictAllowList" | "ContradictingFilters" | "UrlWithoutDomain" | "InboxTimeout" | "CantDeleteSite" | "ObjectIsNotPublic" | "ObjectIsNotPrivate" | "PlatformLackingPrivateCommunitySupport" | "Unreachable" */ = null, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListInboxResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListInboxResponse.kt index eeaec176..edac8675 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListInboxResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListInboxResponse.kt @@ -4,7 +4,7 @@ import kotlinx.serialization.Serializable @Serializable internal data class ListInboxResponse( - val inbox: List, + val inbox: List, val next_page: PaginationCursor? = null, val prev_page: PaginationCursor? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonContentResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonContentResponse.kt index ecfdb384..e410995f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonContentResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonContentResponse.kt @@ -4,7 +4,7 @@ import kotlinx.serialization.Serializable @Serializable internal data class ListPersonContentResponse( - val content: List, + val content: List, val next_page: PaginationCursor? = null, val prev_page: PaginationCursor? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonSavedResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonSavedResponse.kt index 39b527d7..139539d2 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonSavedResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonSavedResponse.kt @@ -4,7 +4,7 @@ import kotlinx.serialization.Serializable @Serializable internal data class ListPersonSavedResponse( - val saved: List, + val saved: List, val next_page: PaginationCursor? = null, val prev_page: PaginationCursor? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListReportsResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListReportsResponse.kt index 5479ce52..4e333d6f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListReportsResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListReportsResponse.kt @@ -4,7 +4,7 @@ import kotlinx.serialization.Serializable @Serializable internal data class ListReportsResponse( - val reports: List, + val reports: List, val next_page: PaginationCursor? = null, val prev_page: PaginationCursor? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModlogCombinedView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModlogCombinedView.kt new file mode 100644 index 00000000..bc91b05c --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModlogCombinedView.kt @@ -0,0 +1,113 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.ExperimentalSerializationApi +import kotlinx.serialization.SerialName +import kotlinx.serialization.json.JsonClassDiscriminator +import kotlinx.serialization.Serializable + +@Serializable +@OptIn(ExperimentalSerializationApi::class) +@JsonClassDiscriminator("type_") +internal sealed class ModlogCombinedView { + @Serializable + @SerialName("AdminAllowInstance") + internal data class AdminAllowInstance( + val admin_allow_instance: AdminAllowInstanceView + ) : ModlogCombinedView() + + @Serializable + @SerialName("AdminBlockInstance") + internal data class AdminBlockInstance( + val admin_block_instance: AdminBlockInstanceView + ) : ModlogCombinedView() + + @Serializable + @SerialName("AdminPurgeComment") + internal data class AdminPurgeComment( + val admin_purge_comment: AdminPurgeCommentView + ) : ModlogCombinedView() + + @Serializable + @SerialName("AdminPurgeCommunity") + internal data class AdminPurgeCommunity( + val admin_purge_community: AdminPurgeCommunityView + ) : ModlogCombinedView() + + @Serializable + @SerialName("AdminPurgePerson") + internal data class AdminPurgePerson( + val admin_purge_person: AdminPurgePersonView + ) : ModlogCombinedView() + + @Serializable + @SerialName("AdminPurgePost") + internal data class AdminPurgePost( + val admin_purge_post: AdminPurgePostView + ) : ModlogCombinedView() + + @Serializable + @SerialName("ModAdd") + internal data class ModAdd( + val mod_add: ModAddView + ) : ModlogCombinedView() + + @Serializable + @SerialName("ModAddCommunity") + internal data class ModAddCommunity( + val mod_add_community: ModAddCommunityView + ) : ModlogCombinedView() + + @Serializable + @SerialName("ModBan") + internal data class ModBan( + val mod_ban: ModBanView + ) : ModlogCombinedView() + + @Serializable + @SerialName("ModBanFromCommunity") + internal data class ModBanFromCommunity( + val mod_ban_from_community: ModBanFromCommunityView + ) : ModlogCombinedView() + + @Serializable + @SerialName("ModFeaturePost") + internal data class ModFeaturePost( + val mod_feature_post: ModFeaturePostView + ) : ModlogCombinedView() + + @Serializable + @SerialName("ModChangeCommunityVisibility") + internal data class ModChangeCommunityVisibility( + val mod_change_community_visibility: ModChangeCommunityVisibilityView + ) : ModlogCombinedView() + + @Serializable + @SerialName("ModLockPost") + internal data class ModLockPost( + val mod_lock_post: ModLockPostView + ) : ModlogCombinedView() + + @Serializable + @SerialName("ModRemoveComment") + internal data class ModRemoveComment( + val mod_remove_comment: ModRemoveCommentView + ) : ModlogCombinedView() + + @Serializable + @SerialName("ModRemoveCommunity") + internal data class ModRemoveCommunity( + val mod_remove_community: ModRemoveCommunityView + ) : ModlogCombinedView() + + @Serializable + @SerialName("ModRemovePost") + internal data class ModRemovePost( + val mod_remove_post: ModRemovePostView + ) : ModlogCombinedView() + + @Serializable + @SerialName("ModTransferCommunity") + internal data class ModTransferCommunity( + val mod_transfer_community: ModTransferCommunityView + ) : ModlogCombinedView() +} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonContentCombinedView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonContentCombinedView.kt new file mode 100644 index 00000000..ad605456 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonContentCombinedView.kt @@ -0,0 +1,23 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.ExperimentalSerializationApi +import kotlinx.serialization.SerialName +import kotlinx.serialization.json.JsonClassDiscriminator +import kotlinx.serialization.Serializable + +@Serializable +@OptIn(ExperimentalSerializationApi::class) +@JsonClassDiscriminator("type_") +internal sealed class PersonContentCombinedView { + @Serializable + @SerialName("Post") + internal data class Post( + val post: PostView + ) : PersonContentCombinedView() + + @Serializable + @SerialName("Comment") + internal data class Comment( + val comment: CommentView + ) : PersonContentCombinedView() +} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonSavedCombinedView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonSavedCombinedView.kt new file mode 100644 index 00000000..b1419daf --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonSavedCombinedView.kt @@ -0,0 +1,23 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.ExperimentalSerializationApi +import kotlinx.serialization.SerialName +import kotlinx.serialization.json.JsonClassDiscriminator +import kotlinx.serialization.Serializable + +@Serializable +@OptIn(ExperimentalSerializationApi::class) +@JsonClassDiscriminator("type_") +internal sealed class PersonSavedCombinedView { + @Serializable + @SerialName("Post") + internal data class Post( + val post: PostView + ) : PersonSavedCombinedView() + + @Serializable + @SerialName("Comment") + internal data class Comment( + val comment: CommentView + ) : PersonSavedCombinedView() +} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ReportCombinedView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ReportCombinedView.kt new file mode 100644 index 00000000..fdf52b72 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ReportCombinedView.kt @@ -0,0 +1,35 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.ExperimentalSerializationApi +import kotlinx.serialization.SerialName +import kotlinx.serialization.json.JsonClassDiscriminator +import kotlinx.serialization.Serializable + +@Serializable +@OptIn(ExperimentalSerializationApi::class) +@JsonClassDiscriminator("type_") +internal sealed class ReportCombinedView { + @Serializable + @SerialName("Post") + internal data class Post( + val post: PostReportView + ) : ReportCombinedView() + + @Serializable + @SerialName("Comment") + internal data class Comment( + val comment: CommentReportView + ) : ReportCombinedView() + + @Serializable + @SerialName("PrivateMessage") + internal data class PrivateMessage( + val private_message: PrivateMessageReportView + ) : ReportCombinedView() + + @Serializable + @SerialName("Community") + internal data class Community( + val community: CommunityReportView + ) : ReportCombinedView() +} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SearchCombinedView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SearchCombinedView.kt new file mode 100644 index 00000000..1d9ec56f --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SearchCombinedView.kt @@ -0,0 +1,35 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.ExperimentalSerializationApi +import kotlinx.serialization.SerialName +import kotlinx.serialization.json.JsonClassDiscriminator +import kotlinx.serialization.Serializable + +@Serializable +@OptIn(ExperimentalSerializationApi::class) +@JsonClassDiscriminator("type_") +internal sealed class SearchCombinedView { + @Serializable + @SerialName("Post") + internal data class Post( + val post: PostView + ) : SearchCombinedView() + + @Serializable + @SerialName("Comment") + internal data class Comment( + val comment: CommentView + ) : SearchCombinedView() + + @Serializable + @SerialName("Community") + internal data class Community( + val community: CommunityView + ) : SearchCombinedView() + + @Serializable + @SerialName("Person") + internal data class Person( + val person: PersonView + ) : SearchCombinedView() +} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SearchResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SearchResponse.kt index 95f3e49c..896e2165 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SearchResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SearchResponse.kt @@ -4,7 +4,7 @@ import kotlinx.serialization.Serializable @Serializable internal data class SearchResponse( - val results: List, + val results: List, val next_page: PaginationCursor? = null, val prev_page: PaginationCursor? = null, ) From 0dd88ab4dd92f0cb92e8d3b6b72728881e381334 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Sun, 25 May 2025 20:24:41 +0200 Subject: [PATCH 006/110] Fix GetModLogs transformation --- .../src/main/kotlin/MapperGenerator0x18x5.kt | 2 - .../src/main/kotlin/MapperGenerator0x19x0.kt | 2 - .../src/main/kotlin/MapperGenerator0x19x11.kt | 2 - .../src/main/kotlin/MapperGenerator0x19x3.kt | 2 - .../src/main/kotlin/MapperGenerator0x19x4.kt | 2 - .../src/main/kotlin/MapperGenerator0x19x6.kt | 2 - .../kotlin/it/vercruysse/lemmyapi/LemmyApi.kt | 11 +- .../lemmyapi/datatypes/ModHideCommunity.kt | 19 --- .../datatypes/ModHideCommunityView.kt | 16 --- .../lemmyapi/dto/CustomDataTypes.kt | 5 +- .../lemmyapi/v0/x18/x5/MapperGenerator.kt | 4 +- .../lemmyapi/v0/x18/x5/Transformer.kt | 126 ++++++++++++++---- .../lemmyapi/v0/x19/x0/MapperGenerator.kt | 4 +- .../lemmyapi/v0/x19/x0/Transformer.kt | 126 ++++++++++++++---- .../lemmyapi/v0/x19/x11/MapperGenerator.kt | 4 +- .../lemmyapi/v0/x19/x11/Transformer.kt | 126 ++++++++++++++---- .../lemmyapi/v0/x19/x3/MapperGenerator.kt | 4 +- .../lemmyapi/v0/x19/x3/Transformer.kt | 126 ++++++++++++++---- .../lemmyapi/v0/x19/x4/MapperGenerator.kt | 4 +- .../lemmyapi/v0/x19/x4/Transformer.kt | 126 ++++++++++++++---- .../lemmyapi/v0/x19/x6/MapperGenerator.kt | 4 +- .../lemmyapi/v0/x19/x6/Transformer.kt | 126 ++++++++++++++---- .../v1/x0/x0/datatypes/SiteResponse.kt | 2 +- 23 files changed, 612 insertions(+), 233 deletions(-) delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModHideCommunity.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModHideCommunityView.kt diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x18x5.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x18x5.kt index 04ee9b76..9e28c80d 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x18x5.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x18x5.kt @@ -235,8 +235,6 @@ internal interface MapperGenerator0x18x5 { fun toUni(d: ModBanView): it.vercruysse.lemmyapi.datatypes.ModBanView fun toUni(d: ModFeaturePost): it.vercruysse.lemmyapi.datatypes.ModFeaturePost fun toUni(d: ModFeaturePostView): it.vercruysse.lemmyapi.datatypes.ModFeaturePostView - fun toUni(d: ModHideCommunity): it.vercruysse.lemmyapi.datatypes.ModHideCommunity - fun toUni(d: ModHideCommunityView): it.vercruysse.lemmyapi.datatypes.ModHideCommunityView fun toUni(d: ModLockPost): it.vercruysse.lemmyapi.datatypes.ModLockPost fun toUni(d: ModLockPostView): it.vercruysse.lemmyapi.datatypes.ModLockPostView fun toUni(d: ModlogListParams): it.vercruysse.lemmyapi.datatypes.ModlogListParams diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x0.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x0.kt index c6725f37..60815b5c 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x0.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x0.kt @@ -199,8 +199,6 @@ internal interface MapperGenerator0x19x0 { fun toUni(d: ModBanView): it.vercruysse.lemmyapi.datatypes.ModBanView fun toUni(d: ModFeaturePost): it.vercruysse.lemmyapi.datatypes.ModFeaturePost fun toUni(d: ModFeaturePostView): it.vercruysse.lemmyapi.datatypes.ModFeaturePostView - fun toUni(d: ModHideCommunity): it.vercruysse.lemmyapi.datatypes.ModHideCommunity - fun toUni(d: ModHideCommunityView): it.vercruysse.lemmyapi.datatypes.ModHideCommunityView fun toUni(d: ModLockPost): it.vercruysse.lemmyapi.datatypes.ModLockPost fun toUni(d: ModLockPostView): it.vercruysse.lemmyapi.datatypes.ModLockPostView fun toUni(d: ModlogListParams): it.vercruysse.lemmyapi.datatypes.ModlogListParams diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt index 1e64d699..d71ee2a4 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt @@ -97,8 +97,6 @@ internal interface MapperGenerator0x19x11 { fun toUni(d: ModBanView): it.vercruysse.lemmyapi.datatypes.ModBanView fun toUni(d: ModFeaturePost): it.vercruysse.lemmyapi.datatypes.ModFeaturePost fun toUni(d: ModFeaturePostView): it.vercruysse.lemmyapi.datatypes.ModFeaturePostView - fun toUni(d: ModHideCommunity): it.vercruysse.lemmyapi.datatypes.ModHideCommunity - fun toUni(d: ModHideCommunityView): it.vercruysse.lemmyapi.datatypes.ModHideCommunityView fun toUni(d: ModLockPost): it.vercruysse.lemmyapi.datatypes.ModLockPost fun toUni(d: ModLockPostView): it.vercruysse.lemmyapi.datatypes.ModLockPostView fun toUni(d: ModlogListParams): it.vercruysse.lemmyapi.datatypes.ModlogListParams diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x3.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x3.kt index 0e05b467..6642deba 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x3.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x3.kt @@ -194,8 +194,6 @@ internal interface MapperGenerator0x19x3 { fun toUni(d: ModBanView): it.vercruysse.lemmyapi.datatypes.ModBanView fun toUni(d: ModFeaturePost): it.vercruysse.lemmyapi.datatypes.ModFeaturePost fun toUni(d: ModFeaturePostView): it.vercruysse.lemmyapi.datatypes.ModFeaturePostView - fun toUni(d: ModHideCommunity): it.vercruysse.lemmyapi.datatypes.ModHideCommunity - fun toUni(d: ModHideCommunityView): it.vercruysse.lemmyapi.datatypes.ModHideCommunityView fun toUni(d: ModLockPost): it.vercruysse.lemmyapi.datatypes.ModLockPost fun toUni(d: ModLockPostView): it.vercruysse.lemmyapi.datatypes.ModLockPostView fun toUni(d: ModlogListParams): it.vercruysse.lemmyapi.datatypes.ModlogListParams diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt index 3297e23b..ad2e3112 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt @@ -98,8 +98,6 @@ internal interface MapperGenerator0x19x4 { fun toUni(d: ModBanView): it.vercruysse.lemmyapi.datatypes.ModBanView fun toUni(d: ModFeaturePost): it.vercruysse.lemmyapi.datatypes.ModFeaturePost fun toUni(d: ModFeaturePostView): it.vercruysse.lemmyapi.datatypes.ModFeaturePostView - fun toUni(d: ModHideCommunity): it.vercruysse.lemmyapi.datatypes.ModHideCommunity - fun toUni(d: ModHideCommunityView): it.vercruysse.lemmyapi.datatypes.ModHideCommunityView fun toUni(d: ModLockPost): it.vercruysse.lemmyapi.datatypes.ModLockPost fun toUni(d: ModLockPostView): it.vercruysse.lemmyapi.datatypes.ModLockPostView fun toUni(d: ModlogListParams): it.vercruysse.lemmyapi.datatypes.ModlogListParams diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt index d11352e9..68958ba6 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt @@ -99,8 +99,6 @@ internal interface MapperGenerator0x19x6 { fun toUni(d: ModBanView): it.vercruysse.lemmyapi.datatypes.ModBanView fun toUni(d: ModFeaturePost): it.vercruysse.lemmyapi.datatypes.ModFeaturePost fun toUni(d: ModFeaturePostView): it.vercruysse.lemmyapi.datatypes.ModFeaturePostView - fun toUni(d: ModHideCommunity): it.vercruysse.lemmyapi.datatypes.ModHideCommunity - fun toUni(d: ModHideCommunityView): it.vercruysse.lemmyapi.datatypes.ModHideCommunityView fun toUni(d: ModLockPost): it.vercruysse.lemmyapi.datatypes.ModLockPost fun toUni(d: ModLockPostView): it.vercruysse.lemmyapi.datatypes.ModLockPostView fun toUni(d: ModlogListParams): it.vercruysse.lemmyapi.datatypes.ModlogListParams diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApi.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApi.kt index d5168a9e..a37499c2 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApi.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApi.kt @@ -10,9 +10,6 @@ import it.vercruysse.lemmyapi.exception.NotSupportedException import it.vercruysse.lemmyapi.utils.constructBaseUrl object LemmyApi { - const val MAX_SUPPORTED_VERSION = "0.19" - const val MIN_SUPPORTED_VERSION = "0.18" - const val API_VERSION = "v3" var defaultClient = coreHttpClient /** @@ -130,8 +127,9 @@ object LemmyApi { auth: String? = null, ): LemmyApiBaseController { val baseUrlInstance = constructBaseUrl(instance) // TODO duplicate constructBaseURL see NodeINFO - val client = getKtorClient("$baseUrlInstance/api/$API_VERSION/") val semverV = version.toVersion(false) + val apiVersion = getApiVersion(semverV) + val client = getKtorClient("$baseUrlInstance/api/$apiVersion/") return when (semverV.major) { 0 -> when (semverV.minor) { @@ -152,3 +150,8 @@ object LemmyApi { } } } + +// Good enough approximation for now +private fun getApiVersion(version: io.github.z4kn4fein.semver.Version): String { + return if (version.major == 0) "V3" else "V4" +} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModHideCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModHideCommunity.kt deleted file mode 100644 index 8af60d5c..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModHideCommunity.kt +++ /dev/null @@ -1,19 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -// TODO: removed - -@CommonParcelize -@Serializable -data class ModHideCommunity( - val id: Long, - val community_id: CommunityId, - val mod_person_id: PersonId, - val when_: String, - val reason: String? = null, - val hidden: Boolean, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModHideCommunityView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModHideCommunityView.kt deleted file mode 100644 index 3fcf31a5..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModHideCommunityView.kt +++ /dev/null @@ -1,16 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -// TODO: removed - -@CommonParcelize -@Serializable -data class ModHideCommunityView( - val mod_hide_community: ModHideCommunity, - val admin: Person? = null, - val community: Community, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/dto/CustomDataTypes.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/dto/CustomDataTypes.kt index 45f3bbaa..ed286a4c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/dto/CustomDataTypes.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/dto/CustomDataTypes.kt @@ -82,11 +82,14 @@ enum class ModlogActionType(override val minimumVersion: Version = MINIMUM_API_V ModTransferCommunity, ModAdd, ModBan, - ModHideCommunity, + ModHideCommunity(MINIMUM_API_VERSION, V1_0_0), + ModChangeCommunityVisibility(V1_0_0), AdminPurgePerson, AdminPurgeCommunity, AdminPurgePost, AdminPurgeComment, + AdminBlockInstance(V1_0_0), + AdminAllowInstance(V1_0_0), } @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/MapperGenerator.kt index 71febd56..4668fd4d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/MapperGenerator.kt @@ -124,8 +124,8 @@ internal interface MapperGenerator { fun toUni(d: ModBanView): it.vercruysse.lemmyapi.datatypes.ModBanView fun toUni(d: ModFeaturePost): it.vercruysse.lemmyapi.datatypes.ModFeaturePost fun toUni(d: ModFeaturePostView): it.vercruysse.lemmyapi.datatypes.ModFeaturePostView - fun toUni(d: ModHideCommunity): it.vercruysse.lemmyapi.datatypes.ModHideCommunity - fun toUni(d: ModHideCommunityView): it.vercruysse.lemmyapi.datatypes.ModHideCommunityView + fun toUni(d: ModHideCommunity): it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibility + fun toUni(d: ModHideCommunityView): it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibilityView fun toUni(d: ModLockPost): it.vercruysse.lemmyapi.datatypes.ModLockPost fun toUni(d: ModLockPostView): it.vercruysse.lemmyapi.datatypes.ModLockPostView fun toUni(d: ModlogListParams): it.vercruysse.lemmyapi.datatypes.ModlogListParams diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt index 5ad28777..ded8e0bf 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt @@ -139,8 +139,8 @@ import it.vercruysse.lemmyapi.datatypes.ModBanFromCommunityView as LemmyapiDatat import it.vercruysse.lemmyapi.datatypes.ModBanView as LemmyapiDatatypesModBanView import it.vercruysse.lemmyapi.datatypes.ModFeaturePost as LemmyapiDatatypesModFeaturePost import it.vercruysse.lemmyapi.datatypes.ModFeaturePostView as LemmyapiDatatypesModFeaturePostView -import it.vercruysse.lemmyapi.datatypes.ModHideCommunity as LemmyapiDatatypesModHideCommunity -import it.vercruysse.lemmyapi.datatypes.ModHideCommunityView as LemmyapiDatatypesModHideCommunityView +import it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibility as LemmyapiDatatypesModChangeCommunityVisibility +import it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibilityView as LemmyapiDatatypesModChangeCommunityVisibilityView import it.vercruysse.lemmyapi.datatypes.ModLockPost as LemmyapiDatatypesModLockPost import it.vercruysse.lemmyapi.datatypes.ModLockPostView as LemmyapiDatatypesModLockPostView import it.vercruysse.lemmyapi.datatypes.ModRemoveComment as LemmyapiDatatypesModRemoveComment @@ -919,24 +919,90 @@ internal class Transformer(var auth: String) : MapperGenerator { federated_instances = d.federated_instances?.let { this.toUni(d = it) }, ) - override fun toUni(d: X5DatatypesGetModlogResponse): LemmyapiDatatypesGetModlogResponse = - LemmyapiDatatypesGetModlogResponse( - removed_posts = d.removed_posts.map { this.toUni(d = it) }, - locked_posts = d.locked_posts.map { this.toUni(d = it) }, - featured_posts = d.featured_posts.map { this.toUni(d = it) }, - removed_comments = d.removed_comments.map { this.toUni(d = it) }, - removed_communities = d.removed_communities.map { this.toUni(d = it) }, - banned_from_community = d.banned_from_community.map { this.toUni(d = it) }, - banned = d.banned.map { this.toUni(d = it) }, - added_to_community = d.added_to_community.map { this.toUni(d = it) }, - transferred_to_community = d.transferred_to_community.map { this.toUni(d = it) }, - added = d.added.map { this.toUni(d = it) }, - admin_purged_persons = d.admin_purged_persons.map { this.toUni(d = it) }, - admin_purged_communities = d.admin_purged_communities.map { this.toUni(d = it) }, - admin_purged_posts = d.admin_purged_posts.map { this.toUni(d = it) }, - admin_purged_comments = d.admin_purged_comments.map { this.toUni(d = it) }, - hidden_communities = d.hidden_communities.map { this.toUni(d = it) }, - ) + override fun toUni(d: X5DatatypesGetModlogResponse): LemmyapiDatatypesGetModlogResponse { + val modlogList = mutableListOf() + + // Add ModRemovePost entries + modlogList.addAll(d.removed_posts.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemovePost(mod_remove_post = this.toUni(d = view)) + }) + + // Add ModLockPost entries + modlogList.addAll(d.locked_posts.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModLockPost(mod_lock_post = this.toUni(d = view)) + }) + + // Add ModFeaturePost entries + modlogList.addAll(d.featured_posts.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModFeaturePost(mod_feature_post = this.toUni(d = view)) + }) + + // Add ModRemoveComment entries + modlogList.addAll(d.removed_comments.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemoveComment(mod_remove_comment = this.toUni(d = view)) + }) + + // Add ModRemoveCommunity entries + modlogList.addAll(d.removed_communities.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemoveCommunity(mod_remove_community = this.toUni(d = view)) + }) + + // Add ModBanFromCommunity entries + modlogList.addAll(d.banned_from_community.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModBanFromCommunity(mod_ban_from_community = this.toUni(d = view)) + }) + + // Add ModBan entries + modlogList.addAll(d.banned.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModBan(mod_ban = this.toUni(d = view)) + }) + + // Add ModAddCommunity entries + modlogList.addAll(d.added_to_community.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModAddCommunity(mod_add_community = this.toUni(d = view)) + }) + + // Add ModTransferCommunity entries + modlogList.addAll(d.transferred_to_community.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModTransferCommunity(mod_transfer_community = this.toUni(d = view)) + }) + + // Add ModAdd entries + modlogList.addAll(d.added.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModAdd(mod_add = this.toUni(d = view)) + }) + + // Add AdminPurgePerson entries + modlogList.addAll(d.admin_purged_persons.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgePerson(admin_purge_person = this.toUni(d = view)) + }) + + // Add AdminPurgeCommunity entries + modlogList.addAll(d.admin_purged_communities.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgeCommunity(admin_purge_community = this.toUni(d = view)) + }) + + // Add AdminPurgePost entries + modlogList.addAll(d.admin_purged_posts.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgePost(admin_purge_post = this.toUni(d = view)) + }) + + // Add AdminPurgeComment entries + modlogList.addAll(d.admin_purged_comments.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgeComment(admin_purge_comment = this.toUni(d = view)) + }) + + // Add ModHideCommunity entries (mapped to ModChangeCommunityVisibility) + modlogList.addAll(d.hidden_communities.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModChangeCommunityVisibility(mod_change_community_visibility = this.toUni(d = view)) + }) + + return it.vercruysse.lemmyapi.datatypes.GetModlogResponse( + modlog = modlogList, + next_page = null, + prev_page = null + ) + } override fun toUni(d: X5DatatypesGetPersonDetailsResponse): LemmyapiDatatypesGetPersonDetailsResponse = LemmyapiDatatypesGetPersonDetailsResponse( person_view = this.toUni(d = d.person_view), @@ -1128,20 +1194,24 @@ internal class Transformer(var auth: String) : MapperGenerator { community = this.toUni(d = d.community), ) - override fun toUni(d: X5DatatypesModHideCommunity): LemmyapiDatatypesModHideCommunity = - LemmyapiDatatypesModHideCommunity( + override fun toUni(d: X5DatatypesModHideCommunity): LemmyapiDatatypesModChangeCommunityVisibility = + LemmyapiDatatypesModChangeCommunityVisibility( id = d.id, community_id = d.community_id, mod_person_id = d.mod_person_id, - when_ = addTimezoneOffset(d.when_), + published = addTimezoneOffset(d.when_), reason = d.reason, - hidden = d.hidden, + visibility = if (d.hidden) { + CommunityVisibility.Unlisted + } else { + CommunityVisibility.Public + }, ) - override fun toUni(d: X5DatatypesModHideCommunityView): LemmyapiDatatypesModHideCommunityView = - LemmyapiDatatypesModHideCommunityView( - mod_hide_community = this.toUni(d = d.mod_hide_community), - admin = d.admin?.let { this.toUni(d = it) }, + override fun toUni(d: X5DatatypesModHideCommunityView): LemmyapiDatatypesModChangeCommunityVisibilityView = + LemmyapiDatatypesModChangeCommunityVisibilityView( + mod_change_community_visibility = this.toUni(d = d.mod_hide_community), + moderator = d.admin?.let { this.toUni(d = it) }, community = this.toUni(d = d.community), ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt index 54f69cc7..17a322ce 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt @@ -114,8 +114,8 @@ internal interface MapperGenerator { fun toUni(d: ModBanView): it.vercruysse.lemmyapi.datatypes.ModBanView fun toUni(d: ModFeaturePost): it.vercruysse.lemmyapi.datatypes.ModFeaturePost fun toUni(d: ModFeaturePostView): it.vercruysse.lemmyapi.datatypes.ModFeaturePostView - fun toUni(d: ModHideCommunity): it.vercruysse.lemmyapi.datatypes.ModHideCommunity - fun toUni(d: ModHideCommunityView): it.vercruysse.lemmyapi.datatypes.ModHideCommunityView + fun toUni(d: ModHideCommunity): it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibility + fun toUni(d: ModHideCommunityView): it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibilityView fun toUni(d: ModLockPost): it.vercruysse.lemmyapi.datatypes.ModLockPost fun toUni(d: ModLockPostView): it.vercruysse.lemmyapi.datatypes.ModLockPostView fun toUni(d: ModlogListParams): it.vercruysse.lemmyapi.datatypes.ModlogListParams diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt index 5ff734e0..3dbfd1bd 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt @@ -142,8 +142,8 @@ import it.vercruysse.lemmyapi.datatypes.ModBanFromCommunityView as LemmyapiDatat import it.vercruysse.lemmyapi.datatypes.ModBanView as LemmyapiDatatypesModBanView import it.vercruysse.lemmyapi.datatypes.ModFeaturePost as LemmyapiDatatypesModFeaturePost import it.vercruysse.lemmyapi.datatypes.ModFeaturePostView as LemmyapiDatatypesModFeaturePostView -import it.vercruysse.lemmyapi.datatypes.ModHideCommunity as LemmyapiDatatypesModHideCommunity -import it.vercruysse.lemmyapi.datatypes.ModHideCommunityView as LemmyapiDatatypesModHideCommunityView +import it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibility as LemmyapiDatatypesModChangeCommunityVisibility +import it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibilityView as LemmyapiDatatypesModChangeCommunityVisibilityView import it.vercruysse.lemmyapi.datatypes.ModLockPost as LemmyapiDatatypesModLockPost import it.vercruysse.lemmyapi.datatypes.ModLockPostView as LemmyapiDatatypesModLockPostView import it.vercruysse.lemmyapi.datatypes.ModRemoveComment as LemmyapiDatatypesModRemoveComment @@ -873,24 +873,90 @@ internal class Transformer : MapperGenerator { federated_instances = d.federated_instances?.let { this.toUni(d = it) }, ) - override fun toUni(d: X0DatatypesGetModlogResponse): LemmyapiDatatypesGetModlogResponse = - LemmyapiDatatypesGetModlogResponse( - removed_posts = d.removed_posts.map { this.toUni(d = it) }, - locked_posts = d.locked_posts.map { this.toUni(d = it) }, - featured_posts = d.featured_posts.map { this.toUni(d = it) }, - removed_comments = d.removed_comments.map { this.toUni(d = it) }, - removed_communities = d.removed_communities.map { this.toUni(d = it) }, - banned_from_community = d.banned_from_community.map { this.toUni(d = it) }, - banned = d.banned.map { this.toUni(d = it) }, - added_to_community = d.added_to_community.map { this.toUni(d = it) }, - transferred_to_community = d.transferred_to_community.map { this.toUni(d = it) }, - added = d.added.map { this.toUni(d = it) }, - admin_purged_persons = d.admin_purged_persons.map { this.toUni(d = it) }, - admin_purged_communities = d.admin_purged_communities.map { this.toUni(d = it) }, - admin_purged_posts = d.admin_purged_posts.map { this.toUni(d = it) }, - admin_purged_comments = d.admin_purged_comments.map { this.toUni(d = it) }, - hidden_communities = d.hidden_communities.map { this.toUni(d = it) }, - ) + override fun toUni(d: X0DatatypesGetModlogResponse): LemmyapiDatatypesGetModlogResponse { + val modlogList = mutableListOf() + + // Add ModRemovePost entries + modlogList.addAll(d.removed_posts.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemovePost(mod_remove_post = this.toUni(d = view)) + }) + + // Add ModLockPost entries + modlogList.addAll(d.locked_posts.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModLockPost(mod_lock_post = this.toUni(d = view)) + }) + + // Add ModFeaturePost entries + modlogList.addAll(d.featured_posts.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModFeaturePost(mod_feature_post = this.toUni(d = view)) + }) + + // Add ModRemoveComment entries + modlogList.addAll(d.removed_comments.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemoveComment(mod_remove_comment = this.toUni(d = view)) + }) + + // Add ModRemoveCommunity entries + modlogList.addAll(d.removed_communities.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemoveCommunity(mod_remove_community = this.toUni(d = view)) + }) + + // Add ModBanFromCommunity entries + modlogList.addAll(d.banned_from_community.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModBanFromCommunity(mod_ban_from_community = this.toUni(d = view)) + }) + + // Add ModBan entries + modlogList.addAll(d.banned.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModBan(mod_ban = this.toUni(d = view)) + }) + + // Add ModAddCommunity entries + modlogList.addAll(d.added_to_community.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModAddCommunity(mod_add_community = this.toUni(d = view)) + }) + + // Add ModTransferCommunity entries + modlogList.addAll(d.transferred_to_community.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModTransferCommunity(mod_transfer_community = this.toUni(d = view)) + }) + + // Add ModAdd entries + modlogList.addAll(d.added.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModAdd(mod_add = this.toUni(d = view)) + }) + + // Add AdminPurgePerson entries + modlogList.addAll(d.admin_purged_persons.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgePerson(admin_purge_person = this.toUni(d = view)) + }) + + // Add AdminPurgeCommunity entries + modlogList.addAll(d.admin_purged_communities.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgeCommunity(admin_purge_community = this.toUni(d = view)) + }) + + // Add AdminPurgePost entries + modlogList.addAll(d.admin_purged_posts.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgePost(admin_purge_post = this.toUni(d = view)) + }) + + // Add AdminPurgeComment entries + modlogList.addAll(d.admin_purged_comments.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgeComment(admin_purge_comment = this.toUni(d = view)) + }) + + // Add ModHideCommunity entries (mapped to ModChangeCommunityVisibility) + modlogList.addAll(d.hidden_communities.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModChangeCommunityVisibility(mod_change_community_visibility = this.toUni(d = view)) + }) + + return it.vercruysse.lemmyapi.datatypes.GetModlogResponse( + modlog = modlogList, + next_page = null, + prev_page = null + ) + } override fun toUni(d: X0DatatypesGetPersonDetailsResponse): LemmyapiDatatypesGetPersonDetailsResponse = LemmyapiDatatypesGetPersonDetailsResponse( person_view = this.toUni(d = d.person_view), @@ -1152,20 +1218,24 @@ internal class Transformer : MapperGenerator { community = this.toUni(d = d.community), ) - override fun toUni(d: X0DatatypesModHideCommunity): LemmyapiDatatypesModHideCommunity = - LemmyapiDatatypesModHideCommunity( + override fun toUni(d: X0DatatypesModHideCommunity): LemmyapiDatatypesModChangeCommunityVisibility = + LemmyapiDatatypesModChangeCommunityVisibility( id = d.id, community_id = d.community_id, mod_person_id = d.mod_person_id, - when_ = d.when_, + published = d.when_, reason = d.reason, - hidden = d.hidden, + visibility = if (d.hidden) { + CommunityVisibility.Unlisted + } else { + CommunityVisibility.Public + }, ) - override fun toUni(d: X0DatatypesModHideCommunityView): LemmyapiDatatypesModHideCommunityView = - LemmyapiDatatypesModHideCommunityView( - mod_hide_community = this.toUni(d = d.mod_hide_community), - admin = d.admin?.let { this.toUni(d = it) }, + override fun toUni(d: X0DatatypesModHideCommunityView): LemmyapiDatatypesModChangeCommunityVisibilityView = + LemmyapiDatatypesModChangeCommunityVisibilityView( + mod_change_community_visibility = this.toUni(d = d.mod_hide_community), + moderator = d.admin?.let { this.toUni(d = it) }, community = this.toUni(d = d.community), ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt index 96ec3a41..f5f69aac 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt @@ -90,8 +90,8 @@ internal interface MapperGenerator { fun toUni(d: ModBanView): it.vercruysse.lemmyapi.datatypes.ModBanView fun toUni(d: ModFeaturePost): it.vercruysse.lemmyapi.datatypes.ModFeaturePost fun toUni(d: ModFeaturePostView): it.vercruysse.lemmyapi.datatypes.ModFeaturePostView - fun toUni(d: ModHideCommunity): it.vercruysse.lemmyapi.datatypes.ModHideCommunity - fun toUni(d: ModHideCommunityView): it.vercruysse.lemmyapi.datatypes.ModHideCommunityView + fun toUni(d: ModHideCommunity): it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibility + fun toUni(d: ModHideCommunityView): it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibilityView fun toUni(d: ModLockPost): it.vercruysse.lemmyapi.datatypes.ModLockPost fun toUni(d: ModLockPostView): it.vercruysse.lemmyapi.datatypes.ModLockPostView fun toUni(d: ModlogListParams): it.vercruysse.lemmyapi.datatypes.ModlogListParams diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt index 489473dd..1c99188e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt @@ -148,10 +148,10 @@ import it.vercruysse.lemmyapi.datatypes.ModBan as LemmyapiDatatypesModBan import it.vercruysse.lemmyapi.datatypes.ModBanFromCommunity as LemmyapiDatatypesModBanFromCommunity import it.vercruysse.lemmyapi.datatypes.ModBanFromCommunityView as LemmyapiDatatypesModBanFromCommunityView import it.vercruysse.lemmyapi.datatypes.ModBanView as LemmyapiDatatypesModBanView +import it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibility as LemmyapiDatatypesModChangeCommunityVisibility +import it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibilityView as LemmyapiDatatypesModChangeCommunityVisibilityView import it.vercruysse.lemmyapi.datatypes.ModFeaturePost as LemmyapiDatatypesModFeaturePost import it.vercruysse.lemmyapi.datatypes.ModFeaturePostView as LemmyapiDatatypesModFeaturePostView -import it.vercruysse.lemmyapi.datatypes.ModHideCommunity as LemmyapiDatatypesModHideCommunity -import it.vercruysse.lemmyapi.datatypes.ModHideCommunityView as LemmyapiDatatypesModHideCommunityView import it.vercruysse.lemmyapi.datatypes.ModLockPost as LemmyapiDatatypesModLockPost import it.vercruysse.lemmyapi.datatypes.ModLockPostView as LemmyapiDatatypesModLockPostView import it.vercruysse.lemmyapi.datatypes.ModRemoveComment as LemmyapiDatatypesModRemoveComment @@ -783,24 +783,90 @@ internal class Transformer : MapperGenerator { federated_instances = d.federated_instances?.let { this.toUni(d = it) }, ) - override fun toUni(d: X11DatatypesGetModlogResponse): LemmyapiDatatypesGetModlogResponse = - LemmyapiDatatypesGetModlogResponse( - removed_posts = d.removed_posts.map { this.toUni(d = it) }, - locked_posts = d.locked_posts.map { this.toUni(d = it) }, - featured_posts = d.featured_posts.map { this.toUni(d = it) }, - removed_comments = d.removed_comments.map { this.toUni(d = it) }, - removed_communities = d.removed_communities.map { this.toUni(d = it) }, - banned_from_community = d.banned_from_community.map { this.toUni(d = it) }, - banned = d.banned.map { this.toUni(d = it) }, - added_to_community = d.added_to_community.map { this.toUni(d = it) }, - transferred_to_community = d.transferred_to_community.map { this.toUni(d = it) }, - added = d.added.map { this.toUni(d = it) }, - admin_purged_persons = d.admin_purged_persons.map { this.toUni(d = it) }, - admin_purged_communities = d.admin_purged_communities.map { this.toUni(d = it) }, - admin_purged_posts = d.admin_purged_posts.map { this.toUni(d = it) }, - admin_purged_comments = d.admin_purged_comments.map { this.toUni(d = it) }, - hidden_communities = d.hidden_communities.map { this.toUni(d = it) }, - ) + override fun toUni(d: X11DatatypesGetModlogResponse): LemmyapiDatatypesGetModlogResponse { + val modlogList = mutableListOf() + + // Add ModRemovePost entries + modlogList.addAll(d.removed_posts.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemovePost(mod_remove_post = this.toUni(d = view)) + }) + + // Add ModLockPost entries + modlogList.addAll(d.locked_posts.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModLockPost(mod_lock_post = this.toUni(d = view)) + }) + + // Add ModFeaturePost entries + modlogList.addAll(d.featured_posts.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModFeaturePost(mod_feature_post = this.toUni(d = view)) + }) + + // Add ModRemoveComment entries + modlogList.addAll(d.removed_comments.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemoveComment(mod_remove_comment = this.toUni(d = view)) + }) + + // Add ModRemoveCommunity entries + modlogList.addAll(d.removed_communities.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemoveCommunity(mod_remove_community = this.toUni(d = view)) + }) + + // Add ModBanFromCommunity entries + modlogList.addAll(d.banned_from_community.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModBanFromCommunity(mod_ban_from_community = this.toUni(d = view)) + }) + + // Add ModBan entries + modlogList.addAll(d.banned.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModBan(mod_ban = this.toUni(d = view)) + }) + + // Add ModAddCommunity entries + modlogList.addAll(d.added_to_community.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModAddCommunity(mod_add_community = this.toUni(d = view)) + }) + + // Add ModTransferCommunity entries + modlogList.addAll(d.transferred_to_community.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModTransferCommunity(mod_transfer_community = this.toUni(d = view)) + }) + + // Add ModAdd entries + modlogList.addAll(d.added.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModAdd(mod_add = this.toUni(d = view)) + }) + + // Add AdminPurgePerson entries + modlogList.addAll(d.admin_purged_persons.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgePerson(admin_purge_person = this.toUni(d = view)) + }) + + // Add AdminPurgeCommunity entries + modlogList.addAll(d.admin_purged_communities.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgeCommunity(admin_purge_community = this.toUni(d = view)) + }) + + // Add AdminPurgePost entries + modlogList.addAll(d.admin_purged_posts.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgePost(admin_purge_post = this.toUni(d = view)) + }) + + // Add AdminPurgeComment entries + modlogList.addAll(d.admin_purged_comments.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgeComment(admin_purge_comment = this.toUni(d = view)) + }) + + // Add ModHideCommunity entries (mapped to ModChangeCommunityVisibility) + modlogList.addAll(d.hidden_communities.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModChangeCommunityVisibility(mod_change_community_visibility = this.toUni(d = view)) + }) + + return it.vercruysse.lemmyapi.datatypes.GetModlogResponse( + modlog = modlogList, + next_page = null, + prev_page = null + ) + } override fun toUni(d: X11DatatypesGetPersonDetailsResponse): LemmyapiDatatypesGetPersonDetailsResponse = LemmyapiDatatypesGetPersonDetailsResponse( person_view = this.toUni(d = d.person_view), @@ -1170,20 +1236,24 @@ internal class Transformer : MapperGenerator { community = this.toUni(d = d.community), ) - override fun toUni(d: X11DatatypesModHideCommunity): LemmyapiDatatypesModHideCommunity = - LemmyapiDatatypesModHideCommunity( + override fun toUni(d: X11DatatypesModHideCommunity): LemmyapiDatatypesModChangeCommunityVisibility = + LemmyapiDatatypesModChangeCommunityVisibility( id = d.id, community_id = d.community_id, mod_person_id = d.mod_person_id, - when_ = d.when_, + published = d.when_, reason = d.reason, - hidden = d.hidden, + visibility = if (d.hidden) { + it.vercruysse.lemmyapi.dto.CommunityVisibility.Unlisted + } else { + it.vercruysse.lemmyapi.dto.CommunityVisibility.Public + }, ) - override fun toUni(d: X11DatatypesModHideCommunityView): LemmyapiDatatypesModHideCommunityView = - LemmyapiDatatypesModHideCommunityView( - mod_hide_community = this.toUni(d = d.mod_hide_community), - admin = d.admin?.let { this.toUni(d = it) }, + override fun toUni(d: X11DatatypesModHideCommunityView): LemmyapiDatatypesModChangeCommunityVisibilityView = + LemmyapiDatatypesModChangeCommunityVisibilityView( + mod_change_community_visibility = this.toUni(d = d.mod_hide_community), + moderator = d.admin?.let { this.toUni(d = it) }, community = this.toUni(d = d.community), ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt index 82ec31c3..f46cdc30 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt @@ -110,8 +110,8 @@ internal interface MapperGenerator { fun toUni(d: ModBanView): it.vercruysse.lemmyapi.datatypes.ModBanView fun toUni(d: ModFeaturePost): it.vercruysse.lemmyapi.datatypes.ModFeaturePost fun toUni(d: ModFeaturePostView): it.vercruysse.lemmyapi.datatypes.ModFeaturePostView - fun toUni(d: ModHideCommunity): it.vercruysse.lemmyapi.datatypes.ModHideCommunity - fun toUni(d: ModHideCommunityView): it.vercruysse.lemmyapi.datatypes.ModHideCommunityView + fun toUni(d: ModHideCommunity): it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibility + fun toUni(d: ModHideCommunityView): it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibilityView fun toUni(d: ModLockPost): it.vercruysse.lemmyapi.datatypes.ModLockPost fun toUni(d: ModLockPostView): it.vercruysse.lemmyapi.datatypes.ModLockPostView fun toUni(d: ModlogListParams): it.vercruysse.lemmyapi.datatypes.ModlogListParams diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt index aaaf31ba..6ffa8f2a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt @@ -144,10 +144,10 @@ import it.vercruysse.lemmyapi.datatypes.ModBan as LemmyapiDatatypesModBan import it.vercruysse.lemmyapi.datatypes.ModBanFromCommunity as LemmyapiDatatypesModBanFromCommunity import it.vercruysse.lemmyapi.datatypes.ModBanFromCommunityView as LemmyapiDatatypesModBanFromCommunityView import it.vercruysse.lemmyapi.datatypes.ModBanView as LemmyapiDatatypesModBanView +import it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibility as LemmyapiDatatypesModChangeCommunityVisibility +import it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibilityView as LemmyapiDatatypesModChangeCommunityVisibilityView import it.vercruysse.lemmyapi.datatypes.ModFeaturePost as LemmyapiDatatypesModFeaturePost import it.vercruysse.lemmyapi.datatypes.ModFeaturePostView as LemmyapiDatatypesModFeaturePostView -import it.vercruysse.lemmyapi.datatypes.ModHideCommunity as LemmyapiDatatypesModHideCommunity -import it.vercruysse.lemmyapi.datatypes.ModHideCommunityView as LemmyapiDatatypesModHideCommunityView import it.vercruysse.lemmyapi.datatypes.ModLockPost as LemmyapiDatatypesModLockPost import it.vercruysse.lemmyapi.datatypes.ModLockPostView as LemmyapiDatatypesModLockPostView import it.vercruysse.lemmyapi.datatypes.ModRemoveComment as LemmyapiDatatypesModRemoveComment @@ -882,24 +882,90 @@ internal class Transformer : MapperGenerator { federated_instances = d.federated_instances?.let { this.toUni(d = it) }, ) - override fun toUni(d: X3DatatypesGetModlogResponse): LemmyapiDatatypesGetModlogResponse = - LemmyapiDatatypesGetModlogResponse( - removed_posts = d.removed_posts.map { this.toUni(d = it) }, - locked_posts = d.locked_posts.map { this.toUni(d = it) }, - featured_posts = d.featured_posts.map { this.toUni(d = it) }, - removed_comments = d.removed_comments.map { this.toUni(d = it) }, - removed_communities = d.removed_communities.map { this.toUni(d = it) }, - banned_from_community = d.banned_from_community.map { this.toUni(d = it) }, - banned = d.banned.map { this.toUni(d = it) }, - added_to_community = d.added_to_community.map { this.toUni(d = it) }, - transferred_to_community = d.transferred_to_community.map { this.toUni(d = it) }, - added = d.added.map { this.toUni(d = it) }, - admin_purged_persons = d.admin_purged_persons.map { this.toUni(d = it) }, - admin_purged_communities = d.admin_purged_communities.map { this.toUni(d = it) }, - admin_purged_posts = d.admin_purged_posts.map { this.toUni(d = it) }, - admin_purged_comments = d.admin_purged_comments.map { this.toUni(d = it) }, - hidden_communities = d.hidden_communities.map { this.toUni(d = it) }, - ) + override fun toUni(d: X3DatatypesGetModlogResponse): LemmyapiDatatypesGetModlogResponse { + val modlogList = mutableListOf() + + // Add ModRemovePost entries + modlogList.addAll(d.removed_posts.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemovePost(mod_remove_post = this.toUni(d = view)) + }) + + // Add ModLockPost entries + modlogList.addAll(d.locked_posts.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModLockPost(mod_lock_post = this.toUni(d = view)) + }) + + // Add ModFeaturePost entries + modlogList.addAll(d.featured_posts.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModFeaturePost(mod_feature_post = this.toUni(d = view)) + }) + + // Add ModRemoveComment entries + modlogList.addAll(d.removed_comments.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemoveComment(mod_remove_comment = this.toUni(d = view)) + }) + + // Add ModRemoveCommunity entries + modlogList.addAll(d.removed_communities.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemoveCommunity(mod_remove_community = this.toUni(d = view)) + }) + + // Add ModBanFromCommunity entries + modlogList.addAll(d.banned_from_community.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModBanFromCommunity(mod_ban_from_community = this.toUni(d = view)) + }) + + // Add ModBan entries + modlogList.addAll(d.banned.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModBan(mod_ban = this.toUni(d = view)) + }) + + // Add ModAddCommunity entries + modlogList.addAll(d.added_to_community.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModAddCommunity(mod_add_community = this.toUni(d = view)) + }) + + // Add ModTransferCommunity entries + modlogList.addAll(d.transferred_to_community.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModTransferCommunity(mod_transfer_community = this.toUni(d = view)) + }) + + // Add ModAdd entries + modlogList.addAll(d.added.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModAdd(mod_add = this.toUni(d = view)) + }) + + // Add AdminPurgePerson entries + modlogList.addAll(d.admin_purged_persons.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgePerson(admin_purge_person = this.toUni(d = view)) + }) + + // Add AdminPurgeCommunity entries + modlogList.addAll(d.admin_purged_communities.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgeCommunity(admin_purge_community = this.toUni(d = view)) + }) + + // Add AdminPurgePost entries + modlogList.addAll(d.admin_purged_posts.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgePost(admin_purge_post = this.toUni(d = view)) + }) + + // Add AdminPurgeComment entries + modlogList.addAll(d.admin_purged_comments.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgeComment(admin_purge_comment = this.toUni(d = view)) + }) + + // Add ModHideCommunity entries (mapped to ModChangeCommunityVisibility) + modlogList.addAll(d.hidden_communities.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModChangeCommunityVisibility(mod_change_community_visibility = this.toUni(d = view)) + }) + + return it.vercruysse.lemmyapi.datatypes.GetModlogResponse( + modlog = modlogList, + next_page = null, + prev_page = null + ) + } override fun toUni(d: X3DatatypesGetPersonDetailsResponse): LemmyapiDatatypesGetPersonDetailsResponse = LemmyapiDatatypesGetPersonDetailsResponse( person_view = this.toUni(d = d.person_view), @@ -1171,20 +1237,24 @@ internal class Transformer : MapperGenerator { community = this.toUni(d = d.community), ) - override fun toUni(d: X3DatatypesModHideCommunity): LemmyapiDatatypesModHideCommunity = - LemmyapiDatatypesModHideCommunity( + override fun toUni(d: X3DatatypesModHideCommunity): LemmyapiDatatypesModChangeCommunityVisibility = + LemmyapiDatatypesModChangeCommunityVisibility( id = d.id, community_id = d.community_id, mod_person_id = d.mod_person_id, - when_ = d.when_, + published = d.when_, reason = d.reason, - hidden = d.hidden, + visibility = if (d.hidden) { + CommunityVisibility.Unlisted + } else { + CommunityVisibility.Public + }, ) - override fun toUni(d: X3DatatypesModHideCommunityView): LemmyapiDatatypesModHideCommunityView = - LemmyapiDatatypesModHideCommunityView( - mod_hide_community = this.toUni(d = d.mod_hide_community), - admin = d.admin?.let { this.toUni(d = it) }, + override fun toUni(d: X3DatatypesModHideCommunityView): LemmyapiDatatypesModChangeCommunityVisibilityView = + LemmyapiDatatypesModChangeCommunityVisibilityView( + mod_change_community_visibility = this.toUni(d = d.mod_hide_community), + moderator = d.admin?.let { this.toUni(d = it) }, community = this.toUni(d = d.community), ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt index 353d976a..4dc372aa 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt @@ -90,8 +90,8 @@ internal interface MapperGenerator { fun toUni(d: ModBanView): it.vercruysse.lemmyapi.datatypes.ModBanView fun toUni(d: ModFeaturePost): it.vercruysse.lemmyapi.datatypes.ModFeaturePost fun toUni(d: ModFeaturePostView): it.vercruysse.lemmyapi.datatypes.ModFeaturePostView - fun toUni(d: ModHideCommunity): it.vercruysse.lemmyapi.datatypes.ModHideCommunity - fun toUni(d: ModHideCommunityView): it.vercruysse.lemmyapi.datatypes.ModHideCommunityView + fun toUni(d: ModHideCommunity): it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibility + fun toUni(d: ModHideCommunityView): it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibilityView fun toUni(d: ModLockPost): it.vercruysse.lemmyapi.datatypes.ModLockPost fun toUni(d: ModLockPostView): it.vercruysse.lemmyapi.datatypes.ModLockPostView fun toUni(d: ModlogListParams): it.vercruysse.lemmyapi.datatypes.ModlogListParams diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt index d1fe44a1..68d7c7b9 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt @@ -146,10 +146,10 @@ import it.vercruysse.lemmyapi.datatypes.ModBan as LemmyapiDatatypesModBan import it.vercruysse.lemmyapi.datatypes.ModBanFromCommunity as LemmyapiDatatypesModBanFromCommunity import it.vercruysse.lemmyapi.datatypes.ModBanFromCommunityView as LemmyapiDatatypesModBanFromCommunityView import it.vercruysse.lemmyapi.datatypes.ModBanView as LemmyapiDatatypesModBanView +import it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibility as LemmyapiDatatypesModChangeCommunityVisibility +import it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibilityView as LemmyapiDatatypesModChangeCommunityVisibilityView import it.vercruysse.lemmyapi.datatypes.ModFeaturePost as LemmyapiDatatypesModFeaturePost import it.vercruysse.lemmyapi.datatypes.ModFeaturePostView as LemmyapiDatatypesModFeaturePostView -import it.vercruysse.lemmyapi.datatypes.ModHideCommunity as LemmyapiDatatypesModHideCommunity -import it.vercruysse.lemmyapi.datatypes.ModHideCommunityView as LemmyapiDatatypesModHideCommunityView import it.vercruysse.lemmyapi.datatypes.ModLockPost as LemmyapiDatatypesModLockPost import it.vercruysse.lemmyapi.datatypes.ModLockPostView as LemmyapiDatatypesModLockPostView import it.vercruysse.lemmyapi.datatypes.ModRemoveComment as LemmyapiDatatypesModRemoveComment @@ -781,24 +781,90 @@ internal class Transformer : MapperGenerator { federated_instances = d.federated_instances?.let { this.toUni(d = it) }, ) - override fun toUni(d: X4DatatypesGetModlogResponse): LemmyapiDatatypesGetModlogResponse = - LemmyapiDatatypesGetModlogResponse( - removed_posts = d.removed_posts.map { this.toUni(d = it) }, - locked_posts = d.locked_posts.map { this.toUni(d = it) }, - featured_posts = d.featured_posts.map { this.toUni(d = it) }, - removed_comments = d.removed_comments.map { this.toUni(d = it) }, - removed_communities = d.removed_communities.map { this.toUni(d = it) }, - banned_from_community = d.banned_from_community.map { this.toUni(d = it) }, - banned = d.banned.map { this.toUni(d = it) }, - added_to_community = d.added_to_community.map { this.toUni(d = it) }, - transferred_to_community = d.transferred_to_community.map { this.toUni(d = it) }, - added = d.added.map { this.toUni(d = it) }, - admin_purged_persons = d.admin_purged_persons.map { this.toUni(d = it) }, - admin_purged_communities = d.admin_purged_communities.map { this.toUni(d = it) }, - admin_purged_posts = d.admin_purged_posts.map { this.toUni(d = it) }, - admin_purged_comments = d.admin_purged_comments.map { this.toUni(d = it) }, - hidden_communities = d.hidden_communities.map { this.toUni(d = it) }, - ) + override fun toUni(d: X4DatatypesGetModlogResponse): LemmyapiDatatypesGetModlogResponse { + val modlogList = mutableListOf() + + // Add ModRemovePost entries + modlogList.addAll(d.removed_posts.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemovePost(mod_remove_post = this.toUni(d = view)) + }) + + // Add ModLockPost entries + modlogList.addAll(d.locked_posts.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModLockPost(mod_lock_post = this.toUni(d = view)) + }) + + // Add ModFeaturePost entries + modlogList.addAll(d.featured_posts.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModFeaturePost(mod_feature_post = this.toUni(d = view)) + }) + + // Add ModRemoveComment entries + modlogList.addAll(d.removed_comments.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemoveComment(mod_remove_comment = this.toUni(d = view)) + }) + + // Add ModRemoveCommunity entries + modlogList.addAll(d.removed_communities.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemoveCommunity(mod_remove_community = this.toUni(d = view)) + }) + + // Add ModBanFromCommunity entries + modlogList.addAll(d.banned_from_community.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModBanFromCommunity(mod_ban_from_community = this.toUni(d = view)) + }) + + // Add ModBan entries + modlogList.addAll(d.banned.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModBan(mod_ban = this.toUni(d = view)) + }) + + // Add ModAddCommunity entries + modlogList.addAll(d.added_to_community.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModAddCommunity(mod_add_community = this.toUni(d = view)) + }) + + // Add ModTransferCommunity entries + modlogList.addAll(d.transferred_to_community.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModTransferCommunity(mod_transfer_community = this.toUni(d = view)) + }) + + // Add ModAdd entries + modlogList.addAll(d.added.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModAdd(mod_add = this.toUni(d = view)) + }) + + // Add AdminPurgePerson entries + modlogList.addAll(d.admin_purged_persons.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgePerson(admin_purge_person = this.toUni(d = view)) + }) + + // Add AdminPurgeCommunity entries + modlogList.addAll(d.admin_purged_communities.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgeCommunity(admin_purge_community = this.toUni(d = view)) + }) + + // Add AdminPurgePost entries + modlogList.addAll(d.admin_purged_posts.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgePost(admin_purge_post = this.toUni(d = view)) + }) + + // Add AdminPurgeComment entries + modlogList.addAll(d.admin_purged_comments.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgeComment(admin_purge_comment = this.toUni(d = view)) + }) + + // Add ModHideCommunity entries (mapped to ModChangeCommunityVisibility) + modlogList.addAll(d.hidden_communities.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModChangeCommunityVisibility(mod_change_community_visibility = this.toUni(d = view)) + }) + + return it.vercruysse.lemmyapi.datatypes.GetModlogResponse( + modlog = modlogList, + next_page = null, + prev_page = null + ) + } override fun toUni(d: X4DatatypesGetPersonDetailsResponse): LemmyapiDatatypesGetPersonDetailsResponse = LemmyapiDatatypesGetPersonDetailsResponse( person_view = this.toUni(d = d.person_view), @@ -1160,20 +1226,24 @@ internal class Transformer : MapperGenerator { community = this.toUni(d = d.community), ) - override fun toUni(d: X4DatatypesModHideCommunity): LemmyapiDatatypesModHideCommunity = - LemmyapiDatatypesModHideCommunity( + override fun toUni(d: X4DatatypesModHideCommunity): LemmyapiDatatypesModChangeCommunityVisibility = + LemmyapiDatatypesModChangeCommunityVisibility( id = d.id, community_id = d.community_id, mod_person_id = d.mod_person_id, - when_ = d.when_, + published = d.when_, reason = d.reason, - hidden = d.hidden, + visibility = if (d.hidden) { + it.vercruysse.lemmyapi.dto.CommunityVisibility.Unlisted + } else { + it.vercruysse.lemmyapi.dto.CommunityVisibility.Public + }, ) - override fun toUni(d: X4DatatypesModHideCommunityView): LemmyapiDatatypesModHideCommunityView = - LemmyapiDatatypesModHideCommunityView( - mod_hide_community = this.toUni(d = d.mod_hide_community), - admin = d.admin?.let { this.toUni(d = it) }, + override fun toUni(d: X4DatatypesModHideCommunityView): LemmyapiDatatypesModChangeCommunityVisibilityView = + LemmyapiDatatypesModChangeCommunityVisibilityView( + mod_change_community_visibility = this.toUni(d = d.mod_hide_community), + moderator = d.admin?.let { this.toUni(d = it) }, community = this.toUni(d = d.community), ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt index 1e1a4519..01dbca82 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt @@ -92,8 +92,8 @@ internal interface MapperGenerator { fun toUni(d: ModBanView): it.vercruysse.lemmyapi.datatypes.ModBanView fun toUni(d: ModFeaturePost): it.vercruysse.lemmyapi.datatypes.ModFeaturePost fun toUni(d: ModFeaturePostView): it.vercruysse.lemmyapi.datatypes.ModFeaturePostView - fun toUni(d: ModHideCommunity): it.vercruysse.lemmyapi.datatypes.ModHideCommunity - fun toUni(d: ModHideCommunityView): it.vercruysse.lemmyapi.datatypes.ModHideCommunityView + fun toUni(d: ModHideCommunity): it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibility + fun toUni(d: ModHideCommunityView): it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibilityView fun toUni(d: ModLockPost): it.vercruysse.lemmyapi.datatypes.ModLockPost fun toUni(d: ModLockPostView): it.vercruysse.lemmyapi.datatypes.ModLockPostView fun toUni(d: ModlogListParams): it.vercruysse.lemmyapi.datatypes.ModlogListParams diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt index c2a687ad..54f205e4 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt @@ -148,10 +148,10 @@ import it.vercruysse.lemmyapi.datatypes.ModBan as LemmyapiDatatypesModBan import it.vercruysse.lemmyapi.datatypes.ModBanFromCommunity as LemmyapiDatatypesModBanFromCommunity import it.vercruysse.lemmyapi.datatypes.ModBanFromCommunityView as LemmyapiDatatypesModBanFromCommunityView import it.vercruysse.lemmyapi.datatypes.ModBanView as LemmyapiDatatypesModBanView +import it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibility as LemmyapiDatatypesModChangeCommunityVisibility +import it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibilityView as LemmyapiDatatypesModChangeCommunityVisibilityView import it.vercruysse.lemmyapi.datatypes.ModFeaturePost as LemmyapiDatatypesModFeaturePost import it.vercruysse.lemmyapi.datatypes.ModFeaturePostView as LemmyapiDatatypesModFeaturePostView -import it.vercruysse.lemmyapi.datatypes.ModHideCommunity as LemmyapiDatatypesModHideCommunity -import it.vercruysse.lemmyapi.datatypes.ModHideCommunityView as LemmyapiDatatypesModHideCommunityView import it.vercruysse.lemmyapi.datatypes.ModLockPost as LemmyapiDatatypesModLockPost import it.vercruysse.lemmyapi.datatypes.ModLockPostView as LemmyapiDatatypesModLockPostView import it.vercruysse.lemmyapi.datatypes.ModRemoveComment as LemmyapiDatatypesModRemoveComment @@ -783,24 +783,90 @@ internal class Transformer : MapperGenerator { federated_instances = d.federated_instances?.let { this.toUni(d = it) }, ) - override fun toUni(d: X6DatatypesGetModlogResponse): LemmyapiDatatypesGetModlogResponse = - LemmyapiDatatypesGetModlogResponse( - removed_posts = d.removed_posts.map { this.toUni(d = it) }, - locked_posts = d.locked_posts.map { this.toUni(d = it) }, - featured_posts = d.featured_posts.map { this.toUni(d = it) }, - removed_comments = d.removed_comments.map { this.toUni(d = it) }, - removed_communities = d.removed_communities.map { this.toUni(d = it) }, - banned_from_community = d.banned_from_community.map { this.toUni(d = it) }, - banned = d.banned.map { this.toUni(d = it) }, - added_to_community = d.added_to_community.map { this.toUni(d = it) }, - transferred_to_community = d.transferred_to_community.map { this.toUni(d = it) }, - added = d.added.map { this.toUni(d = it) }, - admin_purged_persons = d.admin_purged_persons.map { this.toUni(d = it) }, - admin_purged_communities = d.admin_purged_communities.map { this.toUni(d = it) }, - admin_purged_posts = d.admin_purged_posts.map { this.toUni(d = it) }, - admin_purged_comments = d.admin_purged_comments.map { this.toUni(d = it) }, - hidden_communities = d.hidden_communities.map { this.toUni(d = it) }, - ) + override fun toUni(d: X6DatatypesGetModlogResponse): LemmyapiDatatypesGetModlogResponse { + val modlogList = mutableListOf() + + // Add ModRemovePost entries + modlogList.addAll(d.removed_posts.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemovePost(mod_remove_post = this.toUni(d = view)) + }) + + // Add ModLockPost entries + modlogList.addAll(d.locked_posts.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModLockPost(mod_lock_post = this.toUni(d = view)) + }) + + // Add ModFeaturePost entries + modlogList.addAll(d.featured_posts.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModFeaturePost(mod_feature_post = this.toUni(d = view)) + }) + + // Add ModRemoveComment entries + modlogList.addAll(d.removed_comments.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemoveComment(mod_remove_comment = this.toUni(d = view)) + }) + + // Add ModRemoveCommunity entries + modlogList.addAll(d.removed_communities.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemoveCommunity(mod_remove_community = this.toUni(d = view)) + }) + + // Add ModBanFromCommunity entries + modlogList.addAll(d.banned_from_community.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModBanFromCommunity(mod_ban_from_community = this.toUni(d = view)) + }) + + // Add ModBan entries + modlogList.addAll(d.banned.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModBan(mod_ban = this.toUni(d = view)) + }) + + // Add ModAddCommunity entries + modlogList.addAll(d.added_to_community.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModAddCommunity(mod_add_community = this.toUni(d = view)) + }) + + // Add ModTransferCommunity entries + modlogList.addAll(d.transferred_to_community.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModTransferCommunity(mod_transfer_community = this.toUni(d = view)) + }) + + // Add ModAdd entries + modlogList.addAll(d.added.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModAdd(mod_add = this.toUni(d = view)) + }) + + // Add AdminPurgePerson entries + modlogList.addAll(d.admin_purged_persons.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgePerson(admin_purge_person = this.toUni(d = view)) + }) + + // Add AdminPurgeCommunity entries + modlogList.addAll(d.admin_purged_communities.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgeCommunity(admin_purge_community = this.toUni(d = view)) + }) + + // Add AdminPurgePost entries + modlogList.addAll(d.admin_purged_posts.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgePost(admin_purge_post = this.toUni(d = view)) + }) + + // Add AdminPurgeComment entries + modlogList.addAll(d.admin_purged_comments.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgeComment(admin_purge_comment = this.toUni(d = view)) + }) + + // Add ModHideCommunity entries (mapped to ModChangeCommunityVisibility) + modlogList.addAll(d.hidden_communities.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModChangeCommunityVisibility(mod_change_community_visibility = this.toUni(d = view)) + }) + + return it.vercruysse.lemmyapi.datatypes.GetModlogResponse( + modlog = modlogList, + next_page = null, + prev_page = null + ) + } override fun toUni(d: X6DatatypesGetPersonDetailsResponse): LemmyapiDatatypesGetPersonDetailsResponse = LemmyapiDatatypesGetPersonDetailsResponse( person_view = this.toUni(d = d.person_view), @@ -1168,20 +1234,24 @@ internal class Transformer : MapperGenerator { community = this.toUni(d = d.community), ) - override fun toUni(d: X6DatatypesModHideCommunity): LemmyapiDatatypesModHideCommunity = - LemmyapiDatatypesModHideCommunity( + override fun toUni(d: X6DatatypesModHideCommunity): LemmyapiDatatypesModChangeCommunityVisibility = + LemmyapiDatatypesModChangeCommunityVisibility( id = d.id, community_id = d.community_id, mod_person_id = d.mod_person_id, - when_ = d.when_, + published = d.when_, reason = d.reason, - hidden = d.hidden, + visibility = if (d.hidden) { + it.vercruysse.lemmyapi.dto.CommunityVisibility.Unlisted + } else { + it.vercruysse.lemmyapi.dto.CommunityVisibility.Public + }, ) - override fun toUni(d: X6DatatypesModHideCommunityView): LemmyapiDatatypesModHideCommunityView = - LemmyapiDatatypesModHideCommunityView( - mod_hide_community = this.toUni(d = d.mod_hide_community), - admin = d.admin?.let { this.toUni(d = it) }, + override fun toUni(d: X6DatatypesModHideCommunityView): LemmyapiDatatypesModChangeCommunityVisibilityView = + LemmyapiDatatypesModChangeCommunityVisibilityView( + mod_change_community_visibility = this.toUni(d = d.mod_hide_community), + moderator = d.admin?.let { this.toUni(d = it) }, community = this.toUni(d = d.community), ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SiteResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SiteResponse.kt index e5358c80..98451c79 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SiteResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SiteResponse.kt @@ -7,5 +7,5 @@ import kotlinx.serialization.Serializable @Serializable internal data class SiteResponse( val site_view: SiteView, - val taglines: List = null, +// val taglines: List = null, ) From b492d5ef6267b0b887b08902378f636f2252003d Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Mon, 30 Jun 2025 20:44:47 +0200 Subject: [PATCH 007/110] Wip comment changes v2 --- .../kotlin/it/vercruysse/lemmyapi/LemmyApi.kt | 8 +++--- .../vercruysse/lemmyapi/datatypes/Comment.kt | 10 +++++++ .../lemmyapi/datatypes/CommentActions.kt | 2 +- .../lemmyapi/datatypes/CommentView.kt | 20 +++++++------ .../lemmyapi/datatypes/CommunityActions.kt | 3 -- .../lemmyapi/datatypes/CommunityReport.kt | 2 +- .../lemmyapi/datatypes/InstanceActions.kt | 2 -- .../lemmyapi/datatypes/ListInboxResponse.kt | 3 +- .../lemmyapi/datatypes/PersonActions.kt | 2 -- .../lemmyapi/datatypes/PostActions.kt | 2 -- .../lemmyapi/v0/x19/x11/MapperGenerator.kt | 3 +- .../lemmyapi/v0/x19/x11/Transformer.kt | 28 +++++++++---------- .../v1/x0/x0/datatypes/CommunityActions.kt | 3 -- .../v1/x0/x0/datatypes/InstanceActions.kt | 2 -- .../v1/x0/x0/datatypes/PersonActions.kt | 2 -- .../v1/x0/x0/datatypes/PostActions.kt | 2 -- .../kotlin/GetCorrectControllerTest.kt | 3 ++ 17 files changed, 45 insertions(+), 52 deletions(-) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApi.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApi.kt index a37499c2..2b559434 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApi.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApi.kt @@ -149,9 +149,9 @@ object LemmyApi { else -> throw NotSupportedException("Unsupported Lemmy major version: $version") } } -} -// Good enough approximation for now -private fun getApiVersion(version: io.github.z4kn4fein.semver.Version): String { - return if (version.major == 0) "V3" else "V4" + // Good enough approximation for now + private fun getApiVersion(version: io.github.z4kn4fein.semver.Version): String { + return if (version.major == 0) "V3" else "V4" + } } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Comment.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Comment.kt index 1acd37ea..a2fc6df5 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Comment.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Comment.kt @@ -24,4 +24,14 @@ data class Comment( val path: String, val distinguished: Boolean, val language_id: LanguageId, + val score: Long, + val upvotes: Long, + val downvotes: Long, + val child_count: Long, + /** Added in Lemmy 1.0.0 */ + val report_count: Long, + /** Added in Lemmy 1.0.0 */ + val unresolved_report_count: Long, + /** Added in Lemmy 1.0.0 */ + val federation_pending: Boolean, ) : DatatypeRoot, Identity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentActions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentActions.kt index 013f120c..8df692f2 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentActions.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentActions.kt @@ -9,7 +9,7 @@ import kotlinx.serialization.Serializable data class CommentActions( val person_id: PersonId, val comment_id: CommentId, - val like_score: Long? = null, + val like_score: Int = 0, val liked: String? = null, val saved: String? = null, ): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentView.kt index f82ec4b1..c93a86a6 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentView.kt @@ -2,7 +2,6 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.DatatypeRoot import it.vercruysse.lemmyapi.Identity -import it.vercruysse.lemmyapi.dto.SubscribedType import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize @@ -16,15 +15,18 @@ data class CommentView( val creator: Person, val post: Post, val community: Community, - val counts: CommentAggregates, - val creator_banned_from_community: Boolean, - val banned_from_community: Boolean, - val creator_is_moderator: Boolean, + val community_actions: CommunityActions? = null, + val comment_actions: CommentActions? = null, + val person_actions: PersonActions? = null, + val instance_actions: InstanceActions? = null, + val creator_home_instance_actions: InstanceActions? = null, + val creator_local_instance_actions: InstanceActions? = null, + val creator_community_actions: CommunityActions? = null, val creator_is_admin: Boolean, - val subscribed: SubscribedType /* "Subscribed" | "NotSubscribed" | "Pending" */, - val saved: Boolean, - val creator_blocked: Boolean, - val my_vote: Int = 0, + /** Added in Lemmy 1.0.0 */ + val post_tags: TagsView, + val can_mod: Boolean, + val creator_banned: Boolean, ) : DatatypeRoot, Identity { override val id: Long get() = comment.id diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityActions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityActions.kt index 1bf97c68..04145d98 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityActions.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityActions.kt @@ -7,11 +7,8 @@ import kotlinx.serialization.Serializable @CommonParcelize @Serializable data class CommunityActions( - val community_id: CommunityId, - val person_id: PersonId, val followed: String? = null, val follow_state: String? /* "Accepted" | "Pending" | "ApprovalRequired" */ = null, - val follow_approver_id: PersonId? = null, val blocked: String? = null, val became_moderator: String? = null, val received_ban: String? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityReport.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityReport.kt index 48e462c0..760b99c9 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityReport.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityReport.kt @@ -9,7 +9,7 @@ import kotlinx.serialization.Serializable @Serializable data class CommunityReport( override val id: CommunityReportId, - val creator_id: it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PersonId, + val creator_id: PersonId, val community_id: CommunityId, val original_community_name: String, val original_community_title: String, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/InstanceActions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/InstanceActions.kt index 43cae8a7..fb58c7dc 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/InstanceActions.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/InstanceActions.kt @@ -7,8 +7,6 @@ import kotlinx.serialization.Serializable @CommonParcelize @Serializable data class InstanceActions( - val person_id: PersonId, - val instance_id: InstanceId, val blocked: String? = null, val received_ban: String? = null, val ban_expires: String? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListInboxResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListInboxResponse.kt index 8efae8e2..1838ae43 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListInboxResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListInboxResponse.kt @@ -4,11 +4,10 @@ import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -// TODO: deal with dynamic @CommonParcelize @Serializable data class ListInboxResponse( val inbox: List, - val next_page: it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PaginationCursor? = null, + val next_page: PaginationCursor? = null, val prev_page: PaginationCursor? = null, ): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonActions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonActions.kt index 05d1e958..8265edd9 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonActions.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonActions.kt @@ -7,7 +7,5 @@ import kotlinx.serialization.Serializable @CommonParcelize @Serializable data class PersonActions( - val target_id: PersonId, - val person_id: PersonId, val blocked: String? = null, ): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostActions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostActions.kt index 36c5ca4a..f5cd648e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostActions.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostActions.kt @@ -7,8 +7,6 @@ import kotlinx.serialization.Serializable @CommonParcelize @Serializable data class PostActions( - val post_id: PostId, - val person_id: PersonId, val read: String? = null, val read_comments: String? = null, val read_comments_amount: Long? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt index f5f69aac..d56e9f74 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt @@ -20,8 +20,7 @@ internal interface MapperGenerator { fun toUni(d: BlockCommunityResponse): it.vercruysse.lemmyapi.datatypes.BlockCommunityResponse fun toUni(d: BlockPersonResponse): it.vercruysse.lemmyapi.datatypes.BlockPersonResponse fun toUni(d: CaptchaResponse): it.vercruysse.lemmyapi.datatypes.CaptchaResponse - fun toUni(d: Comment): it.vercruysse.lemmyapi.datatypes.Comment - fun toUni(d: CommentAggregates): it.vercruysse.lemmyapi.datatypes.CommentAggregates + fun toUni(d: Comment, agg: CommentAggregates): it.vercruysse.lemmyapi.datatypes.Comment fun toUni(d: CommentReply): it.vercruysse.lemmyapi.datatypes.CommentReply fun toUni(d: CommentReplyResponse): it.vercruysse.lemmyapi.datatypes.CommentReplyResponse fun toUni(d: CommentReplyView): it.vercruysse.lemmyapi.datatypes.CommentReplyView diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt index 1c99188e..a3f90705 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt @@ -26,7 +26,6 @@ import it.vercruysse.lemmyapi.datatypes.BlockPersonResponse as LemmyapiDatatypes import it.vercruysse.lemmyapi.datatypes.CaptchaResponse as LemmyapiDatatypesCaptchaResponse import it.vercruysse.lemmyapi.datatypes.ChangePassword as LemmyapiDatatypesChangePassword import it.vercruysse.lemmyapi.datatypes.Comment as LemmyapiDatatypesComment -import it.vercruysse.lemmyapi.datatypes.CommentAggregates as LemmyapiDatatypesCommentAggregates import it.vercruysse.lemmyapi.datatypes.CommentReply as LemmyapiDatatypesCommentReply import it.vercruysse.lemmyapi.datatypes.CommentReplyResponse as LemmyapiDatatypesCommentReplyResponse import it.vercruysse.lemmyapi.datatypes.CommentReplyView as LemmyapiDatatypesCommentReplyView @@ -541,7 +540,7 @@ internal class Transformer : MapperGenerator { uuid = d.uuid, ) - override fun toUni(d: X11DatatypesComment): LemmyapiDatatypesComment = LemmyapiDatatypesComment( + override fun toUni(d: X11DatatypesComment, agg: X11DatatypesCommentAggregates): LemmyapiDatatypesComment = LemmyapiDatatypesComment( id = d.id, creator_id = d.creator_id, post_id = d.post_id, @@ -555,18 +554,15 @@ internal class Transformer : MapperGenerator { path = d.path, distinguished = d.distinguished, language_id = d.language_id, + score = agg.score, + upvotes = agg.upvotes, + downvotes = agg.downvotes, + child_count = agg.child_count, + report_count = -1, + unresolved_report_count = -1, + federation_pending = false, ) - override fun toUni(d: X11DatatypesCommentAggregates): LemmyapiDatatypesCommentAggregates = - LemmyapiDatatypesCommentAggregates( - comment_id = d.comment_id, - score = d.score, - upvotes = d.upvotes, - downvotes = d.downvotes, - published = d.published, - child_count = d.child_count, - ) - override fun toUni(d: X11DatatypesCommentReply): LemmyapiDatatypesCommentReply = LemmyapiDatatypesCommentReply( id = d.id, @@ -645,19 +641,21 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X11DatatypesCommentView): LemmyapiDatatypesCommentView = LemmyapiDatatypesCommentView( - comment = this.toUni(d = d.comment), + comment = this.toUni(d = d.comment, d.counts), creator = this.toUni(d = d.creator), post = this.toUni(d = d.post), community = this.toUni(d = d.community), - counts = this.toUni(d = d.counts), creator_banned_from_community = d.creator_banned_from_community, banned_from_community = d.banned_from_community, creator_is_moderator = d.creator_is_moderator, - creator_is_admin = d.creator_is_admin, + + subscribed = d.subscribed, saved = d.saved, creator_blocked = d.creator_blocked, my_vote = d.my_vote, + creator_is_admin = d.creator_is_admin, + post_tags = emptyList(), ) override fun toUni(d: X11DatatypesCommunity): LemmyapiDatatypesCommunity = diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityActions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityActions.kt index a3a0f0cd..001625cb 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityActions.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityActions.kt @@ -4,11 +4,8 @@ import kotlinx.serialization.Serializable @Serializable internal data class CommunityActions( - val community_id: CommunityId, - val person_id: PersonId, val followed: String? = null, val follow_state: String? /* "Accepted" | "Pending" | "ApprovalRequired" */ = null, - val follow_approver_id: PersonId? = null, val blocked: String? = null, val became_moderator: String? = null, val received_ban: String? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/InstanceActions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/InstanceActions.kt index 7b57e3b1..fa7a7a24 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/InstanceActions.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/InstanceActions.kt @@ -4,8 +4,6 @@ import kotlinx.serialization.Serializable @Serializable internal data class InstanceActions( - val person_id: PersonId, - val instance_id: InstanceId, val blocked: String? = null, val received_ban: String? = null, val ban_expires: String? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonActions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonActions.kt index b6a5510b..62e736e7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonActions.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonActions.kt @@ -4,7 +4,5 @@ import kotlinx.serialization.Serializable @Serializable internal data class PersonActions( - val target_id: PersonId, - val person_id: PersonId, val blocked: String? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostActions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostActions.kt index f587720c..994e5c8f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostActions.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostActions.kt @@ -4,8 +4,6 @@ import kotlinx.serialization.Serializable @Serializable internal data class PostActions( - val post_id: PostId, - val person_id: PersonId, val read: String? = null, val read_comments: String? = null, val read_comments_amount: Long? = null, diff --git a/app/src/jvmTest/kotlin/GetCorrectControllerTest.kt b/app/src/jvmTest/kotlin/GetCorrectControllerTest.kt index 3798beae..b0316faf 100644 --- a/app/src/jvmTest/kotlin/GetCorrectControllerTest.kt +++ b/app/src/jvmTest/kotlin/GetCorrectControllerTest.kt @@ -23,5 +23,8 @@ class GetCorrectControllerTest { val controller6 = LemmyApi.getLemmyApi(instance = "lemmy.world", version = "0.19.11") assertInstanceOf(it.vercruysse.lemmyapi.v0.x19.x11.LemmyApiUniWrapper::class.java, controller6) + + val controller7 = LemmyApi.getLemmyApi(instance = "infosec.pub", version = "0.19.11-n.1") + assertInstanceOf(it.vercruysse.lemmyapi.v0.x19.x11.LemmyApiUniWrapper::class.java, controller7) } } From a3b7c21e86e42f331f436c5ad1e82f9a422b1036 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Mon, 15 Sep 2025 04:35:35 +0200 Subject: [PATCH 008/110] WIP: Sync uni types with 1.0.0 types --- .../src/main/kotlin/MapperGenerator0x18x5.kt | 14 +- .../src/main/kotlin/MapperGenerator0x19x0.kt | 18 - .../src/main/kotlin/MapperGenerator0x19x11.kt | 4 - .../src/main/kotlin/MapperGenerator0x19x3.kt | 12 - .../src/main/kotlin/MapperGenerator0x19x4.kt | 6 - .../src/main/kotlin/MapperGenerator0x19x6.kt | 6 - .../main/kotlin/autogenscripts/GenTypes.kt | 5 +- .../it/vercruysse/lemmyapi/FeatureFlags.kt | 1 + .../kotlin/it/vercruysse/lemmyapi/LemmyApi.kt | 4 +- .../lemmyapi/datatypes/AdminAllowInstance.kt | 2 +- .../lemmyapi/datatypes/AdminBlockInstance.kt | 4 +- .../datatypes/AdminBlockInstanceParams.kt | 14 + ...ListBannedPersons.kt => AdminListUsers.kt} | 5 +- .../datatypes/AdminListUsersResponse.kt | 13 + .../lemmyapi/datatypes/AdminPurgeComment.kt | 2 +- .../lemmyapi/datatypes/AdminPurgeCommunity.kt | 2 +- .../lemmyapi/datatypes/AdminPurgePerson.kt | 2 +- .../lemmyapi/datatypes/AdminPurgePost.kt | 2 +- .../lemmyapi/datatypes/BanFromCommunity.kt | 2 +- .../lemmyapi/datatypes/BanPerson.kt | 2 +- .../datatypes/BannedPersonsResponse.kt | 4 + .../vercruysse/lemmyapi/datatypes/Comment.kt | 6 +- .../lemmyapi/datatypes/CommentActions.kt | 6 +- .../lemmyapi/datatypes/CommentAggregates.kt | 19 - .../lemmyapi/datatypes/CommentReplyView.kt | 2 +- .../lemmyapi/datatypes/CommentReport.kt | 4 +- .../lemmyapi/datatypes/CommentReportView.kt | 21 +- .../lemmyapi/datatypes/CommentResponse.kt | 1 + .../lemmyapi/datatypes/CommentSlimView.kt | 6 +- .../lemmyapi/datatypes/CommentView.kt | 14 +- .../lemmyapi/datatypes/Community.kt | 21 +- .../lemmyapi/datatypes/CommunityActions.kt | 15 +- .../lemmyapi/datatypes/CommunityAggregates.kt | 23 - .../lemmyapi/datatypes/CommunityIdQuery.kt | 12 + .../lemmyapi/datatypes/CommunityReport.kt | 4 +- .../lemmyapi/datatypes/CommunityReportView.kt | 4 + .../lemmyapi/datatypes/CommunityView.kt | 15 +- .../lemmyapi/datatypes/CreateCommunityTag.kt | 6 +- .../datatypes/CreateMultiCommunity.kt | 13 + .../CreateOrDeleteMultiCommunityEntry.kt | 12 + .../lemmyapi/datatypes/CreatePost.kt | 3 +- .../lemmyapi/datatypes/CreateSite.kt | 29 +- .../lemmyapi/datatypes/CustomEmoji.kt | 4 +- .../lemmyapi/datatypes/DeleteCommunityTag.kt | 1 - .../lemmyapi/datatypes/DeleteOAuthProvider.kt | 1 - .../vercruysse/lemmyapi/datatypes/EditPost.kt | 2 +- .../vercruysse/lemmyapi/datatypes/EditSite.kt | 31 +- .../lemmyapi/datatypes/ExportDataResponse.kt | 16 + .../lemmyapi/datatypes/FederationBlockList.kt | 7 +- .../datatypes/FollowMultiCommunity.kt | 12 + .../lemmyapi/datatypes/GetModlogResponse.kt | 2 - .../lemmyapi/datatypes/GetMultiCommunity.kt | 11 + .../datatypes/GetMultiCommunityResponse.kt | 9 + .../vercruysse/lemmyapi/datatypes/GetPosts.kt | 22 +- .../lemmyapi/datatypes/GetRandomCommunity.kt | 2 +- .../vercruysse/lemmyapi/datatypes/Instance.kt | 4 +- .../lemmyapi/datatypes/InstanceActions.kt | 7 +- .../datatypes/InstanceWithFederationState.kt | 4 +- .../lemmyapi/datatypes/ListLoginsResponse.kt | 11 + .../datatypes/ListMultiCommunities.kt | 12 + .../datatypes/ListMultiCommunitiesResponse.kt | 11 + .../lemmyapi/datatypes/ListNotifications.kt | 16 + .../datatypes/ListNotificationsResponse.kt | 13 + .../lemmyapi/datatypes/ListPersonHidden.kt | 15 + .../lemmyapi/datatypes/ListPersonLiked.kt | 17 + .../datatypes/ListPersonLikedResponse.kt | 13 + .../lemmyapi/datatypes/ListPersonRead.kt | 13 + .../datatypes/ListPersonReadResponse.kt | 13 + .../lemmyapi/datatypes/LocalImage.kt | 7 +- .../lemmyapi/datatypes/LocalImageView.kt | 1 + .../lemmyapi/datatypes/LocalSite.kt | 5 +- .../lemmyapi/datatypes/LocalSiteRateLimit.kt | 32 +- .../datatypes/LocalSiteUrlBlocklist.kt | 4 +- .../lemmyapi/datatypes/LocalUser.kt | 25 +- .../lemmyapi/datatypes/LocalUserView.kt | 5 +- .../vercruysse/lemmyapi/datatypes/LockPost.kt | 1 + .../lemmyapi/datatypes/LoginToken.kt | 2 +- .../datatypes/MarkNotificationAsRead.kt | 13 + .../vercruysse/lemmyapi/datatypes/ModAdd.kt | 2 +- .../lemmyapi/datatypes/ModAddCommunity.kt | 2 +- .../vercruysse/lemmyapi/datatypes/ModBan.kt | 4 +- .../lemmyapi/datatypes/ModBanFromCommunity.kt | 4 +- .../datatypes/ModChangeCommunityVisibility.kt | 3 +- .../{PostAggregates.kt => ModEditPost.kt} | 17 +- .../lemmyapi/datatypes/ModFeaturePost.kt | 2 +- .../lemmyapi/datatypes/ModLockPost.kt | 4 +- .../lemmyapi/datatypes/ModRemoveComment.kt | 2 +- .../lemmyapi/datatypes/ModRemoveCommunity.kt | 2 +- .../lemmyapi/datatypes/ModRemovePost.kt | 2 +- .../datatypes/ModTransferCommunity.kt | 2 +- .../lemmyapi/datatypes/MultiCommunity.kt | 21 + .../datatypes/MultiCommunityFollow.kt | 14 + .../lemmyapi/datatypes/MultiCommunityId.kt | 3 + .../lemmyapi/datatypes/MultiCommunityView.kt | 12 + .../lemmyapi/datatypes/MyUserInfo.kt | 3 + .../{PersonAggregates.kt => NotePerson.kt} | 10 +- .../lemmyapi/datatypes/Notification.kt | 19 + .../lemmyapi/datatypes/NotificationData.kt | 35 ++ .../lemmyapi/datatypes/NotificationId.kt | 3 + .../lemmyapi/datatypes/NotificationView.kt | 12 + .../lemmyapi/datatypes/OAuthAccount.kt | 4 +- .../lemmyapi/datatypes/OAuthProvider.kt | 4 +- .../lemmyapi/datatypes/PendingFollow.kt | 5 +- .../vercruysse/lemmyapi/datatypes/Person.kt | 12 +- .../lemmyapi/datatypes/PersonActions.kt | 7 +- .../datatypes/PersonLikedCombinedView.kt | 29 + .../lemmyapi/datatypes/PersonMentionView.kt | 2 +- .../lemmyapi/datatypes/PersonView.kt | 7 +- .../it/vercruysse/lemmyapi/datatypes/Post.kt | 15 +- .../lemmyapi/datatypes/PostActions.kt | 14 +- .../PostOrCommentOrPrivateMessage.kt | 35 ++ .../lemmyapi/datatypes/PostReport.kt | 4 +- .../lemmyapi/datatypes/PostReportView.kt | 20 +- .../vercruysse/lemmyapi/datatypes/PostView.kt | 28 +- .../lemmyapi/datatypes/PrivateMessage.kt | 5 +- .../datatypes/PrivateMessageReport.kt | 4 +- .../datatypes/ReadableFederationState.kt | 6 +- .../datatypes/RegistrationApplication.kt | 2 +- .../datatypes/ResendVerificationEmail.kt | 1 - .../vercruysse/lemmyapi/datatypes/Search.kt | 19 +- .../it/vercruysse/lemmyapi/datatypes/Site.kt | 6 +- .../it/vercruysse/lemmyapi/datatypes/Tag.kt | 8 +- .../vercruysse/lemmyapi/datatypes/Tagline.kt | 4 +- .../datatypes/UpdateCommunityNotifications.kt | 13 + .../datatypes/UpdateMultiCommunity.kt | 14 + .../datatypes/UpdatePostNotifications.kt | 12 + .../UserBlockInstanceCommunitiesParams.kt | 12 + .../UserBlockInstancePersonsParams.kt | 12 + .../lemmyapi/datatypes/UserSettingsBackup.kt | 25 + .../vercruysse/lemmyapi/datatypes/VoteView.kt | 3 +- .../lemmyapi/dto/CustomDataTypes.kt | 62 ++ .../it/vercruysse/lemmyapi/utils/General.kt | 2 + .../lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt | 2 +- .../lemmyapi/v0/x18/x5/MapperGenerator.kt | 17 +- .../lemmyapi/v0/x18/x5/Transformer.kt | 559 ++++++++--------- .../lemmyapi/v0/x19/x0/MapperGenerator.kt | 14 +- .../lemmyapi/v0/x19/x0/Transformer.kt | 572 ++++++++--------- .../lemmyapi/v0/x19/x11/MapperGenerator.kt | 11 +- .../lemmyapi/v0/x19/x11/Transformer.kt | 567 ++++++++--------- .../lemmyapi/v0/x19/x3/MapperGenerator.kt | 13 +- .../lemmyapi/v0/x19/x3/Transformer.kt | 557 ++++++++--------- .../lemmyapi/v0/x19/x4/MapperGenerator.kt | 12 +- .../lemmyapi/v0/x19/x4/Transformer.kt | 575 ++++++++--------- .../lemmyapi/v0/x19/x6/MapperGenerator.kt | 12 +- .../lemmyapi/v0/x19/x6/Transformer.kt | 576 +++++++++--------- .../ModlogCombinedView.kt | 57 +- .../x0/x0/combinedtypes/NotificationData.kt | 32 + .../PersonContentCombinedView.kt | 14 +- .../combinedtypes/PersonLikedCombinedView.kt | 25 + .../PersonSavedCombinedView.kt | 10 +- .../PostOrCommentOrPrivateMessage.kt | 29 + .../ReportCombinedView.kt | 16 +- .../x0/x0/combinedtypes/SearchCombinedView.kt | 36 ++ .../v1/x0/x0/datatypes/AdminAllowInstance.kt | 2 +- .../v1/x0/x0/datatypes/AdminBlockInstance.kt | 4 +- .../x0/datatypes/AdminBlockInstanceParams.kt | 2 +- .../v1/x0/x0/datatypes/AdminListUsers.kt | 11 + .../x0/x0/datatypes/AdminListUsersResponse.kt | 10 + .../v1/x0/x0/datatypes/AdminPurgeComment.kt | 2 +- .../v1/x0/x0/datatypes/AdminPurgeCommunity.kt | 2 +- .../v1/x0/x0/datatypes/AdminPurgePerson.kt | 2 +- .../v1/x0/x0/datatypes/AdminPurgePost.kt | 2 +- .../v1/x0/x0/datatypes/BanFromCommunity.kt | 2 +- .../lemmyapi/v1/x0/x0/datatypes/BanPerson.kt | 2 +- .../lemmyapi/v1/x0/x0/datatypes/Comment.kt | 4 +- .../v1/x0/x0/datatypes/CommentActions.kt | 6 +- .../v1/x0/x0/datatypes/CommentReply.kt | 12 - .../v1/x0/x0/datatypes/CommentReplyView.kt | 24 - .../v1/x0/x0/datatypes/CommentReport.kt | 4 +- .../v1/x0/x0/datatypes/CommentReportView.kt | 6 +- .../v1/x0/x0/datatypes/CommentResponse.kt | 1 - .../v1/x0/x0/datatypes/CommentSlimView.kt | 6 +- .../v1/x0/x0/datatypes/CommentView.kt | 8 +- .../lemmyapi/v1/x0/x0/datatypes/Community.kt | 7 +- .../v1/x0/x0/datatypes/CommunityActions.kt | 15 +- .../v1/x0/x0/datatypes/CommunityIdQuery.kt | 8 + .../v1/x0/x0/datatypes/CommunityReport.kt | 4 +- .../v1/x0/x0/datatypes/CommunityReportView.kt | 4 + .../v1/x0/x0/datatypes/CommunityView.kt | 1 - .../v1/x0/x0/datatypes/CreateCommunityTag.kt | 4 +- .../x0/x0/datatypes/CreateMultiCommunity.kt | 10 + .../CreateOrDeleteMultiCommunityEntry.kt | 9 + .../lemmyapi/v1/x0/x0/datatypes/CreatePost.kt | 2 +- .../lemmyapi/v1/x0/x0/datatypes/CreateSite.kt | 39 +- .../v1/x0/x0/datatypes/CustomEmoji.kt | 4 +- .../lemmyapi/v1/x0/x0/datatypes/EditPost.kt | 2 +- .../lemmyapi/v1/x0/x0/datatypes/EditSite.kt | 42 +- .../v1/x0/x0/datatypes/ExportDataResponse.kt | 14 + .../v1/x0/x0/datatypes/FederationBlockList.kt | 6 +- .../x0/x0/datatypes/FollowMultiCommunity.kt | 9 + .../v1/x0/x0/datatypes/GetComments.kt | 4 +- .../lemmyapi/v1/x0/x0/datatypes/GetModlog.kt | 2 +- .../v1/x0/x0/datatypes/GetModlogResponse.kt | 1 + .../v1/x0/x0/datatypes/GetMultiCommunity.kt | 8 + .../x0/datatypes/GetMultiCommunityResponse.kt | 9 + .../lemmyapi/v1/x0/x0/datatypes/GetPosts.kt | 5 +- .../v1/x0/x0/datatypes/GetRandomCommunity.kt | 2 +- .../v1/x0/x0/datatypes/InboxCombinedView.kt | 35 -- .../lemmyapi/v1/x0/x0/datatypes/Instance.kt | 4 +- .../v1/x0/x0/datatypes/InstanceActions.kt | 7 +- .../datatypes/InstanceWithFederationState.kt | 4 +- .../v1/x0/x0/datatypes/ListCommunities.kt | 2 +- .../v1/x0/x0/datatypes/ListLoginsResponse.kt | 8 + .../x0/x0/datatypes/ListMultiCommunities.kt | 9 + .../datatypes/ListMultiCommunitiesResponse.kt | 8 + .../{ListInbox.kt => ListNotifications.kt} | 4 +- .../x0/datatypes/ListNotificationsResponse.kt | 10 + .../x0/datatypes/ListPersonContentResponse.kt | 1 + ...stBannedPersons.kt => ListPersonHidden.kt} | 2 +- ...esponse.kt => ListPersonHiddenResponse.kt} | 4 +- .../v1/x0/x0/datatypes/ListPersonLiked.kt | 14 + .../x0/datatypes/ListPersonLikedResponse.kt | 11 + .../v1/x0/x0/datatypes/ListPersonRead.kt | 10 + ...sResponse.kt => ListPersonReadResponse.kt} | 4 +- .../x0/datatypes/ListPersonSavedResponse.kt | 1 + .../v1/x0/x0/datatypes/ListReportsResponse.kt | 3 + .../lemmyapi/v1/x0/x0/datatypes/LocalImage.kt | 5 +- .../v1/x0/x0/datatypes/LocalImageView.kt | 1 + .../lemmyapi/v1/x0/x0/datatypes/LocalSite.kt | 18 +- .../v1/x0/x0/datatypes/LocalSiteRateLimit.kt | 32 +- .../x0/x0/datatypes/LocalSiteUrlBlocklist.kt | 4 +- .../lemmyapi/v1/x0/x0/datatypes/LocalUser.kt | 9 +- .../v1/x0/x0/datatypes/LocalUserView.kt | 2 +- .../lemmyapi/v1/x0/x0/datatypes/LockPost.kt | 1 + .../lemmyapi/v1/x0/x0/datatypes/LoginToken.kt | 2 +- ...plyAsRead.kt => MarkNotificationAsRead.kt} | 4 +- .../MarkPersonCommentMentionAsRead.kt | 9 - .../datatypes/MarkPersonPostMentionAsRead.kt | 9 - .../lemmyapi/v1/x0/x0/datatypes/ModAdd.kt | 4 +- .../v1/x0/x0/datatypes/ModAddCommunity.kt | 4 +- ...nPostMentionId.kt => ModAddCommunityId.kt} | 2 +- .../{CommentReplyId.kt => ModAddId.kt} | 2 +- .../lemmyapi/v1/x0/x0/datatypes/ModBan.kt | 6 +- .../v1/x0/x0/datatypes/ModBanFromCommunity.kt | 6 +- ...tMentionId.kt => ModBanFromCommunityId.kt} | 2 +- .../lemmyapi/v1/x0/x0/datatypes/ModBanId.kt | 3 + .../datatypes/ModChangeCommunityVisibility.kt | 5 +- .../ModChangeCommunityVisibilityId.kt | 3 + .../v1/x0/x0/datatypes/ModEditPost.kt | 10 + .../v1/x0/x0/datatypes/ModFeaturePost.kt | 4 +- .../v1/x0/x0/datatypes/ModFeaturePostId.kt | 3 + .../v1/x0/x0/datatypes/ModLockPost.kt | 5 +- .../v1/x0/x0/datatypes/ModLockPostId.kt | 3 + .../v1/x0/x0/datatypes/ModRemoveComment.kt | 4 +- .../v1/x0/x0/datatypes/ModRemoveCommentId.kt | 3 + .../v1/x0/x0/datatypes/ModRemoveCommunity.kt | 4 +- .../x0/x0/datatypes/ModRemoveCommunityId.kt | 3 + .../v1/x0/x0/datatypes/ModRemovePost.kt | 4 +- .../v1/x0/x0/datatypes/ModRemovePostId.kt | 3 + .../x0/x0/datatypes/ModTransferCommunity.kt | 4 +- .../x0/x0/datatypes/ModTransferCommunityId.kt | 3 + .../v1/x0/x0/datatypes/MultiCommunity.kt | 18 + .../x0/x0/datatypes/MultiCommunityFollow.kt | 11 + .../v1/x0/x0/datatypes/MultiCommunityId.kt | 3 + .../v1/x0/x0/datatypes/MultiCommunityView.kt | 9 + .../lemmyapi/v1/x0/x0/datatypes/MyUserInfo.kt | 3 +- .../lemmyapi/v1/x0/x0/datatypes/NotePerson.kt | 9 + .../v1/x0/x0/datatypes/Notification.kt | 16 + .../v1/x0/x0/datatypes/NotificationId.kt | 3 + .../v1/x0/x0/datatypes/NotificationView.kt | 10 + .../v1/x0/x0/datatypes/OAuthAccount.kt | 4 +- .../v1/x0/x0/datatypes/OAuthProvider.kt | 4 +- .../lemmyapi/v1/x0/x0/datatypes/Person.kt | 4 +- .../v1/x0/x0/datatypes/PersonActions.kt | 7 +- .../x0/x0/datatypes/PersonCommentMention.kt | 12 - .../x0/datatypes/PersonCommentMentionView.kt | 23 - .../v1/x0/x0/datatypes/PersonPostMention.kt | 12 - .../x0/x0/datatypes/PersonPostMentionView.kt | 24 - .../lemmyapi/v1/x0/x0/datatypes/PersonView.kt | 3 +- .../lemmyapi/v1/x0/x0/datatypes/Post.kt | 8 +- .../v1/x0/x0/datatypes/PostActions.kt | 14 +- .../lemmyapi/v1/x0/x0/datatypes/PostReport.kt | 5 +- .../v1/x0/x0/datatypes/PostReportView.kt | 4 +- .../lemmyapi/v1/x0/x0/datatypes/PostView.kt | 8 +- .../v1/x0/x0/datatypes/PrivateMessage.kt | 5 +- .../x0/x0/datatypes/PrivateMessageReport.kt | 4 +- .../x0/datatypes/PrivateMessageReportView.kt | 2 + .../x0/datatypes/ReadableFederationState.kt | 4 +- .../x0/datatypes/RegistrationApplication.kt | 2 +- .../x0/x0/datatypes/ResolveObjectResponse.kt | 11 - .../v1/x0/x0/datatypes/SaveUserSettings.kt | 5 +- .../lemmyapi/v1/x0/x0/datatypes/Search.kt | 7 +- .../v1/x0/x0/datatypes/SearchCombinedView.kt | 35 -- .../v1/x0/x0/datatypes/SearchResponse.kt | 1 + .../lemmyapi/v1/x0/x0/datatypes/Site.kt | 6 +- .../v1/x0/x0/datatypes/SiteResponse.kt | 3 - .../lemmyapi/v1/x0/x0/datatypes/Tag.kt | 8 +- .../lemmyapi/v1/x0/x0/datatypes/Tagline.kt | 4 +- .../datatypes/UpdateCommunityNotifications.kt | 10 + .../v1/x0/x0/datatypes/UpdateCommunityTag.kt | 3 +- .../x0/x0/datatypes/UpdateMultiCommunity.kt | 11 + .../x0/datatypes/UpdatePostNotifications.kt | 9 + .../UserBlockInstanceCommunitiesParams.kt | 9 + ...s.kt => UserBlockInstancePersonsParams.kt} | 2 +- .../v1/x0/x0/datatypes/UserSettingsBackup.kt | 22 + .../lemmyapi/v1/x0/x0/datatypes/VoteView.kt | 4 +- .../jvmTest/kotlin/JavaSerializableTest.kt | 13 +- 297 files changed, 3495 insertions(+), 2553 deletions(-) create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminBlockInstanceParams.kt rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/{ListBannedPersons.kt => AdminListUsers.kt} (82%) create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminListUsersResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentAggregates.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityAggregates.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityIdQuery.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateMultiCommunity.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateOrDeleteMultiCommunityEntry.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ExportDataResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/FollowMultiCommunity.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetMultiCommunity.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetMultiCommunityResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListLoginsResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListMultiCommunities.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListMultiCommunitiesResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListNotifications.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListNotificationsResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonHidden.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonLiked.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonLikedResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonRead.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonReadResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkNotificationAsRead.kt rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/{PostAggregates.kt => ModEditPost.kt} (54%) create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MultiCommunity.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MultiCommunityFollow.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MultiCommunityId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MultiCommunityView.kt rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/{PersonAggregates.kt => NotePerson.kt} (71%) create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Notification.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/NotificationData.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/NotificationId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/NotificationView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonLikedCombinedView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostOrCommentOrPrivateMessage.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UpdateCommunityNotifications.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UpdateMultiCommunity.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UpdatePostNotifications.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UserBlockInstanceCommunitiesParams.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UserBlockInstancePersonsParams.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UserSettingsBackup.kt rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/{datatypes => combinedtypes}/ModlogCombinedView.kt (54%) create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/NotificationData.kt rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/{datatypes => combinedtypes}/PersonContentCombinedView.kt (55%) create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/PersonLikedCombinedView.kt rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/{datatypes => combinedtypes}/PersonSavedCombinedView.kt (70%) create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/PostOrCommentOrPrivateMessage.kt rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/{datatypes => combinedtypes}/ReportCombinedView.kt (62%) create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/SearchCombinedView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminListUsers.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminListUsersResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReply.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReplyView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityIdQuery.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateMultiCommunity.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateOrDeleteMultiCommunityEntry.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ExportDataResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/FollowMultiCommunity.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetMultiCommunity.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetMultiCommunityResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/InboxCombinedView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListLoginsResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListMultiCommunities.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListMultiCommunitiesResponse.kt rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/{ListInbox.kt => ListNotifications.kt} (67%) create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListNotificationsResponse.kt rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/{ListBannedPersons.kt => ListPersonHidden.kt} (85%) rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/{ListInboxResponse.kt => ListPersonHiddenResponse.kt} (71%) create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonLiked.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonLikedResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonRead.kt rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/{BannedPersonsResponse.kt => ListPersonReadResponse.kt} (72%) rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/{MarkCommentReplyAsRead.kt => MarkNotificationAsRead.kt} (60%) delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MarkPersonCommentMentionAsRead.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MarkPersonPostMentionAsRead.kt rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/{PersonPostMentionId.kt => ModAddCommunityId.kt} (52%) rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/{CommentReplyId.kt => ModAddId.kt} (55%) rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/{PersonCommentMentionId.kt => ModBanFromCommunityId.kt} (51%) create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModChangeCommunityVisibilityId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModEditPost.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModFeaturePostId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockPostId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveCommentId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveCommunityId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemovePostId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModTransferCommunityId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MultiCommunity.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MultiCommunityFollow.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MultiCommunityId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MultiCommunityView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/NotePerson.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Notification.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/NotificationId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/NotificationView.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonCommentMention.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonCommentMentionView.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonPostMention.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonPostMentionView.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ResolveObjectResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SearchCombinedView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UpdateCommunityNotifications.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UpdateMultiCommunity.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UpdatePostNotifications.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UserBlockInstanceCommunitiesParams.kt rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/{UserBlockInstanceParams.kt => UserBlockInstancePersonsParams.kt} (76%) create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UserSettingsBackup.kt diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x18x5.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x18x5.kt index 9e28c80d..e8604c62 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x18x5.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x18x5.kt @@ -80,13 +80,6 @@ internal interface MapperGenerator0x18x5 { ) fun toUni(d: Community): it.vercruysse.lemmyapi.datatypes.Community - @Konvert( - mappings = [ - Mapping(target = "subscribers_local", constant = "-1"), - ] - ) - fun toUni(d: CommunityAggregates): it.vercruysse.lemmyapi.datatypes.CommunityAggregates - @Konvert( mappings = [ Mapping(target = "banned_from_community", constant = "false"), @@ -98,8 +91,8 @@ internal interface MapperGenerator0x18x5 { it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState( id = d.id, domain = d.domain, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, software = d.software, version = d.version, ) @@ -181,7 +174,6 @@ internal interface MapperGenerator0x18x5 { fun toUni(d: BlockPersonResponse): it.vercruysse.lemmyapi.datatypes.BlockPersonResponse fun toUni(d: CaptchaResponse): it.vercruysse.lemmyapi.datatypes.CaptchaResponse fun toUni(d: Comment): it.vercruysse.lemmyapi.datatypes.Comment - fun toUni(d: CommentAggregates): it.vercruysse.lemmyapi.datatypes.CommentAggregates fun toUni(d: CommentReply): it.vercruysse.lemmyapi.datatypes.CommentReply fun toUni(d: CommentReplyResponse): it.vercruysse.lemmyapi.datatypes.CommentReplyResponse @@ -247,13 +239,11 @@ internal interface MapperGenerator0x18x5 { fun toUni(d: ModTransferCommunity): it.vercruysse.lemmyapi.datatypes.ModTransferCommunity fun toUni(d: ModTransferCommunityView): it.vercruysse.lemmyapi.datatypes.ModTransferCommunityView fun toUni(d: Person): it.vercruysse.lemmyapi.datatypes.Person - fun toUni(d: PersonAggregates): it.vercruysse.lemmyapi.datatypes.PersonAggregates fun toUni(d: PersonMention): it.vercruysse.lemmyapi.datatypes.PersonMention fun toUni(d: PersonMentionResponse): it.vercruysse.lemmyapi.datatypes.PersonMentionResponse fun toUni(d: Post): it.vercruysse.lemmyapi.datatypes.Post - fun toUni(d: PostAggregates): it.vercruysse.lemmyapi.datatypes.PostAggregates fun toUni(d: PostReport): it.vercruysse.lemmyapi.datatypes.PostReport fun toUni(d: PostReportResponse): it.vercruysse.lemmyapi.datatypes.PostReportResponse diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x0.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x0.kt index 60815b5c..1cf63a4c 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x0.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x0.kt @@ -1,8 +1,6 @@ @file:Suppress("unused", "INVISIBLE_MEMBER", "INVISIBLE_REFERENCE") -import io.mcarle.konvert.api.Konfig import io.mcarle.konvert.api.Konvert -import io.mcarle.konvert.api.Konverter import io.mcarle.konvert.api.Mapping import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.* @@ -48,13 +46,6 @@ internal interface MapperGenerator0x19x0 { ) fun toUni(d: Community): it.vercruysse.lemmyapi.datatypes.Community - @Konvert( - mappings = [ - Mapping(target = "subscribers_local", constant = "-1"), - ] - ) - fun toUni(d: CommunityAggregates): it.vercruysse.lemmyapi.datatypes.CommunityAggregates - @Konvert( mappings = [ Mapping(target = "banned_from_community", constant = "false"), @@ -92,13 +83,6 @@ internal interface MapperGenerator0x19x0 { ) fun toUni(d: PersonMentionView): it.vercruysse.lemmyapi.datatypes.PersonMentionView - @Konvert( - mappings = [ - Mapping(target = "newest_comment_time", constant = "\"\""), - ] - ) - fun toUni(d: PostAggregates): it.vercruysse.lemmyapi.datatypes.PostAggregates - @Konvert( mappings = [ Mapping(target = "creator_is_moderator", constant = "false"), @@ -139,7 +123,6 @@ internal interface MapperGenerator0x19x0 { fun toUni(d: BlockPersonResponse): it.vercruysse.lemmyapi.datatypes.BlockPersonResponse fun toUni(d: CaptchaResponse): it.vercruysse.lemmyapi.datatypes.CaptchaResponse fun toUni(d: Comment): it.vercruysse.lemmyapi.datatypes.Comment - fun toUni(d: CommentAggregates): it.vercruysse.lemmyapi.datatypes.CommentAggregates fun toUni(d: CommentReply): it.vercruysse.lemmyapi.datatypes.CommentReply fun toUni(d: CommentReplyResponse): it.vercruysse.lemmyapi.datatypes.CommentReplyResponse @@ -212,7 +195,6 @@ internal interface MapperGenerator0x19x0 { fun toUni(d: ModTransferCommunityView): it.vercruysse.lemmyapi.datatypes.ModTransferCommunityView fun toUni(d: MyUserInfo): it.vercruysse.lemmyapi.datatypes.MyUserInfo fun toUni(d: Person): it.vercruysse.lemmyapi.datatypes.Person - fun toUni(d: PersonAggregates): it.vercruysse.lemmyapi.datatypes.PersonAggregates fun toUni(d: PersonMention): it.vercruysse.lemmyapi.datatypes.PersonMention fun toUni(d: PersonMentionResponse): it.vercruysse.lemmyapi.datatypes.PersonMentionResponse diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt index d71ee2a4..6a154db2 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt @@ -28,7 +28,6 @@ internal interface MapperGenerator0x19x11 { fun toUni(d: BlockPersonResponse): it.vercruysse.lemmyapi.datatypes.BlockPersonResponse fun toUni(d: CaptchaResponse): it.vercruysse.lemmyapi.datatypes.CaptchaResponse fun toUni(d: Comment): it.vercruysse.lemmyapi.datatypes.Comment - fun toUni(d: CommentAggregates): it.vercruysse.lemmyapi.datatypes.CommentAggregates fun toUni(d: CommentReply): it.vercruysse.lemmyapi.datatypes.CommentReply fun toUni(d: CommentReplyResponse): it.vercruysse.lemmyapi.datatypes.CommentReplyResponse fun toUni(d: CommentReplyView): it.vercruysse.lemmyapi.datatypes.CommentReplyView @@ -38,7 +37,6 @@ internal interface MapperGenerator0x19x11 { fun toUni(d: CommentResponse): it.vercruysse.lemmyapi.datatypes.CommentResponse fun toUni(d: CommentView): it.vercruysse.lemmyapi.datatypes.CommentView fun toUni(d: Community): it.vercruysse.lemmyapi.datatypes.Community - fun toUni(d: CommunityAggregates): it.vercruysse.lemmyapi.datatypes.CommunityAggregates fun toUni(d: CommunityFollowerView): it.vercruysse.lemmyapi.datatypes.CommunityFollowerView fun toUni(d: CommunityModeratorView): it.vercruysse.lemmyapi.datatypes.CommunityModeratorView fun toUni(d: CommunityResponse): it.vercruysse.lemmyapi.datatypes.CommunityResponse @@ -110,13 +108,11 @@ internal interface MapperGenerator0x19x11 { fun toUni(d: ModTransferCommunityView): it.vercruysse.lemmyapi.datatypes.ModTransferCommunityView fun toUni(d: MyUserInfo): it.vercruysse.lemmyapi.datatypes.MyUserInfo fun toUni(d: Person): it.vercruysse.lemmyapi.datatypes.Person - fun toUni(d: PersonAggregates): it.vercruysse.lemmyapi.datatypes.PersonAggregates fun toUni(d: PersonMention): it.vercruysse.lemmyapi.datatypes.PersonMention fun toUni(d: PersonMentionResponse): it.vercruysse.lemmyapi.datatypes.PersonMentionResponse fun toUni(d: PersonMentionView): it.vercruysse.lemmyapi.datatypes.PersonMentionView fun toUni(d: PersonView): it.vercruysse.lemmyapi.datatypes.PersonView fun toUni(d: Post): it.vercruysse.lemmyapi.datatypes.Post - fun toUni(d: PostAggregates): it.vercruysse.lemmyapi.datatypes.PostAggregates fun toUni(d: PostReport): it.vercruysse.lemmyapi.datatypes.PostReport fun toUni(d: PostReportResponse): it.vercruysse.lemmyapi.datatypes.PostReportResponse fun toUni(d: PostReportView): it.vercruysse.lemmyapi.datatypes.PostReportView diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x3.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x3.kt index 6642deba..5975fc8d 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x3.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x3.kt @@ -1,8 +1,6 @@ @file:Suppress("unused", "INVISIBLE_MEMBER", "INVISIBLE_REFERENCE") -import io.mcarle.konvert.api.Konfig import io.mcarle.konvert.api.Konvert -import io.mcarle.konvert.api.Konverter import io.mcarle.konvert.api.Mapping import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.* @@ -47,13 +45,6 @@ internal interface MapperGenerator0x19x3 { ) fun toUni(d: Community): it.vercruysse.lemmyapi.datatypes.Community - @Konvert( - mappings = [ - Mapping(target = "subscribers_local", constant = "-1"), - ] - ) - fun toUni(d: CommunityAggregates): it.vercruysse.lemmyapi.datatypes.CommunityAggregates - @Konvert( mappings = [ Mapping(target = "banned_from_community", constant = "false"), @@ -132,7 +123,6 @@ internal interface MapperGenerator0x19x3 { fun toUni(d: BlockPersonResponse): it.vercruysse.lemmyapi.datatypes.BlockPersonResponse fun toUni(d: CaptchaResponse): it.vercruysse.lemmyapi.datatypes.CaptchaResponse fun toUni(d: Comment): it.vercruysse.lemmyapi.datatypes.Comment - fun toUni(d: CommentAggregates): it.vercruysse.lemmyapi.datatypes.CommentAggregates fun toUni(d: CommentReply): it.vercruysse.lemmyapi.datatypes.CommentReply fun toUni(d: CommentReplyResponse): it.vercruysse.lemmyapi.datatypes.CommentReplyResponse @@ -207,13 +197,11 @@ internal interface MapperGenerator0x19x3 { fun toUni(d: ModTransferCommunityView): it.vercruysse.lemmyapi.datatypes.ModTransferCommunityView fun toUni(d: MyUserInfo): it.vercruysse.lemmyapi.datatypes.MyUserInfo fun toUni(d: Person): it.vercruysse.lemmyapi.datatypes.Person - fun toUni(d: PersonAggregates): it.vercruysse.lemmyapi.datatypes.PersonAggregates fun toUni(d: PersonMention): it.vercruysse.lemmyapi.datatypes.PersonMention fun toUni(d: PersonMentionResponse): it.vercruysse.lemmyapi.datatypes.PersonMentionResponse fun toUni(d: PersonView): it.vercruysse.lemmyapi.datatypes.PersonView fun toUni(d: Post): it.vercruysse.lemmyapi.datatypes.Post - fun toUni(d: PostAggregates): it.vercruysse.lemmyapi.datatypes.PostAggregates fun toUni(d: PostReport): it.vercruysse.lemmyapi.datatypes.PostReport fun toUni(d: PostReportResponse): it.vercruysse.lemmyapi.datatypes.PostReportResponse diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt index ad2e3112..d0ec5b11 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt @@ -1,7 +1,5 @@ @file:Suppress("unused", "INVISIBLE_MEMBER", "INVISIBLE_REFERENCE") -import io.mcarle.konvert.api.Konfig -import io.mcarle.konvert.api.Konverter import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.* //@Konverter( @@ -30,7 +28,6 @@ internal interface MapperGenerator0x19x4 { fun toUni(d: BlockPersonResponse): it.vercruysse.lemmyapi.datatypes.BlockPersonResponse fun toUni(d: CaptchaResponse): it.vercruysse.lemmyapi.datatypes.CaptchaResponse fun toUni(d: Comment): it.vercruysse.lemmyapi.datatypes.Comment - fun toUni(d: CommentAggregates): it.vercruysse.lemmyapi.datatypes.CommentAggregates fun toUni(d: CommentReply): it.vercruysse.lemmyapi.datatypes.CommentReply fun toUni(d: CommentReplyResponse): it.vercruysse.lemmyapi.datatypes.CommentReplyResponse fun toUni(d: CommentReplyView): it.vercruysse.lemmyapi.datatypes.CommentReplyView @@ -40,7 +37,6 @@ internal interface MapperGenerator0x19x4 { fun toUni(d: CommentResponse): it.vercruysse.lemmyapi.datatypes.CommentResponse fun toUni(d: CommentView): it.vercruysse.lemmyapi.datatypes.CommentView fun toUni(d: Community): it.vercruysse.lemmyapi.datatypes.Community - fun toUni(d: CommunityAggregates): it.vercruysse.lemmyapi.datatypes.CommunityAggregates fun toUni(d: CommunityFollowerView): it.vercruysse.lemmyapi.datatypes.CommunityFollowerView fun toUni(d: CommunityModeratorView): it.vercruysse.lemmyapi.datatypes.CommunityModeratorView fun toUni(d: CommunityResponse): it.vercruysse.lemmyapi.datatypes.CommunityResponse @@ -111,13 +107,11 @@ internal interface MapperGenerator0x19x4 { fun toUni(d: ModTransferCommunityView): it.vercruysse.lemmyapi.datatypes.ModTransferCommunityView fun toUni(d: MyUserInfo): it.vercruysse.lemmyapi.datatypes.MyUserInfo fun toUni(d: Person): it.vercruysse.lemmyapi.datatypes.Person - fun toUni(d: PersonAggregates): it.vercruysse.lemmyapi.datatypes.PersonAggregates fun toUni(d: PersonMention): it.vercruysse.lemmyapi.datatypes.PersonMention fun toUni(d: PersonMentionResponse): it.vercruysse.lemmyapi.datatypes.PersonMentionResponse fun toUni(d: PersonMentionView): it.vercruysse.lemmyapi.datatypes.PersonMentionView fun toUni(d: PersonView): it.vercruysse.lemmyapi.datatypes.PersonView fun toUni(d: Post): it.vercruysse.lemmyapi.datatypes.Post - fun toUni(d: PostAggregates): it.vercruysse.lemmyapi.datatypes.PostAggregates fun toUni(d: PostReport): it.vercruysse.lemmyapi.datatypes.PostReport fun toUni(d: PostReportResponse): it.vercruysse.lemmyapi.datatypes.PostReportResponse fun toUni(d: PostReportView): it.vercruysse.lemmyapi.datatypes.PostReportView diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt index 68958ba6..450401f6 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt @@ -1,7 +1,5 @@ @file:Suppress("unused", "INVISIBLE_MEMBER", "INVISIBLE_REFERENCE") -import io.mcarle.konvert.api.Konfig -import io.mcarle.konvert.api.Konverter import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.* //@Konverter( @@ -30,7 +28,6 @@ internal interface MapperGenerator0x19x6 { fun toUni(d: BlockPersonResponse): it.vercruysse.lemmyapi.datatypes.BlockPersonResponse fun toUni(d: CaptchaResponse): it.vercruysse.lemmyapi.datatypes.CaptchaResponse fun toUni(d: Comment): it.vercruysse.lemmyapi.datatypes.Comment - fun toUni(d: CommentAggregates): it.vercruysse.lemmyapi.datatypes.CommentAggregates fun toUni(d: CommentReply): it.vercruysse.lemmyapi.datatypes.CommentReply fun toUni(d: CommentReplyResponse): it.vercruysse.lemmyapi.datatypes.CommentReplyResponse fun toUni(d: CommentReplyView): it.vercruysse.lemmyapi.datatypes.CommentReplyView @@ -40,7 +37,6 @@ internal interface MapperGenerator0x19x6 { fun toUni(d: CommentResponse): it.vercruysse.lemmyapi.datatypes.CommentResponse fun toUni(d: CommentView): it.vercruysse.lemmyapi.datatypes.CommentView fun toUni(d: Community): it.vercruysse.lemmyapi.datatypes.Community - fun toUni(d: CommunityAggregates): it.vercruysse.lemmyapi.datatypes.CommunityAggregates fun toUni(d: CommunityFollowerView): it.vercruysse.lemmyapi.datatypes.CommunityFollowerView fun toUni(d: CommunityModeratorView): it.vercruysse.lemmyapi.datatypes.CommunityModeratorView fun toUni(d: CommunityResponse): it.vercruysse.lemmyapi.datatypes.CommunityResponse @@ -112,13 +108,11 @@ internal interface MapperGenerator0x19x6 { fun toUni(d: ModTransferCommunityView): it.vercruysse.lemmyapi.datatypes.ModTransferCommunityView fun toUni(d: MyUserInfo): it.vercruysse.lemmyapi.datatypes.MyUserInfo fun toUni(d: Person): it.vercruysse.lemmyapi.datatypes.Person - fun toUni(d: PersonAggregates): it.vercruysse.lemmyapi.datatypes.PersonAggregates fun toUni(d: PersonMention): it.vercruysse.lemmyapi.datatypes.PersonMention fun toUni(d: PersonMentionResponse): it.vercruysse.lemmyapi.datatypes.PersonMentionResponse fun toUni(d: PersonMentionView): it.vercruysse.lemmyapi.datatypes.PersonMentionView fun toUni(d: PersonView): it.vercruysse.lemmyapi.datatypes.PersonView fun toUni(d: Post): it.vercruysse.lemmyapi.datatypes.Post - fun toUni(d: PostAggregates): it.vercruysse.lemmyapi.datatypes.PostAggregates fun toUni(d: PostReport): it.vercruysse.lemmyapi.datatypes.PostReport fun toUni(d: PostReportResponse): it.vercruysse.lemmyapi.datatypes.PostReportResponse fun toUni(d: PostReportView): it.vercruysse.lemmyapi.datatypes.PostReportView diff --git a/GeneratorScripts/src/main/kotlin/autogenscripts/GenTypes.kt b/GeneratorScripts/src/main/kotlin/autogenscripts/GenTypes.kt index f803e7af..9a1dfdbd 100644 --- a/GeneratorScripts/src/main/kotlin/autogenscripts/GenTypes.kt +++ b/GeneratorScripts/src/main/kotlin/autogenscripts/GenTypes.kt @@ -117,7 +117,7 @@ fun downloadTypes( var imports = "" // typealiases are not serializable - if (!originalTypeFile.contains("internal typealias")) { + if (!originalTypeFile.contains("typealias")) { imports += "import kotlinx.serialization.Serializable\n\n@Serializable" } @@ -130,6 +130,7 @@ fun downloadTypes( // Convert interface to data class var k = line.replace("interface ", "internal data class ") + .replace("typealias ", "internal typealias ") .replace(" {", "(") .replace("}", ")") @@ -244,6 +245,6 @@ fun downloadTypes( } fun main() { - downloadTypes("1.0.0-community-reports.0", "v1/x0/x0") + downloadTypes("1.0.0-community-post-notifs.0", "v1/x0/x0") exitProcess(0) } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/FeatureFlags.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/FeatureFlags.kt index 4905b669..ab79131a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/FeatureFlags.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/FeatureFlags.kt @@ -14,6 +14,7 @@ class FeatureFlags(val version: Version) { private val v0x19x4Plus = version.withoutSuffixes() >= "0.19.4".toVersion() private val v0x19x6Plus = version.withoutSuffixes() >= "0.19.6".toVersion() private val v0x19x11Plus = version.withoutSuffixes() >= "0.19.11".toVersion() + val v1 = version.withoutSuffixes() >= "1".toVersion() /** * InstanceBlock Feature added in 0.19 diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApi.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApi.kt index 2b559434..017dde40 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApi.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApi.kt @@ -151,7 +151,5 @@ object LemmyApi { } // Good enough approximation for now - private fun getApiVersion(version: io.github.z4kn4fein.semver.Version): String { - return if (version.major == 0) "V3" else "V4" - } + private fun getApiVersion(version: io.github.z4kn4fein.semver.Version): String = if (version.major == 0) "V3" else "V4" } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminAllowInstance.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminAllowInstance.kt index 90dc4e3a..310ce0ae 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminAllowInstance.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminAllowInstance.kt @@ -12,5 +12,5 @@ data class AdminAllowInstance( val admin_person_id: PersonId, val allowed: Boolean, val reason: String? = null, - val published: String, + val published_at: String, ): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminBlockInstance.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminBlockInstance.kt index a678481f..c1b55f1b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminBlockInstance.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminBlockInstance.kt @@ -12,6 +12,6 @@ data class AdminBlockInstance( val admin_person_id: PersonId, val blocked: Boolean, val reason: String? = null, - val expires: String? = null, - val published: String, + val expires_at: String? = null, + val published_at: String, ): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminBlockInstanceParams.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminBlockInstanceParams.kt new file mode 100644 index 00000000..e09057c4 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminBlockInstanceParams.kt @@ -0,0 +1,14 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class AdminBlockInstanceParams( + val instance: String, + val block: Boolean, + val reason: String? = null, + val expires_at: String? = null, +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListBannedPersons.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminListUsers.kt similarity index 82% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListBannedPersons.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminListUsers.kt index 8cc441fc..31909302 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListBannedPersons.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminListUsers.kt @@ -4,11 +4,10 @@ import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -// TODO: prob changed in latest types - @CommonParcelize @Serializable -data class ListBannedPersons( +data class AdminListUsers( + val banned_only: Boolean? = null, val page_cursor: PaginationCursor? = null, val page_back: Boolean? = null, val limit: Long? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminListUsersResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminListUsersResponse.kt new file mode 100644 index 00000000..b47bdaf9 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminListUsersResponse.kt @@ -0,0 +1,13 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +internal data class AdminListUsersResponse( + val users: List, + val next_page: PaginationCursor? = null, + val prev_page: PaginationCursor? = null, +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgeComment.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgeComment.kt index 79515768..64955237 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgeComment.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgeComment.kt @@ -12,5 +12,5 @@ data class AdminPurgeComment( val admin_person_id: PersonId, val post_id: PostId, val reason: String? = null, - val published: String, + val published_at: String, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgeCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgeCommunity.kt index 8869cdaa..5ee3b536 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgeCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgeCommunity.kt @@ -12,5 +12,5 @@ data class AdminPurgeCommunity( override val id: AdminPurgeCommunityId, val admin_person_id: PersonId, val reason: String? = null, - val published: String, + val published_at: String, ) : DatatypeRoot, Identity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgePerson.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgePerson.kt index e39b5928..1fbf8d7d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgePerson.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgePerson.kt @@ -12,5 +12,5 @@ data class AdminPurgePerson( override val id: AdminPurgePersonId, val admin_person_id: PersonId, val reason: String? = null, - val published: String, + val published_at: String, ) : DatatypeRoot, Identity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgePost.kt index b067d12b..1d836bfa 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgePost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgePost.kt @@ -13,5 +13,5 @@ data class AdminPurgePost( val admin_person_id: PersonId, val community_id: CommunityId, val reason: String? = null, - val published: String, + val published_at: String, ) : DatatypeRoot, Identity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BanFromCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BanFromCommunity.kt index d0039854..3154bf4e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BanFromCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BanFromCommunity.kt @@ -13,5 +13,5 @@ data class BanFromCommunity( val ban: Boolean, val remove_or_restore_data: Boolean? = null, val reason: String? = null, - val expires: Long? = null, + val expires_at: Long? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BanPerson.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BanPerson.kt index 20d93c32..4d8753d0 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BanPerson.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BanPerson.kt @@ -12,5 +12,5 @@ data class BanPerson( val ban: Boolean, val remove_or_restore_data: Boolean? = null, val reason: String? = null, - val expires: Long? = null, + val expires_at: Long? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BannedPersonsResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BannedPersonsResponse.kt index 883b69cd..7a7612a3 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BannedPersonsResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BannedPersonsResponse.kt @@ -6,6 +6,10 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize // TODO: 1.0.0 lemmy types are outdated Banned renamed to Hidden +// is now ListPersonHiddenResponse +// TODO not sure if banned person was actually renamed to hidden person + +// IT doesnt seem that BannedPersonsResponse to ListPersonHiddenResponse @CommonParcelize @Serializable data class BannedPersonsResponse( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Comment.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Comment.kt index a2fc6df5..a8ce3e84 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Comment.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Comment.kt @@ -6,8 +6,6 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize -// TODO: many changes look into it - @CommonParcelize @Serializable data class Comment( @@ -16,8 +14,8 @@ data class Comment( val post_id: PostId, val content: String, val removed: Boolean, - val published: String, - val updated: String? = null, + val published_at: String, + val updated_at: String? = null, val deleted: Boolean, val ap_id: String, val local: Boolean, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentActions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentActions.kt index 8df692f2..f68fd8ab 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentActions.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentActions.kt @@ -7,9 +7,7 @@ import kotlinx.serialization.Serializable @CommonParcelize @Serializable data class CommentActions( - val person_id: PersonId, - val comment_id: CommentId, val like_score: Int = 0, - val liked: String? = null, - val saved: String? = null, + val liked_at: String? = null, + val saved_at: String? = null, ): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentAggregates.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentAggregates.kt deleted file mode 100644 index bacda810..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentAggregates.kt +++ /dev/null @@ -1,19 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -// TODO: seems to be flat pressed into Comment - -@CommonParcelize -@Serializable -data class CommentAggregates( - val comment_id: CommentId, - val score: Long, - val upvotes: Long, - val downvotes: Long, - val published: String, - val child_count: Long, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReplyView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReplyView.kt index 79a3cea0..bb3f8949 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReplyView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReplyView.kt @@ -18,7 +18,7 @@ data class CommentReplyView( val post: Post, val community: Community, val recipient: Person, - val counts: CommentAggregates, +// val counts: CommentAggregates, val creator_banned_from_community: Boolean, val banned_from_community: Boolean, val creator_is_moderator: Boolean, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReport.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReport.kt index 007b4729..80238103 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReport.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReport.kt @@ -16,6 +16,6 @@ data class CommentReport( val reason: String, val resolved: Boolean, val resolver_id: PersonId? = null, - val published: String, - val updated: String? = null, + val published_at: String, + val updated_at: String? = null, ) : DatatypeRoot, Identity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReportView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReportView.kt index 99e148e0..1370ff04 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReportView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReportView.kt @@ -2,13 +2,10 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.DatatypeRoot import it.vercruysse.lemmyapi.Identity -import it.vercruysse.lemmyapi.dto.SubscribedType import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize -// TODO: changed - @CommonParcelize @Serializable data class CommentReportView( @@ -18,16 +15,16 @@ data class CommentReportView( val community: Community, val creator: Person, val comment_creator: Person, - val counts: CommentAggregates, - val creator_banned_from_community: Boolean, - val creator_is_moderator: Boolean, - val creator_is_admin: Boolean, - val creator_blocked: Boolean, - val subscribed: SubscribedType /* "Subscribed" | "NotSubscribed" | "Pending" */, - val saved: Boolean, - val my_vote: Int = 0, + val comment_actions: CommentActions? = null, val resolver: Person? = null, -) : DatatypeRoot, Identity { + val person_actions: PersonActions? = null, + val community_actions: CommunityActions? = null, + val creator_is_admin: Boolean, + val creator_is_moderator: Boolean, + val creator_banned: Boolean, + val creator_banned_from_community: Boolean, + + ) : DatatypeRoot, Identity { override val id: Long get() = comment_report.id } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentResponse.kt index 87ceff8d..a89e4c70 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentResponse.kt @@ -9,5 +9,6 @@ import it.vercruysse.lemmyapi.CommonParcelize @Serializable data class CommentResponse( val comment_view: CommentView, + // TODO is removed val recipient_ids: List, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentSlimView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentSlimView.kt index 2d361460..59201089 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentSlimView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentSlimView.kt @@ -11,11 +11,9 @@ data class CommentSlimView( val creator: Person, val comment_actions: CommentActions? = null, val person_actions: PersonActions? = null, - val creator_community_actions: CommunityActions? = null, - val instance_actions: InstanceActions? = null, - val creator_home_instance_actions: InstanceActions? = null, - val creator_local_instance_actions: InstanceActions? = null, val creator_is_admin: Boolean, val can_mod: Boolean, val creator_banned: Boolean, + val creator_is_moderator: Boolean, + val creator_banned_from_community: Boolean, ): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentView.kt index c93a86a6..0fe0ade1 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentView.kt @@ -6,8 +6,6 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize -// TODO: changed - @CommonParcelize @Serializable data class CommentView( @@ -18,16 +16,14 @@ data class CommentView( val community_actions: CommunityActions? = null, val comment_actions: CommentActions? = null, val person_actions: PersonActions? = null, - val instance_actions: InstanceActions? = null, - val creator_home_instance_actions: InstanceActions? = null, - val creator_local_instance_actions: InstanceActions? = null, - val creator_community_actions: CommunityActions? = null, - val creator_is_admin: Boolean, - /** Added in Lemmy 1.0.0 */ val post_tags: TagsView, val can_mod: Boolean, val creator_banned: Boolean, -) : DatatypeRoot, Identity { + val creator_is_admin: Boolean, + val creator_is_moderator: Boolean, + val creator_banned_from_community: Boolean, + + ) : DatatypeRoot, Identity { override val id: Long get() = comment.id } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Community.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Community.kt index ac5143a1..1854c0c8 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Community.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Community.kt @@ -7,8 +7,6 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize -// Changed - @CommonParcelize @Serializable data class Community( @@ -17,16 +15,27 @@ data class Community( val title: String, val description: String? = null, val removed: Boolean, - val published: String, - val updated: String? = null, + val published_at: String, + val updated_at: String? = null, val deleted: Boolean, val nsfw: Boolean, - val actor_id: String, + val ap_id: String, val local: Boolean, val icon: String? = null, val banner: String? = null, val hidden: Boolean, val posting_restricted_to_mods: Boolean, val instance_id: InstanceId, - val visibility: CommunityVisibility /* "Public" | "LocalOnly" */, + val visibility: CommunityVisibility /* "Public" | "Unlisted" | "LocalOnlyPublic" | "LocalOnlyPrivate" | "Private" */, + val subscribers: Long, + val posts: Long, + val comments: Long, + val users_active_day: Long, + val users_active_week: Long, + val users_active_month: Long, + val users_active_half_year: Long, + val subscribers_local: Long, + val report_count: Long, + val unresolved_report_count: Long, + val local_removed: Boolean, ) : DatatypeRoot, Identity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityActions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityActions.kt index 04145d98..903c7dfd 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityActions.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityActions.kt @@ -2,15 +2,18 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot +import it.vercruysse.lemmyapi.dto.CommunityFollowerState +import it.vercruysse.lemmyapi.dto.CommunityNotificationsMode import kotlinx.serialization.Serializable @CommonParcelize @Serializable data class CommunityActions( - val followed: String? = null, - val follow_state: String? /* "Accepted" | "Pending" | "ApprovalRequired" */ = null, - val blocked: String? = null, - val became_moderator: String? = null, - val received_ban: String? = null, - val ban_expires: String? = null, + val followed_at: String? = null, + val follow_state: CommunityFollowerState? /* "Accepted" | "Pending" | "ApprovalRequired" */ = null, + val blocked_at: String? = null, + val became_moderator_at: String? = null, + val received_ban_at: String? = null, + val ban_expires_at: String? = null, + val notifications: CommunityNotificationsMode? /* "AllPostsAndComments" | "AllPosts" | "RepliesAndMentions" | "Mute" */ = null, ): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityAggregates.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityAggregates.kt deleted file mode 100644 index c689d1e4..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityAggregates.kt +++ /dev/null @@ -1,23 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -// TODO: changed, prob flat pressed - -@CommonParcelize -@Serializable -data class CommunityAggregates( - val community_id: CommunityId, - val subscribers: Long, - val posts: Long, - val comments: Long, - val published: String, - val users_active_day: Long, - val users_active_week: Long, - val users_active_month: Long, - val users_active_half_year: Long, - val subscribers_local: Long, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityIdQuery.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityIdQuery.kt new file mode 100644 index 00000000..c1e86e52 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityIdQuery.kt @@ -0,0 +1,12 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CommunityId +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class CommunityIdQuery( + val id: CommunityId, +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityReport.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityReport.kt index 760b99c9..69cd7a85 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityReport.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityReport.kt @@ -20,6 +20,6 @@ data class CommunityReport( val reason: String, val resolved: Boolean, val resolver_id: PersonId? = null, - val published: String, - val updated: String? = null, + val published_at: String, + val updated_at: String? = null, ): DatatypeRoot, Identity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityReportView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityReportView.kt index 14a4f01d..461d9ddc 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityReportView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityReportView.kt @@ -11,4 +11,8 @@ data class CommunityReportView( val community: Community, val creator: Person, val resolver: Person? = null, + val creator_is_admin: Boolean, + val creator_is_moderator: Boolean, + val creator_banned: Boolean, + val creator_banned_from_community: Boolean, ): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityView.kt index 080d6760..36f2330e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityView.kt @@ -1,9 +1,7 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.dto.SubscribedType import kotlinx.serialization.Serializable - import it.vercruysse.lemmyapi.CommonParcelize // TODO: changed @@ -12,8 +10,13 @@ import it.vercruysse.lemmyapi.CommonParcelize @Serializable data class CommunityView( val community: Community, - val subscribed: SubscribedType /* "Subscribed" | "NotSubscribed" | "Pending" */, - val blocked: Boolean, - val counts: CommunityAggregates, - val banned_from_community: Boolean, + +// val subscribed: SubscribedType /* "Subscribed" | "NotSubscribed" | "Pending" */, +// val blocked: Boolean, +// val counts: CommunityAggregates, +// val banned_from_community: Boolean, + + val community_actions: CommunityActions? = null, + val can_mod: Boolean, + val post_tags: TagsView, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommunityTag.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommunityTag.kt index 9908f5a8..437ce75e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommunityTag.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommunityTag.kt @@ -6,7 +6,9 @@ import kotlinx.serialization.Serializable @CommonParcelize @Serializable -internal data class CreateCommunityTag( +data class CreateCommunityTag( val community_id: CommunityId, - val display_name: String, + val name: String, + val display_name: String? = null, + val description: String? = null, ): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateMultiCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateMultiCommunity.kt new file mode 100644 index 00000000..e017c6fa --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateMultiCommunity.kt @@ -0,0 +1,13 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class CreateMultiCommunity( + val name: String, + val title: String? = null, + val description: String? = null, +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateOrDeleteMultiCommunityEntry.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateOrDeleteMultiCommunityEntry.kt new file mode 100644 index 00000000..456eca63 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateOrDeleteMultiCommunityEntry.kt @@ -0,0 +1,12 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class CreateOrDeleteMultiCommunityEntry( + val id: MultiCommunityId, + val community_id: CommunityId, +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreatePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreatePost.kt index e3d8b0ae..64c164a3 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreatePost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreatePost.kt @@ -4,7 +4,6 @@ import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize -import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.TagId @CommonParcelize @Serializable @@ -21,5 +20,5 @@ data class CreatePost( /** Added in Lemmy 1.0.0 */ val tags: List? = null, /** Added in Lemmy 1.0.0 */ - val scheduled_publish_time: Long? = null, + val scheduled_publish_time_at: Long? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateSite.kt index e9329dc9..b2023c80 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateSite.kt @@ -8,6 +8,7 @@ import it.vercruysse.lemmyapi.dto.ListingType import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.MultiCommunityId // TODO: has changed @@ -34,18 +35,20 @@ data class CreateSite( val discussion_languages: List? = null, val slur_filter_regex: String? = null, val actor_name_max_length: Long? = null, - val rate_limit_message: Long? = null, - val rate_limit_message_per_second: Long? = null, - val rate_limit_post: Long? = null, - val rate_limit_post_per_second: Long? = null, - val rate_limit_register: Long? = null, - val rate_limit_register_per_second: Long? = null, - val rate_limit_image: Long? = null, - val rate_limit_image_per_second: Long? = null, - val rate_limit_comment: Long? = null, - val rate_limit_comment_per_second: Long? = null, - val rate_limit_search: Long? = null, - val rate_limit_search_per_second: Long? = null, + val rate_limit_message_max_requests: Long? = null, + val rate_limit_message_interval_seconds: Long? = null, + val rate_limit_post_max_requests: Long? = null, + val rate_limit_post_interval_seconds: Long? = null, + val rate_limit_register_max_requests: Long? = null, + val rate_limit_register_interval_seconds: Long? = null, + val rate_limit_image_max_requests: Long? = null, + val rate_limit_image_interval_seconds: Long? = null, + val rate_limit_comment_max_requests: Long? = null, + val rate_limit_comment_interval_seconds: Long? = null, + val rate_limit_search_max_requests: Long? = null, + val rate_limit_search_interval_seconds: Long? = null, + val rate_limit_import_user_settings_max_requests: Long? = null, + val rate_limit_import_user_settings_interval_seconds: Long? = null, val federation_enabled: Boolean? = null, val federation_debug: Boolean? = null, val captcha_enabled: Boolean? = null, @@ -56,4 +59,6 @@ data class CreateSite( val registration_mode: RegistrationMode? /* "Closed" | "RequireApplication" | "Open" */ = null, val content_warning: String? = null, val default_post_listing_mode: PostListingMode? /* "List" | "Card" | "SmallCard" */ = null, + /* Added in 1.0.0 */ + val suggested_communities: MultiCommunityId? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CustomEmoji.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CustomEmoji.kt index 2232da42..c5268ac8 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CustomEmoji.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CustomEmoji.kt @@ -13,6 +13,6 @@ data class CustomEmoji( val image_url: String, val alt_text: String, val category: String, - val published: String, - val updated: String? = null, + val published_at: String, + val updated_at: String? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeleteCommunityTag.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeleteCommunityTag.kt index 460d88a2..7a32d54c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeleteCommunityTag.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeleteCommunityTag.kt @@ -2,7 +2,6 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.TagId import kotlinx.serialization.Serializable @CommonParcelize diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeleteOAuthProvider.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeleteOAuthProvider.kt index 3f6b51a2..695b4451 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeleteOAuthProvider.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeleteOAuthProvider.kt @@ -2,7 +2,6 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.OAuthProviderId import kotlinx.serialization.Serializable @CommonParcelize diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditPost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditPost.kt index 391ac51f..bdedd242 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditPost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditPost.kt @@ -17,7 +17,7 @@ data class EditPost( val language_id: LanguageId? = null, val custom_thumbnail: String? = null, /** Added in Lemmy 1.0.0 */ - val scheduled_publish_time: Long? = null, + val scheduled_publish_time_at: Long? = null, /** Added in Lemmy 1.0.0 */ val tags: List? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt index f6a4fb64..8197209c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt @@ -8,6 +8,7 @@ import it.vercruysse.lemmyapi.dto.ListingType import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.MultiCommunityId // TODO: many changes @@ -34,18 +35,22 @@ data class EditSite( val discussion_languages: List? = null, val slur_filter_regex: String? = null, val actor_name_max_length: Long? = null, - val rate_limit_message: Long? = null, - val rate_limit_message_per_second: Long? = null, - val rate_limit_post: Long? = null, - val rate_limit_post_per_second: Long? = null, - val rate_limit_register: Long? = null, - val rate_limit_register_per_second: Long? = null, - val rate_limit_image: Long? = null, - val rate_limit_image_per_second: Long? = null, - val rate_limit_comment: Long? = null, - val rate_limit_comment_per_second: Long? = null, - val rate_limit_search: Long? = null, - val rate_limit_search_per_second: Long? = null, + val rate_limit_message_max_requests: Long? = null, + val rate_limit_message_interval_seconds: Long? = null, + val rate_limit_post_max_requests: Long? = null, + val rate_limit_post_interval_seconds: Long? = null, + val rate_limit_register_max_requests: Long? = null, + val rate_limit_register_interval_seconds: Long? = null, + val rate_limit_image_max_requests: Long? = null, + val rate_limit_image_interval_seconds: Long? = null, + val rate_limit_comment_max_requests: Long? = null, + val rate_limit_comment_interval_seconds: Long? = null, + val rate_limit_search_max_requests: Long? = null, + val rate_limit_search_interval_seconds: Long? = null, + /* Added in 1.0.0 */ + val rate_limit_import_user_settings_max_requests: Long? = null, + /* Added in 1.0.0 */ + val rate_limit_import_user_settings_interval_seconds: Long? = null, val federation_enabled: Boolean? = null, val federation_debug: Boolean? = null, val captcha_enabled: Boolean? = null, @@ -58,4 +63,6 @@ data class EditSite( val reports_email_admins: Boolean? = null, val content_warning: String? = null, val default_post_listing_mode: PostListingMode? /* "List" | "Card" | "SmallCard" */ = null, + /* Added in 1.0.0 */ + val suggested_communities: MultiCommunityId? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ExportDataResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ExportDataResponse.kt new file mode 100644 index 00000000..8a4fc3da --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ExportDataResponse.kt @@ -0,0 +1,16 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class ExportDataResponse( + val notifications: List, + val content: List, + val read_posts: List, + val liked: List, + val moderates: List, + val settings: UserSettingsBackup, +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/FederationBlockList.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/FederationBlockList.kt index e200370b..5bc729d2 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/FederationBlockList.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/FederationBlockList.kt @@ -2,14 +2,13 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.InstanceId import kotlinx.serialization.Serializable @CommonParcelize @Serializable data class FederationBlockList( val instance_id: InstanceId, - val published: String, - val updated: String? = null, - val expires: String? = null, + val published_at: String, + val updated_at: String? = null, + val expires_at: String? = null, ): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/FollowMultiCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/FollowMultiCommunity.kt new file mode 100644 index 00000000..ec9bd5cf --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/FollowMultiCommunity.kt @@ -0,0 +1,12 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class FollowMultiCommunity( + val multi_community_id: MultiCommunityId, + val follow: Boolean, +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetModlogResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetModlogResponse.kt index eb5808b3..563cd05c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetModlogResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetModlogResponse.kt @@ -5,8 +5,6 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize -// TODO: mapping changes - @CommonParcelize @Serializable data class GetModlogResponse( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetMultiCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetMultiCommunity.kt new file mode 100644 index 00000000..ebcf8780 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetMultiCommunity.kt @@ -0,0 +1,11 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class GetMultiCommunity( + val id: MultiCommunityId, +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetMultiCommunityResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetMultiCommunityResponse.kt new file mode 100644 index 00000000..8f71f4b5 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetMultiCommunityResponse.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class GetMultiCommunityResponse( + val multi_community_view: MultiCommunityView, + val communities: List, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPosts.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPosts.kt index 24f1e7c9..f4a853fa 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPosts.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPosts.kt @@ -8,28 +8,32 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.dto.PAGE_CURSOR_GUARD -// TODO: many changes @CommonParcelize @Serializable data class GetPosts( val type_: ListingType? /* "All" | "Local" | "Subscribed" | "ModeratorView" */ = null, val sort: SortType? /* "Active" | "Hot" | "New" | "Old" | "TopDay" | "TopWeek" | "TopMonth" | "TopYear" | "TopAll" | "MostComments" | "NewComments" | "TopHour" | "TopSixHour" | "TopTwelveHour" | "TopThreeMonths" | "TopSixMonths" | "TopNineMonths" | "Controversial" | "Scaled" */ = null, - /* starts from 1, null is considered not set, deprecated 0.19+, set to support 0.18 */ - val page: Long? = null, - val limit: Long? = null, val community_id: CommunityId? = null, val community_name: String? = null, - val saved_only: Boolean? = null, - val liked_only: Boolean? = null, - val disliked_only: Boolean? = null, + /** Added in 1.0.0 */ + val multi_community_id: MultiCommunityId? = null, val show_hidden: Boolean? = null, - /** The page cursor to the next list, null is valid and considered first list */ - val page_cursor: PaginationCursor? = PAGE_CURSOR_GUARD, // Guard is used to detect when null is set /** Added in 0.19.6 */ val show_read: Boolean? = null, /** Added in 0.19.6 */ val show_nsfw: Boolean? = null, + /** Added in 1.0.0 */ + val hide_media: Boolean? = null, + /** Added in 1.0.0 */ + val mark_as_read: Boolean? = null, + /** Added in 1.0.0 */ + val no_comments_only: Boolean? = null, + /** The page cursor to the next list, null is valid and considered first list */ + val page_cursor: PaginationCursor? = PAGE_CURSOR_GUARD, // Guard is used to detect when null is set + /** starts from 1, null is considered not set, deprecated 0.19+, set to support 0.18, removed in 1.0.0 */ + val page: Long? = null, + val limit: Long? = null, ) : DatatypeRoot { internal fun toPostsForm(): GetPosts { diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetRandomCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetRandomCommunity.kt index d9144fe4..184aa172 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetRandomCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetRandomCommunity.kt @@ -8,6 +8,6 @@ import kotlinx.serialization.Serializable @CommonParcelize @Serializable data class GetRandomCommunity( - val type_: ListingType? /* "All" | "Local" | "Subscribed" | "ModeratorView" */ = null, + val type_: ListingType? /* "All" | "Local" | "Subscribed" | "ModeratorView" | "Suggested" */ = null, val show_nsfw: Boolean? = null, ): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Instance.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Instance.kt index 85dd51b5..24a2a968 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Instance.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Instance.kt @@ -10,8 +10,8 @@ import it.vercruysse.lemmyapi.CommonParcelize data class Instance( val id: InstanceId, val domain: String, - val published: String, - val updated: String? = null, + val published_at: String, + val updated_at: String? = null, val software: String? = null, val version: String? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/InstanceActions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/InstanceActions.kt index fb58c7dc..0598e537 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/InstanceActions.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/InstanceActions.kt @@ -7,7 +7,8 @@ import kotlinx.serialization.Serializable @CommonParcelize @Serializable data class InstanceActions( - val blocked: String? = null, - val received_ban: String? = null, - val ban_expires: String? = null, + val blocked_communities_at: String? = null, + val received_ban_at: String? = null, + val ban_expires_at: String? = null, + val blocked_persons_at: String? = null, ): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/InstanceWithFederationState.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/InstanceWithFederationState.kt index 1d9ed5c1..ddb5ec1c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/InstanceWithFederationState.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/InstanceWithFederationState.kt @@ -10,8 +10,8 @@ import it.vercruysse.lemmyapi.CommonParcelize data class InstanceWithFederationState( val id: InstanceId, val domain: String, - val published: String, - val updated: String? = null, + val published_at: String, + val updated_at: String? = null, val software: String? = null, val version: String? = null, val federation_state: ReadableFederationState? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListLoginsResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListLoginsResponse.kt new file mode 100644 index 00000000..ef2dad8b --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListLoginsResponse.kt @@ -0,0 +1,11 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class ListLoginsResponse( + val logins: List, +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListMultiCommunities.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListMultiCommunities.kt new file mode 100644 index 00000000..b7238a5e --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListMultiCommunities.kt @@ -0,0 +1,12 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class ListMultiCommunities( + val creator_id: PersonId? = null, + val followed_only: Boolean? = null, +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListMultiCommunitiesResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListMultiCommunitiesResponse.kt new file mode 100644 index 00000000..be338443 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListMultiCommunitiesResponse.kt @@ -0,0 +1,11 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class ListMultiCommunitiesResponse( + val multi_communities: List, +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListNotifications.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListNotifications.kt new file mode 100644 index 00000000..6c5692c3 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListNotifications.kt @@ -0,0 +1,16 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import it.vercruysse.lemmyapi.dto.ListingType +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class ListNotifications( + val type_: ListingType? /* "All" | "Reply" | "Mention" | "PrivateMessage" | "Subscribed" */ = null, + val unread_only: Boolean? = null, + val page_cursor: PaginationCursor? = null, + val page_back: Boolean? = null, + val limit: Long? = null, +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListNotificationsResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListNotificationsResponse.kt new file mode 100644 index 00000000..3dcd18a5 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListNotificationsResponse.kt @@ -0,0 +1,13 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class ListNotificationsResponse( + val notifications: List, + val next_page: PaginationCursor? = null, + val prev_page: PaginationCursor? = null, +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonHidden.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonHidden.kt new file mode 100644 index 00000000..4c7547d8 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonHidden.kt @@ -0,0 +1,15 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +// TODO: renamed prob changed in latest types + +@CommonParcelize +@Serializable +data class ListPersonHidden( + val page_cursor: PaginationCursor? = null, + val page_back: Boolean? = null, + val limit: Long? = null, +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonLiked.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonLiked.kt new file mode 100644 index 00000000..689106bf --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonLiked.kt @@ -0,0 +1,17 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import it.vercruysse.lemmyapi.dto.LikeType +import it.vercruysse.lemmyapi.dto.ListingType +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class ListPersonLiked( + val type_: ListingType? /* "All" | "Comments" | "Posts" */ = null, + val like_type: LikeType? /* "All" | "LikedOnly" | "DislikedOnly" */ = null, + val page_cursor: PaginationCursor? = null, + val page_back: Boolean? = null, + val limit: Long? = null, +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonLikedResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonLikedResponse.kt new file mode 100644 index 00000000..6bfab3a7 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonLikedResponse.kt @@ -0,0 +1,13 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class ListPersonLikedResponse( + val liked: List, + val next_page: PaginationCursor? = null, + val prev_page: PaginationCursor? = null, +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonRead.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonRead.kt new file mode 100644 index 00000000..97b66c19 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonRead.kt @@ -0,0 +1,13 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class ListPersonRead( + val page_cursor: PaginationCursor? = null, + val page_back: Boolean? = null, + val limit: Long? = null, +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonReadResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonReadResponse.kt new file mode 100644 index 00000000..ac949229 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonReadResponse.kt @@ -0,0 +1,13 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class ListPersonReadResponse( + val read: List, + val next_page: PaginationCursor? = null, + val prev_page: PaginationCursor? = null, +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalImage.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalImage.kt index 6bc976f5..a2839890 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalImage.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalImage.kt @@ -4,13 +4,16 @@ import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PostId @CommonParcelize @Serializable data class LocalImage( - val local_user_id: LocalUserId? = null, + val person_id: PersonId? = null, val pictrs_alias: String, /** Removed in Lemmy 1.0.0 */ val pictrs_delete_token: String, - val published: String, + val published_at: String, + /** Added in Lemmy 1.0.0 */ + val thumbnail_for_post_id: PostId? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalImageView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalImageView.kt index 758afa35..ad1f1199 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalImageView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalImageView.kt @@ -10,4 +10,5 @@ import it.vercruysse.lemmyapi.CommonParcelize data class LocalImageView( val local_image: LocalImage, val person: Person, + val post: Post? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalSite.kt index 9ff509c2..1c273b63 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalSite.kt @@ -27,6 +27,7 @@ data class LocalSite( val default_theme: String, val default_post_listing_type: ListingType /* "All" | "Local" | "Subscribed" | "ModeratorView" */, val legal_information: String? = null, + /** Removed in Lemmy 1.0.0 */ val hide_modlog_mod_names: Boolean, val application_email_admins: Boolean, val slur_filter_regex: String? = null, @@ -34,8 +35,8 @@ data class LocalSite( val federation_enabled: Boolean, val captcha_enabled: Boolean, val captcha_difficulty: String, - val published: String, - val updated: String? = null, + val published_at: String, + val updated_at: String? = null, val registration_mode: RegistrationMode /* "Closed" | "RequireApplication" | "Open" */, val reports_email_admins: Boolean, val federation_signed_fetch: Boolean, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalSiteRateLimit.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalSiteRateLimit.kt index 5574d6a5..803630f6 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalSiteRateLimit.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalSiteRateLimit.kt @@ -9,20 +9,20 @@ import it.vercruysse.lemmyapi.CommonParcelize @Serializable data class LocalSiteRateLimit( val local_site_id: LocalSiteId, - val message: Long, - val message_per_second: Long, - val post: Long, - val post_per_second: Long, - val register: Long, - val register_per_second: Long, - val image: Long, - val image_per_second: Long, - val comment: Long, - val comment_per_second: Long, - val search: Long, - val search_per_second: Long, - val published: String, - val updated: String? = null, - val import_user_settings: Long, - val import_user_settings_per_second: Long, + val message_max_requests: Long, + val message_interval_seconds: Long, + val post_max_requests: Long, + val post_interval_seconds: Long, + val register_max_requests: Long, + val register_interval_seconds: Long, + val image_max_requests: Long, + val image_interval_seconds: Long, + val comment_max_requests: Long, + val comment_interval_seconds: Long, + val search_max_requests: Long, + val search_interval_seconds: Long, + val published_at: String, + val updated_at: String? = null, + val import_user_settings_max_requests: Long, + val import_user_settings_interval_seconds: Long, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalSiteUrlBlocklist.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalSiteUrlBlocklist.kt index 9e000705..457dba69 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalSiteUrlBlocklist.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalSiteUrlBlocklist.kt @@ -10,6 +10,6 @@ import it.vercruysse.lemmyapi.CommonParcelize data class LocalSiteUrlBlocklist( val id: Long, val url: String, - val published: String, - val updated: String? = null, + val published_at: String, + val updated_at: String? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUser.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUser.kt index bd9b3a0b..3ca361a7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUser.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUser.kt @@ -8,6 +8,7 @@ import it.vercruysse.lemmyapi.dto.SortType import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.dto.VoteShow // TODO: changes @@ -24,13 +25,13 @@ data class LocalUser( val interface_language: String, val show_avatars: Boolean, val send_notifications_to_email: Boolean, - val show_scores: Boolean, val show_bot_accounts: Boolean, val show_read_posts: Boolean, val email_verified: Boolean, val accepted_application: Boolean, val open_links_in_new_tab: Boolean, val blur_nsfw: Boolean, + /** Removed in 1.0.0 */ val auto_expand: Boolean, val infinite_scroll_enabled: Boolean, val admin: Boolean, @@ -38,7 +39,27 @@ data class LocalUser( val totp_2fa_enabled: Boolean, val enable_keyboard_navigation: Boolean, val enable_animated_images: Boolean, + /** Added in 1.0.0 */ + val enable_private_messages: Boolean, val collapse_bot_comments: Boolean, + /** Added in 1.0.0 */ + val default_comment_sort_type: SortType, + /** Added in 1.0.0 */ + val auto_mark_fetched_posts_as_read: Boolean, /** Added in 0.19.11 */ - val last_donation_notification: String, + val last_donation_notification_at: String, + /** Added in 1.0.0 */ + val hide_media: Boolean, + /** Added in 1.0.0 */ + val default_post_time_range_seconds: Long? = null, + /** Added in 1.0.0 */ + val show_score: Boolean, + /** Added in 1.0.0 */ + val show_upvotes: Boolean, + /** Added in 1.0.0 */ + val show_downvotes: VoteShow /* "Show" | "ShowForOthers" | "Hide" */, + /** Added in 1.0.0 */ + val show_upvote_percentage: Boolean, + /** Added in 1.0.0 */ + val show_person_votes: Boolean, ) : DatatypeRoot, Identity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUserView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUserView.kt index 1821db53..430421ea 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUserView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUserView.kt @@ -14,9 +14,12 @@ data class LocalUserView( val local_user: LocalUser, // Added in 0.19.4 // TODO Possible add actual default instead? + // TODO: removed? + // TODO seems to be moved into local_user val local_user_vote_display_mode: LocalUserVoteDisplayMode? = null, val person: Person, - val counts: PersonAggregates, + /** Added in 1.0.0 */ + val banned: Boolean, ) : DatatypeRoot, Identity { override val id: Long get() = local_user.id diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LockPost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LockPost.kt index 245ba63e..15817b5e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LockPost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LockPost.kt @@ -10,4 +10,5 @@ import it.vercruysse.lemmyapi.CommonParcelize data class LockPost( val post_id: PostId, val locked: Boolean, + val reason: String? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LoginToken.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LoginToken.kt index 3e940a76..2ce31f45 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LoginToken.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LoginToken.kt @@ -9,7 +9,7 @@ import it.vercruysse.lemmyapi.CommonParcelize @Serializable data class LoginToken( val user_id: LocalUserId, - val published: String, + val published_at: String, val ip: String? = null, val user_agent: String? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkNotificationAsRead.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkNotificationAsRead.kt new file mode 100644 index 00000000..92c68626 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkNotificationAsRead.kt @@ -0,0 +1,13 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.NotificationId +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class MarkNotificationAsRead( + val notification_id: NotificationId, + val read: Boolean, +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModAdd.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModAdd.kt index 84d62d4b..80d42c5d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModAdd.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModAdd.kt @@ -12,5 +12,5 @@ data class ModAdd( val mod_person_id: PersonId, val other_person_id: PersonId, val removed: Boolean, - val published: String, + val published_at: String, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModAddCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModAddCommunity.kt index 90a029c3..d843fb7e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModAddCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModAddCommunity.kt @@ -13,5 +13,5 @@ data class ModAddCommunity( val other_person_id: PersonId, val community_id: CommunityId, val removed: Boolean, - val published: String, + val published_at: String, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModBan.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModBan.kt index 3ed93a20..29b17304 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModBan.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModBan.kt @@ -14,8 +14,8 @@ data class ModBan( val other_person_id: PersonId, val reason: String? = null, val banned: Boolean, - val expires: String? = null, - val published: String, + val expires_at: String? = null, + val published_at: String, /** Added in Lemmy 1.0.0 */ val instance_id: InstanceId, ) : DatatypeRoot, Identity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModBanFromCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModBanFromCommunity.kt index 47f78316..25334a28 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModBanFromCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModBanFromCommunity.kt @@ -15,6 +15,6 @@ data class ModBanFromCommunity( val community_id: CommunityId, val reason: String? = null, val banned: Boolean, - val expires: String? = null, - val published: String, + val expires_at: String? = null, + val published_at: String, ) : DatatypeRoot, Identity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModChangeCommunityVisibility.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModChangeCommunityVisibility.kt index 23375c4f..666f825a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModChangeCommunityVisibility.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModChangeCommunityVisibility.kt @@ -11,7 +11,8 @@ data class ModChangeCommunityVisibility( val id: Long, val community_id: CommunityId, val mod_person_id: PersonId, - val published: String, + val published_at: String, + /** Removed in 1.0.0 */ val reason: String? = null, val visibility: CommunityVisibility /* "Public" | "Unlisted" | "LocalOnlyPublic" | "LocalOnlyPrivate" | "Private" */, ): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostAggregates.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModEditPost.kt similarity index 54% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostAggregates.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModEditPost.kt index a963c3cd..7f9f9f9e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostAggregates.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModEditPost.kt @@ -1,20 +1,15 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PostId +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.TagId import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - -// TODO: removed - @CommonParcelize @Serializable -data class PostAggregates( +data class ModEditPost( val post_id: PostId, - val comments: Long, - val score: Long, - val upvotes: Long, - val downvotes: Long, - val published: String, - val newest_comment_time: String, + val nsfw: Boolean? = null, + val tags: List? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModFeaturePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModFeaturePost.kt index 1d323811..d76eb71f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModFeaturePost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModFeaturePost.kt @@ -12,6 +12,6 @@ data class ModFeaturePost( val mod_person_id: PersonId, val post_id: PostId, val featured: Boolean, - val published: String, + val published_at: String, val is_featured_community: Boolean, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModLockPost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModLockPost.kt index 8c90d970..87da767f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModLockPost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModLockPost.kt @@ -12,5 +12,7 @@ data class ModLockPost( val mod_person_id: PersonId, val post_id: PostId, val locked: Boolean, - val published: String, + val published_at: String, + /** Added in 1.0.0 */ + val reason: String? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModRemoveComment.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModRemoveComment.kt index a1b7d21e..8ecec02c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModRemoveComment.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModRemoveComment.kt @@ -13,5 +13,5 @@ data class ModRemoveComment( val comment_id: CommentId, val reason: String? = null, val removed: Boolean, - val published: String, + val published_at: String, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModRemoveCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModRemoveCommunity.kt index d19e3149..95d48cd3 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModRemoveCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModRemoveCommunity.kt @@ -13,5 +13,5 @@ data class ModRemoveCommunity( val community_id: CommunityId, val reason: String? = null, val removed: Boolean, - val published: String, + val published_at: String, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModRemovePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModRemovePost.kt index 3a6b4d32..bf6212fe 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModRemovePost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModRemovePost.kt @@ -13,5 +13,5 @@ data class ModRemovePost( val post_id: PostId, val reason: String? = null, val removed: Boolean, - val published: String, + val published_at: String, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModTransferCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModTransferCommunity.kt index aa831551..f98a2544 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModTransferCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModTransferCommunity.kt @@ -12,5 +12,5 @@ data class ModTransferCommunity( val mod_person_id: PersonId, val other_person_id: PersonId, val community_id: CommunityId, - val published: String, + val published_at: String, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MultiCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MultiCommunity.kt new file mode 100644 index 00000000..b21768c4 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MultiCommunity.kt @@ -0,0 +1,21 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class MultiCommunity( + val id: MultiCommunityId, + val creator_id: PersonId, + val instance_id: InstanceId, + val name: String, + val title: String? = null, + val description: String? = null, + val local: Boolean, + val deleted: Boolean, + val ap_id: String, + val published_at: String, + val updated_at: String? = null, +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MultiCommunityFollow.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MultiCommunityFollow.kt new file mode 100644 index 00000000..b904623f --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MultiCommunityFollow.kt @@ -0,0 +1,14 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import it.vercruysse.lemmyapi.dto.CommunityFollowerState +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class MultiCommunityFollow( + val multi_community_id: MultiCommunityId, + val person_id: PersonId, + val follow_state: CommunityFollowerState /* "Accepted" | "Pending" | "ApprovalRequired" */, +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MultiCommunityId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MultiCommunityId.kt new file mode 100644 index 00000000..0f0e2217 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MultiCommunityId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.datatypes + +typealias MultiCommunityId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MultiCommunityView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MultiCommunityView.kt new file mode 100644 index 00000000..7df87ab4 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MultiCommunityView.kt @@ -0,0 +1,12 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class MultiCommunityView( + val multi: MultiCommunity, + val owner: Person, +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MyUserInfo.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MyUserInfo.kt index d5e8b0f8..359c17f0 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MyUserInfo.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MyUserInfo.kt @@ -12,7 +12,10 @@ data class MyUserInfo( val follows: List, val moderates: List, val community_blocks: List, + + // TODO add mapping once figured out val instance_blocks: List, + val person_blocks: List, /** Added in Lemmy 1.0.0 */ val keyword_blocks: List = emptyList(), diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonAggregates.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/NotePerson.kt similarity index 71% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonAggregates.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/NotePerson.kt index eda1aefa..79573e2d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonAggregates.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/NotePerson.kt @@ -1,16 +1,12 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - -// TODO removed - @CommonParcelize @Serializable -data class PersonAggregates( +data class NotePerson( val person_id: PersonId, - val post_count: Long, - val comment_count: Long, + val note: String, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Notification.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Notification.kt new file mode 100644 index 00000000..8e136757 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Notification.kt @@ -0,0 +1,19 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import it.vercruysse.lemmyapi.dto.NotificationType +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class Notification( + val id: NotificationId, + val recipient_id: PersonId, + val comment_id: CommentId? = null, + val read: Boolean, + val published_at: String, + val kind: NotificationType /* "Mention" | "Reply" | "Subscribed" | "PrivateMessage" */, + val post_id: PostId? = null, + val private_message_id: PrivateMessageId? = null, +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/NotificationData.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/NotificationData.kt new file mode 100644 index 00000000..4f0f8d18 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/NotificationData.kt @@ -0,0 +1,35 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.ExperimentalSerializationApi +import kotlinx.serialization.SerialName +import kotlinx.serialization.Serializable +import kotlinx.serialization.json.JsonClassDiscriminator + +@CommonParcelize +@Serializable +@OptIn(ExperimentalSerializationApi::class) +@JsonClassDiscriminator("type_") +sealed class NotificationData : DatatypeRoot { + @CommonParcelize + @Serializable + @SerialName("Post") + data class Post( + val post: PostView + ) : NotificationData() + + @CommonParcelize + @Serializable + @SerialName("Comment") + data class Comment( + val comment: CommentView + ) : NotificationData() + + @CommonParcelize + @Serializable + @SerialName("PrivateMessage") + data class PrivateMessage( + val private_message: PrivateMessageView + ) : NotificationData() +} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/NotificationId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/NotificationId.kt new file mode 100644 index 00000000..f9720c49 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/NotificationId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.datatypes + +typealias NotificationId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/NotificationView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/NotificationView.kt new file mode 100644 index 00000000..a81d22e2 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/NotificationView.kt @@ -0,0 +1,12 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class NotificationView( + val notification: Notification, + val data: NotificationData, +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/OAuthAccount.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/OAuthAccount.kt index 264af78f..15f96475 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/OAuthAccount.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/OAuthAccount.kt @@ -10,6 +10,6 @@ data class OAuthAccount( val local_user_id: LocalUserId, val oauth_provider_id: OAuthProviderId, val oauth_user_id: String, - val published: String, - val updated: String? = null, + val published_at: String, + val updated_at: String? = null, ): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/OAuthProvider.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/OAuthProvider.kt index 93e1ee1d..8b07c17b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/OAuthProvider.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/OAuthProvider.kt @@ -19,7 +19,7 @@ data class OAuthProvider( val auto_verify_email: Boolean, val account_linking_enabled: Boolean, val enabled: Boolean, - val published: String, - val updated: String? = null, + val published_at: String, + val updated_at: String? = null, val use_pkce: Boolean, ): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PendingFollow.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PendingFollow.kt index bd15f2f3..0cbc24d7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PendingFollow.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PendingFollow.kt @@ -2,15 +2,14 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot +import it.vercruysse.lemmyapi.dto.CommunityFollowerState import kotlinx.serialization.Serializable -// TODO: followState enum - @CommonParcelize @Serializable data class PendingFollow( val person: Person, val community: Community, val is_new_instance: Boolean, - val follow_state: String? /* "Accepted" | "Pending" | "ApprovalRequired" */ = null, + val follow_state: CommunityFollowerState? /* "Accepted" | "Pending" | "ApprovalRequired" */ = null, ): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Person.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Person.kt index 80e59858..aaf1121e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Person.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Person.kt @@ -6,8 +6,6 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize -// TODO: lots of changes - @CommonParcelize @Serializable data class Person( @@ -15,16 +13,16 @@ data class Person( val name: String, val display_name: String? = null, val avatar: String? = null, - val banned: Boolean, - val published: String, - val updated: String? = null, - val actor_id: String, + val published_at: String, + val updated_at: String? = null, + val ap_id: String, val bio: String? = null, val local: Boolean, val banner: String? = null, val deleted: Boolean, val matrix_user_id: String? = null, val bot_account: Boolean, - val ban_expires: String? = null, val instance_id: InstanceId, + val post_count: Long, + val comment_count: Long, ) : DatatypeRoot, Identity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonActions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonActions.kt index 8265edd9..9818b051 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonActions.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonActions.kt @@ -7,5 +7,10 @@ import kotlinx.serialization.Serializable @CommonParcelize @Serializable data class PersonActions( - val blocked: String? = null, + val blocked_at: String? = null, + val noted_at: String? = null, + val note: String? = null, + val voted_at: String? = null, + val upvotes: Long? = null, + val downvotes: Long? = null, ): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonLikedCombinedView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonLikedCombinedView.kt new file mode 100644 index 00000000..9e14eb94 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonLikedCombinedView.kt @@ -0,0 +1,29 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.ExperimentalSerializationApi +import kotlinx.serialization.SerialName +import kotlinx.serialization.Serializable +import kotlinx.serialization.json.JsonClassDiscriminator + +@CommonParcelize +@Serializable +@OptIn(ExperimentalSerializationApi::class) +@JsonClassDiscriminator("type_") +sealed class PersonLikedCombinedView : DatatypeRoot { + + @CommonParcelize + @Serializable + @SerialName("Post") + data class Post( + val post: PostView + ) : PersonLikedCombinedView() + + @CommonParcelize + @Serializable + @SerialName("Comment") + data class Comment( + val comment: CommentView + ) : PersonLikedCombinedView() +} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonMentionView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonMentionView.kt index 7d0fc0a4..d25ad957 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonMentionView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonMentionView.kt @@ -17,7 +17,7 @@ data class PersonMentionView( val post: Post, val community: Community, val recipient: Person, - val counts: CommentAggregates, +// val counts: CommentAggregates, val creator_banned_from_community: Boolean, val banned_from_community: Boolean, val creator_is_moderator: Boolean, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonView.kt index bca2fe47..0df6455d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonView.kt @@ -5,12 +5,11 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize -// TODO: changed - @CommonParcelize @Serializable data class PersonView( val person: Person, - val counts: PersonAggregates, val is_admin: Boolean, -) : DatatypeRoot + val person_actions: PersonActions? = null, + val creator_banned: Boolean, + ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Post.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Post.kt index c856ea86..7f9f8fc2 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Post.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Post.kt @@ -6,8 +6,6 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize -// TODO: changes - @CommonParcelize @Serializable data class Post( @@ -19,8 +17,8 @@ data class Post( val community_id: CommunityId, val removed: Boolean, val locked: Boolean, - val published: String, - val updated: String? = null, + val published_at: String, + val updated_at: String? = null, val deleted: Boolean, val nsfw: Boolean, val embed_title: String? = null, @@ -34,4 +32,13 @@ data class Post( val featured_local: Boolean, val url_content_type: String? = null, val alt_text: String? = null, + val scheduled_publish_time_at: String? = null, + val comments: Long, + val score: Long, + val upvotes: Long, + val downvotes: Long, + val newest_comment_time_at: String, + val report_count: Long, + val unresolved_report_count: Long, + val federation_pending: Boolean, ) : DatatypeRoot, Identity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostActions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostActions.kt index f5cd648e..4d24c705 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostActions.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostActions.kt @@ -2,16 +2,18 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot +import it.vercruysse.lemmyapi.dto.PostNotificationsMode import kotlinx.serialization.Serializable @CommonParcelize @Serializable data class PostActions( - val read: String? = null, - val read_comments: String? = null, + val read_at: String? = null, + val read_comments_at: String? = null, val read_comments_amount: Long? = null, - val saved: String? = null, - val liked: String? = null, - val like_score: Long? = null, - val hidden: String? = null, + val saved_at: String? = null, + val liked_at: String? = null, + val like_score: Int? = null, + val hidden_at: String? = null, + val notifications: PostNotificationsMode? /* "AllComments" | "RepliesAndMentions" | "Mute" */ = null, ): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostOrCommentOrPrivateMessage.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostOrCommentOrPrivateMessage.kt new file mode 100644 index 00000000..c6bf1ebd --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostOrCommentOrPrivateMessage.kt @@ -0,0 +1,35 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.ExperimentalSerializationApi +import kotlinx.serialization.SerialName +import kotlinx.serialization.Serializable +import kotlinx.serialization.json.JsonClassDiscriminator + +@CommonParcelize +@Serializable +@OptIn(ExperimentalSerializationApi::class) +@JsonClassDiscriminator("type_") +sealed class PostOrCommentOrPrivateMessage : DatatypeRoot { + @CommonParcelize + @Serializable + @SerialName("Post") + data class Post( + val post: it.vercruysse.lemmyapi.datatypes.Post + ) : PostOrCommentOrPrivateMessage() + + @CommonParcelize + @Serializable + @SerialName("Comment") + data class Comment( + val comment: it.vercruysse.lemmyapi.datatypes.Comment + ) : PostOrCommentOrPrivateMessage() + + @CommonParcelize + @Serializable + @SerialName("PrivateMessage") + data class PrivateMessage( + val private_message: it.vercruysse.lemmyapi.datatypes.PrivateMessage + ) : PostOrCommentOrPrivateMessage() +} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostReport.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostReport.kt index e28746ed..c8f2f31b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostReport.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostReport.kt @@ -18,8 +18,8 @@ data class PostReport( val reason: String, val resolved: Boolean, val resolver_id: PersonId? = null, - val published: String, - val updated: String? = null, + val published_at: String, + val updated_at: String? = null, /** Added in Lemmy 1.0.0 */ val violates_instance_rules: Boolean, ) : DatatypeRoot, Identity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostReportView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostReportView.kt index 880305a3..58a33849 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostReportView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostReportView.kt @@ -1,12 +1,10 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.dto.SubscribedType import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize -// TODO: changes @CommonParcelize @Serializable @@ -16,16 +14,12 @@ data class PostReportView( val community: Community, val creator: Person, val post_creator: Person, - val creator_banned_from_community: Boolean, - val creator_is_moderator: Boolean, - val creator_is_admin: Boolean, - val subscribed: SubscribedType /* "Subscribed" | "NotSubscribed" | "Pending" */, - val saved: Boolean, - val read: Boolean, - val hidden: Boolean, - val creator_blocked: Boolean, - val my_vote: Int = 0, - val unread_comments: Long, - val counts: PostAggregates, + val community_actions: CommunityActions? = null, + val post_actions: PostActions? = null, + val person_actions: PersonActions? = null, val resolver: Person? = null, + val creator_is_admin: Boolean, + val creator_is_moderator: Boolean, + val creator_banned: Boolean, + val creator_banned_from_community: Boolean, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostView.kt index 13c8611c..ab782a87 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostView.kt @@ -1,35 +1,31 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.dto.SubscribedType import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.Identity -// TODO: changes - @CommonParcelize @Serializable data class PostView( val post: Post, val creator: Person, val community: Community, - val creator_banned_from_community: Boolean, - val banned_from_community: Boolean, - val creator_is_moderator: Boolean, - val creator_is_admin: Boolean, - val counts: PostAggregates, - val subscribed: SubscribedType /* "Subscribed" | "NotSubscribed" | "Pending" */, - val saved: Boolean, - val read: Boolean, - val hidden: Boolean, - val creator_blocked: Boolean, - val my_vote: Int = 0, - val unread_comments: Long, /** Added in 0.19.6 */ val image_details: ImageDetails? = null, -) : DatatypeRoot, Identity { + val community_actions: CommunityActions? = null, + val person_actions: PersonActions? = null, + val post_actions: PostActions? = null, + val tags: TagsView, + /** Added in 1.0.0 */ + val can_mod: Boolean, + val creator_banned: Boolean, + val creator_is_admin: Boolean, + val creator_is_moderator: Boolean, + val creator_banned_from_community: Boolean, + + ) : DatatypeRoot, Identity { override val id: Long get() = post.id } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessage.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessage.kt index 795f8160..e690cad8 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessage.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessage.kt @@ -14,9 +14,10 @@ data class PrivateMessage( val recipient_id: PersonId, val content: String, val deleted: Boolean, + /** Removed in 1.0.0 */ val read: Boolean, - val published: String, - val updated: String? = null, + val published_at: String, + val updated_at: String? = null, val ap_id: String, val local: Boolean, /** Added in Lemmy 1.0.0 */ diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessageReport.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessageReport.kt index eb6d8b28..69cf2bb1 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessageReport.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessageReport.kt @@ -16,6 +16,6 @@ data class PrivateMessageReport( val reason: String, val resolved: Boolean, val resolver_id: PersonId? = null, - val published: String, - val updated: String? = null, + val published_at: String, + val updated_at: String? = null, ) : DatatypeRoot, Identity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ReadableFederationState.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ReadableFederationState.kt index 61b26e24..014344f8 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ReadableFederationState.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ReadableFederationState.kt @@ -10,8 +10,8 @@ import it.vercruysse.lemmyapi.CommonParcelize data class ReadableFederationState( val instance_id: InstanceId, val last_successful_id: ActivityId? = null, - val last_successful_published_time: String? = null, + val last_successful_published_time_at: String? = null, val fail_count: Long, - val last_retry: String? = null, - val next_retry: String? = null, + val last_retry_at: String? = null, + val next_retry_at: String? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/RegistrationApplication.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/RegistrationApplication.kt index 7b44b9e9..2b3735ad 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/RegistrationApplication.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/RegistrationApplication.kt @@ -13,5 +13,5 @@ data class RegistrationApplication( val answer: String, val admin_id: PersonId? = null, val deny_reason: String? = null, - val published: String, + val published_at: String, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ResendVerificationEmail.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ResendVerificationEmail.kt index 5bf8b7ce..6d1f7725 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ResendVerificationEmail.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ResendVerificationEmail.kt @@ -2,7 +2,6 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.SensitiveString import kotlinx.serialization.Serializable @CommonParcelize diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Search.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Search.kt index 883d575f..875a3ab3 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Search.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Search.kt @@ -7,6 +7,7 @@ import it.vercruysse.lemmyapi.dto.SearchType import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PaginationCursor // TODO: changes @@ -19,9 +20,23 @@ data class Search( val creator_id: PersonId? = null, val type_: SearchType? /* "All" | "Comments" | "Posts" | "Communities" | "Users" | "Url" */ = null, val sort: SortType? /* "Active" | "Hot" | "New" | "Old" | "TopDay" | "TopWeek" | "TopMonth" | "TopYear" | "TopAll" | "MostComments" | "NewComments" | "TopHour" | "TopSixHour" | "TopTwelveHour" | "TopThreeMonths" | "TopSixMonths" | "TopNineMonths" | "Controversial" | "Scaled" */ = null, + val time_range_seconds: Long? = null, val listing_type: ListingType? /* "All" | "Local" | "Subscribed" | "ModeratorView" */ = null, + /** Removed in 1.0.0 */ val page: Long? = null, - val limit: Long? = null, /** Added in 0.19.6 */ - val post_title_only: Boolean? = null, + val title_only: Boolean? = null, + /** Added in 1.0.0 */ + val post_url_only: Boolean? = null, + /** Added in 1.0.0 */ + val liked_only: Boolean? = null, + /** Added in 1.0.0 */ + val disliked_only: Boolean? = null, + /** Added in 1.0.0 */ + val show_nsfw: Boolean? = null, + /** Added in 1.0.0 */ + val page_cursor: PaginationCursor? = null, + /** Added in 1.0.0 */ + val page_back: Boolean? = null, + val limit: Long? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Site.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Site.kt index cc533901..f27482f7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Site.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Site.kt @@ -14,12 +14,12 @@ data class Site( override val id: SiteId, val name: String, val sidebar: String? = null, - val published: String, - val updated: String? = null, + val published_at: String, + val updated_at: String? = null, val icon: String? = null, val banner: String? = null, val description: String? = null, - val actor_id: String, + val ap_id: String, val last_refreshed_at: String, val inbox_url: String, val instance_id: InstanceId, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Tag.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Tag.kt index bf2f799b..4e6e7e8a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Tag.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Tag.kt @@ -9,9 +9,13 @@ import kotlinx.serialization.Serializable data class Tag( val id: TagId, val ap_id: String, + /** Added in 1.0.0 */ + val name: String, + /** Added in 1.0.0 */ + val description: String? = null, val display_name: String, val community_id: CommunityId, - val published: String, - val updated: String? = null, + val published_at: String, + val updated_at: String? = null, val deleted: Boolean, ): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Tagline.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Tagline.kt index 7152125e..d3eeec66 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Tagline.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Tagline.kt @@ -10,6 +10,6 @@ import it.vercruysse.lemmyapi.CommonParcelize data class Tagline( val id: TaglineId, val content: String, - val published: String, - val updated: String? = null, + val published_at: String, + val updated_at: String? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UpdateCommunityNotifications.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UpdateCommunityNotifications.kt new file mode 100644 index 00000000..9542ee12 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UpdateCommunityNotifications.kt @@ -0,0 +1,13 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import it.vercruysse.lemmyapi.dto.CommunityNotificationsMode +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class UpdateCommunityNotifications( + val community_id: CommunityId, + val mode: CommunityNotificationsMode /* "AllPostsAndComments" | "AllPosts" | "RepliesAndMentions" | "Mute" */, +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UpdateMultiCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UpdateMultiCommunity.kt new file mode 100644 index 00000000..d41b5dec --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UpdateMultiCommunity.kt @@ -0,0 +1,14 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class UpdateMultiCommunity( + val id: MultiCommunityId, + val title: String? = null, + val description: String? = null, + val deleted: Boolean? = null, +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UpdatePostNotifications.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UpdatePostNotifications.kt new file mode 100644 index 00000000..c20a1d8e --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UpdatePostNotifications.kt @@ -0,0 +1,12 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class UpdatePostNotifications( + val post_id: PostId, + val mode: String /* "AllComments" | "RepliesAndMentions" | "Mute" */, +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UserBlockInstanceCommunitiesParams.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UserBlockInstanceCommunitiesParams.kt new file mode 100644 index 00000000..e1694ee6 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UserBlockInstanceCommunitiesParams.kt @@ -0,0 +1,12 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class UserBlockInstanceCommunitiesParams( + val instance_id: InstanceId, + val block: Boolean, +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UserBlockInstancePersonsParams.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UserBlockInstancePersonsParams.kt new file mode 100644 index 00000000..98a6742b --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UserBlockInstancePersonsParams.kt @@ -0,0 +1,12 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class UserBlockInstancePersonsParams( + val instance_id: InstanceId, + val block: Boolean, +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UserSettingsBackup.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UserSettingsBackup.kt new file mode 100644 index 00000000..4175a839 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UserSettingsBackup.kt @@ -0,0 +1,25 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class UserSettingsBackup( + val display_name: String? = null, + val bio: String? = null, + val avatar: String? = null, + val banner: String? = null, + val matrix_id: String? = null, + val bot_account: Boolean? = null, + val settings: LocalUser? = null, + val followed_communities: List, + val saved_posts: List, + val saved_comments: List, + val blocked_communities: List, + val blocked_users: List, + val blocked_instances: List, + val blocked_instances_communities: List, + val blocked_instances_persons: List, +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/VoteView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/VoteView.kt index 7c073fdb..dbd69737 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/VoteView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/VoteView.kt @@ -6,12 +6,11 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize -// TODO: added item_id - @CommonParcelize @Serializable data class VoteView( val creator: Person, + val creator_banned: Boolean, val creator_banned_from_community: Boolean, val score: Int, ) : DatatypeRoot, Identity { diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/dto/CustomDataTypes.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/dto/CustomDataTypes.kt index ed286a4c..e26aeb5b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/dto/CustomDataTypes.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/dto/CustomDataTypes.kt @@ -32,6 +32,23 @@ enum class SubscribedType { Pending, } +@Serializable +enum class CommunityFollowerState { + Accepted, + Pending, + ApprovalRequired, + ; + + companion object { + fun from(d: SubscribedType): CommunityFollowerState? = + when (d) { + SubscribedType.Subscribed -> CommunityFollowerState.Accepted + SubscribedType.NotSubscribed -> null + SubscribedType.Pending -> CommunityFollowerState.Pending + } + } +} + @Serializable enum class PostFeatureType { Local, @@ -47,6 +64,7 @@ enum class ListingType(override val minimumVersion: Version = MINIMUM_API_VERSIO Local, Subscribed, ModeratorView(V0_19_0), + Suggested(V1_0_0), } @Serializable @@ -144,6 +162,50 @@ enum class CommunityVisibility(override val minimumVersion: Version = V0_19_4, o Private(V1_0_0), } +@Serializable +enum class CommunityNotificationsMode(override val minimumVersion: Version = V1_0_0, override val maximumVersion: Version? = null) : VersionTracker { + AllPostsAndComments, + AllPosts, + RepliesAndMentions, + Mute, +} + +@Serializable +enum class PostNotificationsMode(override val minimumVersion: Version = V1_0_0, override val maximumVersion: Version? = null) : VersionTracker { + AllComments, + RepliesAndMentions, + Mute, +} + +@Serializable +enum class VoteShow(override val minimumVersion: Version = V1_0_0, override val maximumVersion: Version? = null) : VersionTracker { + Show, + ShowForOthers, + Hide, +} + +@Serializable +enum class LikeType(override val minimumVersion: Version = V1_0_0, override val maximumVersion: Version? = null) : VersionTracker { + All, + LikedOnly, + DislikedOnly, +} + +@Serializable +enum class FederationMode(override val minimumVersion: Version = V1_0_0, override val maximumVersion: Version? = null) : VersionTracker { + All, + Local, + Disable, +} + +@Serializable +enum class NotificationType(override val minimumVersion: Version = V1_0_0, override val maximumVersion: Version? = null) : VersionTracker { + Mention, + Reply, + Subscribed, + PrivateMessage, +} + /** * Tracks the version of the supported entries from this enum * Use this in conjunction with [getSupportedEntries] diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/utils/General.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/utils/General.kt index cd175543..a74cc1b7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/utils/General.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/utils/General.kt @@ -77,3 +77,5 @@ internal fun constructBaseUrl(instance: String): String { return url.protocolWithAuthority } + +internal fun toAt(bool: Boolean): String? = if (bool) "" else null diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt index 9b648218..210d481c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt @@ -854,7 +854,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba form: it.vercruysse.lemmyapi.datatypes.BlockInstance, ): Result = notSupported() - // TODO possible supported by using old logic, might not be worth the effort + // possible supported by using old logic, but not be worth the effort /** * Generate a TOTP / two-factor secret. diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/MapperGenerator.kt index 4668fd4d..78f28e37 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/MapperGenerator.kt @@ -15,9 +15,7 @@ internal interface MapperGenerator { fun toUni(d: CommentView): it.vercruysse.lemmyapi.datatypes.CommentView - fun toUni(d: Community): it.vercruysse.lemmyapi.datatypes.Community - - fun toUni(d: CommunityAggregates): it.vercruysse.lemmyapi.datatypes.CommunityAggregates + fun toUni(d: Community, counts: CommunityAggregates): it.vercruysse.lemmyapi.datatypes.Community fun toUni(d: CommunityView): it.vercruysse.lemmyapi.datatypes.CommunityView @@ -25,8 +23,8 @@ internal interface MapperGenerator { it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState( id = d.id, domain = d.domain, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, software = d.software, version = d.version, ) @@ -68,8 +66,7 @@ internal interface MapperGenerator { fun toUni(d: BlockCommunityResponse): it.vercruysse.lemmyapi.datatypes.BlockCommunityResponse fun toUni(d: BlockPersonResponse): it.vercruysse.lemmyapi.datatypes.BlockPersonResponse fun toUni(d: CaptchaResponse): it.vercruysse.lemmyapi.datatypes.CaptchaResponse - fun toUni(d: Comment): it.vercruysse.lemmyapi.datatypes.Comment - fun toUni(d: CommentAggregates): it.vercruysse.lemmyapi.datatypes.CommentAggregates + fun toUni(d: Comment, counts: CommentAggregates): it.vercruysse.lemmyapi.datatypes.Comment fun toUni(d: CommentReply): it.vercruysse.lemmyapi.datatypes.CommentReply fun toUni(d: CommentReplyResponse): it.vercruysse.lemmyapi.datatypes.CommentReplyResponse @@ -137,13 +134,11 @@ internal interface MapperGenerator { fun toUni(d: ModRemovePostView): it.vercruysse.lemmyapi.datatypes.ModRemovePostView fun toUni(d: ModTransferCommunity): it.vercruysse.lemmyapi.datatypes.ModTransferCommunity fun toUni(d: ModTransferCommunityView): it.vercruysse.lemmyapi.datatypes.ModTransferCommunityView - fun toUni(d: Person): it.vercruysse.lemmyapi.datatypes.Person - fun toUni(d: PersonAggregates): it.vercruysse.lemmyapi.datatypes.PersonAggregates + fun toUni(d: Person, counts: PersonAggregates): it.vercruysse.lemmyapi.datatypes.Person fun toUni(d: PersonMention): it.vercruysse.lemmyapi.datatypes.PersonMention fun toUni(d: PersonMentionResponse): it.vercruysse.lemmyapi.datatypes.PersonMentionResponse - fun toUni(d: Post): it.vercruysse.lemmyapi.datatypes.Post - fun toUni(d: PostAggregates): it.vercruysse.lemmyapi.datatypes.PostAggregates + fun toUni(d: Post, counts: PostAggregates): it.vercruysse.lemmyapi.datatypes.Post fun toUni(d: PostReport): it.vercruysse.lemmyapi.datatypes.PostReport fun toUni(d: PostReportResponse): it.vercruysse.lemmyapi.datatypes.PostReportResponse diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt index ded8e0bf..626268f7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt @@ -1,13 +1,17 @@ package it.vercruysse.lemmyapi.v0.x18.x5 +import it.vercruysse.lemmyapi.datatypes.CommentActions +import it.vercruysse.lemmyapi.datatypes.CommunityActions import it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState -import it.vercruysse.lemmyapi.datatypes.LinkMetadata +import it.vercruysse.lemmyapi.datatypes.PersonActions +import it.vercruysse.lemmyapi.datatypes.PostActions +import it.vercruysse.lemmyapi.dto.CommunityFollowerState import it.vercruysse.lemmyapi.dto.CommunityVisibility import it.vercruysse.lemmyapi.dto.PostListingMode import it.vercruysse.lemmyapi.dto.SortType -import it.vercruysse.lemmyapi.dto.SubscribedType +import it.vercruysse.lemmyapi.dto.VoteShow +import it.vercruysse.lemmyapi.utils.toAt import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.LocalUser -import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.SiteMetadata import it.vercruysse.lemmyapi.datatypes.AddAdmin as LemmyapiDatatypesAddAdmin import it.vercruysse.lemmyapi.datatypes.AddAdminResponse as LemmyapiDatatypesAddAdminResponse import it.vercruysse.lemmyapi.datatypes.AddModToCommunity as LemmyapiDatatypesAddModToCommunity @@ -33,7 +37,6 @@ import it.vercruysse.lemmyapi.datatypes.BlockPersonResponse as LemmyapiDatatypes import it.vercruysse.lemmyapi.datatypes.CaptchaResponse as LemmyapiDatatypesCaptchaResponse import it.vercruysse.lemmyapi.datatypes.ChangePassword as LemmyapiDatatypesChangePassword import it.vercruysse.lemmyapi.datatypes.Comment as LemmyapiDatatypesComment -import it.vercruysse.lemmyapi.datatypes.CommentAggregates as LemmyapiDatatypesCommentAggregates import it.vercruysse.lemmyapi.datatypes.CommentReply as LemmyapiDatatypesCommentReply import it.vercruysse.lemmyapi.datatypes.CommentReplyResponse as LemmyapiDatatypesCommentReplyResponse import it.vercruysse.lemmyapi.datatypes.CommentReplyView as LemmyapiDatatypesCommentReplyView @@ -43,7 +46,6 @@ import it.vercruysse.lemmyapi.datatypes.CommentReportView as LemmyapiDatatypesCo import it.vercruysse.lemmyapi.datatypes.CommentResponse as LemmyapiDatatypesCommentResponse import it.vercruysse.lemmyapi.datatypes.CommentView as LemmyapiDatatypesCommentView import it.vercruysse.lemmyapi.datatypes.Community as LemmyapiDatatypesCommunity -import it.vercruysse.lemmyapi.datatypes.CommunityAggregates as LemmyapiDatatypesCommunityAggregates import it.vercruysse.lemmyapi.datatypes.CommunityFollowerView as LemmyapiDatatypesCommunityFollowerView import it.vercruysse.lemmyapi.datatypes.CommunityModeratorView as LemmyapiDatatypesCommunityModeratorView import it.vercruysse.lemmyapi.datatypes.CommunityResponse as LemmyapiDatatypesCommunityResponse @@ -137,10 +139,10 @@ import it.vercruysse.lemmyapi.datatypes.ModBan as LemmyapiDatatypesModBan import it.vercruysse.lemmyapi.datatypes.ModBanFromCommunity as LemmyapiDatatypesModBanFromCommunity import it.vercruysse.lemmyapi.datatypes.ModBanFromCommunityView as LemmyapiDatatypesModBanFromCommunityView import it.vercruysse.lemmyapi.datatypes.ModBanView as LemmyapiDatatypesModBanView -import it.vercruysse.lemmyapi.datatypes.ModFeaturePost as LemmyapiDatatypesModFeaturePost -import it.vercruysse.lemmyapi.datatypes.ModFeaturePostView as LemmyapiDatatypesModFeaturePostView import it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibility as LemmyapiDatatypesModChangeCommunityVisibility import it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibilityView as LemmyapiDatatypesModChangeCommunityVisibilityView +import it.vercruysse.lemmyapi.datatypes.ModFeaturePost as LemmyapiDatatypesModFeaturePost +import it.vercruysse.lemmyapi.datatypes.ModFeaturePostView as LemmyapiDatatypesModFeaturePostView import it.vercruysse.lemmyapi.datatypes.ModLockPost as LemmyapiDatatypesModLockPost import it.vercruysse.lemmyapi.datatypes.ModLockPostView as LemmyapiDatatypesModLockPostView import it.vercruysse.lemmyapi.datatypes.ModRemoveComment as LemmyapiDatatypesModRemoveComment @@ -156,13 +158,11 @@ import it.vercruysse.lemmyapi.datatypes.MyUserInfo as LemmyapiDatatypesMyUserInf import it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset as LemmyapiDatatypesPasswordChangeAfterReset import it.vercruysse.lemmyapi.datatypes.PasswordReset as LemmyapiDatatypesPasswordReset import it.vercruysse.lemmyapi.datatypes.Person as LemmyapiDatatypesPerson -import it.vercruysse.lemmyapi.datatypes.PersonAggregates as LemmyapiDatatypesPersonAggregates import it.vercruysse.lemmyapi.datatypes.PersonMention as LemmyapiDatatypesPersonMention import it.vercruysse.lemmyapi.datatypes.PersonMentionResponse as LemmyapiDatatypesPersonMentionResponse import it.vercruysse.lemmyapi.datatypes.PersonMentionView as LemmyapiDatatypesPersonMentionView import it.vercruysse.lemmyapi.datatypes.PersonView as LemmyapiDatatypesPersonView import it.vercruysse.lemmyapi.datatypes.Post as LemmyapiDatatypesPost -import it.vercruysse.lemmyapi.datatypes.PostAggregates as LemmyapiDatatypesPostAggregates import it.vercruysse.lemmyapi.datatypes.PostReport as LemmyapiDatatypesPostReport import it.vercruysse.lemmyapi.datatypes.PostReportResponse as LemmyapiDatatypesPostReportResponse import it.vercruysse.lemmyapi.datatypes.PostReportView as LemmyapiDatatypesPostReportView @@ -419,7 +419,6 @@ internal class Transformer(var auth: String) : MapperGenerator { interface_language = d.interface_language, show_avatars = d.show_avatars, send_notifications_to_email = d.send_notifications_to_email, - show_scores = d.show_scores, show_bot_accounts = d.show_bot_accounts, show_read_posts = d.show_read_posts, email_verified = d.email_verified, @@ -434,7 +433,17 @@ internal class Transformer(var auth: String) : MapperGenerator { enable_keyboard_navigation = false, enable_animated_images = true, collapse_bot_comments = false, - last_donation_notification = "", + last_donation_notification_at = "", + show_score = d.show_scores, + show_upvotes = d.show_scores, + show_downvotes = VoteShow.Show, + show_person_votes = d.show_scores, + show_upvote_percentage = d.show_scores, + hide_media = false, + enable_private_messages = true, + default_comment_sort_type = SortType.Active, + auto_mark_fetched_posts_as_read = false, + default_post_time_range_seconds = 0, ) override fun toUni(d: X5DatatypesMyUserInfo): LemmyapiDatatypesMyUserInfo = @@ -442,7 +451,7 @@ internal class Transformer(var auth: String) : MapperGenerator { local_user_view = this.toUni(d = d.local_user_view), follows = d.follows.map { this.toUni(d = it) }, moderates = d.moderates.map { this.toUni(d = it) }, - community_blocks = d.community_blocks.map { this.toUni(d = it.community) }, + community_blocks = d.community_blocks.map { this.toUni(d = it.community, counts = X5DatatypesCommunityAggregates(-1, -1, -1, -1, -1, "", -1, -1, -1, -1, -1)) }, instance_blocks = listOf(), person_blocks = d.person_blocks.map { this.toUni(d = it.target) }, discussion_languages = d.discussion_languages, @@ -451,33 +460,32 @@ internal class Transformer(var auth: String) : MapperGenerator { override fun toUni(d: X5DatatypesLocalSiteRateLimit): LemmyapiDatatypesLocalSiteRateLimit = LemmyapiDatatypesLocalSiteRateLimit( local_site_id = d.local_site_id, - message = d.message, - message_per_second = d.message_per_second, - post = d.post, - post_per_second = d.post_per_second, - register = d.register, - register_per_second = d.register_per_second, - image = d.image, - image_per_second = d.image_per_second, - comment = d.comment, - comment_per_second = d.comment_per_second, - search = d.search, - search_per_second = d.search_per_second, - published = addTimezoneOffset(d.published), - updated = addTimezoneOffsetNullable(d.updated), - import_user_settings = -1, - import_user_settings_per_second = -1, + message_max_requests = d.message, + message_interval_seconds = d.message_per_second, + post_max_requests = d.post, + post_interval_seconds = d.post_per_second, + register_max_requests = d.register, + register_interval_seconds = d.register_per_second, + image_max_requests = d.image, + image_interval_seconds = d.image_per_second, + comment_max_requests = d.comment, + comment_interval_seconds = d.comment_per_second, + search_max_requests = d.search, + search_interval_seconds = d.search_per_second, + published_at = addTimezoneOffset(d.published), + updated_at = addTimezoneOffsetNullable(d.updated), + import_user_settings_max_requests = -1, + import_user_settings_interval_seconds = -1, ) override fun toUni(d: X5DatatypesCommentReplyView): LemmyapiDatatypesCommentReplyView = LemmyapiDatatypesCommentReplyView( comment_reply = this.toUni(d = d.comment_reply), - comment = this.toUni(d = d.comment), + comment = this.toUni(d = d.comment, d.counts), creator = this.toUni(d = d.creator), - post = this.toUni(d = d.post), - community = this.toUni(d = d.community), + post = this.toUni(d = d.post, counts = X5DatatypesPostAggregates(-1, -1, -1, -1, -1, -1, "", "", "", false, false, -1, -1)), + community = this.toUni(d = d.community, counts = X5DatatypesCommunityAggregates(-1, -1, -1, -1, -1, "", -1, -1, -1, -1, -1)), recipient = this.toUni(d = d.recipient), - counts = this.toUni(d = d.counts), creator_banned_from_community = d.creator_banned_from_community, banned_from_community = false, creator_is_moderator = false, @@ -491,51 +499,48 @@ internal class Transformer(var auth: String) : MapperGenerator { override fun toUni(d: X5DatatypesCommentReportView): LemmyapiDatatypesCommentReportView = LemmyapiDatatypesCommentReportView( comment_report = this.toUni(d = d.comment_report), - comment = this.toUni(d = d.comment), - post = this.toUni(d = d.post), - community = this.toUni(d = d.community), + comment = this.toUni(d = d.comment, d.counts), + post = this.toUni(d = d.post, counts = X5DatatypesPostAggregates(-1, -1, -1, -1, -1, -1, "", "", "", false, false, -1, -1)), + community = this.toUni(d = d.community, counts = X5DatatypesCommunityAggregates(-1, -1, -1, -1, -1, "", -1, -1, -1, -1, -1)), creator = this.toUni(d = d.creator), comment_creator = this.toUni(d = d.comment_creator), - counts = this.toUni(d = d.counts), creator_banned_from_community = d.creator_banned_from_community, creator_is_moderator = false, creator_is_admin = false, - creator_blocked = false, - subscribed = SubscribedType.NotSubscribed, - saved = false, - my_vote = d.my_vote, + creator_banned = d.creator.banned, resolver = d.resolver?.let { this.toUni(d = it) }, + comment_actions = CommentActions(d.my_vote, null, null), ) override fun toUni(d: X5DatatypesCommentView): LemmyapiDatatypesCommentView = LemmyapiDatatypesCommentView( - comment = this.toUni(d = d.comment), + comment = this.toUni(d = d.comment, d.counts), creator = this.toUni(d = d.creator), - post = this.toUni(d = d.post), - community = this.toUni(d = d.community), - counts = this.toUni(d = d.counts), + post = this.toUni(d = d.post, counts = X5DatatypesPostAggregates(-1, -1, -1, -1, -1, -1, "", "", "", false, false, -1, -1)), + community = this.toUni(d = d.community, counts = X5DatatypesCommunityAggregates(-1, -1, -1, -1, -1, "", -1, -1, -1, -1, -1)), creator_banned_from_community = d.creator_banned_from_community, - banned_from_community = false, creator_is_moderator = false, creator_is_admin = false, - subscribed = d.subscribed, - saved = d.saved, - creator_blocked = d.creator_blocked, - my_vote = d.my_vote, + post_tags = emptyList(), + creator_banned = d.creator.banned, + can_mod = false, + person_actions = PersonActions(if (d.creator_blocked) "" else null), + comment_actions = CommentActions(d.my_vote, null, if (d.saved) "" else null), + community_actions = CommunityActions(null, CommunityFollowerState.from(d.subscribed)), ) - override fun toUni(d: X5DatatypesCommunity): LemmyapiDatatypesCommunity = + override fun toUni(d: X5DatatypesCommunity, counts: X5DatatypesCommunityAggregates): LemmyapiDatatypesCommunity = LemmyapiDatatypesCommunity( id = d.id, name = d.name, title = d.title, description = d.description, removed = d.removed, - published = addTimezoneOffset(d.published), - updated = addTimezoneOffsetNullable(d.updated), + published_at = addTimezoneOffset(d.published), + updated_at = addTimezoneOffsetNullable(d.updated), deleted = d.deleted, nsfw = d.nsfw, - actor_id = d.actor_id, + ap_id = d.actor_id, local = d.local, icon = d.icon, banner = d.banner, @@ -543,33 +548,27 @@ internal class Transformer(var auth: String) : MapperGenerator { posting_restricted_to_mods = d.posting_restricted_to_mods, instance_id = d.instance_id, visibility = CommunityVisibility.Public, - ) - - override fun toUni(d: X5DatatypesCommunityAggregates): LemmyapiDatatypesCommunityAggregates = - LemmyapiDatatypesCommunityAggregates( - community_id = d.community_id, - subscribers = d.subscribers, - posts = d.posts, - comments = d.comments, - published = addTimezoneOffset(d.published), - users_active_day = d.users_active_day, - users_active_week = d.users_active_week, - users_active_month = d.users_active_month, - users_active_half_year = d.users_active_half_year, + subscribers = counts.subscribers, + posts = counts.posts, + comments = counts.comments, + users_active_day = counts.users_active_day, + users_active_week = counts.users_active_week, + users_active_month = counts.users_active_month, + users_active_half_year = counts.users_active_half_year, subscribers_local = -1, + report_count = -1, + unresolved_report_count = -1, + local_removed = false, ) override fun toUni(d: X5DatatypesCommunityView): LemmyapiDatatypesCommunityView = LemmyapiDatatypesCommunityView( - community = this.toUni(d = d.community), - subscribed = d.subscribed, - blocked = d.blocked, - counts = this.toUni(d = d.counts), - banned_from_community = false, + community = this.toUni(d = d.community, d.counts), + can_mod = false, + post_tags = emptyList(), + community_actions = CommunityActions(null, CommunityFollowerState.from(d.subscribed), if (d.blocked) "" else null), ) - override fun toUni(d: SiteMetadata): LinkMetadata = super.toUni(d) - override fun toUni(d: X5DatatypesGetSiteResponse): LemmyapiDatatypesGetSiteResponse = LemmyapiDatatypesGetSiteResponse( site_view = this.toUni(d = d.site_view), @@ -604,8 +603,8 @@ internal class Transformer(var auth: String) : MapperGenerator { federation_enabled = d.federation_enabled, captcha_enabled = d.captcha_enabled, captcha_difficulty = d.captcha_difficulty, - published = addTimezoneOffset(d.published), - updated = addTimezoneOffsetNullable(d.updated), + published_at = addTimezoneOffset(d.published), + updated_at = addTimezoneOffsetNullable(d.updated), registration_mode = d.registration_mode, reports_email_admins = d.reports_email_admins, federation_signed_fetch = false, @@ -616,12 +615,11 @@ internal class Transformer(var auth: String) : MapperGenerator { override fun toUni(d: X5DatatypesPersonMentionView): LemmyapiDatatypesPersonMentionView = LemmyapiDatatypesPersonMentionView( person_mention = this.toUni(d = d.person_mention), - comment = this.toUni(d = d.comment), + comment = this.toUni(d = d.comment, d.counts), creator = this.toUni(d = d.creator), - post = this.toUni(d = d.post), - community = this.toUni(d = d.community), + post = this.toUni(d = d.post, counts = X5DatatypesPostAggregates(-1, -1, -1, -1, -1, -1, "", "", "", false, false, -1, -1)), + community = this.toUni(d = d.community, counts = X5DatatypesCommunityAggregates(-1, -1, -1, -1, -1, "", -1, -1, -1, -1, -1)), recipient = this.toUni(d = d.recipient), - counts = this.toUni(d = d.counts), creator_banned_from_community = d.creator_banned_from_community, banned_from_community = false, creator_is_moderator = false, @@ -634,48 +632,42 @@ internal class Transformer(var auth: String) : MapperGenerator { override fun toUni(d: X5DatatypesPersonView, is_admin: Boolean): LemmyapiDatatypesPersonView = LemmyapiDatatypesPersonView( - person = this.toUni(d = d.person), - counts = this.toUni(d = d.counts), + person = this.toUni(d = d.person, d.counts), is_admin = is_admin, + person_actions = null, + creator_banned = d.person.banned, ) override fun toUni(d: X5DatatypesPostReportView): LemmyapiDatatypesPostReportView = LemmyapiDatatypesPostReportView( post_report = this.toUni(d = d.post_report), - post = this.toUni(d = d.post), - community = this.toUni(d = d.community), + post = this.toUni(d = d.post, d.counts), + community = this.toUni(d = d.community, counts = X5DatatypesCommunityAggregates(-1, -1, -1, -1, -1, "", -1, -1, -1, -1, -1)), creator = this.toUni(d = d.creator), post_creator = this.toUni(d = d.post_creator), - creator_banned_from_community = d.creator_banned_from_community, + post_actions = PostActions(null, null, null, null, null, d.my_vote, null), + person_actions = null, + community_actions = null, + resolver = d.resolver?.let { this.toUni(d = it) }, creator_is_moderator = false, creator_is_admin = false, - subscribed = SubscribedType.NotSubscribed, - saved = false, - read = false, - hidden = false, - creator_blocked = false, - my_vote = d.my_vote, - unread_comments = 0, - counts = this.toUni(d = d.counts), - resolver = d.resolver?.let { this.toUni(d = it) }, + creator_banned = d.creator.banned, + creator_banned_from_community = d.creator_banned_from_community, ) override fun toUni(d: X5DatatypesPostView): LemmyapiDatatypesPostView = LemmyapiDatatypesPostView( - post = this.toUni(d = d.post), + post = this.toUni(d = d.post, d.counts), creator = this.toUni(d = d.creator), - community = this.toUni(d = d.community), - creator_banned_from_community = d.creator_banned_from_community, - banned_from_community = false, - creator_is_moderator = false, + community = this.toUni(d = d.community, counts = X5DatatypesCommunityAggregates(-1, -1, -1, -1, -1, "", -1, -1, -1, -1, -1)), + post_actions = PostActions(toAt(d.read), null, d.counts.comments - d.unread_comments, toAt(d.saved), null, d.my_vote, null), + person_actions = PersonActions(toAt(d.creator_blocked)), + community_actions = CommunityActions(null, CommunityFollowerState.from(d.subscribed)), + tags = emptyList(), + can_mod = false, + creator_banned = d.creator.banned, creator_is_admin = false, - counts = this.toUni(d = d.counts), - subscribed = d.subscribed, - saved = d.saved, - read = d.read, - hidden = false, - creator_blocked = d.creator_blocked, - my_vote = d.my_vote, - unread_comments = d.unread_comments, + creator_is_moderator = false, + creator_banned_from_community = d.creator_banned_from_community, ) override fun toUni(d: X5DatatypesAddAdminResponse): LemmyapiDatatypesAddAdminResponse = @@ -693,14 +685,14 @@ internal class Transformer(var auth: String) : MapperGenerator { admin_person_id = d.admin_person_id, post_id = d.post_id, reason = d.reason, - published = addTimezoneOffset(d.when_), + published_at = addTimezoneOffset(d.when_), ) override fun toUni(d: X5DatatypesAdminPurgeCommentView): LemmyapiDatatypesAdminPurgeCommentView = LemmyapiDatatypesAdminPurgeCommentView( admin_purge_comment = this.toUni(d = d.admin_purge_comment), admin = d.admin?.let { this.toUni(d = it) }, - post = this.toUni(d = d.post), + post = this.toUni(d = d.post, counts = X5DatatypesPostAggregates(-1, -1, -1, -1, -1, -1, "", "", "", false, false, -1, -1)), ) override fun toUni(d: X5DatatypesAdminPurgeCommunity): LemmyapiDatatypesAdminPurgeCommunity = @@ -708,7 +700,7 @@ internal class Transformer(var auth: String) : MapperGenerator { id = d.id, admin_person_id = d.admin_person_id, reason = d.reason, - published = addTimezoneOffset(d.when_), + published_at = addTimezoneOffset(d.when_), ) override fun toUni(d: X5DatatypesAdminPurgeCommunityView): LemmyapiDatatypesAdminPurgeCommunityView = LemmyapiDatatypesAdminPurgeCommunityView( @@ -721,7 +713,7 @@ internal class Transformer(var auth: String) : MapperGenerator { id = d.id, admin_person_id = d.admin_person_id, reason = d.reason, - published = addTimezoneOffset(d.when_), + published_at = addTimezoneOffset(d.when_), ) override fun toUni(d: X5DatatypesAdminPurgePersonView): LemmyapiDatatypesAdminPurgePersonView = @@ -736,14 +728,14 @@ internal class Transformer(var auth: String) : MapperGenerator { admin_person_id = d.admin_person_id, community_id = d.community_id, reason = d.reason, - published = addTimezoneOffset(d.when_), + published_at = addTimezoneOffset(d.when_), ) override fun toUni(d: X5DatatypesAdminPurgePostView): LemmyapiDatatypesAdminPurgePostView = LemmyapiDatatypesAdminPurgePostView( admin_purge_post = this.toUni(d = d.admin_purge_post), admin = d.admin?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community), + community = this.toUni(d = d.community, counts = X5DatatypesCommunityAggregates(-1, -1, -1, -1, -1, "", -1, -1, -1, -1, -1)), ) override fun toUni(d: X5DatatypesBanFromCommunityResponse): LemmyapiDatatypesBanFromCommunityResponse = LemmyapiDatatypesBanFromCommunityResponse( @@ -780,32 +772,29 @@ internal class Transformer(var auth: String) : MapperGenerator { uuid = d.uuid, ) - override fun toUni(d: X5DatatypesComment): LemmyapiDatatypesComment = LemmyapiDatatypesComment( + override fun toUni(d: X5DatatypesComment, counts: X5DatatypesCommentAggregates): LemmyapiDatatypesComment = LemmyapiDatatypesComment( id = d.id, creator_id = d.creator_id, post_id = d.post_id, content = d.content, removed = d.removed, - published = addTimezoneOffset(d.published), - updated = addTimezoneOffsetNullable(d.updated), + published_at = addTimezoneOffset(d.published), + updated_at = addTimezoneOffsetNullable(d.updated), deleted = d.deleted, ap_id = d.ap_id, local = d.local, path = d.path, distinguished = d.distinguished, language_id = d.language_id, + score = counts.score, + upvotes = counts.upvotes, + downvotes = counts.downvotes, + child_count = counts.child_count, + report_count = -1, + unresolved_report_count = -1, + federation_pending = false, ) - override fun toUni(d: X5DatatypesCommentAggregates): LemmyapiDatatypesCommentAggregates = - LemmyapiDatatypesCommentAggregates( - comment_id = d.comment_id, - score = d.score, - upvotes = d.upvotes, - downvotes = d.downvotes, - published = addTimezoneOffset(d.published), - child_count = d.child_count, - ) - override fun toUni(d: X5DatatypesCommentReply): LemmyapiDatatypesCommentReply = LemmyapiDatatypesCommentReply( id = d.id, @@ -829,8 +818,8 @@ internal class Transformer(var auth: String) : MapperGenerator { reason = d.reason, resolved = d.resolved, resolver_id = d.resolver_id, - published = addTimezoneOffset(d.published), - updated = d.updated, + published_at = addTimezoneOffset(d.published), + updated_at = d.updated, ) override fun toUni(d: X5DatatypesCommentReportResponse): LemmyapiDatatypesCommentReportResponse = @@ -846,12 +835,12 @@ internal class Transformer(var auth: String) : MapperGenerator { override fun toUni(d: X5DatatypesCommunityFollowerView): LemmyapiDatatypesCommunityFollowerView = LemmyapiDatatypesCommunityFollowerView( - community = this.toUni(d = d.community), + community = this.toUni(d = d.community, counts = X5DatatypesCommunityAggregates(-1, -1, -1, -1, -1, "", -1, -1, -1, -1, -1)), follower = this.toUni(d = d.follower), ) override fun toUni(d: X5DatatypesCommunityModeratorView): LemmyapiDatatypesCommunityModeratorView = LemmyapiDatatypesCommunityModeratorView( - community = this.toUni(d = d.community), + community = this.toUni(d = d.community, counts = X5DatatypesCommunityAggregates(-1, -1, -1, -1, -1, "", -1, -1, -1, -1, -1)), moderator = this.toUni(d = d.moderator), ) @@ -868,8 +857,8 @@ internal class Transformer(var auth: String) : MapperGenerator { image_url = d.image_url, alt_text = d.alt_text, category = d.category, - published = addTimezoneOffset(d.published), - updated = d.updated, + published_at = addTimezoneOffset(d.published), + updated_at = d.updated, ) override fun toUni(d: X5DatatypesCustomEmojiKeyword): LemmyapiDatatypesCustomEmojiKeyword = @@ -923,84 +912,114 @@ internal class Transformer(var auth: String) : MapperGenerator { val modlogList = mutableListOf() // Add ModRemovePost entries - modlogList.addAll(d.removed_posts.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemovePost(mod_remove_post = this.toUni(d = view)) - }) + modlogList.addAll( + d.removed_posts.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemovePost(mod_remove_post = this.toUni(d = view)) + }, + ) // Add ModLockPost entries - modlogList.addAll(d.locked_posts.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModLockPost(mod_lock_post = this.toUni(d = view)) - }) + modlogList.addAll( + d.locked_posts.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModLockPost(mod_lock_post = this.toUni(d = view)) + }, + ) // Add ModFeaturePost entries - modlogList.addAll(d.featured_posts.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModFeaturePost(mod_feature_post = this.toUni(d = view)) - }) + modlogList.addAll( + d.featured_posts.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModFeaturePost(mod_feature_post = this.toUni(d = view)) + }, + ) // Add ModRemoveComment entries - modlogList.addAll(d.removed_comments.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemoveComment(mod_remove_comment = this.toUni(d = view)) - }) + modlogList.addAll( + d.removed_comments.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemoveComment(mod_remove_comment = this.toUni(d = view)) + }, + ) // Add ModRemoveCommunity entries - modlogList.addAll(d.removed_communities.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemoveCommunity(mod_remove_community = this.toUni(d = view)) - }) + modlogList.addAll( + d.removed_communities.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemoveCommunity(mod_remove_community = this.toUni(d = view)) + }, + ) // Add ModBanFromCommunity entries - modlogList.addAll(d.banned_from_community.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModBanFromCommunity(mod_ban_from_community = this.toUni(d = view)) - }) + modlogList.addAll( + d.banned_from_community.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModBanFromCommunity(mod_ban_from_community = this.toUni(d = view)) + }, + ) // Add ModBan entries - modlogList.addAll(d.banned.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModBan(mod_ban = this.toUni(d = view)) - }) + modlogList.addAll( + d.banned.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModBan(mod_ban = this.toUni(d = view)) + }, + ) // Add ModAddCommunity entries - modlogList.addAll(d.added_to_community.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModAddCommunity(mod_add_community = this.toUni(d = view)) - }) + modlogList.addAll( + d.added_to_community.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModAddCommunity(mod_add_community = this.toUni(d = view)) + }, + ) // Add ModTransferCommunity entries - modlogList.addAll(d.transferred_to_community.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModTransferCommunity(mod_transfer_community = this.toUni(d = view)) - }) + modlogList.addAll( + d.transferred_to_community.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModTransferCommunity(mod_transfer_community = this.toUni(d = view)) + }, + ) // Add ModAdd entries - modlogList.addAll(d.added.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModAdd(mod_add = this.toUni(d = view)) - }) + modlogList.addAll( + d.added.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModAdd(mod_add = this.toUni(d = view)) + }, + ) // Add AdminPurgePerson entries - modlogList.addAll(d.admin_purged_persons.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgePerson(admin_purge_person = this.toUni(d = view)) - }) + modlogList.addAll( + d.admin_purged_persons.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgePerson(admin_purge_person = this.toUni(d = view)) + }, + ) // Add AdminPurgeCommunity entries - modlogList.addAll(d.admin_purged_communities.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgeCommunity(admin_purge_community = this.toUni(d = view)) - }) + modlogList.addAll( + d.admin_purged_communities.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgeCommunity(admin_purge_community = this.toUni(d = view)) + }, + ) // Add AdminPurgePost entries - modlogList.addAll(d.admin_purged_posts.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgePost(admin_purge_post = this.toUni(d = view)) - }) + modlogList.addAll( + d.admin_purged_posts.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgePost(admin_purge_post = this.toUni(d = view)) + }, + ) // Add AdminPurgeComment entries - modlogList.addAll(d.admin_purged_comments.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgeComment(admin_purge_comment = this.toUni(d = view)) - }) + modlogList.addAll( + d.admin_purged_comments.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgeComment(admin_purge_comment = this.toUni(d = view)) + }, + ) // Add ModHideCommunity entries (mapped to ModChangeCommunityVisibility) - modlogList.addAll(d.hidden_communities.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModChangeCommunityVisibility(mod_change_community_visibility = this.toUni(d = view)) - }) + modlogList.addAll( + d.hidden_communities.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModChangeCommunityVisibility(mod_change_community_visibility = this.toUni(d = view)) + }, + ) return it.vercruysse.lemmyapi.datatypes.GetModlogResponse( modlog = modlogList, next_page = null, - prev_page = null + prev_page = null, ) } @@ -1058,8 +1077,8 @@ internal class Transformer(var auth: String) : MapperGenerator { override fun toUni(d: X5DatatypesInstance): LemmyapiDatatypesInstance = LemmyapiDatatypesInstance( id = d.id, domain = d.domain, - published = addTimezoneOffset(d.published), - updated = addTimezoneOffsetNullable(d.updated), + published_at = addTimezoneOffset(d.published), + updated_at = addTimezoneOffsetNullable(d.updated), software = d.software, version = d.version, ) @@ -1095,8 +1114,8 @@ internal class Transformer(var auth: String) : MapperGenerator { override fun toUni(d: X5DatatypesLocalUserView): LemmyapiDatatypesLocalUserView = LemmyapiDatatypesLocalUserView( local_user = this.toUni(d = d.local_user), - person = this.toUni(d = d.person), - counts = this.toUni(d = d.counts), + person = this.toUni(d = d.person, d.counts), + banned = d.person.banned, ) override fun toUni(d: X5DatatypesLoginResponse): LemmyapiDatatypesLoginResponse = @@ -1111,7 +1130,7 @@ internal class Transformer(var auth: String) : MapperGenerator { mod_person_id = d.mod_person_id, other_person_id = d.other_person_id, removed = d.removed, - published = addTimezoneOffset(d.when_), + published_at = addTimezoneOffset(d.when_), ) override fun toUni(d: X5DatatypesModAddCommunity): LemmyapiDatatypesModAddCommunity = @@ -1121,14 +1140,14 @@ internal class Transformer(var auth: String) : MapperGenerator { other_person_id = d.other_person_id, community_id = d.community_id, removed = d.removed, - published = addTimezoneOffset(d.when_), + published_at = addTimezoneOffset(d.when_), ) override fun toUni(d: X5DatatypesModAddCommunityView): LemmyapiDatatypesModAddCommunityView = LemmyapiDatatypesModAddCommunityView( mod_add_community = this.toUni(d = d.mod_add_community), moderator = d.moderator?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community), + community = this.toUni(d = d.community, counts = X5DatatypesCommunityAggregates(-1, -1, -1, -1, -1, "", -1, -1, -1, -1, -1)), other_person = this.toUni(d = d.modded_person), ) @@ -1145,8 +1164,8 @@ internal class Transformer(var auth: String) : MapperGenerator { other_person_id = d.other_person_id, reason = d.reason, banned = d.banned, - expires = addTimezoneOffsetNullable(d.expires), - published = addTimezoneOffset(d.when_), + expires_at = addTimezoneOffsetNullable(d.expires), + published_at = addTimezoneOffset(d.when_), instance_id = -1, ) @@ -1158,14 +1177,14 @@ internal class Transformer(var auth: String) : MapperGenerator { community_id = d.community_id, reason = d.reason, banned = d.banned, - expires = addTimezoneOffsetNullable(d.expires), - published = addTimezoneOffset(d.when_), + expires_at = addTimezoneOffsetNullable(d.expires), + published_at = addTimezoneOffset(d.when_), ) override fun toUni(d: X5DatatypesModBanFromCommunityView): LemmyapiDatatypesModBanFromCommunityView = LemmyapiDatatypesModBanFromCommunityView( mod_ban_from_community = this.toUni(d = d.mod_ban_from_community), moderator = d.moderator?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community), + community = this.toUni(d = d.community, counts = X5DatatypesCommunityAggregates(-1, -1, -1, -1, -1, "", -1, -1, -1, -1, -1)), other_person = this.toUni(d = d.banned_person), ) @@ -1182,7 +1201,7 @@ internal class Transformer(var auth: String) : MapperGenerator { mod_person_id = d.mod_person_id, post_id = d.post_id, featured = d.featured, - published = addTimezoneOffset(d.when_), + published_at = addTimezoneOffset(d.when_), is_featured_community = d.is_featured_community, ) @@ -1190,8 +1209,8 @@ internal class Transformer(var auth: String) : MapperGenerator { LemmyapiDatatypesModFeaturePostView( mod_feature_post = this.toUni(d = d.mod_feature_post), moderator = d.moderator?.let { this.toUni(d = it) }, - post = this.toUni(d = d.post), - community = this.toUni(d = d.community), + post = this.toUni(d = d.post, counts = X5DatatypesPostAggregates(-1, -1, -1, -1, -1, -1, "", "", "", false, false, -1, -1)), + community = this.toUni(d = d.community, counts = X5DatatypesCommunityAggregates(-1, -1, -1, -1, -1, "", -1, -1, -1, -1, -1)), ) override fun toUni(d: X5DatatypesModHideCommunity): LemmyapiDatatypesModChangeCommunityVisibility = @@ -1199,7 +1218,7 @@ internal class Transformer(var auth: String) : MapperGenerator { id = d.id, community_id = d.community_id, mod_person_id = d.mod_person_id, - published = addTimezoneOffset(d.when_), + published_at = addTimezoneOffset(d.when_), reason = d.reason, visibility = if (d.hidden) { CommunityVisibility.Unlisted @@ -1212,7 +1231,7 @@ internal class Transformer(var auth: String) : MapperGenerator { LemmyapiDatatypesModChangeCommunityVisibilityView( mod_change_community_visibility = this.toUni(d = d.mod_hide_community), moderator = d.admin?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community), + community = this.toUni(d = d.community, counts = X5DatatypesCommunityAggregates(-1, -1, -1, -1, -1, "", -1, -1, -1, -1, -1)), ) override fun toUni(d: X5DatatypesModLockPost): LemmyapiDatatypesModLockPost = @@ -1221,15 +1240,15 @@ internal class Transformer(var auth: String) : MapperGenerator { mod_person_id = d.mod_person_id, post_id = d.post_id, locked = d.locked, - published = addTimezoneOffset(d.when_), + published_at = addTimezoneOffset(d.when_), ) override fun toUni(d: X5DatatypesModLockPostView): LemmyapiDatatypesModLockPostView = LemmyapiDatatypesModLockPostView( mod_lock_post = this.toUni(d = d.mod_lock_post), moderator = d.moderator?.let { this.toUni(d = it) }, - post = this.toUni(d = d.post), - community = this.toUni(d = d.community), + post = this.toUni(d = d.post, counts = X5DatatypesPostAggregates(-1, -1, -1, -1, -1, -1, "", "", "", false, false, -1, -1)), + community = this.toUni(d = d.community, counts = X5DatatypesCommunityAggregates(-1, -1, -1, -1, -1, "", -1, -1, -1, -1, -1)), ) override fun toUni(d: X5DatatypesModlogListParams): LemmyapiDatatypesModlogListParams = @@ -1249,17 +1268,17 @@ internal class Transformer(var auth: String) : MapperGenerator { comment_id = d.comment_id, reason = d.reason, removed = d.removed, - published = addTimezoneOffset(d.when_), + published_at = addTimezoneOffset(d.when_), ) override fun toUni(d: X5DatatypesModRemoveCommentView): LemmyapiDatatypesModRemoveCommentView = LemmyapiDatatypesModRemoveCommentView( mod_remove_comment = this.toUni(d = d.mod_remove_comment), moderator = d.moderator?.let { this.toUni(d = it) }, - comment = this.toUni(d = d.comment), + comment = this.toUni(d = d.comment, X5DatatypesCommentAggregates(-1, -1, -1, -1, -1, "", -1, -1)), other_person = this.toUni(d = d.commenter), - post = this.toUni(d = d.post), - community = this.toUni(d = d.community), + post = this.toUni(d = d.post, counts = X5DatatypesPostAggregates(-1, -1, -1, -1, -1, -1, "", "", "", false, false, -1, -1)), + community = this.toUni(d = d.community, counts = X5DatatypesCommunityAggregates(-1, -1, -1, -1, -1, "", -1, -1, -1, -1, -1)), ) override fun toUni(d: X5DatatypesModRemoveCommunity): LemmyapiDatatypesModRemoveCommunity = @@ -1269,13 +1288,13 @@ internal class Transformer(var auth: String) : MapperGenerator { community_id = d.community_id, reason = d.reason, removed = d.removed, - published = addTimezoneOffset(d.when_), + published_at = addTimezoneOffset(d.when_), ) override fun toUni(d: X5DatatypesModRemoveCommunityView): LemmyapiDatatypesModRemoveCommunityView = LemmyapiDatatypesModRemoveCommunityView( mod_remove_community = this.toUni(d = d.mod_remove_community), moderator = d.moderator?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community), + community = this.toUni(d = d.community, counts = X5DatatypesCommunityAggregates(-1, -1, -1, -1, -1, "", -1, -1, -1, -1, -1)), ) override fun toUni(d: X5DatatypesModRemovePost): LemmyapiDatatypesModRemovePost = @@ -1285,15 +1304,15 @@ internal class Transformer(var auth: String) : MapperGenerator { post_id = d.post_id, reason = d.reason, removed = d.removed, - published = addTimezoneOffset(d.when_), + published_at = addTimezoneOffset(d.when_), ) override fun toUni(d: X5DatatypesModRemovePostView): LemmyapiDatatypesModRemovePostView = LemmyapiDatatypesModRemovePostView( mod_remove_post = this.toUni(d = d.mod_remove_post), moderator = d.moderator?.let { this.toUni(d = it) }, - post = this.toUni(d = d.post), - community = this.toUni(d = d.community), + post = this.toUni(d = d.post, counts = X5DatatypesPostAggregates(-1, -1, -1, -1, -1, -1, "", "", "", false, false, -1, -1)), + community = this.toUni(d = d.community, counts = X5DatatypesCommunityAggregates(-1, -1, -1, -1, -1, "", -1, -1, -1, -1, -1)), ) override fun toUni(d: X5DatatypesModTransferCommunity): LemmyapiDatatypesModTransferCommunity = @@ -1302,42 +1321,38 @@ internal class Transformer(var auth: String) : MapperGenerator { mod_person_id = d.mod_person_id, other_person_id = d.other_person_id, community_id = d.community_id, - published = addTimezoneOffset(d.when_), + published_at = addTimezoneOffset(d.when_), ) override fun toUni(d: X5DatatypesModTransferCommunityView): LemmyapiDatatypesModTransferCommunityView = LemmyapiDatatypesModTransferCommunityView( mod_transfer_community = this.toUni(d = d.mod_transfer_community), moderator = d.moderator?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community), + community = this.toUni(d = d.community, counts = X5DatatypesCommunityAggregates(-1, -1, -1, -1, -1, "", -1, -1, -1, -1, -1)), other_person = this.toUni(d = d.modded_person), ) - override fun toUni(d: X5DatatypesPerson): LemmyapiDatatypesPerson = LemmyapiDatatypesPerson( + fun toUni(d: X5DatatypesPerson) = this.toUni(d, X5DatatypesPersonAggregates(-1, -1, -1, -1, -1, -1)) + + override fun toUni(d: X5DatatypesPerson, counts: X5DatatypesPersonAggregates): LemmyapiDatatypesPerson = LemmyapiDatatypesPerson( id = d.id, name = d.name, display_name = d.display_name, avatar = d.avatar, - banned = d.banned, - published = addTimezoneOffset(d.published), - updated = addTimezoneOffsetNullable(d.updated), - actor_id = d.actor_id, + published_at = addTimezoneOffset(d.published), + updated_at = addTimezoneOffsetNullable(d.updated), + ap_id = d.actor_id, bio = d.bio, local = d.local, banner = d.banner, deleted = d.deleted, matrix_user_id = d.matrix_user_id, bot_account = d.bot_account, - ban_expires = addTimezoneOffsetNullable(d.ban_expires), +// ban_expires = addTimezoneOffsetNullable(d.ban_expires), instance_id = d.instance_id, + post_count = counts.post_count, + comment_count = counts.comment_count, ) - override fun toUni(d: X5DatatypesPersonAggregates): LemmyapiDatatypesPersonAggregates = - LemmyapiDatatypesPersonAggregates( - person_id = d.person_id, - post_count = d.post_count, - comment_count = d.comment_count, - ) - override fun toUni(d: X5DatatypesPersonMention): LemmyapiDatatypesPersonMention = LemmyapiDatatypesPersonMention( id = d.id, @@ -1352,7 +1367,7 @@ internal class Transformer(var auth: String) : MapperGenerator { person_mention_view = this.toUni(d = d.person_mention_view), ) - override fun toUni(d: X5DatatypesPost): LemmyapiDatatypesPost = LemmyapiDatatypesPost( + override fun toUni(d: X5DatatypesPost, counts: X5DatatypesPostAggregates): LemmyapiDatatypesPost = LemmyapiDatatypesPost( id = d.id, name = d.name, url = d.url, @@ -1361,8 +1376,8 @@ internal class Transformer(var auth: String) : MapperGenerator { community_id = d.community_id, removed = d.removed, locked = d.locked, - published = addTimezoneOffset(d.published), - updated = addTimezoneOffsetNullable(d.updated), + published_at = addTimezoneOffset(d.published), + updated_at = addTimezoneOffsetNullable(d.updated), deleted = d.deleted, nsfw = d.nsfw, embed_title = d.embed_title, @@ -1374,19 +1389,16 @@ internal class Transformer(var auth: String) : MapperGenerator { language_id = d.language_id, featured_community = d.featured_community, featured_local = d.featured_local, + comments = counts.comments, + score = counts.score, + upvotes = counts.upvotes, + downvotes = counts.downvotes, + newest_comment_time_at = addTimezoneOffset(counts.newest_comment_time), + report_count = -1, + unresolved_report_count = -1, + federation_pending = false, ) - override fun toUni(d: X5DatatypesPostAggregates): LemmyapiDatatypesPostAggregates = - LemmyapiDatatypesPostAggregates( - post_id = d.post_id, - comments = d.comments, - score = d.score, - upvotes = d.upvotes, - downvotes = d.downvotes, - published = addTimezoneOffset(d.published), - newest_comment_time = addTimezoneOffset(d.newest_comment_time), - ) - override fun toUni(d: X5DatatypesPostReport): LemmyapiDatatypesPostReport = LemmyapiDatatypesPostReport( id = d.id, @@ -1398,8 +1410,8 @@ internal class Transformer(var auth: String) : MapperGenerator { reason = d.reason, resolved = d.resolved, resolver_id = d.resolver_id, - published = addTimezoneOffset(d.published), - updated = d.updated, + published_at = addTimezoneOffset(d.published), + updated_at = d.updated, violates_instance_rules = false, ) @@ -1421,8 +1433,8 @@ internal class Transformer(var auth: String) : MapperGenerator { content = d.content, deleted = d.deleted, read = d.read, - published = addTimezoneOffset(d.published), - updated = addTimezoneOffsetNullable(d.updated), + published_at = addTimezoneOffset(d.published), + updated_at = addTimezoneOffsetNullable(d.updated), ap_id = d.ap_id, local = d.local, removed = false, @@ -1437,8 +1449,8 @@ internal class Transformer(var auth: String) : MapperGenerator { reason = d.reason, resolved = d.resolved, resolver_id = d.resolver_id, - published = addTimezoneOffset(d.published), - updated = d.updated, + published_at = addTimezoneOffset(d.published), + updated_at = d.updated, ) override fun toUni(d: X5DatatypesPrivateMessageReportResponse): LemmyapiDatatypesPrivateMessageReportResponse = LemmyapiDatatypesPrivateMessageReportResponse( @@ -1474,7 +1486,7 @@ internal class Transformer(var auth: String) : MapperGenerator { answer = d.answer, admin_id = d.admin_id, deny_reason = d.deny_reason, - published = d.published, + published_at = d.published, ) override fun toUni(d: X5DatatypesRegistrationApplicationResponse): LemmyapiDatatypesRegistrationApplicationResponse = @@ -1510,12 +1522,12 @@ internal class Transformer(var auth: String) : MapperGenerator { id = d.id, name = d.name, sidebar = d.sidebar, - published = addTimezoneOffset(d.published), - updated = addTimezoneOffsetNullable(d.updated), + published_at = addTimezoneOffset(d.published), + updated_at = addTimezoneOffsetNullable(d.updated), icon = d.icon, banner = d.banner, description = d.description, - actor_id = d.actor_id, + ap_id = d.actor_id, last_refreshed_at = addTimezoneOffset(d.last_refreshed_at), inbox_url = d.inbox_url, instance_id = d.instance_id, @@ -1550,8 +1562,8 @@ internal class Transformer(var auth: String) : MapperGenerator { override fun toUni(d: X5DatatypesTagline): LemmyapiDatatypesTagline = LemmyapiDatatypesTagline( id = d.id, content = d.content, - published = addTimezoneOffset(d.published), - updated = d.updated, + published_at = addTimezoneOffset(d.published), + updated_at = d.updated, ) override fun toUniF(d: X5DatatypesInstance): InstanceWithFederationState = super.toUniF(d) @@ -1584,7 +1596,7 @@ internal class Transformer(var auth: String) : MapperGenerator { ban = d.ban, remove_data = d.remove_or_restore_data, reason = d.reason, - expires = d.expires, + expires = d.expires_at, auth = auth, ) @@ -1593,7 +1605,7 @@ internal class Transformer(var auth: String) : MapperGenerator { ban = d.ban, remove_data = d.remove_or_restore_data, reason = d.reason, - expires = d.expires, + expires = d.expires_at, auth = auth, ) @@ -1725,18 +1737,18 @@ internal class Transformer(var auth: String) : MapperGenerator { discussion_languages = d.discussion_languages, slur_filter_regex = d.slur_filter_regex, actor_name_max_length = d.actor_name_max_length, - rate_limit_message = d.rate_limit_message, - rate_limit_message_per_second = d.rate_limit_message_per_second, - rate_limit_post = d.rate_limit_post, - rate_limit_post_per_second = d.rate_limit_post_per_second, - rate_limit_register = d.rate_limit_register, - rate_limit_register_per_second = d.rate_limit_register_per_second, - rate_limit_image = d.rate_limit_image, - rate_limit_image_per_second = d.rate_limit_image_per_second, - rate_limit_comment = d.rate_limit_comment, - rate_limit_comment_per_second = d.rate_limit_comment_per_second, - rate_limit_search = d.rate_limit_search, - rate_limit_search_per_second = d.rate_limit_search_per_second, + rate_limit_message = d.rate_limit_message_max_requests, + rate_limit_message_per_second = d.rate_limit_message_interval_seconds, + rate_limit_post = d.rate_limit_post_max_requests, + rate_limit_post_per_second = d.rate_limit_post_interval_seconds, + rate_limit_register = d.rate_limit_register_max_requests, + rate_limit_register_per_second = d.rate_limit_register_interval_seconds, + rate_limit_image = d.rate_limit_image_max_requests, + rate_limit_image_per_second = d.rate_limit_image_interval_seconds, + rate_limit_comment = d.rate_limit_comment_max_requests, + rate_limit_comment_per_second = d.rate_limit_comment_interval_seconds, + rate_limit_search = d.rate_limit_search_max_requests, + rate_limit_search_per_second = d.rate_limit_search_interval_seconds, federation_enabled = d.federation_enabled, federation_debug = d.federation_debug, captcha_enabled = d.captcha_enabled, @@ -1863,18 +1875,18 @@ internal class Transformer(var auth: String) : MapperGenerator { discussion_languages = d.discussion_languages, slur_filter_regex = d.slur_filter_regex, actor_name_max_length = d.actor_name_max_length, - rate_limit_message = d.rate_limit_message, - rate_limit_message_per_second = d.rate_limit_message_per_second, - rate_limit_post = d.rate_limit_post, - rate_limit_post_per_second = d.rate_limit_post_per_second, - rate_limit_register = d.rate_limit_register, - rate_limit_register_per_second = d.rate_limit_register_per_second, - rate_limit_image = d.rate_limit_image, - rate_limit_image_per_second = d.rate_limit_image_per_second, - rate_limit_comment = d.rate_limit_comment, - rate_limit_comment_per_second = d.rate_limit_comment_per_second, - rate_limit_search = d.rate_limit_search, - rate_limit_search_per_second = d.rate_limit_search_per_second, + rate_limit_message = d.rate_limit_message_max_requests, + rate_limit_message_per_second = d.rate_limit_message_interval_seconds, + rate_limit_post = d.rate_limit_post_max_requests, + rate_limit_post_per_second = d.rate_limit_post_interval_seconds, + rate_limit_register = d.rate_limit_register_max_requests, + rate_limit_register_per_second = d.rate_limit_register_interval_seconds, + rate_limit_image = d.rate_limit_image_max_requests, + rate_limit_image_per_second = d.rate_limit_image_interval_seconds, + rate_limit_comment = d.rate_limit_comment_max_requests, + rate_limit_comment_per_second = d.rate_limit_comment_interval_seconds, + rate_limit_search = d.rate_limit_search_max_requests, + rate_limit_search_per_second = d.rate_limit_search_interval_seconds, federation_enabled = d.federation_enabled, federation_debug = d.federation_debug, captcha_enabled = d.captcha_enabled, @@ -1974,7 +1986,6 @@ internal class Transformer(var auth: String) : MapperGenerator { limit = d.limit, community_id = d.community_id, community_name = d.community_name, - saved_only = d.saved_only, auth = auth, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt index 17a322ce..dc86c992 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt @@ -10,9 +10,7 @@ internal interface MapperGenerator { fun toUni(d: CommentView): it.vercruysse.lemmyapi.datatypes.CommentView - fun toUni(d: Community): it.vercruysse.lemmyapi.datatypes.Community - - fun toUni(d: CommunityAggregates): it.vercruysse.lemmyapi.datatypes.CommunityAggregates + fun toUni(d: Community, counts: CommunityAggregates): it.vercruysse.lemmyapi.datatypes.Community fun toUni(d: CommunityView): it.vercruysse.lemmyapi.datatypes.CommunityView @@ -30,8 +28,6 @@ internal interface MapperGenerator { fun toUni(d: PersonMentionView): it.vercruysse.lemmyapi.datatypes.PersonMentionView - fun toUni(d: PostAggregates): it.vercruysse.lemmyapi.datatypes.PostAggregates - fun toUni(d: PostReportView): it.vercruysse.lemmyapi.datatypes.PostReportView fun toUni(d: PostView): it.vercruysse.lemmyapi.datatypes.PostView @@ -53,8 +49,7 @@ internal interface MapperGenerator { fun toUni(d: BlockCommunityResponse): it.vercruysse.lemmyapi.datatypes.BlockCommunityResponse fun toUni(d: BlockPersonResponse): it.vercruysse.lemmyapi.datatypes.BlockPersonResponse fun toUni(d: CaptchaResponse): it.vercruysse.lemmyapi.datatypes.CaptchaResponse - fun toUni(d: Comment): it.vercruysse.lemmyapi.datatypes.Comment - fun toUni(d: CommentAggregates): it.vercruysse.lemmyapi.datatypes.CommentAggregates + fun toUni(d: Comment, counts: CommentAggregates): it.vercruysse.lemmyapi.datatypes.Comment fun toUni(d: CommentReply): it.vercruysse.lemmyapi.datatypes.CommentReply fun toUni(d: CommentReplyResponse): it.vercruysse.lemmyapi.datatypes.CommentReplyResponse @@ -128,13 +123,12 @@ internal interface MapperGenerator { fun toUni(d: ModTransferCommunity): it.vercruysse.lemmyapi.datatypes.ModTransferCommunity fun toUni(d: ModTransferCommunityView): it.vercruysse.lemmyapi.datatypes.ModTransferCommunityView fun toUni(d: MyUserInfo): it.vercruysse.lemmyapi.datatypes.MyUserInfo - fun toUni(d: Person): it.vercruysse.lemmyapi.datatypes.Person - fun toUni(d: PersonAggregates): it.vercruysse.lemmyapi.datatypes.PersonAggregates + fun toUni(d: Person, counts: PersonAggregates): it.vercruysse.lemmyapi.datatypes.Person fun toUni(d: PersonMention): it.vercruysse.lemmyapi.datatypes.PersonMention fun toUni(d: PersonMentionResponse): it.vercruysse.lemmyapi.datatypes.PersonMentionResponse fun toUni(d: PersonView): it.vercruysse.lemmyapi.datatypes.PersonView - fun toUni(d: Post): it.vercruysse.lemmyapi.datatypes.Post + fun toUni(d: Post, counts: PostAggregates): it.vercruysse.lemmyapi.datatypes.Post fun toUni(d: PostReport): it.vercruysse.lemmyapi.datatypes.PostReport fun toUni(d: PostReportResponse): it.vercruysse.lemmyapi.datatypes.PostReportResponse diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt index 3dbfd1bd..87d26a9b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt @@ -1,11 +1,15 @@ package it.vercruysse.lemmyapi.v0.x19.x0 -import it.vercruysse.lemmyapi.datatypes.LinkMetadata +import it.vercruysse.lemmyapi.datatypes.CommentActions +import it.vercruysse.lemmyapi.datatypes.CommunityActions +import it.vercruysse.lemmyapi.datatypes.PersonActions +import it.vercruysse.lemmyapi.datatypes.PostActions +import it.vercruysse.lemmyapi.dto.CommunityFollowerState import it.vercruysse.lemmyapi.dto.CommunityVisibility import it.vercruysse.lemmyapi.dto.PostListingMode import it.vercruysse.lemmyapi.dto.SortType -import it.vercruysse.lemmyapi.dto.SubscribedType -import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.SiteMetadata +import it.vercruysse.lemmyapi.dto.VoteShow +import it.vercruysse.lemmyapi.utils.toAt import it.vercruysse.lemmyapi.datatypes.AddAdmin as LemmyapiDatatypesAddAdmin import it.vercruysse.lemmyapi.datatypes.AddAdminResponse as LemmyapiDatatypesAddAdminResponse import it.vercruysse.lemmyapi.datatypes.AddModToCommunity as LemmyapiDatatypesAddModToCommunity @@ -32,7 +36,6 @@ import it.vercruysse.lemmyapi.datatypes.BlockPersonResponse as LemmyapiDatatypes import it.vercruysse.lemmyapi.datatypes.CaptchaResponse as LemmyapiDatatypesCaptchaResponse import it.vercruysse.lemmyapi.datatypes.ChangePassword as LemmyapiDatatypesChangePassword import it.vercruysse.lemmyapi.datatypes.Comment as LemmyapiDatatypesComment -import it.vercruysse.lemmyapi.datatypes.CommentAggregates as LemmyapiDatatypesCommentAggregates import it.vercruysse.lemmyapi.datatypes.CommentReply as LemmyapiDatatypesCommentReply import it.vercruysse.lemmyapi.datatypes.CommentReplyResponse as LemmyapiDatatypesCommentReplyResponse import it.vercruysse.lemmyapi.datatypes.CommentReplyView as LemmyapiDatatypesCommentReplyView @@ -42,7 +45,6 @@ import it.vercruysse.lemmyapi.datatypes.CommentReportView as LemmyapiDatatypesCo import it.vercruysse.lemmyapi.datatypes.CommentResponse as LemmyapiDatatypesCommentResponse import it.vercruysse.lemmyapi.datatypes.CommentView as LemmyapiDatatypesCommentView import it.vercruysse.lemmyapi.datatypes.Community as LemmyapiDatatypesCommunity -import it.vercruysse.lemmyapi.datatypes.CommunityAggregates as LemmyapiDatatypesCommunityAggregates import it.vercruysse.lemmyapi.datatypes.CommunityFollowerView as LemmyapiDatatypesCommunityFollowerView import it.vercruysse.lemmyapi.datatypes.CommunityModeratorView as LemmyapiDatatypesCommunityModeratorView import it.vercruysse.lemmyapi.datatypes.CommunityResponse as LemmyapiDatatypesCommunityResponse @@ -140,10 +142,10 @@ import it.vercruysse.lemmyapi.datatypes.ModBan as LemmyapiDatatypesModBan import it.vercruysse.lemmyapi.datatypes.ModBanFromCommunity as LemmyapiDatatypesModBanFromCommunity import it.vercruysse.lemmyapi.datatypes.ModBanFromCommunityView as LemmyapiDatatypesModBanFromCommunityView import it.vercruysse.lemmyapi.datatypes.ModBanView as LemmyapiDatatypesModBanView -import it.vercruysse.lemmyapi.datatypes.ModFeaturePost as LemmyapiDatatypesModFeaturePost -import it.vercruysse.lemmyapi.datatypes.ModFeaturePostView as LemmyapiDatatypesModFeaturePostView import it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibility as LemmyapiDatatypesModChangeCommunityVisibility import it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibilityView as LemmyapiDatatypesModChangeCommunityVisibilityView +import it.vercruysse.lemmyapi.datatypes.ModFeaturePost as LemmyapiDatatypesModFeaturePost +import it.vercruysse.lemmyapi.datatypes.ModFeaturePostView as LemmyapiDatatypesModFeaturePostView import it.vercruysse.lemmyapi.datatypes.ModLockPost as LemmyapiDatatypesModLockPost import it.vercruysse.lemmyapi.datatypes.ModLockPostView as LemmyapiDatatypesModLockPostView import it.vercruysse.lemmyapi.datatypes.ModRemoveComment as LemmyapiDatatypesModRemoveComment @@ -159,13 +161,11 @@ import it.vercruysse.lemmyapi.datatypes.MyUserInfo as LemmyapiDatatypesMyUserInf import it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset as LemmyapiDatatypesPasswordChangeAfterReset import it.vercruysse.lemmyapi.datatypes.PasswordReset as LemmyapiDatatypesPasswordReset import it.vercruysse.lemmyapi.datatypes.Person as LemmyapiDatatypesPerson -import it.vercruysse.lemmyapi.datatypes.PersonAggregates as LemmyapiDatatypesPersonAggregates import it.vercruysse.lemmyapi.datatypes.PersonMention as LemmyapiDatatypesPersonMention import it.vercruysse.lemmyapi.datatypes.PersonMentionResponse as LemmyapiDatatypesPersonMentionResponse import it.vercruysse.lemmyapi.datatypes.PersonMentionView as LemmyapiDatatypesPersonMentionView import it.vercruysse.lemmyapi.datatypes.PersonView as LemmyapiDatatypesPersonView import it.vercruysse.lemmyapi.datatypes.Post as LemmyapiDatatypesPost -import it.vercruysse.lemmyapi.datatypes.PostAggregates as LemmyapiDatatypesPostAggregates import it.vercruysse.lemmyapi.datatypes.PostReport as LemmyapiDatatypesPostReport import it.vercruysse.lemmyapi.datatypes.PostReportResponse as LemmyapiDatatypesPostReportResponse import it.vercruysse.lemmyapi.datatypes.PostReportView as LemmyapiDatatypesPostReportView @@ -418,12 +418,11 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X0DatatypesCommentReplyView): LemmyapiDatatypesCommentReplyView = LemmyapiDatatypesCommentReplyView( comment_reply = this.toUni(d = d.comment_reply), - comment = this.toUni(d = d.comment), + comment = this.toUni(d = d.comment, d.counts), creator = this.toUni(d = d.creator), - post = this.toUni(d = d.post), - community = this.toUni(d = d.community), + post = this.toUni(d = d.post, counts = X0DatatypesPostAggregates(-1, -1, -1, -1, -1, "")), + community = this.toUni(d = d.community, counts = X0DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), recipient = this.toUni(d = d.recipient), - counts = this.toUni(d = d.counts), creator_banned_from_community = d.creator_banned_from_community, banned_from_community = false, creator_is_moderator = d.creator_is_moderator, @@ -437,51 +436,48 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X0DatatypesCommentReportView): LemmyapiDatatypesCommentReportView = LemmyapiDatatypesCommentReportView( comment_report = this.toUni(d = d.comment_report), - comment = this.toUni(d = d.comment), - post = this.toUni(d = d.post), - community = this.toUni(d = d.community), + comment = this.toUni(d = d.comment, d.counts), + post = this.toUni(d = d.post, counts = X0DatatypesPostAggregates(-1, -1, -1, -1, -1, "")), + community = this.toUni(d = d.community, counts = X0DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), creator = this.toUni(d = d.creator), comment_creator = this.toUni(d = d.comment_creator), - counts = this.toUni(d = d.counts), creator_banned_from_community = d.creator_banned_from_community, creator_is_moderator = false, creator_is_admin = false, - creator_blocked = false, - subscribed = SubscribedType.NotSubscribed, - saved = false, - my_vote = d.my_vote, + creator_banned = d.creator.banned, resolver = d.resolver?.let { this.toUni(d = it) }, + comment_actions = CommentActions(d.my_vote, null, null), ) override fun toUni(d: X0DatatypesCommentView): LemmyapiDatatypesCommentView = LemmyapiDatatypesCommentView( - comment = this.toUni(d = d.comment), + comment = this.toUni(d = d.comment, d.counts), creator = this.toUni(d = d.creator), - post = this.toUni(d = d.post), - community = this.toUni(d = d.community), - counts = this.toUni(d = d.counts), + post = this.toUni(d = d.post, counts = X0DatatypesPostAggregates(-1, -1, -1, -1, -1, "")), + community = this.toUni(d = d.community, counts = X0DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), creator_banned_from_community = d.creator_banned_from_community, - banned_from_community = false, creator_is_moderator = false, creator_is_admin = d.creator_is_admin, - subscribed = d.subscribed, - saved = d.saved, - creator_blocked = d.creator_blocked, - my_vote = d.my_vote, + post_tags = emptyList(), + creator_banned = d.creator.banned, + can_mod = false, + person_actions = PersonActions(if (d.creator_blocked) "" else null), + comment_actions = CommentActions(d.my_vote, null, if (d.saved) "" else null), + community_actions = CommunityActions(null, CommunityFollowerState.from(d.subscribed)), ) - override fun toUni(d: X0DatatypesCommunity): LemmyapiDatatypesCommunity = + override fun toUni(d: X0DatatypesCommunity, counts: X0DatatypesCommunityAggregates): LemmyapiDatatypesCommunity = LemmyapiDatatypesCommunity( id = d.id, name = d.name, title = d.title, description = d.description, removed = d.removed, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, deleted = d.deleted, nsfw = d.nsfw, - actor_id = d.actor_id, + ap_id = d.actor_id, local = d.local, icon = d.icon, banner = d.banner, @@ -489,33 +485,27 @@ internal class Transformer : MapperGenerator { posting_restricted_to_mods = d.posting_restricted_to_mods, instance_id = d.instance_id, visibility = CommunityVisibility.Public, - ) - - override fun toUni(d: X0DatatypesCommunityAggregates): LemmyapiDatatypesCommunityAggregates = - LemmyapiDatatypesCommunityAggregates( - community_id = d.community_id, - subscribers = d.subscribers, - posts = d.posts, - comments = d.comments, - published = d.published, - users_active_day = d.users_active_day, - users_active_week = d.users_active_week, - users_active_month = d.users_active_month, - users_active_half_year = d.users_active_half_year, + subscribers = counts.subscribers, + posts = counts.posts, + comments = counts.comments, + users_active_day = counts.users_active_day, + users_active_week = counts.users_active_week, + users_active_month = counts.users_active_month, + users_active_half_year = counts.users_active_half_year, subscribers_local = -1, + report_count = -1, + unresolved_report_count = -1, + local_removed = false, ) override fun toUni(d: X0DatatypesCommunityView): LemmyapiDatatypesCommunityView = LemmyapiDatatypesCommunityView( - community = this.toUni(d = d.community), - subscribed = d.subscribed, - blocked = d.blocked, - counts = this.toUni(d = d.counts), - banned_from_community = false, + community = this.toUni(d = d.community, d.counts), + can_mod = false, + post_tags = emptyList(), + community_actions = CommunityActions(null, CommunityFollowerState.from(d.subscribed), if (d.blocked) "" else null), ) - override fun toUni(d: SiteMetadata): LinkMetadata = super.toUni(d) - override fun toUni(d: X0DatatypesGetSiteResponse): LemmyapiDatatypesGetSiteResponse = LemmyapiDatatypesGetSiteResponse( site_view = this.toUni(d = d.site_view), @@ -550,8 +540,8 @@ internal class Transformer : MapperGenerator { federation_enabled = d.federation_enabled, captcha_enabled = d.captcha_enabled, captcha_difficulty = d.captcha_difficulty, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, registration_mode = d.registration_mode, reports_email_admins = d.reports_email_admins, federation_signed_fetch = d.federation_signed_fetch, @@ -562,12 +552,11 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X0DatatypesPersonMentionView): LemmyapiDatatypesPersonMentionView = LemmyapiDatatypesPersonMentionView( person_mention = this.toUni(d = d.person_mention), - comment = this.toUni(d = d.comment), + comment = this.toUni(d = d.comment, d.counts), creator = this.toUni(d = d.creator), - post = this.toUni(d = d.post), - community = this.toUni(d = d.community), + post = this.toUni(d = d.post, counts = X0DatatypesPostAggregates(-1, -1, -1, -1, -1, "")), + community = this.toUni(d = d.community, counts = X0DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), recipient = this.toUni(d = d.recipient), - counts = this.toUni(d = d.counts), creator_banned_from_community = d.creator_banned_from_community, banned_from_community = false, creator_is_moderator = d.creator_is_moderator, @@ -578,54 +567,37 @@ internal class Transformer : MapperGenerator { my_vote = d.my_vote, ) - override fun toUni(d: X0DatatypesPostAggregates): LemmyapiDatatypesPostAggregates = - LemmyapiDatatypesPostAggregates( - post_id = d.post_id, - comments = d.comments, - score = d.score, - upvotes = d.upvotes, - downvotes = d.downvotes, - published = d.published, - newest_comment_time = "", - ) - override fun toUni(d: X0DatatypesPostReportView): LemmyapiDatatypesPostReportView = LemmyapiDatatypesPostReportView( post_report = this.toUni(d = d.post_report), - post = this.toUni(d = d.post), - community = this.toUni(d = d.community), + post = this.toUni(d = d.post, d.counts), + community = this.toUni(d = d.community, counts = X0DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), creator = this.toUni(d = d.creator), post_creator = this.toUni(d = d.post_creator), + resolver = d.resolver?.let { this.toUni(d = it) }, + post_actions = PostActions(like_score = d.my_vote), + person_actions = null, + community_actions = null, creator_banned_from_community = d.creator_banned_from_community, + creator_banned = d.creator.banned, creator_is_moderator = false, creator_is_admin = false, - subscribed = SubscribedType.NotSubscribed, - saved = false, - read = false, - hidden = false, - creator_blocked = false, - my_vote = d.my_vote, - unread_comments = 0, - counts = this.toUni(d = d.counts), - resolver = d.resolver?.let { this.toUni(d = it) }, + ) override fun toUni(d: X0DatatypesPostView): LemmyapiDatatypesPostView = LemmyapiDatatypesPostView( - post = this.toUni(d = d.post), + post = this.toUni(d = d.post, d.counts), creator = this.toUni(d = d.creator), - community = this.toUni(d = d.community), + community = this.toUni(d = d.community, counts = X0DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), + post_actions = PostActions(toAt(d.read), null, d.counts.comments - d.unread_comments, toAt(d.saved), null, d.my_vote, null), + person_actions = PersonActions(toAt(d.creator_blocked)), + community_actions = CommunityActions(null, CommunityFollowerState.from(d.subscribed)), + tags = emptyList(), + can_mod = false, creator_banned_from_community = d.creator_banned_from_community, - banned_from_community = false, - creator_is_moderator = d.creator_is_moderator, + creator_banned = d.creator.banned, creator_is_admin = d.creator_is_admin, - counts = this.toUni(d = d.counts), - subscribed = d.subscribed, - saved = d.saved, - read = d.read, - hidden = false, - creator_blocked = d.creator_blocked, - my_vote = d.my_vote, - unread_comments = d.unread_comments, + creator_is_moderator = d.creator_is_moderator, ) override fun toUni(d: X0DatatypesAddAdminResponse): LemmyapiDatatypesAddAdminResponse = @@ -643,14 +615,14 @@ internal class Transformer : MapperGenerator { admin_person_id = d.admin_person_id, post_id = d.post_id, reason = d.reason, - published = d.when_, + published_at = d.when_, ) override fun toUni(d: X0DatatypesAdminPurgeCommentView): LemmyapiDatatypesAdminPurgeCommentView = LemmyapiDatatypesAdminPurgeCommentView( admin_purge_comment = this.toUni(d = d.admin_purge_comment), admin = d.admin?.let { this.toUni(d = it) }, - post = this.toUni(d = d.post), + post = this.toUni(d = d.post, counts = X0DatatypesPostAggregates(-1, -1, -1, -1, -1, "")), ) override fun toUni(d: X0DatatypesAdminPurgeCommunity): LemmyapiDatatypesAdminPurgeCommunity = @@ -658,7 +630,7 @@ internal class Transformer : MapperGenerator { id = d.id, admin_person_id = d.admin_person_id, reason = d.reason, - published = d.when_, + published_at = d.when_, ) override fun toUni(d: X0DatatypesAdminPurgeCommunityView): LemmyapiDatatypesAdminPurgeCommunityView = LemmyapiDatatypesAdminPurgeCommunityView( @@ -671,7 +643,7 @@ internal class Transformer : MapperGenerator { id = d.id, admin_person_id = d.admin_person_id, reason = d.reason, - published = d.when_, + published_at = d.when_, ) override fun toUni(d: X0DatatypesAdminPurgePersonView): LemmyapiDatatypesAdminPurgePersonView = @@ -686,14 +658,14 @@ internal class Transformer : MapperGenerator { admin_person_id = d.admin_person_id, community_id = d.community_id, reason = d.reason, - published = d.when_, + published_at = d.when_, ) override fun toUni(d: X0DatatypesAdminPurgePostView): LemmyapiDatatypesAdminPurgePostView = LemmyapiDatatypesAdminPurgePostView( admin_purge_post = this.toUni(d = d.admin_purge_post), admin = d.admin?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community), + community = this.toUni(d = d.community, counts = X0DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), ) override fun toUni(d: X0DatatypesBanFromCommunityResponse): LemmyapiDatatypesBanFromCommunityResponse = LemmyapiDatatypesBanFromCommunityResponse( @@ -730,32 +702,29 @@ internal class Transformer : MapperGenerator { uuid = d.uuid, ) - override fun toUni(d: X0DatatypesComment): LemmyapiDatatypesComment = LemmyapiDatatypesComment( + override fun toUni(d: X0DatatypesComment, counts: X0DatatypesCommentAggregates): LemmyapiDatatypesComment = LemmyapiDatatypesComment( id = d.id, creator_id = d.creator_id, post_id = d.post_id, content = d.content, removed = d.removed, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, deleted = d.deleted, ap_id = d.ap_id, local = d.local, path = d.path, distinguished = d.distinguished, language_id = d.language_id, + score = counts.score, + upvotes = counts.upvotes, + downvotes = counts.downvotes, + child_count = counts.child_count, + report_count = -1, + unresolved_report_count = -1, + federation_pending = false, ) - override fun toUni(d: X0DatatypesCommentAggregates): LemmyapiDatatypesCommentAggregates = - LemmyapiDatatypesCommentAggregates( - comment_id = d.comment_id, - score = d.score, - upvotes = d.upvotes, - downvotes = d.downvotes, - published = d.published, - child_count = d.child_count, - ) - override fun toUni(d: X0DatatypesCommentReply): LemmyapiDatatypesCommentReply = LemmyapiDatatypesCommentReply( id = d.id, @@ -779,8 +748,8 @@ internal class Transformer : MapperGenerator { reason = d.reason, resolved = d.resolved, resolver_id = d.resolver_id, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, ) override fun toUni(d: X0DatatypesCommentReportResponse): LemmyapiDatatypesCommentReportResponse = @@ -796,12 +765,12 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X0DatatypesCommunityFollowerView): LemmyapiDatatypesCommunityFollowerView = LemmyapiDatatypesCommunityFollowerView( - community = this.toUni(d = d.community), + community = this.toUni(d = d.community, counts = X0DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), follower = this.toUni(d = d.follower), ) override fun toUni(d: X0DatatypesCommunityModeratorView): LemmyapiDatatypesCommunityModeratorView = LemmyapiDatatypesCommunityModeratorView( - community = this.toUni(d = d.community), + community = this.toUni(d = d.community, counts = X0DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), moderator = this.toUni(d = d.moderator), ) @@ -818,8 +787,8 @@ internal class Transformer : MapperGenerator { image_url = d.image_url, alt_text = d.alt_text, category = d.category, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, ) override fun toUni(d: X0DatatypesCustomEmojiKeyword): LemmyapiDatatypesCustomEmojiKeyword = @@ -877,84 +846,114 @@ internal class Transformer : MapperGenerator { val modlogList = mutableListOf() // Add ModRemovePost entries - modlogList.addAll(d.removed_posts.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemovePost(mod_remove_post = this.toUni(d = view)) - }) + modlogList.addAll( + d.removed_posts.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemovePost(mod_remove_post = this.toUni(d = view)) + }, + ) // Add ModLockPost entries - modlogList.addAll(d.locked_posts.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModLockPost(mod_lock_post = this.toUni(d = view)) - }) + modlogList.addAll( + d.locked_posts.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModLockPost(mod_lock_post = this.toUni(d = view)) + }, + ) // Add ModFeaturePost entries - modlogList.addAll(d.featured_posts.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModFeaturePost(mod_feature_post = this.toUni(d = view)) - }) + modlogList.addAll( + d.featured_posts.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModFeaturePost(mod_feature_post = this.toUni(d = view)) + }, + ) // Add ModRemoveComment entries - modlogList.addAll(d.removed_comments.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemoveComment(mod_remove_comment = this.toUni(d = view)) - }) + modlogList.addAll( + d.removed_comments.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemoveComment(mod_remove_comment = this.toUni(d = view)) + }, + ) // Add ModRemoveCommunity entries - modlogList.addAll(d.removed_communities.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemoveCommunity(mod_remove_community = this.toUni(d = view)) - }) + modlogList.addAll( + d.removed_communities.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemoveCommunity(mod_remove_community = this.toUni(d = view)) + }, + ) // Add ModBanFromCommunity entries - modlogList.addAll(d.banned_from_community.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModBanFromCommunity(mod_ban_from_community = this.toUni(d = view)) - }) + modlogList.addAll( + d.banned_from_community.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModBanFromCommunity(mod_ban_from_community = this.toUni(d = view)) + }, + ) // Add ModBan entries - modlogList.addAll(d.banned.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModBan(mod_ban = this.toUni(d = view)) - }) + modlogList.addAll( + d.banned.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModBan(mod_ban = this.toUni(d = view)) + }, + ) // Add ModAddCommunity entries - modlogList.addAll(d.added_to_community.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModAddCommunity(mod_add_community = this.toUni(d = view)) - }) + modlogList.addAll( + d.added_to_community.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModAddCommunity(mod_add_community = this.toUni(d = view)) + }, + ) // Add ModTransferCommunity entries - modlogList.addAll(d.transferred_to_community.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModTransferCommunity(mod_transfer_community = this.toUni(d = view)) - }) + modlogList.addAll( + d.transferred_to_community.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModTransferCommunity(mod_transfer_community = this.toUni(d = view)) + }, + ) // Add ModAdd entries - modlogList.addAll(d.added.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModAdd(mod_add = this.toUni(d = view)) - }) + modlogList.addAll( + d.added.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModAdd(mod_add = this.toUni(d = view)) + }, + ) // Add AdminPurgePerson entries - modlogList.addAll(d.admin_purged_persons.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgePerson(admin_purge_person = this.toUni(d = view)) - }) + modlogList.addAll( + d.admin_purged_persons.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgePerson(admin_purge_person = this.toUni(d = view)) + }, + ) // Add AdminPurgeCommunity entries - modlogList.addAll(d.admin_purged_communities.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgeCommunity(admin_purge_community = this.toUni(d = view)) - }) + modlogList.addAll( + d.admin_purged_communities.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgeCommunity(admin_purge_community = this.toUni(d = view)) + }, + ) // Add AdminPurgePost entries - modlogList.addAll(d.admin_purged_posts.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgePost(admin_purge_post = this.toUni(d = view)) - }) + modlogList.addAll( + d.admin_purged_posts.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgePost(admin_purge_post = this.toUni(d = view)) + }, + ) // Add AdminPurgeComment entries - modlogList.addAll(d.admin_purged_comments.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgeComment(admin_purge_comment = this.toUni(d = view)) - }) + modlogList.addAll( + d.admin_purged_comments.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgeComment(admin_purge_comment = this.toUni(d = view)) + }, + ) // Add ModHideCommunity entries (mapped to ModChangeCommunityVisibility) - modlogList.addAll(d.hidden_communities.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModChangeCommunityVisibility(mod_change_community_visibility = this.toUni(d = view)) - }) + modlogList.addAll( + d.hidden_communities.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModChangeCommunityVisibility(mod_change_community_visibility = this.toUni(d = view)) + }, + ) return it.vercruysse.lemmyapi.datatypes.GetModlogResponse( modlog = modlogList, next_page = null, - prev_page = null + prev_page = null, ) } @@ -1013,8 +1012,8 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X0DatatypesInstance): LemmyapiDatatypesInstance = LemmyapiDatatypesInstance( id = d.id, domain = d.domain, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, software = d.software, version = d.version, ) @@ -1022,8 +1021,8 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X0DatatypesInstanceWithFederationState): LemmyapiDatatypesInstanceWithFederationState = LemmyapiDatatypesInstanceWithFederationState( id = d.id, domain = d.domain, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, software = d.software, version = d.version, federation_state = d.federation_state?.let { this.toUni(d = it) }, @@ -1060,22 +1059,22 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X0DatatypesLocalSiteRateLimit): LemmyapiDatatypesLocalSiteRateLimit = LemmyapiDatatypesLocalSiteRateLimit( local_site_id = d.local_site_id, - message = d.message, - message_per_second = d.message_per_second, - post = d.post, - post_per_second = d.post_per_second, - register = d.register, - register_per_second = d.register_per_second, - image = d.image, - image_per_second = d.image_per_second, - comment = d.comment, - comment_per_second = d.comment_per_second, - search = d.search, - search_per_second = d.search_per_second, - published = d.published, - updated = d.updated, - import_user_settings = d.import_user_settings, - import_user_settings_per_second = d.import_user_settings_per_second, + message_max_requests = d.message, + message_interval_seconds = d.message_per_second, + post_max_requests = d.post, + post_interval_seconds = d.post_per_second, + register_max_requests = d.register, + register_interval_seconds = d.register_per_second, + image_max_requests = d.image, + image_interval_seconds = d.image_per_second, + comment_max_requests = d.comment, + comment_interval_seconds = d.comment_per_second, + search_max_requests = d.search, + search_interval_seconds = d.search_per_second, + published_at = d.published, + updated_at = d.updated, + import_user_settings_max_requests = d.import_user_settings, + import_user_settings_interval_seconds = d.import_user_settings_per_second, ) override fun toUni(d: X0DatatypesLocalUser): LemmyapiDatatypesLocalUser = @@ -1090,7 +1089,6 @@ internal class Transformer : MapperGenerator { interface_language = d.interface_language, show_avatars = d.show_avatars, send_notifications_to_email = d.send_notifications_to_email, - show_scores = d.show_scores, show_bot_accounts = d.show_bot_accounts, show_read_posts = d.show_read_posts, email_verified = d.email_verified, @@ -1105,14 +1103,26 @@ internal class Transformer : MapperGenerator { enable_keyboard_navigation = d.enable_keyboard_navigation, enable_animated_images = d.enable_animated_images, collapse_bot_comments = d.collapse_bot_comments, - last_donation_notification = "", + last_donation_notification_at = "", + show_score = d.show_scores, + show_upvotes = d.show_scores, + show_person_votes = d.show_scores, + show_upvote_percentage = d.show_scores, + show_downvotes = VoteShow.Show, + hide_media = false, + default_comment_sort_type = SortType.Active, + enable_private_messages = true, + auto_mark_fetched_posts_as_read = false, + default_post_time_range_seconds = null, + ) override fun toUni(d: X0DatatypesLocalUserView): LemmyapiDatatypesLocalUserView = LemmyapiDatatypesLocalUserView( local_user = this.toUni(d = d.local_user), - person = this.toUni(d = d.person), - counts = this.toUni(d = d.counts), + person = this.toUni(d = d.person, d.counts), + banned = d.person.banned, + local_user_vote_display_mode = null, ) override fun toUni(d: X0DatatypesLoginResponse): LemmyapiDatatypesLoginResponse = @@ -1125,7 +1135,7 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X0DatatypesLoginToken): LemmyapiDatatypesLoginToken = LemmyapiDatatypesLoginToken( user_id = d.user_id, - published = d.published, + published_at = d.published, ip = d.ip, user_agent = d.user_agent, ) @@ -1135,7 +1145,7 @@ internal class Transformer : MapperGenerator { mod_person_id = d.mod_person_id, other_person_id = d.other_person_id, removed = d.removed, - published = d.when_, + published_at = d.when_, ) override fun toUni(d: X0DatatypesModAddCommunity): LemmyapiDatatypesModAddCommunity = @@ -1145,14 +1155,14 @@ internal class Transformer : MapperGenerator { other_person_id = d.other_person_id, community_id = d.community_id, removed = d.removed, - published = d.when_, + published_at = d.when_, ) override fun toUni(d: X0DatatypesModAddCommunityView): LemmyapiDatatypesModAddCommunityView = LemmyapiDatatypesModAddCommunityView( mod_add_community = this.toUni(d = d.mod_add_community), moderator = d.moderator?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community), + community = this.toUni(d = d.community, counts = X0DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), other_person = this.toUni(d = d.modded_person), ) @@ -1169,8 +1179,8 @@ internal class Transformer : MapperGenerator { other_person_id = d.other_person_id, reason = d.reason, banned = d.banned, - expires = d.expires, - published = d.when_, + expires_at = d.expires, + published_at = d.when_, instance_id = -1, ) @@ -1182,14 +1192,14 @@ internal class Transformer : MapperGenerator { community_id = d.community_id, reason = d.reason, banned = d.banned, - expires = d.expires, - published = d.when_, + expires_at = d.expires, + published_at = d.when_, ) override fun toUni(d: X0DatatypesModBanFromCommunityView): LemmyapiDatatypesModBanFromCommunityView = LemmyapiDatatypesModBanFromCommunityView( mod_ban_from_community = this.toUni(d = d.mod_ban_from_community), moderator = d.moderator?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community), + community = this.toUni(d = d.community, counts = X0DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), other_person = this.toUni(d = d.banned_person), ) @@ -1206,7 +1216,7 @@ internal class Transformer : MapperGenerator { mod_person_id = d.mod_person_id, post_id = d.post_id, featured = d.featured, - published = d.when_, + published_at = d.when_, is_featured_community = d.is_featured_community, ) @@ -1214,8 +1224,8 @@ internal class Transformer : MapperGenerator { LemmyapiDatatypesModFeaturePostView( mod_feature_post = this.toUni(d = d.mod_feature_post), moderator = d.moderator?.let { this.toUni(d = it) }, - post = this.toUni(d = d.post), - community = this.toUni(d = d.community), + post = this.toUni(d = d.post, counts = X0DatatypesPostAggregates(-1, -1, -1, -1, -1, "")), + community = this.toUni(d = d.community, counts = X0DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), ) override fun toUni(d: X0DatatypesModHideCommunity): LemmyapiDatatypesModChangeCommunityVisibility = @@ -1223,7 +1233,7 @@ internal class Transformer : MapperGenerator { id = d.id, community_id = d.community_id, mod_person_id = d.mod_person_id, - published = d.when_, + published_at = d.when_, reason = d.reason, visibility = if (d.hidden) { CommunityVisibility.Unlisted @@ -1236,7 +1246,7 @@ internal class Transformer : MapperGenerator { LemmyapiDatatypesModChangeCommunityVisibilityView( mod_change_community_visibility = this.toUni(d = d.mod_hide_community), moderator = d.admin?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community), + community = this.toUni(d = d.community, counts = X0DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), ) override fun toUni(d: X0DatatypesModLockPost): LemmyapiDatatypesModLockPost = @@ -1245,15 +1255,15 @@ internal class Transformer : MapperGenerator { mod_person_id = d.mod_person_id, post_id = d.post_id, locked = d.locked, - published = d.when_, + published_at = d.when_, ) override fun toUni(d: X0DatatypesModLockPostView): LemmyapiDatatypesModLockPostView = LemmyapiDatatypesModLockPostView( mod_lock_post = this.toUni(d = d.mod_lock_post), moderator = d.moderator?.let { this.toUni(d = it) }, - post = this.toUni(d = d.post), - community = this.toUni(d = d.community), + post = this.toUni(d = d.post, counts = X0DatatypesPostAggregates(-1, -1, -1, -1, -1, "")), + community = this.toUni(d = d.community, counts = X0DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), ) override fun toUni(d: X0DatatypesModlogListParams): LemmyapiDatatypesModlogListParams = @@ -1273,17 +1283,17 @@ internal class Transformer : MapperGenerator { comment_id = d.comment_id, reason = d.reason, removed = d.removed, - published = d.when_, + published_at = d.when_, ) override fun toUni(d: X0DatatypesModRemoveCommentView): LemmyapiDatatypesModRemoveCommentView = LemmyapiDatatypesModRemoveCommentView( mod_remove_comment = this.toUni(d = d.mod_remove_comment), moderator = d.moderator?.let { this.toUni(d = it) }, - comment = this.toUni(d = d.comment), + comment = this.toUni(d = d.comment, X0DatatypesCommentAggregates(-1, -1, -1, -1, "", -1)), other_person = this.toUni(d = d.commenter), - post = this.toUni(d = d.post), - community = this.toUni(d = d.community), + post = this.toUni(d = d.post, counts = X0DatatypesPostAggregates(-1, -1, -1, -1, -1, "")), + community = this.toUni(d = d.community, counts = X0DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), ) override fun toUni(d: X0DatatypesModRemoveCommunity): LemmyapiDatatypesModRemoveCommunity = @@ -1293,13 +1303,13 @@ internal class Transformer : MapperGenerator { community_id = d.community_id, reason = d.reason, removed = d.removed, - published = d.when_, + published_at = d.when_, ) override fun toUni(d: X0DatatypesModRemoveCommunityView): LemmyapiDatatypesModRemoveCommunityView = LemmyapiDatatypesModRemoveCommunityView( mod_remove_community = this.toUni(d = d.mod_remove_community), moderator = d.moderator?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community), + community = this.toUni(d = d.community, counts = X0DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), ) override fun toUni(d: X0DatatypesModRemovePost): LemmyapiDatatypesModRemovePost = @@ -1309,15 +1319,15 @@ internal class Transformer : MapperGenerator { post_id = d.post_id, reason = d.reason, removed = d.removed, - published = d.when_, + published_at = d.when_, ) override fun toUni(d: X0DatatypesModRemovePostView): LemmyapiDatatypesModRemovePostView = LemmyapiDatatypesModRemovePostView( mod_remove_post = this.toUni(d = d.mod_remove_post), moderator = d.moderator?.let { this.toUni(d = it) }, - post = this.toUni(d = d.post), - community = this.toUni(d = d.community), + post = this.toUni(d = d.post, counts = X0DatatypesPostAggregates(-1, -1, -1, -1, -1, "")), + community = this.toUni(d = d.community, counts = X0DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), ) override fun toUni(d: X0DatatypesModTransferCommunity): LemmyapiDatatypesModTransferCommunity = @@ -1326,13 +1336,13 @@ internal class Transformer : MapperGenerator { mod_person_id = d.mod_person_id, other_person_id = d.other_person_id, community_id = d.community_id, - published = d.when_, + published_at = d.when_, ) override fun toUni(d: X0DatatypesModTransferCommunityView): LemmyapiDatatypesModTransferCommunityView = LemmyapiDatatypesModTransferCommunityView( mod_transfer_community = this.toUni(d = d.mod_transfer_community), moderator = d.moderator?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community), + community = this.toUni(d = d.community, counts = X0DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), other_person = this.toUni(d = d.modded_person), ) @@ -1341,38 +1351,34 @@ internal class Transformer : MapperGenerator { local_user_view = this.toUni(d = d.local_user_view), follows = d.follows.map { this.toUni(d = it) }, moderates = d.moderates.map { this.toUni(d = it) }, - community_blocks = d.community_blocks.map { this.toUni(d = it.community) }, + community_blocks = d.community_blocks.map { this.toUni(d = it.community, counts = X0DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)) }, instance_blocks = d.instance_blocks.map { this.toUni(d = it.instance) }, person_blocks = d.person_blocks.map { this.toUni(d = it.target) }, discussion_languages = d.discussion_languages, ) - override fun toUni(d: X0DatatypesPerson): LemmyapiDatatypesPerson = LemmyapiDatatypesPerson( + fun toUni(d: X0DatatypesPerson) = this.toUni(d, X0DatatypesPersonAggregates(-1, -1, -1)) + + override fun toUni(d: X0DatatypesPerson, counts: X0DatatypesPersonAggregates): LemmyapiDatatypesPerson = LemmyapiDatatypesPerson( id = d.id, name = d.name, display_name = d.display_name, avatar = d.avatar, - banned = d.banned, - published = d.published, - updated = d.updated, - actor_id = d.actor_id, + published_at = d.published, + updated_at = d.updated, + ap_id = d.actor_id, bio = d.bio, local = d.local, banner = d.banner, deleted = d.deleted, matrix_user_id = d.matrix_user_id, bot_account = d.bot_account, - ban_expires = d.ban_expires, +// ban_expires = d.ban_expires, instance_id = d.instance_id, + comment_count = counts.comment_count, + post_count = counts.post_count, ) - override fun toUni(d: X0DatatypesPersonAggregates): LemmyapiDatatypesPersonAggregates = - LemmyapiDatatypesPersonAggregates( - person_id = d.person_id, - post_count = d.post_count, - comment_count = d.comment_count, - ) - override fun toUni(d: X0DatatypesPersonMention): LemmyapiDatatypesPersonMention = LemmyapiDatatypesPersonMention( id = d.id, @@ -1389,12 +1395,13 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X0DatatypesPersonView): LemmyapiDatatypesPersonView = LemmyapiDatatypesPersonView( - person = this.toUni(d = d.person), - counts = this.toUni(d = d.counts), + person = this.toUni(d = d.person, d.counts), is_admin = d.is_admin, + person_actions = null, + creator_banned = d.person.banned, ) - override fun toUni(d: X0DatatypesPost): LemmyapiDatatypesPost = LemmyapiDatatypesPost( + override fun toUni(d: X0DatatypesPost, counts: X0DatatypesPostAggregates): LemmyapiDatatypesPost = LemmyapiDatatypesPost( id = d.id, name = d.name, url = d.url, @@ -1403,8 +1410,8 @@ internal class Transformer : MapperGenerator { community_id = d.community_id, removed = d.removed, locked = d.locked, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, deleted = d.deleted, nsfw = d.nsfw, embed_title = d.embed_title, @@ -1416,6 +1423,14 @@ internal class Transformer : MapperGenerator { language_id = d.language_id, featured_community = d.featured_community, featured_local = d.featured_local, + comments = counts.comments, + score = counts.score, + upvotes = counts.upvotes, + downvotes = counts.downvotes, + newest_comment_time_at = "", + report_count = -1, + unresolved_report_count = -1, + federation_pending = false, ) override fun toUni(d: X0DatatypesPostReport): LemmyapiDatatypesPostReport = @@ -1429,8 +1444,8 @@ internal class Transformer : MapperGenerator { reason = d.reason, resolved = d.resolved, resolver_id = d.resolver_id, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, violates_instance_rules = false, ) @@ -1452,8 +1467,8 @@ internal class Transformer : MapperGenerator { content = d.content, deleted = d.deleted, read = d.read, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, ap_id = d.ap_id, local = d.local, removed = false, @@ -1468,8 +1483,8 @@ internal class Transformer : MapperGenerator { reason = d.reason, resolved = d.resolved, resolver_id = d.resolver_id, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, ) override fun toUni(d: X0DatatypesPrivateMessageReportResponse): LemmyapiDatatypesPrivateMessageReportResponse = LemmyapiDatatypesPrivateMessageReportResponse( @@ -1502,10 +1517,10 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X0DatatypesReadableFederationState): LemmyapiDatatypesReadableFederationState = LemmyapiDatatypesReadableFederationState( instance_id = d.instance_id, last_successful_id = d.last_successful_id, - last_successful_published_time = d.last_successful_published_time, + last_successful_published_time_at = d.last_successful_published_time, fail_count = d.fail_count, - last_retry = d.last_retry, - next_retry = d.next_retry, + last_retry_at = d.last_retry, + next_retry_at = d.next_retry, ) override fun toUni(d: X0DatatypesRegistrationApplication): LemmyapiDatatypesRegistrationApplication = LemmyapiDatatypesRegistrationApplication( @@ -1514,7 +1529,7 @@ internal class Transformer : MapperGenerator { answer = d.answer, admin_id = d.admin_id, deny_reason = d.deny_reason, - published = d.published, + published_at = d.published, ) override fun toUni(d: X0DatatypesRegistrationApplicationResponse): LemmyapiDatatypesRegistrationApplicationResponse = @@ -1550,12 +1565,12 @@ internal class Transformer : MapperGenerator { id = d.id, name = d.name, sidebar = d.sidebar, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, icon = d.icon, banner = d.banner, description = d.description, - actor_id = d.actor_id, + ap_id = d.actor_id, last_refreshed_at = d.last_refreshed_at, inbox_url = d.inbox_url, instance_id = d.instance_id, @@ -1590,8 +1605,8 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X0DatatypesTagline): LemmyapiDatatypesTagline = LemmyapiDatatypesTagline( id = d.id, content = d.content, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, ) override fun toUni(d: X0DatatypesUpdateTotpResponse): LemmyapiDatatypesUpdateTotpResponse = @@ -1624,7 +1639,7 @@ internal class Transformer : MapperGenerator { ban = d.ban, remove_data = d.remove_or_restore_data, reason = d.reason, - expires = d.expires, + expires = d.expires_at, ) override fun fromUni(d: LemmyapiDatatypesBanPerson): X0DatatypesBanPerson = X0DatatypesBanPerson( @@ -1632,7 +1647,7 @@ internal class Transformer : MapperGenerator { ban = d.ban, remove_data = d.remove_or_restore_data, reason = d.reason, - expires = d.expires, + expires = d.expires_at, ) override fun fromUni(d: LemmyapiDatatypesBlockCommunity): X0DatatypesBlockCommunity = @@ -1756,18 +1771,18 @@ internal class Transformer : MapperGenerator { discussion_languages = d.discussion_languages, slur_filter_regex = d.slur_filter_regex, actor_name_max_length = d.actor_name_max_length, - rate_limit_message = d.rate_limit_message, - rate_limit_message_per_second = d.rate_limit_message_per_second, - rate_limit_post = d.rate_limit_post, - rate_limit_post_per_second = d.rate_limit_post_per_second, - rate_limit_register = d.rate_limit_register, - rate_limit_register_per_second = d.rate_limit_register_per_second, - rate_limit_image = d.rate_limit_image, - rate_limit_image_per_second = d.rate_limit_image_per_second, - rate_limit_comment = d.rate_limit_comment, - rate_limit_comment_per_second = d.rate_limit_comment_per_second, - rate_limit_search = d.rate_limit_search, - rate_limit_search_per_second = d.rate_limit_search_per_second, + rate_limit_message = d.rate_limit_message_max_requests, + rate_limit_message_per_second = d.rate_limit_message_interval_seconds, + rate_limit_post = d.rate_limit_post_max_requests, + rate_limit_post_per_second = d.rate_limit_post_interval_seconds, + rate_limit_register = d.rate_limit_register_max_requests, + rate_limit_register_per_second = d.rate_limit_register_interval_seconds, + rate_limit_image = d.rate_limit_image_max_requests, + rate_limit_image_per_second = d.rate_limit_image_interval_seconds, + rate_limit_comment = d.rate_limit_comment_max_requests, + rate_limit_comment_per_second = d.rate_limit_comment_interval_seconds, + rate_limit_search = d.rate_limit_search_max_requests, + rate_limit_search_per_second = d.rate_limit_search_interval_seconds, federation_enabled = d.federation_enabled, federation_debug = d.federation_debug, captcha_enabled = d.captcha_enabled, @@ -1882,18 +1897,18 @@ internal class Transformer : MapperGenerator { discussion_languages = d.discussion_languages, slur_filter_regex = d.slur_filter_regex, actor_name_max_length = d.actor_name_max_length, - rate_limit_message = d.rate_limit_message, - rate_limit_message_per_second = d.rate_limit_message_per_second, - rate_limit_post = d.rate_limit_post, - rate_limit_post_per_second = d.rate_limit_post_per_second, - rate_limit_register = d.rate_limit_register, - rate_limit_register_per_second = d.rate_limit_register_per_second, - rate_limit_image = d.rate_limit_image, - rate_limit_image_per_second = d.rate_limit_image_per_second, - rate_limit_comment = d.rate_limit_comment, - rate_limit_comment_per_second = d.rate_limit_comment_per_second, - rate_limit_search = d.rate_limit_search, - rate_limit_search_per_second = d.rate_limit_search_per_second, + rate_limit_message = d.rate_limit_message_max_requests, + rate_limit_message_per_second = d.rate_limit_message_interval_seconds, + rate_limit_post = d.rate_limit_post_max_requests, + rate_limit_post_per_second = d.rate_limit_post_interval_seconds, + rate_limit_register = d.rate_limit_register_max_requests, + rate_limit_register_per_second = d.rate_limit_register_interval_seconds, + rate_limit_image = d.rate_limit_image_max_requests, + rate_limit_image_per_second = d.rate_limit_image_interval_seconds, + rate_limit_comment = d.rate_limit_comment_max_requests, + rate_limit_comment_per_second = d.rate_limit_comment_interval_seconds, + rate_limit_search = d.rate_limit_search_max_requests, + rate_limit_search_per_second = d.rate_limit_search_interval_seconds, federation_enabled = d.federation_enabled, federation_debug = d.federation_debug, captcha_enabled = d.captcha_enabled, @@ -1985,9 +2000,6 @@ internal class Transformer : MapperGenerator { limit = d.limit, community_id = d.community_id, community_name = d.community_name, - saved_only = d.saved_only, - liked_only = d.liked_only, - disliked_only = d.disliked_only, page_cursor = d.page_cursor, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt index d56e9f74..392006d3 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt @@ -20,7 +20,7 @@ internal interface MapperGenerator { fun toUni(d: BlockCommunityResponse): it.vercruysse.lemmyapi.datatypes.BlockCommunityResponse fun toUni(d: BlockPersonResponse): it.vercruysse.lemmyapi.datatypes.BlockPersonResponse fun toUni(d: CaptchaResponse): it.vercruysse.lemmyapi.datatypes.CaptchaResponse - fun toUni(d: Comment, agg: CommentAggregates): it.vercruysse.lemmyapi.datatypes.Comment + fun toUni(d: Comment, counts: CommentAggregates): it.vercruysse.lemmyapi.datatypes.Comment fun toUni(d: CommentReply): it.vercruysse.lemmyapi.datatypes.CommentReply fun toUni(d: CommentReplyResponse): it.vercruysse.lemmyapi.datatypes.CommentReplyResponse fun toUni(d: CommentReplyView): it.vercruysse.lemmyapi.datatypes.CommentReplyView @@ -29,8 +29,7 @@ internal interface MapperGenerator { fun toUni(d: CommentReportView): it.vercruysse.lemmyapi.datatypes.CommentReportView fun toUni(d: CommentResponse): it.vercruysse.lemmyapi.datatypes.CommentResponse fun toUni(d: CommentView): it.vercruysse.lemmyapi.datatypes.CommentView - fun toUni(d: Community): it.vercruysse.lemmyapi.datatypes.Community - fun toUni(d: CommunityAggregates): it.vercruysse.lemmyapi.datatypes.CommunityAggregates + fun toUni(d: Community, counts: CommunityAggregates): it.vercruysse.lemmyapi.datatypes.Community fun toUni(d: CommunityFollowerView): it.vercruysse.lemmyapi.datatypes.CommunityFollowerView fun toUni(d: CommunityModeratorView): it.vercruysse.lemmyapi.datatypes.CommunityModeratorView fun toUni(d: CommunityResponse): it.vercruysse.lemmyapi.datatypes.CommunityResponse @@ -103,14 +102,12 @@ internal interface MapperGenerator { fun toUni(d: ModTransferCommunity): it.vercruysse.lemmyapi.datatypes.ModTransferCommunity fun toUni(d: ModTransferCommunityView): it.vercruysse.lemmyapi.datatypes.ModTransferCommunityView fun toUni(d: MyUserInfo): it.vercruysse.lemmyapi.datatypes.MyUserInfo - fun toUni(d: Person): it.vercruysse.lemmyapi.datatypes.Person - fun toUni(d: PersonAggregates): it.vercruysse.lemmyapi.datatypes.PersonAggregates + fun toUni(d: Person, counts: PersonAggregates): it.vercruysse.lemmyapi.datatypes.Person fun toUni(d: PersonMention): it.vercruysse.lemmyapi.datatypes.PersonMention fun toUni(d: PersonMentionResponse): it.vercruysse.lemmyapi.datatypes.PersonMentionResponse fun toUni(d: PersonMentionView): it.vercruysse.lemmyapi.datatypes.PersonMentionView fun toUni(d: PersonView): it.vercruysse.lemmyapi.datatypes.PersonView - fun toUni(d: Post): it.vercruysse.lemmyapi.datatypes.Post - fun toUni(d: PostAggregates): it.vercruysse.lemmyapi.datatypes.PostAggregates + fun toUni(d: Post, counts: PostAggregates): it.vercruysse.lemmyapi.datatypes.Post fun toUni(d: PostReport): it.vercruysse.lemmyapi.datatypes.PostReport fun toUni(d: PostReportResponse): it.vercruysse.lemmyapi.datatypes.PostReportResponse fun toUni(d: PostReportView): it.vercruysse.lemmyapi.datatypes.PostReportView diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt index a3f90705..08c175c6 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt @@ -1,5 +1,13 @@ package it.vercruysse.lemmyapi.v0.x19.x11 +import it.vercruysse.lemmyapi.datatypes.CommentActions +import it.vercruysse.lemmyapi.datatypes.CommunityActions +import it.vercruysse.lemmyapi.datatypes.PersonActions +import it.vercruysse.lemmyapi.datatypes.PostActions +import it.vercruysse.lemmyapi.dto.CommunityFollowerState +import it.vercruysse.lemmyapi.dto.SortType +import it.vercruysse.lemmyapi.dto.VoteShow +import it.vercruysse.lemmyapi.utils.toAt import it.vercruysse.lemmyapi.datatypes.AddAdmin as LemmyapiDatatypesAddAdmin import it.vercruysse.lemmyapi.datatypes.AddAdminResponse as LemmyapiDatatypesAddAdminResponse import it.vercruysse.lemmyapi.datatypes.AddModToCommunity as LemmyapiDatatypesAddModToCommunity @@ -35,7 +43,6 @@ import it.vercruysse.lemmyapi.datatypes.CommentReportView as LemmyapiDatatypesCo import it.vercruysse.lemmyapi.datatypes.CommentResponse as LemmyapiDatatypesCommentResponse import it.vercruysse.lemmyapi.datatypes.CommentView as LemmyapiDatatypesCommentView import it.vercruysse.lemmyapi.datatypes.Community as LemmyapiDatatypesCommunity -import it.vercruysse.lemmyapi.datatypes.CommunityAggregates as LemmyapiDatatypesCommunityAggregates import it.vercruysse.lemmyapi.datatypes.CommunityFollowerView as LemmyapiDatatypesCommunityFollowerView import it.vercruysse.lemmyapi.datatypes.CommunityModeratorView as LemmyapiDatatypesCommunityModeratorView import it.vercruysse.lemmyapi.datatypes.CommunityResponse as LemmyapiDatatypesCommunityResponse @@ -166,13 +173,11 @@ import it.vercruysse.lemmyapi.datatypes.MyUserInfo as LemmyapiDatatypesMyUserInf import it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset as LemmyapiDatatypesPasswordChangeAfterReset import it.vercruysse.lemmyapi.datatypes.PasswordReset as LemmyapiDatatypesPasswordReset import it.vercruysse.lemmyapi.datatypes.Person as LemmyapiDatatypesPerson -import it.vercruysse.lemmyapi.datatypes.PersonAggregates as LemmyapiDatatypesPersonAggregates import it.vercruysse.lemmyapi.datatypes.PersonMention as LemmyapiDatatypesPersonMention import it.vercruysse.lemmyapi.datatypes.PersonMentionResponse as LemmyapiDatatypesPersonMentionResponse import it.vercruysse.lemmyapi.datatypes.PersonMentionView as LemmyapiDatatypesPersonMentionView import it.vercruysse.lemmyapi.datatypes.PersonView as LemmyapiDatatypesPersonView import it.vercruysse.lemmyapi.datatypes.Post as LemmyapiDatatypesPost -import it.vercruysse.lemmyapi.datatypes.PostAggregates as LemmyapiDatatypesPostAggregates import it.vercruysse.lemmyapi.datatypes.PostReport as LemmyapiDatatypesPostReport import it.vercruysse.lemmyapi.datatypes.PostReportResponse as LemmyapiDatatypesPostReportResponse import it.vercruysse.lemmyapi.datatypes.PostReportView as LemmyapiDatatypesPostReportView @@ -453,14 +458,14 @@ internal class Transformer : MapperGenerator { admin_person_id = d.admin_person_id, post_id = d.post_id, reason = d.reason, - published = d.when_, + published_at = d.when_, ) override fun toUni(d: X11DatatypesAdminPurgeCommentView): LemmyapiDatatypesAdminPurgeCommentView = LemmyapiDatatypesAdminPurgeCommentView( admin_purge_comment = this.toUni(d = d.admin_purge_comment), admin = d.admin?.let { this.toUni(d = it) }, - post = this.toUni(d = d.post), + post = this.toUni(d = d.post, counts = X11DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), ) override fun toUni(d: X11DatatypesAdminPurgeCommunity): LemmyapiDatatypesAdminPurgeCommunity = @@ -468,7 +473,7 @@ internal class Transformer : MapperGenerator { id = d.id, admin_person_id = d.admin_person_id, reason = d.reason, - published = d.when_, + published_at = d.when_, ) override fun toUni(d: X11DatatypesAdminPurgeCommunityView): LemmyapiDatatypesAdminPurgeCommunityView = LemmyapiDatatypesAdminPurgeCommunityView( @@ -481,7 +486,7 @@ internal class Transformer : MapperGenerator { id = d.id, admin_person_id = d.admin_person_id, reason = d.reason, - published = d.when_, + published_at = d.when_, ) override fun toUni(d: X11DatatypesAdminPurgePersonView): LemmyapiDatatypesAdminPurgePersonView = @@ -496,14 +501,14 @@ internal class Transformer : MapperGenerator { admin_person_id = d.admin_person_id, community_id = d.community_id, reason = d.reason, - published = d.when_, + published_at = d.when_, ) override fun toUni(d: X11DatatypesAdminPurgePostView): LemmyapiDatatypesAdminPurgePostView = LemmyapiDatatypesAdminPurgePostView( admin_purge_post = this.toUni(d = d.admin_purge_post), admin = d.admin?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community), + community = this.toUni(d = d.community, counts = X11DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), ) override fun toUni(d: X11DatatypesBanFromCommunityResponse): LemmyapiDatatypesBanFromCommunityResponse = LemmyapiDatatypesBanFromCommunityResponse( @@ -540,24 +545,24 @@ internal class Transformer : MapperGenerator { uuid = d.uuid, ) - override fun toUni(d: X11DatatypesComment, agg: X11DatatypesCommentAggregates): LemmyapiDatatypesComment = LemmyapiDatatypesComment( + override fun toUni(d: X11DatatypesComment, counts: X11DatatypesCommentAggregates): LemmyapiDatatypesComment = LemmyapiDatatypesComment( id = d.id, creator_id = d.creator_id, post_id = d.post_id, content = d.content, removed = d.removed, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, deleted = d.deleted, ap_id = d.ap_id, local = d.local, path = d.path, distinguished = d.distinguished, language_id = d.language_id, - score = agg.score, - upvotes = agg.upvotes, - downvotes = agg.downvotes, - child_count = agg.child_count, + score = counts.score, + upvotes = counts.upvotes, + downvotes = counts.downvotes, + child_count = counts.child_count, report_count = -1, unresolved_report_count = -1, federation_pending = false, @@ -580,12 +585,11 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X11DatatypesCommentReplyView): LemmyapiDatatypesCommentReplyView = LemmyapiDatatypesCommentReplyView( comment_reply = this.toUni(d = d.comment_reply), - comment = this.toUni(d = d.comment), + comment = this.toUni(d = d.comment, d.counts), creator = this.toUni(d = d.creator), - post = this.toUni(d = d.post), - community = this.toUni(d = d.community), + post = this.toUni(d = d.post, counts = X11DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), + community = this.toUni(d = d.community, counts = X11DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), recipient = this.toUni(d = d.recipient), - counts = this.toUni(d = d.counts), creator_banned_from_community = d.creator_banned_from_community, banned_from_community = d.banned_from_community, creator_is_moderator = d.creator_is_moderator, @@ -605,8 +609,8 @@ internal class Transformer : MapperGenerator { reason = d.reason, resolved = d.resolved, resolver_id = d.resolver_id, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, ) override fun toUni(d: X11DatatypesCommentReportResponse): LemmyapiDatatypesCommentReportResponse = @@ -617,20 +621,18 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X11DatatypesCommentReportView): LemmyapiDatatypesCommentReportView = LemmyapiDatatypesCommentReportView( comment_report = this.toUni(d = d.comment_report), - comment = this.toUni(d = d.comment), - post = this.toUni(d = d.post), - community = this.toUni(d = d.community), + comment = this.toUni(d = d.comment, d.counts), + post = this.toUni(d = d.post, counts = X11DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), + community = this.toUni(d = d.community, counts = X11DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), creator = this.toUni(d = d.creator), comment_creator = this.toUni(d = d.comment_creator), - counts = this.toUni(d = d.counts), creator_banned_from_community = d.creator_banned_from_community, creator_is_moderator = d.creator_is_moderator, creator_is_admin = d.creator_is_admin, - creator_blocked = d.creator_blocked, - subscribed = d.subscribed, - saved = d.saved, - my_vote = d.my_vote, - resolver = d.resolver?.let { this.toUni(d = it) }, + creator_banned = d.creator.banned, + person_actions = PersonActions(if (d.creator_blocked) "" else null), + comment_actions = CommentActions(d.my_vote, null, if (d.saved) "" else null), + community_actions = CommunityActions(null, CommunityFollowerState.from(d.subscribed)), ) override fun toUni(d: X11DatatypesCommentResponse): LemmyapiDatatypesCommentResponse = @@ -643,33 +645,31 @@ internal class Transformer : MapperGenerator { LemmyapiDatatypesCommentView( comment = this.toUni(d = d.comment, d.counts), creator = this.toUni(d = d.creator), - post = this.toUni(d = d.post), - community = this.toUni(d = d.community), + post = this.toUni(d = d.post, counts = X11DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), + community = this.toUni(d = d.community, counts = X11DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), creator_banned_from_community = d.creator_banned_from_community, - banned_from_community = d.banned_from_community, creator_is_moderator = d.creator_is_moderator, - - - subscribed = d.subscribed, - saved = d.saved, - creator_blocked = d.creator_blocked, - my_vote = d.my_vote, creator_is_admin = d.creator_is_admin, post_tags = emptyList(), + creator_banned = d.creator.banned, + can_mod = false, + person_actions = PersonActions(if (d.creator_blocked) "" else null), + comment_actions = CommentActions(d.my_vote, null, if (d.saved) "" else null), + community_actions = CommunityActions(null, CommunityFollowerState.from(d.subscribed)), ) - override fun toUni(d: X11DatatypesCommunity): LemmyapiDatatypesCommunity = + override fun toUni(d: X11DatatypesCommunity, counts: X11DatatypesCommunityAggregates): LemmyapiDatatypesCommunity = LemmyapiDatatypesCommunity( id = d.id, name = d.name, title = d.title, description = d.description, removed = d.removed, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, deleted = d.deleted, nsfw = d.nsfw, - actor_id = d.actor_id, + ap_id = d.actor_id, local = d.local, icon = d.icon, banner = d.banner, @@ -677,30 +677,27 @@ internal class Transformer : MapperGenerator { posting_restricted_to_mods = d.posting_restricted_to_mods, instance_id = d.instance_id, visibility = d.visibility, - ) - - override fun toUni(d: X11DatatypesCommunityAggregates): LemmyapiDatatypesCommunityAggregates = - LemmyapiDatatypesCommunityAggregates( - community_id = d.community_id, - subscribers = d.subscribers, - posts = d.posts, - comments = d.comments, - published = d.published, - users_active_day = d.users_active_day, - users_active_week = d.users_active_week, - users_active_month = d.users_active_month, - users_active_half_year = d.users_active_half_year, - subscribers_local = d.subscribers_local, + subscribers = counts.subscribers, + posts = counts.posts, + comments = counts.comments, + users_active_day = counts.users_active_day, + users_active_week = counts.users_active_week, + users_active_month = counts.users_active_month, + users_active_half_year = counts.users_active_half_year, + subscribers_local = -1, + report_count = -1, + unresolved_report_count = -1, + local_removed = false, ) override fun toUni(d: X11DatatypesCommunityFollowerView): LemmyapiDatatypesCommunityFollowerView = LemmyapiDatatypesCommunityFollowerView( - community = this.toUni(d = d.community), + community = this.toUni(d = d.community, counts = X11DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), follower = this.toUni(d = d.follower), ) override fun toUni(d: X11DatatypesCommunityModeratorView): LemmyapiDatatypesCommunityModeratorView = LemmyapiDatatypesCommunityModeratorView( - community = this.toUni(d = d.community), + community = this.toUni(d = d.community, counts = X11DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), moderator = this.toUni(d = d.moderator), ) @@ -712,11 +709,10 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X11DatatypesCommunityView): LemmyapiDatatypesCommunityView = LemmyapiDatatypesCommunityView( - community = this.toUni(d = d.community), - subscribed = d.subscribed, - blocked = d.blocked, - counts = this.toUni(d = d.counts), - banned_from_community = d.banned_from_community, + community = this.toUni(d = d.community, d.counts), + can_mod = false, + post_tags = emptyList(), + community_actions = CommunityActions(null, CommunityFollowerState.from(d.subscribed), if (d.blocked) "" else null, null, if (d.banned_from_community) "" else null, if (d.banned_from_community) "" else null), ) override fun toUni(d: X11DatatypesCustomEmoji): LemmyapiDatatypesCustomEmoji = @@ -726,8 +722,8 @@ internal class Transformer : MapperGenerator { image_url = d.image_url, alt_text = d.alt_text, category = d.category, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, ) override fun toUni(d: X11DatatypesCustomEmojiKeyword): LemmyapiDatatypesCustomEmojiKeyword = @@ -785,84 +781,114 @@ internal class Transformer : MapperGenerator { val modlogList = mutableListOf() // Add ModRemovePost entries - modlogList.addAll(d.removed_posts.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemovePost(mod_remove_post = this.toUni(d = view)) - }) + modlogList.addAll( + d.removed_posts.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemovePost(mod_remove_post = this.toUni(d = view)) + }, + ) // Add ModLockPost entries - modlogList.addAll(d.locked_posts.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModLockPost(mod_lock_post = this.toUni(d = view)) - }) + modlogList.addAll( + d.locked_posts.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModLockPost(mod_lock_post = this.toUni(d = view)) + }, + ) // Add ModFeaturePost entries - modlogList.addAll(d.featured_posts.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModFeaturePost(mod_feature_post = this.toUni(d = view)) - }) + modlogList.addAll( + d.featured_posts.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModFeaturePost(mod_feature_post = this.toUni(d = view)) + }, + ) // Add ModRemoveComment entries - modlogList.addAll(d.removed_comments.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemoveComment(mod_remove_comment = this.toUni(d = view)) - }) + modlogList.addAll( + d.removed_comments.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemoveComment(mod_remove_comment = this.toUni(d = view)) + }, + ) // Add ModRemoveCommunity entries - modlogList.addAll(d.removed_communities.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemoveCommunity(mod_remove_community = this.toUni(d = view)) - }) + modlogList.addAll( + d.removed_communities.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemoveCommunity(mod_remove_community = this.toUni(d = view)) + }, + ) // Add ModBanFromCommunity entries - modlogList.addAll(d.banned_from_community.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModBanFromCommunity(mod_ban_from_community = this.toUni(d = view)) - }) + modlogList.addAll( + d.banned_from_community.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModBanFromCommunity(mod_ban_from_community = this.toUni(d = view)) + }, + ) // Add ModBan entries - modlogList.addAll(d.banned.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModBan(mod_ban = this.toUni(d = view)) - }) + modlogList.addAll( + d.banned.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModBan(mod_ban = this.toUni(d = view)) + }, + ) // Add ModAddCommunity entries - modlogList.addAll(d.added_to_community.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModAddCommunity(mod_add_community = this.toUni(d = view)) - }) + modlogList.addAll( + d.added_to_community.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModAddCommunity(mod_add_community = this.toUni(d = view)) + }, + ) // Add ModTransferCommunity entries - modlogList.addAll(d.transferred_to_community.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModTransferCommunity(mod_transfer_community = this.toUni(d = view)) - }) + modlogList.addAll( + d.transferred_to_community.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModTransferCommunity(mod_transfer_community = this.toUni(d = view)) + }, + ) // Add ModAdd entries - modlogList.addAll(d.added.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModAdd(mod_add = this.toUni(d = view)) - }) + modlogList.addAll( + d.added.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModAdd(mod_add = this.toUni(d = view)) + }, + ) // Add AdminPurgePerson entries - modlogList.addAll(d.admin_purged_persons.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgePerson(admin_purge_person = this.toUni(d = view)) - }) + modlogList.addAll( + d.admin_purged_persons.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgePerson(admin_purge_person = this.toUni(d = view)) + }, + ) // Add AdminPurgeCommunity entries - modlogList.addAll(d.admin_purged_communities.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgeCommunity(admin_purge_community = this.toUni(d = view)) - }) + modlogList.addAll( + d.admin_purged_communities.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgeCommunity(admin_purge_community = this.toUni(d = view)) + }, + ) // Add AdminPurgePost entries - modlogList.addAll(d.admin_purged_posts.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgePost(admin_purge_post = this.toUni(d = view)) - }) + modlogList.addAll( + d.admin_purged_posts.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgePost(admin_purge_post = this.toUni(d = view)) + }, + ) // Add AdminPurgeComment entries - modlogList.addAll(d.admin_purged_comments.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgeComment(admin_purge_comment = this.toUni(d = view)) - }) + modlogList.addAll( + d.admin_purged_comments.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgeComment(admin_purge_comment = this.toUni(d = view)) + }, + ) // Add ModHideCommunity entries (mapped to ModChangeCommunityVisibility) - modlogList.addAll(d.hidden_communities.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModChangeCommunityVisibility(mod_change_community_visibility = this.toUni(d = view)) - }) + modlogList.addAll( + d.hidden_communities.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModChangeCommunityVisibility(mod_change_community_visibility = this.toUni(d = view)) + }, + ) return it.vercruysse.lemmyapi.datatypes.GetModlogResponse( modlog = modlogList, next_page = null, - prev_page = null + prev_page = null, ) } @@ -944,8 +970,8 @@ internal class Transformer : MapperGenerator { LemmyapiDatatypesInstance( id = d.id, domain = d.domain, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, software = d.software, version = d.version, ) @@ -953,8 +979,8 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X11DatatypesInstanceWithFederationState): LemmyapiDatatypesInstanceWithFederationState = LemmyapiDatatypesInstanceWithFederationState( id = d.id, domain = d.domain, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, software = d.software, version = d.version, federation_state = d.federation_state?.let { this.toUni(d = it) }, @@ -1014,10 +1040,10 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X11DatatypesLocalImage): LemmyapiDatatypesLocalImage = LemmyapiDatatypesLocalImage( - local_user_id = d.local_user_id, + person_id = d.local_user_id, pictrs_alias = d.pictrs_alias, pictrs_delete_token = d.pictrs_delete_token, - published = d.published, + published_at = d.published, ) override fun toUni(d: X11DatatypesLocalImageView): LemmyapiDatatypesLocalImageView = @@ -1047,8 +1073,8 @@ internal class Transformer : MapperGenerator { federation_enabled = d.federation_enabled, captcha_enabled = d.captcha_enabled, captcha_difficulty = d.captcha_difficulty, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, registration_mode = d.registration_mode, reports_email_admins = d.reports_email_admins, federation_signed_fetch = d.federation_signed_fetch, @@ -1059,30 +1085,30 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X11DatatypesLocalSiteRateLimit): LemmyapiDatatypesLocalSiteRateLimit = LemmyapiDatatypesLocalSiteRateLimit( local_site_id = d.local_site_id, - message = d.message, - message_per_second = d.message_per_second, - post = d.post, - post_per_second = d.post_per_second, - register = d.register, - register_per_second = d.register_per_second, - image = d.image, - image_per_second = d.image_per_second, - comment = d.comment, - comment_per_second = d.comment_per_second, - search = d.search, - search_per_second = d.search_per_second, - published = d.published, - updated = d.updated, - import_user_settings = d.import_user_settings, - import_user_settings_per_second = d.import_user_settings_per_second, + message_max_requests = d.message, + message_interval_seconds = d.message_per_second, + post_max_requests = d.post, + post_interval_seconds = d.post_per_second, + register_max_requests = d.register, + register_interval_seconds = d.register_per_second, + image_max_requests = d.image, + image_interval_seconds = d.image_per_second, + comment_max_requests = d.comment, + comment_interval_seconds = d.comment_per_second, + search_max_requests = d.search, + search_interval_seconds = d.search_per_second, + published_at = d.published, + updated_at = d.updated, + import_user_settings_max_requests = d.import_user_settings, + import_user_settings_interval_seconds = d.import_user_settings_per_second, ) override fun toUni(d: X11DatatypesLocalSiteUrlBlocklist): LemmyapiDatatypesLocalSiteUrlBlocklist = LemmyapiDatatypesLocalSiteUrlBlocklist( id = d.id, url = d.url, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, ) override fun toUni(d: X11DatatypesLocalUser): LemmyapiDatatypesLocalUser = @@ -1097,7 +1123,6 @@ internal class Transformer : MapperGenerator { interface_language = d.interface_language, show_avatars = d.show_avatars, send_notifications_to_email = d.send_notifications_to_email, - show_scores = d.show_scores, show_bot_accounts = d.show_bot_accounts, show_read_posts = d.show_read_posts, email_verified = d.email_verified, @@ -1112,15 +1137,28 @@ internal class Transformer : MapperGenerator { enable_keyboard_navigation = d.enable_keyboard_navigation, enable_animated_images = d.enable_animated_images, collapse_bot_comments = d.collapse_bot_comments, - last_donation_notification = d.last_donation_notification, + last_donation_notification_at = d.last_donation_notification, + show_score = d.show_scores, + // TODO map uinsg local_user_vote_display_mode + show_upvotes = d.show_scores, + show_person_votes = d.show_scores, + show_upvote_percentage = d.show_scores, + show_downvotes = VoteShow.Show, + auto_mark_fetched_posts_as_read = false, + default_comment_sort_type = SortType.Active, + enable_private_messages = true, + hide_media = false, + default_post_time_range_seconds = null, + ) override fun toUni(d: X11DatatypesLocalUserView): LemmyapiDatatypesLocalUserView = LemmyapiDatatypesLocalUserView( local_user = this.toUni(d = d.local_user), local_user_vote_display_mode = this.toUni(d = d.local_user_vote_display_mode), - person = this.toUni(d = d.person), - counts = this.toUni(d = d.counts), + person = this.toUni(d = d.person, d.counts), + banned = d.person.banned, + ) override fun toUni(d: X11DatatypesLocalUserVoteDisplayMode): LemmyapiDatatypesLocalUserVoteDisplayMode = LemmyapiDatatypesLocalUserVoteDisplayMode( @@ -1141,7 +1179,7 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X11DatatypesLoginToken): LemmyapiDatatypesLoginToken = LemmyapiDatatypesLoginToken( user_id = d.user_id, - published = d.published, + published_at = d.published, ip = d.ip, user_agent = d.user_agent, ) @@ -1151,7 +1189,7 @@ internal class Transformer : MapperGenerator { mod_person_id = d.mod_person_id, other_person_id = d.other_person_id, removed = d.removed, - published = d.when_, + published_at = d.when_, ) override fun toUni(d: X11DatatypesModAddCommunity): LemmyapiDatatypesModAddCommunity = @@ -1161,14 +1199,14 @@ internal class Transformer : MapperGenerator { other_person_id = d.other_person_id, community_id = d.community_id, removed = d.removed, - published = d.when_, + published_at = d.when_, ) override fun toUni(d: X11DatatypesModAddCommunityView): LemmyapiDatatypesModAddCommunityView = LemmyapiDatatypesModAddCommunityView( mod_add_community = this.toUni(d = d.mod_add_community), moderator = d.moderator?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community), + community = this.toUni(d = d.community, counts = X11DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), other_person = this.toUni(d = d.modded_person), ) @@ -1185,8 +1223,8 @@ internal class Transformer : MapperGenerator { other_person_id = d.other_person_id, reason = d.reason, banned = d.banned, - expires = d.expires, - published = d.when_, + expires_at = d.expires, + published_at = d.when_, instance_id = -1, ) @@ -1198,14 +1236,14 @@ internal class Transformer : MapperGenerator { community_id = d.community_id, reason = d.reason, banned = d.banned, - expires = d.expires, - published = d.when_, + expires_at = d.expires, + published_at = d.when_, ) override fun toUni(d: X11DatatypesModBanFromCommunityView): LemmyapiDatatypesModBanFromCommunityView = LemmyapiDatatypesModBanFromCommunityView( mod_ban_from_community = this.toUni(d = d.mod_ban_from_community), moderator = d.moderator?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community), + community = this.toUni(d = d.community, counts = X11DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), other_person = this.toUni(d = d.banned_person), ) @@ -1222,7 +1260,7 @@ internal class Transformer : MapperGenerator { mod_person_id = d.mod_person_id, post_id = d.post_id, featured = d.featured, - published = d.when_, + published_at = d.when_, is_featured_community = d.is_featured_community, ) @@ -1230,8 +1268,8 @@ internal class Transformer : MapperGenerator { LemmyapiDatatypesModFeaturePostView( mod_feature_post = this.toUni(d = d.mod_feature_post), moderator = d.moderator?.let { this.toUni(d = it) }, - post = this.toUni(d = d.post), - community = this.toUni(d = d.community), + post = this.toUni(d = d.post, counts = X11DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), + community = this.toUni(d = d.community, counts = X11DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), ) override fun toUni(d: X11DatatypesModHideCommunity): LemmyapiDatatypesModChangeCommunityVisibility = @@ -1239,7 +1277,7 @@ internal class Transformer : MapperGenerator { id = d.id, community_id = d.community_id, mod_person_id = d.mod_person_id, - published = d.when_, + published_at = d.when_, reason = d.reason, visibility = if (d.hidden) { it.vercruysse.lemmyapi.dto.CommunityVisibility.Unlisted @@ -1252,7 +1290,7 @@ internal class Transformer : MapperGenerator { LemmyapiDatatypesModChangeCommunityVisibilityView( mod_change_community_visibility = this.toUni(d = d.mod_hide_community), moderator = d.admin?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community), + community = this.toUni(d = d.community, counts = X11DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), ) override fun toUni(d: X11DatatypesModLockPost): LemmyapiDatatypesModLockPost = @@ -1261,15 +1299,15 @@ internal class Transformer : MapperGenerator { mod_person_id = d.mod_person_id, post_id = d.post_id, locked = d.locked, - published = d.when_, + published_at = d.when_, ) override fun toUni(d: X11DatatypesModLockPostView): LemmyapiDatatypesModLockPostView = LemmyapiDatatypesModLockPostView( mod_lock_post = this.toUni(d = d.mod_lock_post), moderator = d.moderator?.let { this.toUni(d = it) }, - post = this.toUni(d = d.post), - community = this.toUni(d = d.community), + post = this.toUni(d = d.post, counts = X11DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), + community = this.toUni(d = d.community, counts = X11DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), ) override fun toUni(d: X11DatatypesModlogListParams): LemmyapiDatatypesModlogListParams = @@ -1291,17 +1329,17 @@ internal class Transformer : MapperGenerator { comment_id = d.comment_id, reason = d.reason, removed = d.removed, - published = d.when_, + published_at = d.when_, ) override fun toUni(d: X11DatatypesModRemoveCommentView): LemmyapiDatatypesModRemoveCommentView = LemmyapiDatatypesModRemoveCommentView( mod_remove_comment = this.toUni(d = d.mod_remove_comment), moderator = d.moderator?.let { this.toUni(d = it) }, - comment = this.toUni(d = d.comment), + comment = this.toUni(d = d.comment, X11DatatypesCommentAggregates(-1, -1, -1, -1, "", -1)), other_person = this.toUni(d = d.commenter), - post = this.toUni(d = d.post), - community = this.toUni(d = d.community), + post = this.toUni(d = d.post, counts = X11DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), + community = this.toUni(d = d.community, counts = X11DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), ) override fun toUni(d: X11DatatypesModRemoveCommunity): LemmyapiDatatypesModRemoveCommunity = @@ -1311,13 +1349,13 @@ internal class Transformer : MapperGenerator { community_id = d.community_id, reason = d.reason, removed = d.removed, - published = d.when_, + published_at = d.when_, ) override fun toUni(d: X11DatatypesModRemoveCommunityView): LemmyapiDatatypesModRemoveCommunityView = LemmyapiDatatypesModRemoveCommunityView( mod_remove_community = this.toUni(d = d.mod_remove_community), moderator = d.moderator?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community), + community = this.toUni(d = d.community, counts = X11DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), ) override fun toUni(d: X11DatatypesModRemovePost): LemmyapiDatatypesModRemovePost = @@ -1327,15 +1365,15 @@ internal class Transformer : MapperGenerator { post_id = d.post_id, reason = d.reason, removed = d.removed, - published = d.when_, + published_at = d.when_, ) override fun toUni(d: X11DatatypesModRemovePostView): LemmyapiDatatypesModRemovePostView = LemmyapiDatatypesModRemovePostView( mod_remove_post = this.toUni(d = d.mod_remove_post), moderator = d.moderator?.let { this.toUni(d = it) }, - post = this.toUni(d = d.post), - community = this.toUni(d = d.community), + post = this.toUni(d = d.post, counts = X11DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), + community = this.toUni(d = d.community, counts = X11DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), ) override fun toUni(d: X11DatatypesModTransferCommunity): LemmyapiDatatypesModTransferCommunity = @@ -1344,13 +1382,13 @@ internal class Transformer : MapperGenerator { mod_person_id = d.mod_person_id, other_person_id = d.other_person_id, community_id = d.community_id, - published = d.when_, + published_at = d.when_, ) override fun toUni(d: X11DatatypesModTransferCommunityView): LemmyapiDatatypesModTransferCommunityView = LemmyapiDatatypesModTransferCommunityView( mod_transfer_community = this.toUni(d = d.mod_transfer_community), moderator = d.moderator?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community), + community = this.toUni(d = d.community, counts = X11DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), other_person = this.toUni(d = d.modded_person), ) @@ -1359,38 +1397,33 @@ internal class Transformer : MapperGenerator { local_user_view = this.toUni(d = d.local_user_view), follows = d.follows.map { this.toUni(d = it) }, moderates = d.moderates.map { this.toUni(d = it) }, - community_blocks = d.community_blocks.map { this.toUni(d = it.community) }, + community_blocks = d.community_blocks.map { this.toUni(d = it.community, counts = X11DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)) }, instance_blocks = d.instance_blocks.map { this.toUni(d = it.instance) }, person_blocks = d.person_blocks.map { this.toUni(d = it.target) }, discussion_languages = d.discussion_languages, ) - override fun toUni(d: X11DatatypesPerson): LemmyapiDatatypesPerson = LemmyapiDatatypesPerson( + fun toUni(d: X11DatatypesPerson) = this.toUni(d, X11DatatypesPersonAggregates(-1, -1, -1)) + + override fun toUni(d: X11DatatypesPerson, counts: X11DatatypesPersonAggregates): LemmyapiDatatypesPerson = LemmyapiDatatypesPerson( id = d.id, name = d.name, display_name = d.display_name, avatar = d.avatar, - banned = d.banned, - published = d.published, - updated = d.updated, - actor_id = d.actor_id, + published_at = d.published, + updated_at = d.updated, + ap_id = d.actor_id, bio = d.bio, local = d.local, banner = d.banner, deleted = d.deleted, matrix_user_id = d.matrix_user_id, bot_account = d.bot_account, - ban_expires = d.ban_expires, instance_id = d.instance_id, + post_count = counts.post_count, + comment_count = counts.comment_count, ) - override fun toUni(d: X11DatatypesPersonAggregates): LemmyapiDatatypesPersonAggregates = - LemmyapiDatatypesPersonAggregates( - person_id = d.person_id, - post_count = d.post_count, - comment_count = d.comment_count, - ) - override fun toUni(d: X11DatatypesPersonMention): LemmyapiDatatypesPersonMention = LemmyapiDatatypesPersonMention( id = d.id, @@ -1408,12 +1441,11 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X11DatatypesPersonMentionView): LemmyapiDatatypesPersonMentionView = LemmyapiDatatypesPersonMentionView( person_mention = this.toUni(d = d.person_mention), - comment = this.toUni(d = d.comment), + comment = this.toUni(d = d.comment, d.counts), creator = this.toUni(d = d.creator), - post = this.toUni(d = d.post), - community = this.toUni(d = d.community), + post = this.toUni(d = d.post, counts = X11DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), + community = this.toUni(d = d.community, counts = X11DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), recipient = this.toUni(d = d.recipient), - counts = this.toUni(d = d.counts), creator_banned_from_community = d.creator_banned_from_community, banned_from_community = d.banned_from_community, creator_is_moderator = d.creator_is_moderator, @@ -1426,12 +1458,13 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X11DatatypesPersonView): LemmyapiDatatypesPersonView = LemmyapiDatatypesPersonView( - person = this.toUni(d = d.person), - counts = this.toUni(d = d.counts), + person = this.toUni(d = d.person, d.counts), is_admin = d.is_admin, + person_actions = null, + creator_banned = d.person.banned, ) - override fun toUni(d: X11DatatypesPost): LemmyapiDatatypesPost = LemmyapiDatatypesPost( + override fun toUni(d: X11DatatypesPost, counts: X11DatatypesPostAggregates): LemmyapiDatatypesPost = LemmyapiDatatypesPost( id = d.id, name = d.name, url = d.url, @@ -1440,8 +1473,8 @@ internal class Transformer : MapperGenerator { community_id = d.community_id, removed = d.removed, locked = d.locked, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, deleted = d.deleted, nsfw = d.nsfw, embed_title = d.embed_title, @@ -1455,19 +1488,16 @@ internal class Transformer : MapperGenerator { featured_local = d.featured_local, url_content_type = d.url_content_type, alt_text = d.alt_text, + comments = counts.comments, + score = counts.score, + upvotes = counts.upvotes, + downvotes = counts.downvotes, + newest_comment_time_at = counts.newest_comment_time, + report_count = -1, + unresolved_report_count = -1, + federation_pending = false, ) - override fun toUni(d: X11DatatypesPostAggregates): LemmyapiDatatypesPostAggregates = - LemmyapiDatatypesPostAggregates( - post_id = d.post_id, - comments = d.comments, - score = d.score, - upvotes = d.upvotes, - downvotes = d.downvotes, - published = d.published, - newest_comment_time = d.newest_comment_time, - ) - override fun toUni(d: X11DatatypesPostReport): LemmyapiDatatypesPostReport = LemmyapiDatatypesPostReport( id = d.id, @@ -1479,8 +1509,8 @@ internal class Transformer : MapperGenerator { reason = d.reason, resolved = d.resolved, resolver_id = d.resolver_id, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, violates_instance_rules = false, ) @@ -1492,22 +1522,18 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X11DatatypesPostReportView): LemmyapiDatatypesPostReportView = LemmyapiDatatypesPostReportView( post_report = this.toUni(d = d.post_report), - post = this.toUni(d = d.post), - community = this.toUni(d = d.community), + post = this.toUni(d = d.post, d.counts), + community = this.toUni(d = d.community, counts = X11DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), creator = this.toUni(d = d.creator), post_creator = this.toUni(d = d.post_creator), + resolver = d.resolver?.let { this.toUni(d = it) }, + post_actions = PostActions(toAt(d.read), null, d.counts.comments - d.unread_comments, toAt(d.saved), null, d.my_vote, toAt(d.hidden)), + person_actions = PersonActions(toAt(d.creator_blocked)), + community_actions = CommunityActions(null, CommunityFollowerState.from(d.subscribed)), creator_banned_from_community = d.creator_banned_from_community, + creator_banned = d.creator.banned, creator_is_moderator = d.creator_is_moderator, creator_is_admin = d.creator_is_admin, - subscribed = d.subscribed, - saved = d.saved, - read = d.read, - hidden = d.hidden, - creator_blocked = d.creator_blocked, - my_vote = d.my_vote, - unread_comments = d.unread_comments, - counts = this.toUni(d = d.counts), - resolver = d.resolver?.let { this.toUni(d = it) }, ) override fun toUni(d: X11DatatypesPostResponse): LemmyapiDatatypesPostResponse = @@ -1517,22 +1543,19 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X11DatatypesPostView): LemmyapiDatatypesPostView = LemmyapiDatatypesPostView( - post = this.toUni(d = d.post), + post = this.toUni(d = d.post, d.counts), creator = this.toUni(d = d.creator), - community = this.toUni(d = d.community), + community = this.toUni(d = d.community, counts = X11DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), + image_details = d.image_details?.let { this.toUni(d = it) }, + post_actions = PostActions(toAt(d.read), null, d.counts.comments - d.unread_comments, toAt(d.saved), null, d.my_vote, toAt(d.hidden)), + person_actions = PersonActions(toAt(d.creator_blocked)), + community_actions = CommunityActions(null, CommunityFollowerState.from(d.subscribed)), + tags = emptyList(), + can_mod = false, creator_banned_from_community = d.creator_banned_from_community, - banned_from_community = d.banned_from_community, + creator_banned = d.creator.banned, creator_is_moderator = d.creator_is_moderator, creator_is_admin = d.creator_is_admin, - counts = this.toUni(d = d.counts), - subscribed = d.subscribed, - saved = d.saved, - read = d.read, - hidden = d.hidden, - creator_blocked = d.creator_blocked, - my_vote = d.my_vote, - unread_comments = d.unread_comments, - image_details = d.image_details?.let { this.toUni(d = it) }, ) override fun toUni(d: X11DatatypesPrivateMessage): LemmyapiDatatypesPrivateMessage = @@ -1543,8 +1566,8 @@ internal class Transformer : MapperGenerator { content = d.content, deleted = d.deleted, read = d.read, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, ap_id = d.ap_id, local = d.local, removed = false, @@ -1559,8 +1582,8 @@ internal class Transformer : MapperGenerator { reason = d.reason, resolved = d.resolved, resolver_id = d.resolver_id, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, ) override fun toUni(d: X11DatatypesPrivateMessageReportResponse): LemmyapiDatatypesPrivateMessageReportResponse = LemmyapiDatatypesPrivateMessageReportResponse( @@ -1593,10 +1616,10 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X11DatatypesReadableFederationState): LemmyapiDatatypesReadableFederationState = LemmyapiDatatypesReadableFederationState( instance_id = d.instance_id, last_successful_id = d.last_successful_id, - last_successful_published_time = d.last_successful_published_time, + last_successful_published_time_at = d.last_successful_published_time, fail_count = d.fail_count, - last_retry = d.last_retry, - next_retry = d.next_retry, + last_retry_at = d.last_retry, + next_retry_at = d.next_retry, ) override fun toUni(d: X11DatatypesRegistrationApplication): LemmyapiDatatypesRegistrationApplication = LemmyapiDatatypesRegistrationApplication( @@ -1605,7 +1628,7 @@ internal class Transformer : MapperGenerator { answer = d.answer, admin_id = d.admin_id, deny_reason = d.deny_reason, - published = d.published, + published_at = d.published, ) override fun toUni(d: X11DatatypesRegistrationApplicationResponse): LemmyapiDatatypesRegistrationApplicationResponse = @@ -1641,12 +1664,12 @@ internal class Transformer : MapperGenerator { id = d.id, name = d.name, sidebar = d.sidebar, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, icon = d.icon, banner = d.banner, description = d.description, - actor_id = d.actor_id, + ap_id = d.actor_id, last_refreshed_at = d.last_refreshed_at, inbox_url = d.inbox_url, instance_id = d.instance_id, @@ -1683,8 +1706,8 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X11DatatypesTagline): LemmyapiDatatypesTagline = LemmyapiDatatypesTagline( id = d.id, content = d.content, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, ) override fun toUni(d: X11DatatypesUpdateTotpResponse): LemmyapiDatatypesUpdateTotpResponse = @@ -1695,6 +1718,7 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X11DatatypesVoteView): LemmyapiDatatypesVoteView = LemmyapiDatatypesVoteView( creator = this.toUni(d = d.creator), + creator_banned = d.creator.banned, creator_banned_from_community = d.creator_banned_from_community, score = d.score, ) @@ -1724,7 +1748,7 @@ internal class Transformer : MapperGenerator { ban = d.ban, remove_data = d.remove_or_restore_data, reason = d.reason, - expires = d.expires, + expires = d.expires_at, ) override fun fromUni(d: LemmyapiDatatypesBanPerson): X11DatatypesBanPerson = @@ -1733,7 +1757,7 @@ internal class Transformer : MapperGenerator { ban = d.ban, remove_data = d.remove_or_restore_data, reason = d.reason, - expires = d.expires, + expires = d.expires_at, ) override fun fromUni(d: LemmyapiDatatypesBlockCommunity): X11DatatypesBlockCommunity = @@ -1861,18 +1885,18 @@ internal class Transformer : MapperGenerator { discussion_languages = d.discussion_languages, slur_filter_regex = d.slur_filter_regex, actor_name_max_length = d.actor_name_max_length, - rate_limit_message = d.rate_limit_message, - rate_limit_message_per_second = d.rate_limit_message_per_second, - rate_limit_post = d.rate_limit_post, - rate_limit_post_per_second = d.rate_limit_post_per_second, - rate_limit_register = d.rate_limit_register, - rate_limit_register_per_second = d.rate_limit_register_per_second, - rate_limit_image = d.rate_limit_image, - rate_limit_image_per_second = d.rate_limit_image_per_second, - rate_limit_comment = d.rate_limit_comment, - rate_limit_comment_per_second = d.rate_limit_comment_per_second, - rate_limit_search = d.rate_limit_search, - rate_limit_search_per_second = d.rate_limit_search_per_second, + rate_limit_message = d.rate_limit_message_max_requests, + rate_limit_message_per_second = d.rate_limit_message_interval_seconds, + rate_limit_post = d.rate_limit_post_max_requests, + rate_limit_post_per_second = d.rate_limit_post_interval_seconds, + rate_limit_register = d.rate_limit_register_max_requests, + rate_limit_register_per_second = d.rate_limit_register_interval_seconds, + rate_limit_image = d.rate_limit_image_max_requests, + rate_limit_image_per_second = d.rate_limit_image_interval_seconds, + rate_limit_comment = d.rate_limit_comment_max_requests, + rate_limit_comment_per_second = d.rate_limit_comment_interval_seconds, + rate_limit_search = d.rate_limit_search_max_requests, + rate_limit_search_per_second = d.rate_limit_search_interval_seconds, federation_enabled = d.federation_enabled, federation_debug = d.federation_debug, captcha_enabled = d.captcha_enabled, @@ -1993,18 +2017,18 @@ internal class Transformer : MapperGenerator { discussion_languages = d.discussion_languages, slur_filter_regex = d.slur_filter_regex, actor_name_max_length = d.actor_name_max_length, - rate_limit_message = d.rate_limit_message, - rate_limit_message_per_second = d.rate_limit_message_per_second, - rate_limit_post = d.rate_limit_post, - rate_limit_post_per_second = d.rate_limit_post_per_second, - rate_limit_register = d.rate_limit_register, - rate_limit_register_per_second = d.rate_limit_register_per_second, - rate_limit_image = d.rate_limit_image, - rate_limit_image_per_second = d.rate_limit_image_per_second, - rate_limit_comment = d.rate_limit_comment, - rate_limit_comment_per_second = d.rate_limit_comment_per_second, - rate_limit_search = d.rate_limit_search, - rate_limit_search_per_second = d.rate_limit_search_per_second, + rate_limit_message = d.rate_limit_message_max_requests, + rate_limit_message_per_second = d.rate_limit_message_interval_seconds, + rate_limit_post = d.rate_limit_post_max_requests, + rate_limit_post_per_second = d.rate_limit_post_interval_seconds, + rate_limit_register = d.rate_limit_register_max_requests, + rate_limit_register_per_second = d.rate_limit_register_interval_seconds, + rate_limit_image = d.rate_limit_image_max_requests, + rate_limit_image_per_second = d.rate_limit_image_interval_seconds, + rate_limit_comment = d.rate_limit_comment_max_requests, + rate_limit_comment_per_second = d.rate_limit_comment_interval_seconds, + rate_limit_search = d.rate_limit_search_max_requests, + rate_limit_search_per_second = d.rate_limit_search_interval_seconds, federation_enabled = d.federation_enabled, federation_debug = d.federation_debug, captcha_enabled = d.captcha_enabled, @@ -2102,9 +2126,6 @@ internal class Transformer : MapperGenerator { limit = d.limit, community_id = d.community_id, community_name = d.community_name, - saved_only = d.saved_only, - liked_only = d.liked_only, - disliked_only = d.disliked_only, show_hidden = d.show_hidden, show_read = d.show_read, show_nsfw = d.show_nsfw, @@ -2388,7 +2409,7 @@ internal class Transformer : MapperGenerator { listing_type = d.listing_type, page = d.page, limit = d.limit, - post_title_only = d.post_title_only, + post_title_only = d.title_only, ) override fun fromUni(d: LemmyapiDatatypesTransferCommunity): X11DatatypesTransferCommunity = diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt index f46cdc30..a0897510 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt @@ -10,9 +10,7 @@ internal interface MapperGenerator { fun toUni(d: CommentView): it.vercruysse.lemmyapi.datatypes.CommentView - fun toUni(d: Community): it.vercruysse.lemmyapi.datatypes.Community - - fun toUni(d: CommunityAggregates): it.vercruysse.lemmyapi.datatypes.CommunityAggregates + fun toUni(d: Community, counts: CommunityAggregates): it.vercruysse.lemmyapi.datatypes.Community fun toUni(d: CommunityView): it.vercruysse.lemmyapi.datatypes.CommunityView @@ -47,8 +45,7 @@ internal interface MapperGenerator { fun toUni(d: BlockCommunityResponse): it.vercruysse.lemmyapi.datatypes.BlockCommunityResponse fun toUni(d: BlockPersonResponse): it.vercruysse.lemmyapi.datatypes.BlockPersonResponse fun toUni(d: CaptchaResponse): it.vercruysse.lemmyapi.datatypes.CaptchaResponse - fun toUni(d: Comment): it.vercruysse.lemmyapi.datatypes.Comment - fun toUni(d: CommentAggregates): it.vercruysse.lemmyapi.datatypes.CommentAggregates + fun toUni(d: Comment, counts: CommentAggregates): it.vercruysse.lemmyapi.datatypes.Comment fun toUni(d: CommentReply): it.vercruysse.lemmyapi.datatypes.CommentReply fun toUni(d: CommentReplyResponse): it.vercruysse.lemmyapi.datatypes.CommentReplyResponse @@ -124,14 +121,12 @@ internal interface MapperGenerator { fun toUni(d: ModTransferCommunity): it.vercruysse.lemmyapi.datatypes.ModTransferCommunity fun toUni(d: ModTransferCommunityView): it.vercruysse.lemmyapi.datatypes.ModTransferCommunityView fun toUni(d: MyUserInfo): it.vercruysse.lemmyapi.datatypes.MyUserInfo - fun toUni(d: Person): it.vercruysse.lemmyapi.datatypes.Person - fun toUni(d: PersonAggregates): it.vercruysse.lemmyapi.datatypes.PersonAggregates + fun toUni(d: Person, counts: PersonAggregates): it.vercruysse.lemmyapi.datatypes.Person fun toUni(d: PersonMention): it.vercruysse.lemmyapi.datatypes.PersonMention fun toUni(d: PersonMentionResponse): it.vercruysse.lemmyapi.datatypes.PersonMentionResponse fun toUni(d: PersonView): it.vercruysse.lemmyapi.datatypes.PersonView - fun toUni(d: Post): it.vercruysse.lemmyapi.datatypes.Post - fun toUni(d: PostAggregates): it.vercruysse.lemmyapi.datatypes.PostAggregates + fun toUni(d: Post, counts: PostAggregates): it.vercruysse.lemmyapi.datatypes.Post fun toUni(d: PostReport): it.vercruysse.lemmyapi.datatypes.PostReport fun toUni(d: PostReportResponse): it.vercruysse.lemmyapi.datatypes.PostReportResponse diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt index 6ffa8f2a..e6132fc6 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt @@ -1,10 +1,16 @@ package it.vercruysse.lemmyapi.v0.x19.x3 +import it.vercruysse.lemmyapi.datatypes.CommentActions +import it.vercruysse.lemmyapi.datatypes.CommunityActions import it.vercruysse.lemmyapi.datatypes.LinkMetadata +import it.vercruysse.lemmyapi.datatypes.PersonActions +import it.vercruysse.lemmyapi.datatypes.PostActions +import it.vercruysse.lemmyapi.dto.CommunityFollowerState import it.vercruysse.lemmyapi.dto.CommunityVisibility import it.vercruysse.lemmyapi.dto.PostListingMode import it.vercruysse.lemmyapi.dto.SortType -import it.vercruysse.lemmyapi.dto.SubscribedType +import it.vercruysse.lemmyapi.dto.VoteShow +import it.vercruysse.lemmyapi.utils.toAt import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.SiteMetadata import it.vercruysse.lemmyapi.datatypes.AddAdmin as LemmyapiDatatypesAddAdmin import it.vercruysse.lemmyapi.datatypes.AddAdminResponse as LemmyapiDatatypesAddAdminResponse @@ -32,7 +38,6 @@ import it.vercruysse.lemmyapi.datatypes.BlockPersonResponse as LemmyapiDatatypes import it.vercruysse.lemmyapi.datatypes.CaptchaResponse as LemmyapiDatatypesCaptchaResponse import it.vercruysse.lemmyapi.datatypes.ChangePassword as LemmyapiDatatypesChangePassword import it.vercruysse.lemmyapi.datatypes.Comment as LemmyapiDatatypesComment -import it.vercruysse.lemmyapi.datatypes.CommentAggregates as LemmyapiDatatypesCommentAggregates import it.vercruysse.lemmyapi.datatypes.CommentReply as LemmyapiDatatypesCommentReply import it.vercruysse.lemmyapi.datatypes.CommentReplyResponse as LemmyapiDatatypesCommentReplyResponse import it.vercruysse.lemmyapi.datatypes.CommentReplyView as LemmyapiDatatypesCommentReplyView @@ -42,7 +47,6 @@ import it.vercruysse.lemmyapi.datatypes.CommentReportView as LemmyapiDatatypesCo import it.vercruysse.lemmyapi.datatypes.CommentResponse as LemmyapiDatatypesCommentResponse import it.vercruysse.lemmyapi.datatypes.CommentView as LemmyapiDatatypesCommentView import it.vercruysse.lemmyapi.datatypes.Community as LemmyapiDatatypesCommunity -import it.vercruysse.lemmyapi.datatypes.CommunityAggregates as LemmyapiDatatypesCommunityAggregates import it.vercruysse.lemmyapi.datatypes.CommunityFollowerView as LemmyapiDatatypesCommunityFollowerView import it.vercruysse.lemmyapi.datatypes.CommunityModeratorView as LemmyapiDatatypesCommunityModeratorView import it.vercruysse.lemmyapi.datatypes.CommunityResponse as LemmyapiDatatypesCommunityResponse @@ -163,13 +167,11 @@ import it.vercruysse.lemmyapi.datatypes.MyUserInfo as LemmyapiDatatypesMyUserInf import it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset as LemmyapiDatatypesPasswordChangeAfterReset import it.vercruysse.lemmyapi.datatypes.PasswordReset as LemmyapiDatatypesPasswordReset import it.vercruysse.lemmyapi.datatypes.Person as LemmyapiDatatypesPerson -import it.vercruysse.lemmyapi.datatypes.PersonAggregates as LemmyapiDatatypesPersonAggregates import it.vercruysse.lemmyapi.datatypes.PersonMention as LemmyapiDatatypesPersonMention import it.vercruysse.lemmyapi.datatypes.PersonMentionResponse as LemmyapiDatatypesPersonMentionResponse import it.vercruysse.lemmyapi.datatypes.PersonMentionView as LemmyapiDatatypesPersonMentionView import it.vercruysse.lemmyapi.datatypes.PersonView as LemmyapiDatatypesPersonView import it.vercruysse.lemmyapi.datatypes.Post as LemmyapiDatatypesPost -import it.vercruysse.lemmyapi.datatypes.PostAggregates as LemmyapiDatatypesPostAggregates import it.vercruysse.lemmyapi.datatypes.PostReport as LemmyapiDatatypesPostReport import it.vercruysse.lemmyapi.datatypes.PostReportResponse as LemmyapiDatatypesPostReportResponse import it.vercruysse.lemmyapi.datatypes.PostReportView as LemmyapiDatatypesPostReportView @@ -427,12 +429,11 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X3DatatypesCommentReplyView): LemmyapiDatatypesCommentReplyView = LemmyapiDatatypesCommentReplyView( comment_reply = this.toUni(d = d.comment_reply), - comment = this.toUni(d = d.comment), + comment = this.toUni(d = d.comment, d.counts), creator = this.toUni(d = d.creator), - post = this.toUni(d = d.post), - community = this.toUni(d = d.community), + post = this.toUni(d = d.post, counts = X3DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), + community = this.toUni(d = d.community, counts = X3DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), recipient = this.toUni(d = d.recipient), - counts = this.toUni(d = d.counts), creator_banned_from_community = d.creator_banned_from_community, banned_from_community = false, creator_is_moderator = d.creator_is_moderator, @@ -446,51 +447,48 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X3DatatypesCommentReportView): LemmyapiDatatypesCommentReportView = LemmyapiDatatypesCommentReportView( comment_report = this.toUni(d = d.comment_report), - comment = this.toUni(d = d.comment), - post = this.toUni(d = d.post), - community = this.toUni(d = d.community), + comment = this.toUni(d = d.comment, d.counts), + post = this.toUni(d = d.post, counts = X3DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), + community = this.toUni(d = d.community, counts = X3DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), creator = this.toUni(d = d.creator), comment_creator = this.toUni(d = d.comment_creator), - counts = this.toUni(d = d.counts), creator_banned_from_community = d.creator_banned_from_community, creator_is_moderator = false, creator_is_admin = false, - creator_blocked = false, - subscribed = SubscribedType.NotSubscribed, - saved = false, - my_vote = d.my_vote, + creator_banned = d.creator.banned, resolver = d.resolver?.let { this.toUni(d = it) }, + comment_actions = CommentActions(d.my_vote, null, null), ) override fun toUni(d: X3DatatypesCommentView): LemmyapiDatatypesCommentView = LemmyapiDatatypesCommentView( - comment = this.toUni(d = d.comment), + comment = this.toUni(d = d.comment, d.counts), creator = this.toUni(d = d.creator), - post = this.toUni(d = d.post), - community = this.toUni(d = d.community), - counts = this.toUni(d = d.counts), + post = this.toUni(d = d.post, counts = X3DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), + community = this.toUni(d = d.community, counts = X3DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), creator_banned_from_community = d.creator_banned_from_community, - banned_from_community = false, creator_is_moderator = d.creator_is_moderator, creator_is_admin = d.creator_is_admin, - subscribed = d.subscribed, - saved = d.saved, - creator_blocked = d.creator_blocked, - my_vote = d.my_vote, + post_tags = emptyList(), + creator_banned = d.creator.banned, + can_mod = false, + person_actions = PersonActions(if (d.creator_blocked) "" else null), + comment_actions = CommentActions(d.my_vote, null, if (d.saved) "" else null), + community_actions = CommunityActions(null, CommunityFollowerState.from(d.subscribed)), ) - override fun toUni(d: X3DatatypesCommunity): LemmyapiDatatypesCommunity = + override fun toUni(d: X3DatatypesCommunity, counts: X3DatatypesCommunityAggregates): LemmyapiDatatypesCommunity = LemmyapiDatatypesCommunity( id = d.id, name = d.name, title = d.title, description = d.description, removed = d.removed, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, deleted = d.deleted, nsfw = d.nsfw, - actor_id = d.actor_id, + ap_id = d.actor_id, local = d.local, icon = d.icon, banner = d.banner, @@ -498,29 +496,25 @@ internal class Transformer : MapperGenerator { posting_restricted_to_mods = d.posting_restricted_to_mods, instance_id = d.instance_id, visibility = CommunityVisibility.Public, - ) - - override fun toUni(d: X3DatatypesCommunityAggregates): LemmyapiDatatypesCommunityAggregates = - LemmyapiDatatypesCommunityAggregates( - community_id = d.community_id, - subscribers = d.subscribers, - posts = d.posts, - comments = d.comments, - published = d.published, - users_active_day = d.users_active_day, - users_active_week = d.users_active_week, - users_active_month = d.users_active_month, - users_active_half_year = d.users_active_half_year, + subscribers = counts.subscribers, + posts = counts.posts, + comments = counts.comments, + users_active_day = counts.users_active_day, + users_active_week = counts.users_active_week, + users_active_month = counts.users_active_month, + users_active_half_year = counts.users_active_half_year, subscribers_local = -1, + report_count = -1, + unresolved_report_count = -1, + local_removed = false, ) override fun toUni(d: X3DatatypesCommunityView): LemmyapiDatatypesCommunityView = LemmyapiDatatypesCommunityView( - community = this.toUni(d = d.community), - subscribed = d.subscribed, - blocked = d.blocked, - counts = this.toUni(d = d.counts), - banned_from_community = false, + community = this.toUni(d = d.community, d.counts), + can_mod = false, + post_tags = emptyList(), + community_actions = CommunityActions(null, CommunityFollowerState.from(d.subscribed), if (d.blocked) "" else null), ) override fun toUni(d: SiteMetadata): LinkMetadata = LinkMetadata( @@ -564,8 +558,8 @@ internal class Transformer : MapperGenerator { federation_enabled = d.federation_enabled, captcha_enabled = d.captcha_enabled, captcha_difficulty = d.captcha_difficulty, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, registration_mode = d.registration_mode, reports_email_admins = d.reports_email_admins, federation_signed_fetch = d.federation_signed_fetch, @@ -576,12 +570,11 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X3DatatypesPersonMentionView): LemmyapiDatatypesPersonMentionView = LemmyapiDatatypesPersonMentionView( person_mention = this.toUni(d = d.person_mention), - comment = this.toUni(d = d.comment), + comment = this.toUni(d = d.comment, d.counts), creator = this.toUni(d = d.creator), - post = this.toUni(d = d.post), - community = this.toUni(d = d.community), + post = this.toUni(d = d.post, counts = X3DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), + community = this.toUni(d = d.community, counts = X3DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), recipient = this.toUni(d = d.recipient), - counts = this.toUni(d = d.counts), creator_banned_from_community = d.creator_banned_from_community, banned_from_community = false, creator_is_moderator = d.creator_is_moderator, @@ -595,44 +588,36 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X3DatatypesPostReportView): LemmyapiDatatypesPostReportView = LemmyapiDatatypesPostReportView( post_report = this.toUni(d = d.post_report), - post = this.toUni(d = d.post), - community = this.toUni(d = d.community), + post = this.toUni(d = d.post, d.counts), + community = this.toUni(d = d.community, counts = X3DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), creator = this.toUni(d = d.creator), post_creator = this.toUni(d = d.post_creator), + resolver = d.resolver?.let { this.toUni(d = it) }, + post_actions = PostActions(like_score = d.my_vote), creator_banned_from_community = d.creator_banned_from_community, + creator_banned = d.creator.banned, creator_is_moderator = false, creator_is_admin = false, - subscribed = SubscribedType.NotSubscribed, - saved = false, - read = false, - hidden = false, - creator_blocked = false, - my_vote = d.my_vote, - unread_comments = 0, - counts = this.toUni(d = d.counts), - resolver = d.resolver?.let { this.toUni(d = it) }, ) override fun toUni(d: X3DatatypesPostView): LemmyapiDatatypesPostView = LemmyapiDatatypesPostView( - post = this.toUni(d = d.post), + post = this.toUni(d = d.post, d.counts), creator = this.toUni(d = d.creator), - community = this.toUni(d = d.community), + community = this.toUni(d = d.community, counts = X3DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), + post_actions = PostActions(toAt(d.read), null, d.counts.comments - d.unread_comments, toAt(d.saved), null, d.my_vote, null), + person_actions = PersonActions(toAt(d.creator_blocked)), + community_actions = CommunityActions(null, CommunityFollowerState.from(d.subscribed)), + can_mod = false, + tags = emptyList(), creator_banned_from_community = d.creator_banned_from_community, - banned_from_community = false, + creator_banned = d.creator.banned, creator_is_moderator = d.creator_is_moderator, creator_is_admin = d.creator_is_admin, - counts = this.toUni(d = d.counts), - subscribed = d.subscribed, - saved = d.saved, - read = d.read, - hidden = false, - creator_blocked = d.creator_blocked, - my_vote = d.my_vote, - unread_comments = d.unread_comments, ) override fun toUni(d: X3DatatypesVoteView): LemmyapiDatatypesVoteView = LemmyapiDatatypesVoteView( creator = this.toUni(d = d.creator), + creator_banned = d.creator.banned, creator_banned_from_community = false, score = d.score, ) @@ -652,14 +637,14 @@ internal class Transformer : MapperGenerator { admin_person_id = d.admin_person_id, post_id = d.post_id, reason = d.reason, - published = d.when_, + published_at = d.when_, ) override fun toUni(d: X3DatatypesAdminPurgeCommentView): LemmyapiDatatypesAdminPurgeCommentView = LemmyapiDatatypesAdminPurgeCommentView( admin_purge_comment = this.toUni(d = d.admin_purge_comment), admin = d.admin?.let { this.toUni(d = it) }, - post = this.toUni(d = d.post), + post = this.toUni(d = d.post, counts = X3DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), ) override fun toUni(d: X3DatatypesAdminPurgeCommunity): LemmyapiDatatypesAdminPurgeCommunity = @@ -667,7 +652,7 @@ internal class Transformer : MapperGenerator { id = d.id, admin_person_id = d.admin_person_id, reason = d.reason, - published = d.when_, + published_at = d.when_, ) override fun toUni(d: X3DatatypesAdminPurgeCommunityView): LemmyapiDatatypesAdminPurgeCommunityView = LemmyapiDatatypesAdminPurgeCommunityView( @@ -680,7 +665,7 @@ internal class Transformer : MapperGenerator { id = d.id, admin_person_id = d.admin_person_id, reason = d.reason, - published = d.when_, + published_at = d.when_, ) override fun toUni(d: X3DatatypesAdminPurgePersonView): LemmyapiDatatypesAdminPurgePersonView = @@ -695,14 +680,14 @@ internal class Transformer : MapperGenerator { admin_person_id = d.admin_person_id, community_id = d.community_id, reason = d.reason, - published = d.when_, + published_at = d.when_, ) override fun toUni(d: X3DatatypesAdminPurgePostView): LemmyapiDatatypesAdminPurgePostView = LemmyapiDatatypesAdminPurgePostView( admin_purge_post = this.toUni(d = d.admin_purge_post), admin = d.admin?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community), + community = this.toUni(d = d.community, counts = X3DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), ) override fun toUni(d: X3DatatypesBanFromCommunityResponse): LemmyapiDatatypesBanFromCommunityResponse = LemmyapiDatatypesBanFromCommunityResponse( @@ -739,32 +724,29 @@ internal class Transformer : MapperGenerator { uuid = d.uuid, ) - override fun toUni(d: X3DatatypesComment): LemmyapiDatatypesComment = LemmyapiDatatypesComment( + override fun toUni(d: X3DatatypesComment, counts: X3DatatypesCommentAggregates): LemmyapiDatatypesComment = LemmyapiDatatypesComment( id = d.id, creator_id = d.creator_id, post_id = d.post_id, content = d.content, removed = d.removed, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, deleted = d.deleted, ap_id = d.ap_id, local = d.local, path = d.path, distinguished = d.distinguished, language_id = d.language_id, + score = counts.score, + upvotes = counts.upvotes, + downvotes = counts.downvotes, + child_count = counts.child_count, + report_count = -1, + unresolved_report_count = -1, + federation_pending = false, ) - override fun toUni(d: X3DatatypesCommentAggregates): LemmyapiDatatypesCommentAggregates = - LemmyapiDatatypesCommentAggregates( - comment_id = d.comment_id, - score = d.score, - upvotes = d.upvotes, - downvotes = d.downvotes, - published = d.published, - child_count = d.child_count, - ) - override fun toUni(d: X3DatatypesCommentReply): LemmyapiDatatypesCommentReply = LemmyapiDatatypesCommentReply( id = d.id, @@ -788,8 +770,8 @@ internal class Transformer : MapperGenerator { reason = d.reason, resolved = d.resolved, resolver_id = d.resolver_id, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, ) override fun toUni(d: X3DatatypesCommentReportResponse): LemmyapiDatatypesCommentReportResponse = @@ -805,12 +787,12 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X3DatatypesCommunityFollowerView): LemmyapiDatatypesCommunityFollowerView = LemmyapiDatatypesCommunityFollowerView( - community = this.toUni(d = d.community), + community = this.toUni(d = d.community, counts = X3DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), follower = this.toUni(d = d.follower), ) override fun toUni(d: X3DatatypesCommunityModeratorView): LemmyapiDatatypesCommunityModeratorView = LemmyapiDatatypesCommunityModeratorView( - community = this.toUni(d = d.community), + community = this.toUni(d = d.community, counts = X3DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), moderator = this.toUni(d = d.moderator), ) @@ -827,8 +809,8 @@ internal class Transformer : MapperGenerator { image_url = d.image_url, alt_text = d.alt_text, category = d.category, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, ) override fun toUni(d: X3DatatypesCustomEmojiKeyword): LemmyapiDatatypesCustomEmojiKeyword = @@ -886,84 +868,114 @@ internal class Transformer : MapperGenerator { val modlogList = mutableListOf() // Add ModRemovePost entries - modlogList.addAll(d.removed_posts.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemovePost(mod_remove_post = this.toUni(d = view)) - }) + modlogList.addAll( + d.removed_posts.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemovePost(mod_remove_post = this.toUni(d = view)) + }, + ) // Add ModLockPost entries - modlogList.addAll(d.locked_posts.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModLockPost(mod_lock_post = this.toUni(d = view)) - }) + modlogList.addAll( + d.locked_posts.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModLockPost(mod_lock_post = this.toUni(d = view)) + }, + ) // Add ModFeaturePost entries - modlogList.addAll(d.featured_posts.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModFeaturePost(mod_feature_post = this.toUni(d = view)) - }) + modlogList.addAll( + d.featured_posts.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModFeaturePost(mod_feature_post = this.toUni(d = view)) + }, + ) // Add ModRemoveComment entries - modlogList.addAll(d.removed_comments.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemoveComment(mod_remove_comment = this.toUni(d = view)) - }) + modlogList.addAll( + d.removed_comments.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemoveComment(mod_remove_comment = this.toUni(d = view)) + }, + ) // Add ModRemoveCommunity entries - modlogList.addAll(d.removed_communities.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemoveCommunity(mod_remove_community = this.toUni(d = view)) - }) + modlogList.addAll( + d.removed_communities.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemoveCommunity(mod_remove_community = this.toUni(d = view)) + }, + ) // Add ModBanFromCommunity entries - modlogList.addAll(d.banned_from_community.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModBanFromCommunity(mod_ban_from_community = this.toUni(d = view)) - }) + modlogList.addAll( + d.banned_from_community.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModBanFromCommunity(mod_ban_from_community = this.toUni(d = view)) + }, + ) // Add ModBan entries - modlogList.addAll(d.banned.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModBan(mod_ban = this.toUni(d = view)) - }) + modlogList.addAll( + d.banned.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModBan(mod_ban = this.toUni(d = view)) + }, + ) // Add ModAddCommunity entries - modlogList.addAll(d.added_to_community.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModAddCommunity(mod_add_community = this.toUni(d = view)) - }) + modlogList.addAll( + d.added_to_community.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModAddCommunity(mod_add_community = this.toUni(d = view)) + }, + ) // Add ModTransferCommunity entries - modlogList.addAll(d.transferred_to_community.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModTransferCommunity(mod_transfer_community = this.toUni(d = view)) - }) + modlogList.addAll( + d.transferred_to_community.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModTransferCommunity(mod_transfer_community = this.toUni(d = view)) + }, + ) // Add ModAdd entries - modlogList.addAll(d.added.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModAdd(mod_add = this.toUni(d = view)) - }) + modlogList.addAll( + d.added.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModAdd(mod_add = this.toUni(d = view)) + }, + ) // Add AdminPurgePerson entries - modlogList.addAll(d.admin_purged_persons.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgePerson(admin_purge_person = this.toUni(d = view)) - }) + modlogList.addAll( + d.admin_purged_persons.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgePerson(admin_purge_person = this.toUni(d = view)) + }, + ) // Add AdminPurgeCommunity entries - modlogList.addAll(d.admin_purged_communities.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgeCommunity(admin_purge_community = this.toUni(d = view)) - }) + modlogList.addAll( + d.admin_purged_communities.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgeCommunity(admin_purge_community = this.toUni(d = view)) + }, + ) // Add AdminPurgePost entries - modlogList.addAll(d.admin_purged_posts.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgePost(admin_purge_post = this.toUni(d = view)) - }) + modlogList.addAll( + d.admin_purged_posts.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgePost(admin_purge_post = this.toUni(d = view)) + }, + ) // Add AdminPurgeComment entries - modlogList.addAll(d.admin_purged_comments.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgeComment(admin_purge_comment = this.toUni(d = view)) - }) + modlogList.addAll( + d.admin_purged_comments.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgeComment(admin_purge_comment = this.toUni(d = view)) + }, + ) // Add ModHideCommunity entries (mapped to ModChangeCommunityVisibility) - modlogList.addAll(d.hidden_communities.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModChangeCommunityVisibility(mod_change_community_visibility = this.toUni(d = view)) - }) + modlogList.addAll( + d.hidden_communities.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModChangeCommunityVisibility(mod_change_community_visibility = this.toUni(d = view)) + }, + ) return it.vercruysse.lemmyapi.datatypes.GetModlogResponse( modlog = modlogList, next_page = null, - prev_page = null + prev_page = null, ) } @@ -1023,8 +1035,8 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X3DatatypesInstance): LemmyapiDatatypesInstance = LemmyapiDatatypesInstance( id = d.id, domain = d.domain, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, software = d.software, version = d.version, ) @@ -1032,8 +1044,8 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X3DatatypesInstanceWithFederationState): LemmyapiDatatypesInstanceWithFederationState = LemmyapiDatatypesInstanceWithFederationState( id = d.id, domain = d.domain, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, software = d.software, version = d.version, federation_state = d.federation_state?.let { this.toUni(d = it) }, @@ -1079,22 +1091,22 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X3DatatypesLocalSiteRateLimit): LemmyapiDatatypesLocalSiteRateLimit = LemmyapiDatatypesLocalSiteRateLimit( local_site_id = d.local_site_id, - message = d.message, - message_per_second = d.message_per_second, - post = d.post, - post_per_second = d.post_per_second, - register = d.register, - register_per_second = d.register_per_second, - image = d.image, - image_per_second = d.image_per_second, - comment = d.comment, - comment_per_second = d.comment_per_second, - search = d.search, - search_per_second = d.search_per_second, - published = d.published, - updated = d.updated, - import_user_settings = d.import_user_settings, - import_user_settings_per_second = d.import_user_settings_per_second, + message_max_requests = d.message, + message_interval_seconds = d.message_per_second, + post_max_requests = d.post, + post_interval_seconds = d.post_per_second, + register_max_requests = d.register, + register_interval_seconds = d.register_per_second, + image_max_requests = d.image, + image_interval_seconds = d.image_per_second, + comment_max_requests = d.comment, + comment_interval_seconds = d.comment_per_second, + search_max_requests = d.search, + search_interval_seconds = d.search_per_second, + published_at = d.published, + updated_at = d.updated, + import_user_settings_max_requests = d.import_user_settings, + import_user_settings_interval_seconds = d.import_user_settings_per_second, ) override fun toUni(d: X3DatatypesLocalUser): LemmyapiDatatypesLocalUser = @@ -1109,7 +1121,6 @@ internal class Transformer : MapperGenerator { interface_language = d.interface_language, show_avatars = d.show_avatars, send_notifications_to_email = d.send_notifications_to_email, - show_scores = d.show_scores, show_bot_accounts = d.show_bot_accounts, show_read_posts = d.show_read_posts, email_verified = d.email_verified, @@ -1124,14 +1135,24 @@ internal class Transformer : MapperGenerator { enable_keyboard_navigation = d.enable_keyboard_navigation, enable_animated_images = d.enable_animated_images, collapse_bot_comments = d.collapse_bot_comments, - last_donation_notification = "", + last_donation_notification_at = "", + show_score = d.show_scores, + show_upvotes = d.show_scores, + show_person_votes = d.show_scores, + show_upvote_percentage = d.show_scores, + hide_media = false, + show_downvotes = VoteShow.Show, + enable_private_messages = true, + default_comment_sort_type = SortType.Active, + auto_mark_fetched_posts_as_read = false, + default_post_time_range_seconds = null, ) override fun toUni(d: X3DatatypesLocalUserView): LemmyapiDatatypesLocalUserView = LemmyapiDatatypesLocalUserView( local_user = this.toUni(d = d.local_user), - person = this.toUni(d = d.person), - counts = this.toUni(d = d.counts), + person = this.toUni(d = d.person, d.counts), + banned = d.person.banned, ) override fun toUni(d: X3DatatypesLoginResponse): LemmyapiDatatypesLoginResponse = @@ -1144,7 +1165,7 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X3DatatypesLoginToken): LemmyapiDatatypesLoginToken = LemmyapiDatatypesLoginToken( user_id = d.user_id, - published = d.published, + published_at = d.published, ip = d.ip, user_agent = d.user_agent, ) @@ -1154,7 +1175,7 @@ internal class Transformer : MapperGenerator { mod_person_id = d.mod_person_id, other_person_id = d.other_person_id, removed = d.removed, - published = d.when_, + published_at = d.when_, ) override fun toUni(d: X3DatatypesModAddCommunity): LemmyapiDatatypesModAddCommunity = @@ -1164,14 +1185,14 @@ internal class Transformer : MapperGenerator { other_person_id = d.other_person_id, community_id = d.community_id, removed = d.removed, - published = d.when_, + published_at = d.when_, ) override fun toUni(d: X3DatatypesModAddCommunityView): LemmyapiDatatypesModAddCommunityView = LemmyapiDatatypesModAddCommunityView( mod_add_community = this.toUni(d = d.mod_add_community), moderator = d.moderator?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community), + community = this.toUni(d = d.community, counts = X3DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), other_person = this.toUni(d = d.modded_person), ) @@ -1188,8 +1209,8 @@ internal class Transformer : MapperGenerator { other_person_id = d.other_person_id, reason = d.reason, banned = d.banned, - expires = d.expires, - published = d.when_, + expires_at = d.expires, + published_at = d.when_, instance_id = -1, ) @@ -1201,14 +1222,14 @@ internal class Transformer : MapperGenerator { community_id = d.community_id, reason = d.reason, banned = d.banned, - expires = d.expires, - published = d.when_, + expires_at = d.expires, + published_at = d.when_, ) override fun toUni(d: X3DatatypesModBanFromCommunityView): LemmyapiDatatypesModBanFromCommunityView = LemmyapiDatatypesModBanFromCommunityView( mod_ban_from_community = this.toUni(d = d.mod_ban_from_community), moderator = d.moderator?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community), + community = this.toUni(d = d.community, counts = X3DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), other_person = this.toUni(d = d.banned_person), ) @@ -1225,7 +1246,7 @@ internal class Transformer : MapperGenerator { mod_person_id = d.mod_person_id, post_id = d.post_id, featured = d.featured, - published = d.when_, + published_at = d.when_, is_featured_community = d.is_featured_community, ) @@ -1233,8 +1254,8 @@ internal class Transformer : MapperGenerator { LemmyapiDatatypesModFeaturePostView( mod_feature_post = this.toUni(d = d.mod_feature_post), moderator = d.moderator?.let { this.toUni(d = it) }, - post = this.toUni(d = d.post), - community = this.toUni(d = d.community), + post = this.toUni(d = d.post, counts = X3DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), + community = this.toUni(d = d.community, counts = X3DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), ) override fun toUni(d: X3DatatypesModHideCommunity): LemmyapiDatatypesModChangeCommunityVisibility = @@ -1242,7 +1263,7 @@ internal class Transformer : MapperGenerator { id = d.id, community_id = d.community_id, mod_person_id = d.mod_person_id, - published = d.when_, + published_at = d.when_, reason = d.reason, visibility = if (d.hidden) { CommunityVisibility.Unlisted @@ -1255,7 +1276,7 @@ internal class Transformer : MapperGenerator { LemmyapiDatatypesModChangeCommunityVisibilityView( mod_change_community_visibility = this.toUni(d = d.mod_hide_community), moderator = d.admin?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community), + community = this.toUni(d = d.community, counts = X3DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), ) override fun toUni(d: X3DatatypesModLockPost): LemmyapiDatatypesModLockPost = @@ -1264,15 +1285,15 @@ internal class Transformer : MapperGenerator { mod_person_id = d.mod_person_id, post_id = d.post_id, locked = d.locked, - published = d.when_, + published_at = d.when_, ) override fun toUni(d: X3DatatypesModLockPostView): LemmyapiDatatypesModLockPostView = LemmyapiDatatypesModLockPostView( mod_lock_post = this.toUni(d = d.mod_lock_post), moderator = d.moderator?.let { this.toUni(d = it) }, - post = this.toUni(d = d.post), - community = this.toUni(d = d.community), + post = this.toUni(d = d.post, counts = X3DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), + community = this.toUni(d = d.community, counts = X3DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), ) override fun toUni(d: X3DatatypesModlogListParams): LemmyapiDatatypesModlogListParams = @@ -1292,17 +1313,17 @@ internal class Transformer : MapperGenerator { comment_id = d.comment_id, reason = d.reason, removed = d.removed, - published = d.when_, + published_at = d.when_, ) override fun toUni(d: X3DatatypesModRemoveCommentView): LemmyapiDatatypesModRemoveCommentView = LemmyapiDatatypesModRemoveCommentView( mod_remove_comment = this.toUni(d = d.mod_remove_comment), moderator = d.moderator?.let { this.toUni(d = it) }, - comment = this.toUni(d = d.comment), + comment = this.toUni(d = d.comment, X3DatatypesCommentAggregates(-1, -1, -1, -1, "", -1)), other_person = this.toUni(d = d.commenter), - post = this.toUni(d = d.post), - community = this.toUni(d = d.community), + post = this.toUni(d = d.post, counts = X3DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), + community = this.toUni(d = d.community, counts = X3DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), ) override fun toUni(d: X3DatatypesModRemoveCommunity): LemmyapiDatatypesModRemoveCommunity = @@ -1312,13 +1333,13 @@ internal class Transformer : MapperGenerator { community_id = d.community_id, reason = d.reason, removed = d.removed, - published = d.when_, + published_at = d.when_, ) override fun toUni(d: X3DatatypesModRemoveCommunityView): LemmyapiDatatypesModRemoveCommunityView = LemmyapiDatatypesModRemoveCommunityView( mod_remove_community = this.toUni(d = d.mod_remove_community), moderator = d.moderator?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community), + community = this.toUni(d = d.community, counts = X3DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), ) override fun toUni(d: X3DatatypesModRemovePost): LemmyapiDatatypesModRemovePost = @@ -1328,15 +1349,15 @@ internal class Transformer : MapperGenerator { post_id = d.post_id, reason = d.reason, removed = d.removed, - published = d.when_, + published_at = d.when_, ) override fun toUni(d: X3DatatypesModRemovePostView): LemmyapiDatatypesModRemovePostView = LemmyapiDatatypesModRemovePostView( mod_remove_post = this.toUni(d = d.mod_remove_post), moderator = d.moderator?.let { this.toUni(d = it) }, - post = this.toUni(d = d.post), - community = this.toUni(d = d.community), + post = this.toUni(d = d.post, counts = X3DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), + community = this.toUni(d = d.community, counts = X3DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), ) override fun toUni(d: X3DatatypesModTransferCommunity): LemmyapiDatatypesModTransferCommunity = @@ -1345,13 +1366,13 @@ internal class Transformer : MapperGenerator { mod_person_id = d.mod_person_id, other_person_id = d.other_person_id, community_id = d.community_id, - published = d.when_, + published_at = d.when_, ) override fun toUni(d: X3DatatypesModTransferCommunityView): LemmyapiDatatypesModTransferCommunityView = LemmyapiDatatypesModTransferCommunityView( mod_transfer_community = this.toUni(d = d.mod_transfer_community), moderator = d.moderator?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community), + community = this.toUni(d = d.community, counts = X3DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), other_person = this.toUni(d = d.modded_person), ) @@ -1360,38 +1381,33 @@ internal class Transformer : MapperGenerator { local_user_view = this.toUni(d = d.local_user_view), follows = d.follows.map { this.toUni(d = it) }, moderates = d.moderates.map { this.toUni(d = it) }, - community_blocks = d.community_blocks.map { this.toUni(d = it.community) }, + community_blocks = d.community_blocks.map { this.toUni(d = it.community, counts = X3DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)) }, instance_blocks = d.instance_blocks.map { this.toUni(d = it.instance) }, person_blocks = d.person_blocks.map { this.toUni(d = it.target) }, discussion_languages = d.discussion_languages, ) - override fun toUni(d: X3DatatypesPerson): LemmyapiDatatypesPerson = LemmyapiDatatypesPerson( + fun toUni(d: X3DatatypesPerson) = this.toUni(d, X3DatatypesPersonAggregates(-1, -1, -1)) + + override fun toUni(d: X3DatatypesPerson, counts: X3DatatypesPersonAggregates): LemmyapiDatatypesPerson = LemmyapiDatatypesPerson( id = d.id, name = d.name, display_name = d.display_name, avatar = d.avatar, - banned = d.banned, - published = d.published, - updated = d.updated, - actor_id = d.actor_id, + published_at = d.published, + updated_at = d.updated, + ap_id = d.actor_id, bio = d.bio, local = d.local, banner = d.banner, deleted = d.deleted, matrix_user_id = d.matrix_user_id, bot_account = d.bot_account, - ban_expires = d.ban_expires, instance_id = d.instance_id, + post_count = counts.post_count, + comment_count = counts.comment_count, ) - override fun toUni(d: X3DatatypesPersonAggregates): LemmyapiDatatypesPersonAggregates = - LemmyapiDatatypesPersonAggregates( - person_id = d.person_id, - post_count = d.post_count, - comment_count = d.comment_count, - ) - override fun toUni(d: X3DatatypesPersonMention): LemmyapiDatatypesPersonMention = LemmyapiDatatypesPersonMention( id = d.id, @@ -1408,12 +1424,13 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X3DatatypesPersonView): LemmyapiDatatypesPersonView = LemmyapiDatatypesPersonView( - person = this.toUni(d = d.person), - counts = this.toUni(d = d.counts), + person = this.toUni(d = d.person, d.counts), is_admin = d.is_admin, + person_actions = null, + creator_banned = d.person.banned, ) - override fun toUni(d: X3DatatypesPost): LemmyapiDatatypesPost = LemmyapiDatatypesPost( + override fun toUni(d: X3DatatypesPost, counts: X3DatatypesPostAggregates): LemmyapiDatatypesPost = LemmyapiDatatypesPost( id = d.id, name = d.name, url = d.url, @@ -1422,8 +1439,8 @@ internal class Transformer : MapperGenerator { community_id = d.community_id, removed = d.removed, locked = d.locked, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, deleted = d.deleted, nsfw = d.nsfw, embed_title = d.embed_title, @@ -1435,19 +1452,16 @@ internal class Transformer : MapperGenerator { language_id = d.language_id, featured_community = d.featured_community, featured_local = d.featured_local, + comments = counts.comments, + score = counts.score, + upvotes = counts.upvotes, + downvotes = counts.downvotes, + newest_comment_time_at = counts.newest_comment_time, + report_count = -1, + unresolved_report_count = -1, + federation_pending = false, ) - override fun toUni(d: X3DatatypesPostAggregates): LemmyapiDatatypesPostAggregates = - LemmyapiDatatypesPostAggregates( - post_id = d.post_id, - comments = d.comments, - score = d.score, - upvotes = d.upvotes, - downvotes = d.downvotes, - published = d.published, - newest_comment_time = d.newest_comment_time, - ) - override fun toUni(d: X3DatatypesPostReport): LemmyapiDatatypesPostReport = LemmyapiDatatypesPostReport( id = d.id, @@ -1459,8 +1473,8 @@ internal class Transformer : MapperGenerator { reason = d.reason, resolved = d.resolved, resolver_id = d.resolver_id, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, violates_instance_rules = false, ) @@ -1482,8 +1496,8 @@ internal class Transformer : MapperGenerator { content = d.content, deleted = d.deleted, read = d.read, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, ap_id = d.ap_id, local = d.local, removed = false, @@ -1498,8 +1512,8 @@ internal class Transformer : MapperGenerator { reason = d.reason, resolved = d.resolved, resolver_id = d.resolver_id, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, ) override fun toUni(d: X3DatatypesPrivateMessageReportResponse): LemmyapiDatatypesPrivateMessageReportResponse = LemmyapiDatatypesPrivateMessageReportResponse( @@ -1532,10 +1546,10 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X3DatatypesReadableFederationState): LemmyapiDatatypesReadableFederationState = LemmyapiDatatypesReadableFederationState( instance_id = d.instance_id, last_successful_id = d.last_successful_id, - last_successful_published_time = d.last_successful_published_time, + last_successful_published_time_at = d.last_successful_published_time, fail_count = d.fail_count, - last_retry = d.last_retry, - next_retry = d.next_retry, + last_retry_at = d.last_retry, + next_retry_at = d.next_retry, ) override fun toUni(d: X3DatatypesRegistrationApplication): LemmyapiDatatypesRegistrationApplication = LemmyapiDatatypesRegistrationApplication( @@ -1544,7 +1558,7 @@ internal class Transformer : MapperGenerator { answer = d.answer, admin_id = d.admin_id, deny_reason = d.deny_reason, - published = d.published, + published_at = d.published, ) override fun toUni(d: X3DatatypesRegistrationApplicationResponse): LemmyapiDatatypesRegistrationApplicationResponse = @@ -1580,12 +1594,12 @@ internal class Transformer : MapperGenerator { id = d.id, name = d.name, sidebar = d.sidebar, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, icon = d.icon, banner = d.banner, description = d.description, - actor_id = d.actor_id, + ap_id = d.actor_id, last_refreshed_at = d.last_refreshed_at, inbox_url = d.inbox_url, instance_id = d.instance_id, @@ -1620,8 +1634,8 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X3DatatypesTagline): LemmyapiDatatypesTagline = LemmyapiDatatypesTagline( id = d.id, content = d.content, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, ) override fun toUni(d: X3DatatypesUpdateTotpResponse): LemmyapiDatatypesUpdateTotpResponse = @@ -1654,7 +1668,7 @@ internal class Transformer : MapperGenerator { ban = d.ban, remove_data = d.remove_or_restore_data, reason = d.reason, - expires = d.expires, + expires = d.expires_at, ) override fun fromUni(d: LemmyapiDatatypesBanPerson): X3DatatypesBanPerson = X3DatatypesBanPerson( @@ -1662,7 +1676,7 @@ internal class Transformer : MapperGenerator { ban = d.ban, remove_data = d.remove_or_restore_data, reason = d.reason, - expires = d.expires, + expires = d.expires_at, ) override fun fromUni(d: LemmyapiDatatypesBlockCommunity): X3DatatypesBlockCommunity = @@ -1786,18 +1800,18 @@ internal class Transformer : MapperGenerator { discussion_languages = d.discussion_languages, slur_filter_regex = d.slur_filter_regex, actor_name_max_length = d.actor_name_max_length, - rate_limit_message = d.rate_limit_message, - rate_limit_message_per_second = d.rate_limit_message_per_second, - rate_limit_post = d.rate_limit_post, - rate_limit_post_per_second = d.rate_limit_post_per_second, - rate_limit_register = d.rate_limit_register, - rate_limit_register_per_second = d.rate_limit_register_per_second, - rate_limit_image = d.rate_limit_image, - rate_limit_image_per_second = d.rate_limit_image_per_second, - rate_limit_comment = d.rate_limit_comment, - rate_limit_comment_per_second = d.rate_limit_comment_per_second, - rate_limit_search = d.rate_limit_search, - rate_limit_search_per_second = d.rate_limit_search_per_second, + rate_limit_message = d.rate_limit_message_max_requests, + rate_limit_message_per_second = d.rate_limit_message_interval_seconds, + rate_limit_post = d.rate_limit_post_max_requests, + rate_limit_post_per_second = d.rate_limit_post_interval_seconds, + rate_limit_register = d.rate_limit_register_max_requests, + rate_limit_register_per_second = d.rate_limit_register_interval_seconds, + rate_limit_image = d.rate_limit_image_max_requests, + rate_limit_image_per_second = d.rate_limit_image_interval_seconds, + rate_limit_comment = d.rate_limit_comment_max_requests, + rate_limit_comment_per_second = d.rate_limit_comment_interval_seconds, + rate_limit_search = d.rate_limit_search_max_requests, + rate_limit_search_per_second = d.rate_limit_search_interval_seconds, federation_enabled = d.federation_enabled, federation_debug = d.federation_debug, captcha_enabled = d.captcha_enabled, @@ -1912,18 +1926,18 @@ internal class Transformer : MapperGenerator { discussion_languages = d.discussion_languages, slur_filter_regex = d.slur_filter_regex, actor_name_max_length = d.actor_name_max_length, - rate_limit_message = d.rate_limit_message, - rate_limit_message_per_second = d.rate_limit_message_per_second, - rate_limit_post = d.rate_limit_post, - rate_limit_post_per_second = d.rate_limit_post_per_second, - rate_limit_register = d.rate_limit_register, - rate_limit_register_per_second = d.rate_limit_register_per_second, - rate_limit_image = d.rate_limit_image, - rate_limit_image_per_second = d.rate_limit_image_per_second, - rate_limit_comment = d.rate_limit_comment, - rate_limit_comment_per_second = d.rate_limit_comment_per_second, - rate_limit_search = d.rate_limit_search, - rate_limit_search_per_second = d.rate_limit_search_per_second, + rate_limit_message = d.rate_limit_message_max_requests, + rate_limit_message_per_second = d.rate_limit_message_interval_seconds, + rate_limit_post = d.rate_limit_post_max_requests, + rate_limit_post_per_second = d.rate_limit_post_interval_seconds, + rate_limit_register = d.rate_limit_register_max_requests, + rate_limit_register_per_second = d.rate_limit_register_interval_seconds, + rate_limit_image = d.rate_limit_image_max_requests, + rate_limit_image_per_second = d.rate_limit_image_interval_seconds, + rate_limit_comment = d.rate_limit_comment_max_requests, + rate_limit_comment_per_second = d.rate_limit_comment_interval_seconds, + rate_limit_search = d.rate_limit_search_max_requests, + rate_limit_search_per_second = d.rate_limit_search_interval_seconds, federation_enabled = d.federation_enabled, federation_debug = d.federation_debug, captcha_enabled = d.captcha_enabled, @@ -2015,9 +2029,6 @@ internal class Transformer : MapperGenerator { limit = d.limit, community_id = d.community_id, community_name = d.community_name, - saved_only = d.saved_only, - liked_only = d.liked_only, - disliked_only = d.disliked_only, page_cursor = d.page_cursor, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt index 4dc372aa..3d5fd3ca 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt @@ -19,8 +19,7 @@ internal interface MapperGenerator { fun toUni(d: BlockCommunityResponse): it.vercruysse.lemmyapi.datatypes.BlockCommunityResponse fun toUni(d: BlockPersonResponse): it.vercruysse.lemmyapi.datatypes.BlockPersonResponse fun toUni(d: CaptchaResponse): it.vercruysse.lemmyapi.datatypes.CaptchaResponse - fun toUni(d: Comment): it.vercruysse.lemmyapi.datatypes.Comment - fun toUni(d: CommentAggregates): it.vercruysse.lemmyapi.datatypes.CommentAggregates + fun toUni(d: Comment, counts: CommentAggregates): it.vercruysse.lemmyapi.datatypes.Comment fun toUni(d: CommentReply): it.vercruysse.lemmyapi.datatypes.CommentReply fun toUni(d: CommentReplyResponse): it.vercruysse.lemmyapi.datatypes.CommentReplyResponse fun toUni(d: CommentReplyView): it.vercruysse.lemmyapi.datatypes.CommentReplyView @@ -29,8 +28,7 @@ internal interface MapperGenerator { fun toUni(d: CommentReportView): it.vercruysse.lemmyapi.datatypes.CommentReportView fun toUni(d: CommentResponse): it.vercruysse.lemmyapi.datatypes.CommentResponse fun toUni(d: CommentView): it.vercruysse.lemmyapi.datatypes.CommentView - fun toUni(d: Community): it.vercruysse.lemmyapi.datatypes.Community - fun toUni(d: CommunityAggregates): it.vercruysse.lemmyapi.datatypes.CommunityAggregates + fun toUni(d: Community, counts: CommunityAggregates): it.vercruysse.lemmyapi.datatypes.Community fun toUni(d: CommunityFollowerView): it.vercruysse.lemmyapi.datatypes.CommunityFollowerView fun toUni(d: CommunityModeratorView): it.vercruysse.lemmyapi.datatypes.CommunityModeratorView fun toUni(d: CommunityResponse): it.vercruysse.lemmyapi.datatypes.CommunityResponse @@ -104,14 +102,12 @@ internal interface MapperGenerator { fun toUni(d: ModTransferCommunity): it.vercruysse.lemmyapi.datatypes.ModTransferCommunity fun toUni(d: ModTransferCommunityView): it.vercruysse.lemmyapi.datatypes.ModTransferCommunityView fun toUni(d: MyUserInfo): it.vercruysse.lemmyapi.datatypes.MyUserInfo - fun toUni(d: Person): it.vercruysse.lemmyapi.datatypes.Person - fun toUni(d: PersonAggregates): it.vercruysse.lemmyapi.datatypes.PersonAggregates + fun toUni(d: Person, counts: PersonAggregates): it.vercruysse.lemmyapi.datatypes.Person fun toUni(d: PersonMention): it.vercruysse.lemmyapi.datatypes.PersonMention fun toUni(d: PersonMentionResponse): it.vercruysse.lemmyapi.datatypes.PersonMentionResponse fun toUni(d: PersonMentionView): it.vercruysse.lemmyapi.datatypes.PersonMentionView fun toUni(d: PersonView): it.vercruysse.lemmyapi.datatypes.PersonView - fun toUni(d: Post): it.vercruysse.lemmyapi.datatypes.Post - fun toUni(d: PostAggregates): it.vercruysse.lemmyapi.datatypes.PostAggregates + fun toUni(d: Post, counts: PostAggregates): it.vercruysse.lemmyapi.datatypes.Post fun toUni(d: PostReport): it.vercruysse.lemmyapi.datatypes.PostReport fun toUni(d: PostReportResponse): it.vercruysse.lemmyapi.datatypes.PostReportResponse fun toUni(d: PostReportView): it.vercruysse.lemmyapi.datatypes.PostReportView diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt index 68d7c7b9..1f8bca8c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt @@ -1,5 +1,13 @@ package it.vercruysse.lemmyapi.v0.x19.x4 +import it.vercruysse.lemmyapi.datatypes.CommentActions +import it.vercruysse.lemmyapi.datatypes.CommunityActions +import it.vercruysse.lemmyapi.datatypes.PersonActions +import it.vercruysse.lemmyapi.datatypes.PostActions +import it.vercruysse.lemmyapi.dto.CommunityFollowerState +import it.vercruysse.lemmyapi.dto.SortType +import it.vercruysse.lemmyapi.dto.VoteShow +import it.vercruysse.lemmyapi.utils.toAt import it.vercruysse.lemmyapi.datatypes.AddAdmin as LemmyapiDatatypesAddAdmin import it.vercruysse.lemmyapi.datatypes.AddAdminResponse as LemmyapiDatatypesAddAdminResponse import it.vercruysse.lemmyapi.datatypes.AddModToCommunity as LemmyapiDatatypesAddModToCommunity @@ -26,7 +34,6 @@ import it.vercruysse.lemmyapi.datatypes.BlockPersonResponse as LemmyapiDatatypes import it.vercruysse.lemmyapi.datatypes.CaptchaResponse as LemmyapiDatatypesCaptchaResponse import it.vercruysse.lemmyapi.datatypes.ChangePassword as LemmyapiDatatypesChangePassword import it.vercruysse.lemmyapi.datatypes.Comment as LemmyapiDatatypesComment -import it.vercruysse.lemmyapi.datatypes.CommentAggregates as LemmyapiDatatypesCommentAggregates import it.vercruysse.lemmyapi.datatypes.CommentReply as LemmyapiDatatypesCommentReply import it.vercruysse.lemmyapi.datatypes.CommentReplyResponse as LemmyapiDatatypesCommentReplyResponse import it.vercruysse.lemmyapi.datatypes.CommentReplyView as LemmyapiDatatypesCommentReplyView @@ -36,7 +43,6 @@ import it.vercruysse.lemmyapi.datatypes.CommentReportView as LemmyapiDatatypesCo import it.vercruysse.lemmyapi.datatypes.CommentResponse as LemmyapiDatatypesCommentResponse import it.vercruysse.lemmyapi.datatypes.CommentView as LemmyapiDatatypesCommentView import it.vercruysse.lemmyapi.datatypes.Community as LemmyapiDatatypesCommunity -import it.vercruysse.lemmyapi.datatypes.CommunityAggregates as LemmyapiDatatypesCommunityAggregates import it.vercruysse.lemmyapi.datatypes.CommunityFollowerView as LemmyapiDatatypesCommunityFollowerView import it.vercruysse.lemmyapi.datatypes.CommunityModeratorView as LemmyapiDatatypesCommunityModeratorView import it.vercruysse.lemmyapi.datatypes.CommunityResponse as LemmyapiDatatypesCommunityResponse @@ -165,13 +171,11 @@ import it.vercruysse.lemmyapi.datatypes.MyUserInfo as LemmyapiDatatypesMyUserInf import it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset as LemmyapiDatatypesPasswordChangeAfterReset import it.vercruysse.lemmyapi.datatypes.PasswordReset as LemmyapiDatatypesPasswordReset import it.vercruysse.lemmyapi.datatypes.Person as LemmyapiDatatypesPerson -import it.vercruysse.lemmyapi.datatypes.PersonAggregates as LemmyapiDatatypesPersonAggregates import it.vercruysse.lemmyapi.datatypes.PersonMention as LemmyapiDatatypesPersonMention import it.vercruysse.lemmyapi.datatypes.PersonMentionResponse as LemmyapiDatatypesPersonMentionResponse import it.vercruysse.lemmyapi.datatypes.PersonMentionView as LemmyapiDatatypesPersonMentionView import it.vercruysse.lemmyapi.datatypes.PersonView as LemmyapiDatatypesPersonView import it.vercruysse.lemmyapi.datatypes.Post as LemmyapiDatatypesPost -import it.vercruysse.lemmyapi.datatypes.PostAggregates as LemmyapiDatatypesPostAggregates import it.vercruysse.lemmyapi.datatypes.PostReport as LemmyapiDatatypesPostReport import it.vercruysse.lemmyapi.datatypes.PostReportResponse as LemmyapiDatatypesPostReportResponse import it.vercruysse.lemmyapi.datatypes.PostReportView as LemmyapiDatatypesPostReportView @@ -450,14 +454,14 @@ internal class Transformer : MapperGenerator { admin_person_id = d.admin_person_id, post_id = d.post_id, reason = d.reason, - published = d.when_, + published_at = d.when_, ) override fun toUni(d: X4DatatypesAdminPurgeCommentView): LemmyapiDatatypesAdminPurgeCommentView = LemmyapiDatatypesAdminPurgeCommentView( admin_purge_comment = this.toUni(d = d.admin_purge_comment), admin = d.admin?.let { this.toUni(d = it) }, - post = this.toUni(d = d.post), + post = this.toUni(d = d.post, counts = X4DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), ) override fun toUni(d: X4DatatypesAdminPurgeCommunity): LemmyapiDatatypesAdminPurgeCommunity = @@ -465,7 +469,7 @@ internal class Transformer : MapperGenerator { id = d.id, admin_person_id = d.admin_person_id, reason = d.reason, - published = d.when_, + published_at = d.when_, ) override fun toUni(d: X4DatatypesAdminPurgeCommunityView): LemmyapiDatatypesAdminPurgeCommunityView = LemmyapiDatatypesAdminPurgeCommunityView( @@ -478,7 +482,7 @@ internal class Transformer : MapperGenerator { id = d.id, admin_person_id = d.admin_person_id, reason = d.reason, - published = d.when_, + published_at = d.when_, ) override fun toUni(d: X4DatatypesAdminPurgePersonView): LemmyapiDatatypesAdminPurgePersonView = @@ -493,14 +497,14 @@ internal class Transformer : MapperGenerator { admin_person_id = d.admin_person_id, community_id = d.community_id, reason = d.reason, - published = d.when_, + published_at = d.when_, ) override fun toUni(d: X4DatatypesAdminPurgePostView): LemmyapiDatatypesAdminPurgePostView = LemmyapiDatatypesAdminPurgePostView( admin_purge_post = this.toUni(d = d.admin_purge_post), admin = d.admin?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community), + community = this.toUni(d = d.community, counts = X4DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), ) override fun toUni(d: X4DatatypesBanFromCommunityResponse): LemmyapiDatatypesBanFromCommunityResponse = LemmyapiDatatypesBanFromCommunityResponse( @@ -538,32 +542,29 @@ internal class Transformer : MapperGenerator { uuid = d.uuid, ) - override fun toUni(d: X4DatatypesComment): LemmyapiDatatypesComment = LemmyapiDatatypesComment( + override fun toUni(d: X4DatatypesComment, counts: X4DatatypesCommentAggregates): LemmyapiDatatypesComment = LemmyapiDatatypesComment( id = d.id, creator_id = d.creator_id, post_id = d.post_id, content = d.content, removed = d.removed, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, deleted = d.deleted, ap_id = d.ap_id, local = d.local, path = d.path, distinguished = d.distinguished, language_id = d.language_id, + score = counts.score, + upvotes = counts.upvotes, + downvotes = counts.downvotes, + child_count = counts.child_count, + report_count = -1, + unresolved_report_count = -1, + federation_pending = false, ) - override fun toUni(d: X4DatatypesCommentAggregates): LemmyapiDatatypesCommentAggregates = - LemmyapiDatatypesCommentAggregates( - comment_id = d.comment_id, - score = d.score, - upvotes = d.upvotes, - downvotes = d.downvotes, - published = d.published, - child_count = d.child_count, - ) - override fun toUni(d: X4DatatypesCommentReply): LemmyapiDatatypesCommentReply = LemmyapiDatatypesCommentReply( id = d.id, @@ -581,12 +582,11 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X4DatatypesCommentReplyView): LemmyapiDatatypesCommentReplyView = LemmyapiDatatypesCommentReplyView( comment_reply = this.toUni(d = d.comment_reply), - comment = this.toUni(d = d.comment), + comment = this.toUni(d = d.comment, d.counts), creator = this.toUni(d = d.creator), - post = this.toUni(d = d.post), - community = this.toUni(d = d.community), + post = this.toUni(d = d.post, counts = X4DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), + community = this.toUni(d = d.community, counts = X4DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), recipient = this.toUni(d = d.recipient), - counts = this.toUni(d = d.counts), creator_banned_from_community = d.creator_banned_from_community, banned_from_community = d.banned_from_community, creator_is_moderator = d.creator_is_moderator, @@ -606,8 +606,8 @@ internal class Transformer : MapperGenerator { reason = d.reason, resolved = d.resolved, resolver_id = d.resolver_id, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, ) override fun toUni(d: X4DatatypesCommentReportResponse): LemmyapiDatatypesCommentReportResponse = @@ -618,20 +618,19 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X4DatatypesCommentReportView): LemmyapiDatatypesCommentReportView = LemmyapiDatatypesCommentReportView( comment_report = this.toUni(d = d.comment_report), - comment = this.toUni(d = d.comment), - post = this.toUni(d = d.post), - community = this.toUni(d = d.community), + comment = this.toUni(d = d.comment, d.counts), + post = this.toUni(d = d.post, counts = X4DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), + community = this.toUni(d = d.community, counts = X4DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), creator = this.toUni(d = d.creator), comment_creator = this.toUni(d = d.comment_creator), - counts = this.toUni(d = d.counts), creator_banned_from_community = d.creator_banned_from_community, creator_is_moderator = d.creator_is_moderator, creator_is_admin = d.creator_is_admin, - creator_blocked = d.creator_blocked, - subscribed = d.subscribed, - saved = d.saved, - my_vote = d.my_vote, resolver = d.resolver?.let { this.toUni(d = it) }, + creator_banned = d.creator.banned, + person_actions = PersonActions(if (d.creator_blocked) "" else null), + comment_actions = CommentActions(d.my_vote, null, if (d.saved) "" else null), + community_actions = CommunityActions(null, CommunityFollowerState.from(d.subscribed)), ) override fun toUni(d: X4DatatypesCommentResponse): LemmyapiDatatypesCommentResponse = @@ -642,33 +641,33 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X4DatatypesCommentView): LemmyapiDatatypesCommentView = LemmyapiDatatypesCommentView( - comment = this.toUni(d = d.comment), + comment = this.toUni(d = d.comment, d.counts), creator = this.toUni(d = d.creator), - post = this.toUni(d = d.post), - community = this.toUni(d = d.community), - counts = this.toUni(d = d.counts), + post = this.toUni(d = d.post, counts = X4DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), + community = this.toUni(d = d.community, counts = X4DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), creator_banned_from_community = d.creator_banned_from_community, - banned_from_community = d.banned_from_community, creator_is_moderator = d.creator_is_moderator, creator_is_admin = d.creator_is_admin, - subscribed = d.subscribed, - saved = d.saved, - creator_blocked = d.creator_blocked, - my_vote = d.my_vote, + post_tags = emptyList(), + creator_banned = d.creator.banned, + can_mod = false, + person_actions = PersonActions(if (d.creator_blocked) "" else null), + comment_actions = CommentActions(d.my_vote, null, if (d.saved) "" else null), + community_actions = CommunityActions(null, CommunityFollowerState.from(d.subscribed)), ) - override fun toUni(d: X4DatatypesCommunity): LemmyapiDatatypesCommunity = + override fun toUni(d: X4DatatypesCommunity, counts: X4DatatypesCommunityAggregates): LemmyapiDatatypesCommunity = LemmyapiDatatypesCommunity( id = d.id, name = d.name, title = d.title, description = d.description, removed = d.removed, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, deleted = d.deleted, nsfw = d.nsfw, - actor_id = d.actor_id, + ap_id = d.actor_id, local = d.local, icon = d.icon, banner = d.banner, @@ -676,31 +675,28 @@ internal class Transformer : MapperGenerator { posting_restricted_to_mods = d.posting_restricted_to_mods, instance_id = d.instance_id, visibility = d.visibility, - ) - - override fun toUni(d: X4DatatypesCommunityAggregates): LemmyapiDatatypesCommunityAggregates = - LemmyapiDatatypesCommunityAggregates( - community_id = d.community_id, - subscribers = d.subscribers, - posts = d.posts, - comments = d.comments, - published = d.published, - users_active_day = d.users_active_day, - users_active_week = d.users_active_week, - users_active_month = d.users_active_month, - users_active_half_year = d.users_active_half_year, - subscribers_local = d.subscribers_local, + subscribers = counts.subscribers, + posts = counts.posts, + comments = counts.comments, + users_active_day = counts.users_active_day, + users_active_week = counts.users_active_week, + users_active_month = counts.users_active_month, + users_active_half_year = counts.users_active_half_year, + subscribers_local = counts.subscribers_local, + report_count = -1, + unresolved_report_count = -1, + local_removed = false, ) override fun toUni(d: X4DatatypesCommunityFollowerView): LemmyapiDatatypesCommunityFollowerView = LemmyapiDatatypesCommunityFollowerView( - community = this.toUni(d = d.community), + community = this.toUni(d = d.community, counts = X4DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), follower = this.toUni(d = d.follower), ) override fun toUni(d: X4DatatypesCommunityModeratorView): LemmyapiDatatypesCommunityModeratorView = LemmyapiDatatypesCommunityModeratorView( - community = this.toUni(d = d.community), + community = this.toUni(d = d.community, counts = X4DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), moderator = this.toUni(d = d.moderator), ) @@ -712,11 +708,10 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X4DatatypesCommunityView): LemmyapiDatatypesCommunityView = LemmyapiDatatypesCommunityView( - community = this.toUni(d = d.community), - subscribed = d.subscribed, - blocked = d.blocked, - counts = this.toUni(d = d.counts), - banned_from_community = d.banned_from_community, + community = this.toUni(d = d.community, d.counts), + can_mod = false, + post_tags = emptyList(), + community_actions = CommunityActions(null, CommunityFollowerState.from(d.subscribed), if (d.blocked) "" else null, null, if (d.banned_from_community) "" else null, if (d.banned_from_community) "" else null), ) override fun toUni(d: X4DatatypesCustomEmoji): LemmyapiDatatypesCustomEmoji = @@ -726,8 +721,8 @@ internal class Transformer : MapperGenerator { image_url = d.image_url, alt_text = d.alt_text, category = d.category, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, ) override fun toUni(d: X4DatatypesCustomEmojiKeyword): LemmyapiDatatypesCustomEmojiKeyword = @@ -785,84 +780,114 @@ internal class Transformer : MapperGenerator { val modlogList = mutableListOf() // Add ModRemovePost entries - modlogList.addAll(d.removed_posts.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemovePost(mod_remove_post = this.toUni(d = view)) - }) + modlogList.addAll( + d.removed_posts.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemovePost(mod_remove_post = this.toUni(d = view)) + }, + ) // Add ModLockPost entries - modlogList.addAll(d.locked_posts.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModLockPost(mod_lock_post = this.toUni(d = view)) - }) + modlogList.addAll( + d.locked_posts.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModLockPost(mod_lock_post = this.toUni(d = view)) + }, + ) // Add ModFeaturePost entries - modlogList.addAll(d.featured_posts.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModFeaturePost(mod_feature_post = this.toUni(d = view)) - }) + modlogList.addAll( + d.featured_posts.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModFeaturePost(mod_feature_post = this.toUni(d = view)) + }, + ) // Add ModRemoveComment entries - modlogList.addAll(d.removed_comments.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemoveComment(mod_remove_comment = this.toUni(d = view)) - }) + modlogList.addAll( + d.removed_comments.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemoveComment(mod_remove_comment = this.toUni(d = view)) + }, + ) // Add ModRemoveCommunity entries - modlogList.addAll(d.removed_communities.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemoveCommunity(mod_remove_community = this.toUni(d = view)) - }) + modlogList.addAll( + d.removed_communities.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemoveCommunity(mod_remove_community = this.toUni(d = view)) + }, + ) // Add ModBanFromCommunity entries - modlogList.addAll(d.banned_from_community.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModBanFromCommunity(mod_ban_from_community = this.toUni(d = view)) - }) + modlogList.addAll( + d.banned_from_community.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModBanFromCommunity(mod_ban_from_community = this.toUni(d = view)) + }, + ) // Add ModBan entries - modlogList.addAll(d.banned.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModBan(mod_ban = this.toUni(d = view)) - }) + modlogList.addAll( + d.banned.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModBan(mod_ban = this.toUni(d = view)) + }, + ) // Add ModAddCommunity entries - modlogList.addAll(d.added_to_community.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModAddCommunity(mod_add_community = this.toUni(d = view)) - }) + modlogList.addAll( + d.added_to_community.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModAddCommunity(mod_add_community = this.toUni(d = view)) + }, + ) // Add ModTransferCommunity entries - modlogList.addAll(d.transferred_to_community.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModTransferCommunity(mod_transfer_community = this.toUni(d = view)) - }) + modlogList.addAll( + d.transferred_to_community.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModTransferCommunity(mod_transfer_community = this.toUni(d = view)) + }, + ) // Add ModAdd entries - modlogList.addAll(d.added.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModAdd(mod_add = this.toUni(d = view)) - }) + modlogList.addAll( + d.added.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModAdd(mod_add = this.toUni(d = view)) + }, + ) // Add AdminPurgePerson entries - modlogList.addAll(d.admin_purged_persons.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgePerson(admin_purge_person = this.toUni(d = view)) - }) + modlogList.addAll( + d.admin_purged_persons.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgePerson(admin_purge_person = this.toUni(d = view)) + }, + ) // Add AdminPurgeCommunity entries - modlogList.addAll(d.admin_purged_communities.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgeCommunity(admin_purge_community = this.toUni(d = view)) - }) + modlogList.addAll( + d.admin_purged_communities.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgeCommunity(admin_purge_community = this.toUni(d = view)) + }, + ) // Add AdminPurgePost entries - modlogList.addAll(d.admin_purged_posts.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgePost(admin_purge_post = this.toUni(d = view)) - }) + modlogList.addAll( + d.admin_purged_posts.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgePost(admin_purge_post = this.toUni(d = view)) + }, + ) // Add AdminPurgeComment entries - modlogList.addAll(d.admin_purged_comments.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgeComment(admin_purge_comment = this.toUni(d = view)) - }) + modlogList.addAll( + d.admin_purged_comments.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgeComment(admin_purge_comment = this.toUni(d = view)) + }, + ) // Add ModHideCommunity entries (mapped to ModChangeCommunityVisibility) - modlogList.addAll(d.hidden_communities.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModChangeCommunityVisibility(mod_change_community_visibility = this.toUni(d = view)) - }) + modlogList.addAll( + d.hidden_communities.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModChangeCommunityVisibility(mod_change_community_visibility = this.toUni(d = view)) + }, + ) return it.vercruysse.lemmyapi.datatypes.GetModlogResponse( modlog = modlogList, next_page = null, - prev_page = null + prev_page = null, ) } @@ -937,8 +962,8 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X4DatatypesInstance): LemmyapiDatatypesInstance = LemmyapiDatatypesInstance( id = d.id, domain = d.domain, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, software = d.software, version = d.version, ) @@ -946,8 +971,8 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X4DatatypesInstanceWithFederationState): LemmyapiDatatypesInstanceWithFederationState = LemmyapiDatatypesInstanceWithFederationState( id = d.id, domain = d.domain, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, software = d.software, version = d.version, federation_state = d.federation_state?.let { this.toUni(d = it) }, @@ -1006,10 +1031,10 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X4DatatypesLocalImage): LemmyapiDatatypesLocalImage = LemmyapiDatatypesLocalImage( - local_user_id = d.local_user_id, + person_id = d.local_user_id, pictrs_alias = d.pictrs_alias, pictrs_delete_token = d.pictrs_delete_token, - published = d.published, + published_at = d.published, ) override fun toUni(d: X4DatatypesLocalImageView): LemmyapiDatatypesLocalImageView = @@ -1039,8 +1064,8 @@ internal class Transformer : MapperGenerator { federation_enabled = d.federation_enabled, captcha_enabled = d.captcha_enabled, captcha_difficulty = d.captcha_difficulty, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, registration_mode = d.registration_mode, reports_email_admins = d.reports_email_admins, federation_signed_fetch = d.federation_signed_fetch, @@ -1051,30 +1076,30 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X4DatatypesLocalSiteRateLimit): LemmyapiDatatypesLocalSiteRateLimit = LemmyapiDatatypesLocalSiteRateLimit( local_site_id = d.local_site_id, - message = d.message, - message_per_second = d.message_per_second, - post = d.post, - post_per_second = d.post_per_second, - register = d.register, - register_per_second = d.register_per_second, - image = d.image, - image_per_second = d.image_per_second, - comment = d.comment, - comment_per_second = d.comment_per_second, - search = d.search, - search_per_second = d.search_per_second, - published = d.published, - updated = d.updated, - import_user_settings = d.import_user_settings, - import_user_settings_per_second = d.import_user_settings_per_second, + message_max_requests = d.message, + message_interval_seconds = d.message_per_second, + post_max_requests = d.post, + post_interval_seconds = d.post_per_second, + register_max_requests = d.register, + register_interval_seconds = d.register_per_second, + image_max_requests = d.image, + image_interval_seconds = d.image_per_second, + comment_max_requests = d.comment, + comment_interval_seconds = d.comment_per_second, + search_max_requests = d.search, + search_interval_seconds = d.search_per_second, + published_at = d.published, + updated_at = d.updated, + import_user_settings_max_requests = d.import_user_settings, + import_user_settings_interval_seconds = d.import_user_settings_per_second, ) override fun toUni(d: X4DatatypesLocalSiteUrlBlocklist): LemmyapiDatatypesLocalSiteUrlBlocklist = LemmyapiDatatypesLocalSiteUrlBlocklist( id = d.id, url = d.url, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, ) override fun toUni(d: X4DatatypesLocalUser): LemmyapiDatatypesLocalUser = @@ -1089,7 +1114,6 @@ internal class Transformer : MapperGenerator { interface_language = d.interface_language, show_avatars = d.show_avatars, send_notifications_to_email = d.send_notifications_to_email, - show_scores = d.show_scores, show_bot_accounts = d.show_bot_accounts, show_read_posts = d.show_read_posts, email_verified = d.email_verified, @@ -1104,15 +1128,27 @@ internal class Transformer : MapperGenerator { enable_keyboard_navigation = d.enable_keyboard_navigation, enable_animated_images = d.enable_animated_images, collapse_bot_comments = d.collapse_bot_comments, - last_donation_notification = "", + last_donation_notification_at = "", + // TODO: map using local_user_vote_display_mode + show_score = d.show_scores, + show_upvotes = d.show_scores, + show_person_votes = d.show_scores, + show_upvote_percentage = d.show_scores, + hide_media = false, + show_downvotes = VoteShow.Show, + enable_private_messages = true, + default_comment_sort_type = SortType.Active, + auto_mark_fetched_posts_as_read = false, + default_post_time_range_seconds = null, + ) override fun toUni(d: X4DatatypesLocalUserView): LemmyapiDatatypesLocalUserView = LemmyapiDatatypesLocalUserView( local_user = this.toUni(d = d.local_user), local_user_vote_display_mode = this.toUni(d = d.local_user_vote_display_mode), - person = this.toUni(d = d.person), - counts = this.toUni(d = d.counts), + person = this.toUni(d = d.person, d.counts), + banned = d.person.banned, ) override fun toUni(d: X4DatatypesLocalUserVoteDisplayMode): LemmyapiDatatypesLocalUserVoteDisplayMode = LemmyapiDatatypesLocalUserVoteDisplayMode( @@ -1126,7 +1162,7 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X4DatatypesLoginToken): LemmyapiDatatypesLoginToken = LemmyapiDatatypesLoginToken( user_id = d.user_id, - published = d.published, + published_at = d.published, ip = d.ip, user_agent = d.user_agent, ) @@ -1143,7 +1179,7 @@ internal class Transformer : MapperGenerator { mod_person_id = d.mod_person_id, other_person_id = d.other_person_id, removed = d.removed, - published = d.when_, + published_at = d.when_, ) override fun toUni(d: X4DatatypesModAddCommunity): LemmyapiDatatypesModAddCommunity = @@ -1153,14 +1189,14 @@ internal class Transformer : MapperGenerator { other_person_id = d.other_person_id, community_id = d.community_id, removed = d.removed, - published = d.when_, + published_at = d.when_, ) override fun toUni(d: X4DatatypesModAddCommunityView): LemmyapiDatatypesModAddCommunityView = LemmyapiDatatypesModAddCommunityView( mod_add_community = this.toUni(d = d.mod_add_community), moderator = d.moderator?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community), + community = this.toUni(d = d.community, counts = X4DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), other_person = this.toUni(d = d.modded_person), ) @@ -1177,8 +1213,8 @@ internal class Transformer : MapperGenerator { other_person_id = d.other_person_id, reason = d.reason, banned = d.banned, - expires = d.expires, - published = d.when_, + expires_at = d.expires, + published_at = d.when_, instance_id = -1, ) @@ -1190,14 +1226,14 @@ internal class Transformer : MapperGenerator { community_id = d.community_id, reason = d.reason, banned = d.banned, - expires = d.expires, - published = d.when_, + expires_at = d.expires, + published_at = d.when_, ) override fun toUni(d: X4DatatypesModBanFromCommunityView): LemmyapiDatatypesModBanFromCommunityView = LemmyapiDatatypesModBanFromCommunityView( mod_ban_from_community = this.toUni(d = d.mod_ban_from_community), moderator = d.moderator?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community), + community = this.toUni(d = d.community, counts = X4DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), other_person = this.toUni(d = d.banned_person), ) @@ -1214,7 +1250,7 @@ internal class Transformer : MapperGenerator { mod_person_id = d.mod_person_id, post_id = d.post_id, featured = d.featured, - published = d.when_, + published_at = d.when_, is_featured_community = d.is_featured_community, ) @@ -1222,8 +1258,8 @@ internal class Transformer : MapperGenerator { LemmyapiDatatypesModFeaturePostView( mod_feature_post = this.toUni(d = d.mod_feature_post), moderator = d.moderator?.let { this.toUni(d = it) }, - post = this.toUni(d = d.post), - community = this.toUni(d = d.community), + post = this.toUni(d = d.post, counts = X4DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), + community = this.toUni(d = d.community, counts = X4DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), ) override fun toUni(d: X4DatatypesModHideCommunity): LemmyapiDatatypesModChangeCommunityVisibility = @@ -1231,7 +1267,7 @@ internal class Transformer : MapperGenerator { id = d.id, community_id = d.community_id, mod_person_id = d.mod_person_id, - published = d.when_, + published_at = d.when_, reason = d.reason, visibility = if (d.hidden) { it.vercruysse.lemmyapi.dto.CommunityVisibility.Unlisted @@ -1244,7 +1280,7 @@ internal class Transformer : MapperGenerator { LemmyapiDatatypesModChangeCommunityVisibilityView( mod_change_community_visibility = this.toUni(d = d.mod_hide_community), moderator = d.admin?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community), + community = this.toUni(d = d.community, counts = X4DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), ) override fun toUni(d: X4DatatypesModLockPost): LemmyapiDatatypesModLockPost = @@ -1253,15 +1289,15 @@ internal class Transformer : MapperGenerator { mod_person_id = d.mod_person_id, post_id = d.post_id, locked = d.locked, - published = d.when_, + published_at = d.when_, ) override fun toUni(d: X4DatatypesModLockPostView): LemmyapiDatatypesModLockPostView = LemmyapiDatatypesModLockPostView( mod_lock_post = this.toUni(d = d.mod_lock_post), moderator = d.moderator?.let { this.toUni(d = it) }, - post = this.toUni(d = d.post), - community = this.toUni(d = d.community), + post = this.toUni(d = d.post, counts = X4DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), + community = this.toUni(d = d.community, counts = X4DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), ) override fun toUni(d: X4DatatypesModlogListParams): LemmyapiDatatypesModlogListParams = @@ -1283,17 +1319,17 @@ internal class Transformer : MapperGenerator { comment_id = d.comment_id, reason = d.reason, removed = d.removed, - published = d.when_, + published_at = d.when_, ) override fun toUni(d: X4DatatypesModRemoveCommentView): LemmyapiDatatypesModRemoveCommentView = LemmyapiDatatypesModRemoveCommentView( mod_remove_comment = this.toUni(d = d.mod_remove_comment), moderator = d.moderator?.let { this.toUni(d = it) }, - comment = this.toUni(d = d.comment), + comment = this.toUni(d = d.comment, X4DatatypesCommentAggregates(-1, -1, -1, -1, "", -1)), other_person = this.toUni(d = d.commenter), - post = this.toUni(d = d.post), - community = this.toUni(d = d.community), + post = this.toUni(d = d.post, counts = X4DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), + community = this.toUni(d = d.community, counts = X4DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), ) override fun toUni(d: X4DatatypesModRemoveCommunity): LemmyapiDatatypesModRemoveCommunity = @@ -1303,14 +1339,14 @@ internal class Transformer : MapperGenerator { community_id = d.community_id, reason = d.reason, removed = d.removed, - published = d.when_, + published_at = d.when_, ) override fun toUni(d: X4DatatypesModRemoveCommunityView): LemmyapiDatatypesModRemoveCommunityView = LemmyapiDatatypesModRemoveCommunityView( mod_remove_community = this.toUni(d = d.mod_remove_community), moderator = d.moderator?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community), + community = this.toUni(d = d.community, counts = X4DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), ) override fun toUni(d: X4DatatypesModRemovePost): LemmyapiDatatypesModRemovePost = @@ -1320,15 +1356,15 @@ internal class Transformer : MapperGenerator { post_id = d.post_id, reason = d.reason, removed = d.removed, - published = d.when_, + published_at = d.when_, ) override fun toUni(d: X4DatatypesModRemovePostView): LemmyapiDatatypesModRemovePostView = LemmyapiDatatypesModRemovePostView( mod_remove_post = this.toUni(d = d.mod_remove_post), moderator = d.moderator?.let { this.toUni(d = it) }, - post = this.toUni(d = d.post), - community = this.toUni(d = d.community), + post = this.toUni(d = d.post, counts = X4DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), + community = this.toUni(d = d.community, counts = X4DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), ) override fun toUni(d: X4DatatypesModTransferCommunity): LemmyapiDatatypesModTransferCommunity = @@ -1337,13 +1373,13 @@ internal class Transformer : MapperGenerator { mod_person_id = d.mod_person_id, other_person_id = d.other_person_id, community_id = d.community_id, - published = d.when_, + published_at = d.when_, ) override fun toUni(d: X4DatatypesModTransferCommunityView): LemmyapiDatatypesModTransferCommunityView = LemmyapiDatatypesModTransferCommunityView( mod_transfer_community = this.toUni(d = d.mod_transfer_community), moderator = d.moderator?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community), + community = this.toUni(d = d.community, counts = X4DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), other_person = this.toUni(d = d.modded_person), ) @@ -1352,38 +1388,33 @@ internal class Transformer : MapperGenerator { local_user_view = this.toUni(d = d.local_user_view), follows = d.follows.map { this.toUni(d = it) }, moderates = d.moderates.map { this.toUni(d = it) }, - community_blocks = d.community_blocks.map { this.toUni(d = it.community) }, + community_blocks = d.community_blocks.map { this.toUni(d = it.community, counts = X4DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)) }, instance_blocks = d.instance_blocks.map { this.toUni(d = it.instance) }, person_blocks = d.person_blocks.map { this.toUni(d = it.target) }, discussion_languages = d.discussion_languages, ) - override fun toUni(d: X4DatatypesPerson): LemmyapiDatatypesPerson = LemmyapiDatatypesPerson( + fun toUni(d: X4DatatypesPerson) = this.toUni(d, X4DatatypesPersonAggregates(-1, -1, -1)) + + override fun toUni(d: X4DatatypesPerson, counts: X4DatatypesPersonAggregates): LemmyapiDatatypesPerson = LemmyapiDatatypesPerson( id = d.id, name = d.name, display_name = d.display_name, avatar = d.avatar, - banned = d.banned, - published = d.published, - updated = d.updated, - actor_id = d.actor_id, + published_at = d.published, + updated_at = d.updated, + ap_id = d.actor_id, bio = d.bio, local = d.local, banner = d.banner, deleted = d.deleted, matrix_user_id = d.matrix_user_id, bot_account = d.bot_account, - ban_expires = d.ban_expires, instance_id = d.instance_id, + post_count = counts.post_count, + comment_count = counts.comment_count, ) - override fun toUni(d: X4DatatypesPersonAggregates): LemmyapiDatatypesPersonAggregates = - LemmyapiDatatypesPersonAggregates( - person_id = d.person_id, - post_count = d.post_count, - comment_count = d.comment_count, - ) - override fun toUni(d: X4DatatypesPersonMention): LemmyapiDatatypesPersonMention = LemmyapiDatatypesPersonMention( id = d.id, @@ -1401,12 +1432,11 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X4DatatypesPersonMentionView): LemmyapiDatatypesPersonMentionView = LemmyapiDatatypesPersonMentionView( person_mention = this.toUni(d = d.person_mention), - comment = this.toUni(d = d.comment), + comment = this.toUni(d = d.comment, d.counts), creator = this.toUni(d = d.creator), - post = this.toUni(d = d.post), - community = this.toUni(d = d.community), + post = this.toUni(d = d.post, counts = X4DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), + community = this.toUni(d = d.community, counts = X4DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), recipient = this.toUni(d = d.recipient), - counts = this.toUni(d = d.counts), creator_banned_from_community = d.creator_banned_from_community, banned_from_community = d.banned_from_community, creator_is_moderator = d.creator_is_moderator, @@ -1419,12 +1449,13 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X4DatatypesPersonView): LemmyapiDatatypesPersonView = LemmyapiDatatypesPersonView( - person = this.toUni(d = d.person), - counts = this.toUni(d = d.counts), + person = this.toUni(d = d.person, d.counts), is_admin = d.is_admin, + person_actions = null, + creator_banned = d.person.banned, ) - override fun toUni(d: X4DatatypesPost): LemmyapiDatatypesPost = LemmyapiDatatypesPost( + override fun toUni(d: X4DatatypesPost, counts: X4DatatypesPostAggregates): LemmyapiDatatypesPost = LemmyapiDatatypesPost( id = d.id, name = d.name, url = d.url, @@ -1433,8 +1464,8 @@ internal class Transformer : MapperGenerator { community_id = d.community_id, removed = d.removed, locked = d.locked, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, deleted = d.deleted, nsfw = d.nsfw, embed_title = d.embed_title, @@ -1448,19 +1479,16 @@ internal class Transformer : MapperGenerator { featured_local = d.featured_local, url_content_type = d.url_content_type, alt_text = d.alt_text, + comments = counts.comments, + score = counts.score, + upvotes = counts.upvotes, + downvotes = counts.downvotes, + newest_comment_time_at = counts.newest_comment_time, + report_count = -1, + unresolved_report_count = -1, + federation_pending = false, ) - override fun toUni(d: X4DatatypesPostAggregates): LemmyapiDatatypesPostAggregates = - LemmyapiDatatypesPostAggregates( - post_id = d.post_id, - comments = d.comments, - score = d.score, - upvotes = d.upvotes, - downvotes = d.downvotes, - published = d.published, - newest_comment_time = d.newest_comment_time, - ) - override fun toUni(d: X4DatatypesPostReport): LemmyapiDatatypesPostReport = LemmyapiDatatypesPostReport( id = d.id, @@ -1472,8 +1500,8 @@ internal class Transformer : MapperGenerator { reason = d.reason, resolved = d.resolved, resolver_id = d.resolver_id, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, violates_instance_rules = false, ) @@ -1485,22 +1513,18 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X4DatatypesPostReportView): LemmyapiDatatypesPostReportView = LemmyapiDatatypesPostReportView( post_report = this.toUni(d = d.post_report), - post = this.toUni(d = d.post), - community = this.toUni(d = d.community), + post = this.toUni(d = d.post, d.counts), + community = this.toUni(d = d.community, counts = X4DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), creator = this.toUni(d = d.creator), post_creator = this.toUni(d = d.post_creator), + post_actions = PostActions(toAt(d.read), null, d.counts.comments - d.unread_comments, toAt(d.saved), null, d.my_vote, toAt(d.hidden)), + person_actions = PersonActions(toAt(d.creator_blocked)), + community_actions = CommunityActions(null, CommunityFollowerState.from(d.subscribed)), + resolver = d.resolver?.let { this.toUni(d = it) }, creator_banned_from_community = d.creator_banned_from_community, + creator_banned = d.creator.banned, creator_is_moderator = d.creator_is_moderator, creator_is_admin = d.creator_is_admin, - subscribed = d.subscribed, - saved = d.saved, - read = d.read, - hidden = d.hidden, - creator_blocked = d.creator_blocked, - my_vote = d.my_vote, - unread_comments = d.unread_comments, - counts = this.toUni(d = d.counts), - resolver = d.resolver?.let { this.toUni(d = it) }, ) override fun toUni(d: X4DatatypesPostResponse): LemmyapiDatatypesPostResponse = @@ -1509,21 +1533,18 @@ internal class Transformer : MapperGenerator { ) override fun toUni(d: X4DatatypesPostView): LemmyapiDatatypesPostView = LemmyapiDatatypesPostView( - post = this.toUni(d = d.post), + post = this.toUni(d = d.post, d.counts), creator = this.toUni(d = d.creator), - community = this.toUni(d = d.community), + community = this.toUni(d = d.community, counts = X4DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), + post_actions = PostActions(toAt(d.read), null, d.counts.comments - d.unread_comments, toAt(d.saved), null, d.my_vote, toAt(d.hidden)), + person_actions = PersonActions(toAt(d.creator_blocked)), + community_actions = CommunityActions(null, CommunityFollowerState.from(d.subscribed)), + tags = emptyList(), + can_mod = false, creator_banned_from_community = d.creator_banned_from_community, - banned_from_community = d.banned_from_community, - creator_is_moderator = d.creator_is_moderator, + creator_banned = d.creator.banned, creator_is_admin = d.creator_is_admin, - counts = this.toUni(d = d.counts), - subscribed = d.subscribed, - saved = d.saved, - read = d.read, - hidden = d.hidden, - creator_blocked = d.creator_blocked, - my_vote = d.my_vote, - unread_comments = d.unread_comments, + creator_is_moderator = d.creator_is_moderator, ) override fun toUni(d: X4DatatypesPrivateMessage): LemmyapiDatatypesPrivateMessage = @@ -1534,8 +1555,8 @@ internal class Transformer : MapperGenerator { content = d.content, deleted = d.deleted, read = d.read, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, ap_id = d.ap_id, local = d.local, removed = false, @@ -1550,8 +1571,8 @@ internal class Transformer : MapperGenerator { reason = d.reason, resolved = d.resolved, resolver_id = d.resolver_id, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, ) override fun toUni(d: X4DatatypesPrivateMessageReportResponse): LemmyapiDatatypesPrivateMessageReportResponse = LemmyapiDatatypesPrivateMessageReportResponse( @@ -1585,10 +1606,10 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X4DatatypesReadableFederationState): LemmyapiDatatypesReadableFederationState = LemmyapiDatatypesReadableFederationState( instance_id = d.instance_id, last_successful_id = d.last_successful_id, - last_successful_published_time = d.last_successful_published_time, + last_successful_published_time_at = d.last_successful_published_time, fail_count = d.fail_count, - last_retry = d.last_retry, - next_retry = d.next_retry, + last_retry_at = d.last_retry, + next_retry_at = d.next_retry, ) override fun toUni(d: X4DatatypesRegistrationApplication): LemmyapiDatatypesRegistrationApplication = LemmyapiDatatypesRegistrationApplication( @@ -1597,7 +1618,7 @@ internal class Transformer : MapperGenerator { answer = d.answer, admin_id = d.admin_id, deny_reason = d.deny_reason, - published = d.published, + published_at = d.published, ) override fun toUni(d: X4DatatypesRegistrationApplicationResponse): LemmyapiDatatypesRegistrationApplicationResponse = @@ -1633,12 +1654,12 @@ internal class Transformer : MapperGenerator { id = d.id, name = d.name, sidebar = d.sidebar, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, icon = d.icon, banner = d.banner, description = d.description, - actor_id = d.actor_id, + ap_id = d.actor_id, last_refreshed_at = d.last_refreshed_at, inbox_url = d.inbox_url, instance_id = d.instance_id, @@ -1674,8 +1695,8 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X4DatatypesTagline): LemmyapiDatatypesTagline = LemmyapiDatatypesTagline( id = d.id, content = d.content, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, ) override fun toUni(d: X4DatatypesUpdateTotpResponse): LemmyapiDatatypesUpdateTotpResponse = @@ -1685,6 +1706,7 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X4DatatypesVoteView): LemmyapiDatatypesVoteView = LemmyapiDatatypesVoteView( creator = this.toUni(d = d.creator), + creator_banned = d.creator.banned, creator_banned_from_community = d.creator_banned_from_community, score = d.score, ) @@ -1714,7 +1736,7 @@ internal class Transformer : MapperGenerator { ban = d.ban, remove_data = d.remove_or_restore_data, reason = d.reason, - expires = d.expires, + expires = d.expires_at, ) override fun fromUni(d: LemmyapiDatatypesBanPerson): X4DatatypesBanPerson = X4DatatypesBanPerson( @@ -1722,7 +1744,7 @@ internal class Transformer : MapperGenerator { ban = d.ban, remove_data = d.remove_or_restore_data, reason = d.reason, - expires = d.expires, + expires = d.expires_at, ) override fun fromUni(d: LemmyapiDatatypesBlockCommunity): X4DatatypesBlockCommunity = @@ -1850,18 +1872,18 @@ internal class Transformer : MapperGenerator { discussion_languages = d.discussion_languages, slur_filter_regex = d.slur_filter_regex, actor_name_max_length = d.actor_name_max_length, - rate_limit_message = d.rate_limit_message, - rate_limit_message_per_second = d.rate_limit_message_per_second, - rate_limit_post = d.rate_limit_post, - rate_limit_post_per_second = d.rate_limit_post_per_second, - rate_limit_register = d.rate_limit_register, - rate_limit_register_per_second = d.rate_limit_register_per_second, - rate_limit_image = d.rate_limit_image, - rate_limit_image_per_second = d.rate_limit_image_per_second, - rate_limit_comment = d.rate_limit_comment, - rate_limit_comment_per_second = d.rate_limit_comment_per_second, - rate_limit_search = d.rate_limit_search, - rate_limit_search_per_second = d.rate_limit_search_per_second, + rate_limit_message = d.rate_limit_message_max_requests, + rate_limit_message_per_second = d.rate_limit_message_interval_seconds, + rate_limit_post = d.rate_limit_post_max_requests, + rate_limit_post_per_second = d.rate_limit_post_interval_seconds, + rate_limit_register = d.rate_limit_register_max_requests, + rate_limit_register_per_second = d.rate_limit_register_interval_seconds, + rate_limit_image = d.rate_limit_image_max_requests, + rate_limit_image_per_second = d.rate_limit_image_interval_seconds, + rate_limit_comment = d.rate_limit_comment_max_requests, + rate_limit_comment_per_second = d.rate_limit_comment_interval_seconds, + rate_limit_search = d.rate_limit_search_max_requests, + rate_limit_search_per_second = d.rate_limit_search_interval_seconds, federation_enabled = d.federation_enabled, federation_debug = d.federation_debug, captcha_enabled = d.captcha_enabled, @@ -1982,18 +2004,18 @@ internal class Transformer : MapperGenerator { discussion_languages = d.discussion_languages, slur_filter_regex = d.slur_filter_regex, actor_name_max_length = d.actor_name_max_length, - rate_limit_message = d.rate_limit_message, - rate_limit_message_per_second = d.rate_limit_message_per_second, - rate_limit_post = d.rate_limit_post, - rate_limit_post_per_second = d.rate_limit_post_per_second, - rate_limit_register = d.rate_limit_register, - rate_limit_register_per_second = d.rate_limit_register_per_second, - rate_limit_image = d.rate_limit_image, - rate_limit_image_per_second = d.rate_limit_image_per_second, - rate_limit_comment = d.rate_limit_comment, - rate_limit_comment_per_second = d.rate_limit_comment_per_second, - rate_limit_search = d.rate_limit_search, - rate_limit_search_per_second = d.rate_limit_search_per_second, + rate_limit_message = d.rate_limit_message_max_requests, + rate_limit_message_per_second = d.rate_limit_message_interval_seconds, + rate_limit_post = d.rate_limit_post_max_requests, + rate_limit_post_per_second = d.rate_limit_post_interval_seconds, + rate_limit_register = d.rate_limit_register_max_requests, + rate_limit_register_per_second = d.rate_limit_register_interval_seconds, + rate_limit_image = d.rate_limit_image_max_requests, + rate_limit_image_per_second = d.rate_limit_image_interval_seconds, + rate_limit_comment = d.rate_limit_comment_max_requests, + rate_limit_comment_per_second = d.rate_limit_comment_interval_seconds, + rate_limit_search = d.rate_limit_search_max_requests, + rate_limit_search_per_second = d.rate_limit_search_interval_seconds, federation_enabled = d.federation_enabled, federation_debug = d.federation_debug, captcha_enabled = d.captcha_enabled, @@ -2090,9 +2112,6 @@ internal class Transformer : MapperGenerator { limit = d.limit, community_id = d.community_id, community_name = d.community_name, - saved_only = d.saved_only, - liked_only = d.liked_only, - disliked_only = d.disliked_only, show_hidden = d.show_hidden, page_cursor = d.page_cursor, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt index 01dbca82..5b15ee24 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt @@ -20,8 +20,7 @@ internal interface MapperGenerator { fun toUni(d: BlockCommunityResponse): it.vercruysse.lemmyapi.datatypes.BlockCommunityResponse fun toUni(d: BlockPersonResponse): it.vercruysse.lemmyapi.datatypes.BlockPersonResponse fun toUni(d: CaptchaResponse): it.vercruysse.lemmyapi.datatypes.CaptchaResponse - fun toUni(d: Comment): it.vercruysse.lemmyapi.datatypes.Comment - fun toUni(d: CommentAggregates): it.vercruysse.lemmyapi.datatypes.CommentAggregates + fun toUni(d: Comment, counts: CommentAggregates): it.vercruysse.lemmyapi.datatypes.Comment fun toUni(d: CommentReply): it.vercruysse.lemmyapi.datatypes.CommentReply fun toUni(d: CommentReplyResponse): it.vercruysse.lemmyapi.datatypes.CommentReplyResponse fun toUni(d: CommentReplyView): it.vercruysse.lemmyapi.datatypes.CommentReplyView @@ -30,8 +29,7 @@ internal interface MapperGenerator { fun toUni(d: CommentReportView): it.vercruysse.lemmyapi.datatypes.CommentReportView fun toUni(d: CommentResponse): it.vercruysse.lemmyapi.datatypes.CommentResponse fun toUni(d: CommentView): it.vercruysse.lemmyapi.datatypes.CommentView - fun toUni(d: Community): it.vercruysse.lemmyapi.datatypes.Community - fun toUni(d: CommunityAggregates): it.vercruysse.lemmyapi.datatypes.CommunityAggregates + fun toUni(d: Community, counts: CommunityAggregates): it.vercruysse.lemmyapi.datatypes.Community fun toUni(d: CommunityFollowerView): it.vercruysse.lemmyapi.datatypes.CommunityFollowerView fun toUni(d: CommunityModeratorView): it.vercruysse.lemmyapi.datatypes.CommunityModeratorView fun toUni(d: CommunityResponse): it.vercruysse.lemmyapi.datatypes.CommunityResponse @@ -106,14 +104,12 @@ internal interface MapperGenerator { fun toUni(d: ModTransferCommunity): it.vercruysse.lemmyapi.datatypes.ModTransferCommunity fun toUni(d: ModTransferCommunityView): it.vercruysse.lemmyapi.datatypes.ModTransferCommunityView fun toUni(d: MyUserInfo): it.vercruysse.lemmyapi.datatypes.MyUserInfo - fun toUni(d: Person): it.vercruysse.lemmyapi.datatypes.Person - fun toUni(d: PersonAggregates): it.vercruysse.lemmyapi.datatypes.PersonAggregates + fun toUni(d: Person, counts: PersonAggregates): it.vercruysse.lemmyapi.datatypes.Person fun toUni(d: PersonMention): it.vercruysse.lemmyapi.datatypes.PersonMention fun toUni(d: PersonMentionResponse): it.vercruysse.lemmyapi.datatypes.PersonMentionResponse fun toUni(d: PersonMentionView): it.vercruysse.lemmyapi.datatypes.PersonMentionView fun toUni(d: PersonView): it.vercruysse.lemmyapi.datatypes.PersonView - fun toUni(d: Post): it.vercruysse.lemmyapi.datatypes.Post - fun toUni(d: PostAggregates): it.vercruysse.lemmyapi.datatypes.PostAggregates + fun toUni(d: Post, counts: PostAggregates): it.vercruysse.lemmyapi.datatypes.Post fun toUni(d: PostReport): it.vercruysse.lemmyapi.datatypes.PostReport fun toUni(d: PostReportResponse): it.vercruysse.lemmyapi.datatypes.PostReportResponse fun toUni(d: PostReportView): it.vercruysse.lemmyapi.datatypes.PostReportView diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt index 54f205e4..0a5d8a16 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt @@ -1,5 +1,13 @@ package it.vercruysse.lemmyapi.v0.x19.x6 +import it.vercruysse.lemmyapi.datatypes.CommentActions +import it.vercruysse.lemmyapi.datatypes.CommunityActions +import it.vercruysse.lemmyapi.datatypes.PersonActions +import it.vercruysse.lemmyapi.datatypes.PostActions +import it.vercruysse.lemmyapi.dto.CommunityFollowerState +import it.vercruysse.lemmyapi.dto.SortType +import it.vercruysse.lemmyapi.dto.VoteShow +import it.vercruysse.lemmyapi.utils.toAt import it.vercruysse.lemmyapi.datatypes.AddAdmin as LemmyapiDatatypesAddAdmin import it.vercruysse.lemmyapi.datatypes.AddAdminResponse as LemmyapiDatatypesAddAdminResponse import it.vercruysse.lemmyapi.datatypes.AddModToCommunity as LemmyapiDatatypesAddModToCommunity @@ -26,7 +34,6 @@ import it.vercruysse.lemmyapi.datatypes.BlockPersonResponse as LemmyapiDatatypes import it.vercruysse.lemmyapi.datatypes.CaptchaResponse as LemmyapiDatatypesCaptchaResponse import it.vercruysse.lemmyapi.datatypes.ChangePassword as LemmyapiDatatypesChangePassword import it.vercruysse.lemmyapi.datatypes.Comment as LemmyapiDatatypesComment -import it.vercruysse.lemmyapi.datatypes.CommentAggregates as LemmyapiDatatypesCommentAggregates import it.vercruysse.lemmyapi.datatypes.CommentReply as LemmyapiDatatypesCommentReply import it.vercruysse.lemmyapi.datatypes.CommentReplyResponse as LemmyapiDatatypesCommentReplyResponse import it.vercruysse.lemmyapi.datatypes.CommentReplyView as LemmyapiDatatypesCommentReplyView @@ -36,7 +43,6 @@ import it.vercruysse.lemmyapi.datatypes.CommentReportView as LemmyapiDatatypesCo import it.vercruysse.lemmyapi.datatypes.CommentResponse as LemmyapiDatatypesCommentResponse import it.vercruysse.lemmyapi.datatypes.CommentView as LemmyapiDatatypesCommentView import it.vercruysse.lemmyapi.datatypes.Community as LemmyapiDatatypesCommunity -import it.vercruysse.lemmyapi.datatypes.CommunityAggregates as LemmyapiDatatypesCommunityAggregates import it.vercruysse.lemmyapi.datatypes.CommunityFollowerView as LemmyapiDatatypesCommunityFollowerView import it.vercruysse.lemmyapi.datatypes.CommunityModeratorView as LemmyapiDatatypesCommunityModeratorView import it.vercruysse.lemmyapi.datatypes.CommunityResponse as LemmyapiDatatypesCommunityResponse @@ -167,13 +173,11 @@ import it.vercruysse.lemmyapi.datatypes.MyUserInfo as LemmyapiDatatypesMyUserInf import it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset as LemmyapiDatatypesPasswordChangeAfterReset import it.vercruysse.lemmyapi.datatypes.PasswordReset as LemmyapiDatatypesPasswordReset import it.vercruysse.lemmyapi.datatypes.Person as LemmyapiDatatypesPerson -import it.vercruysse.lemmyapi.datatypes.PersonAggregates as LemmyapiDatatypesPersonAggregates import it.vercruysse.lemmyapi.datatypes.PersonMention as LemmyapiDatatypesPersonMention import it.vercruysse.lemmyapi.datatypes.PersonMentionResponse as LemmyapiDatatypesPersonMentionResponse import it.vercruysse.lemmyapi.datatypes.PersonMentionView as LemmyapiDatatypesPersonMentionView import it.vercruysse.lemmyapi.datatypes.PersonView as LemmyapiDatatypesPersonView import it.vercruysse.lemmyapi.datatypes.Post as LemmyapiDatatypesPost -import it.vercruysse.lemmyapi.datatypes.PostAggregates as LemmyapiDatatypesPostAggregates import it.vercruysse.lemmyapi.datatypes.PostReport as LemmyapiDatatypesPostReport import it.vercruysse.lemmyapi.datatypes.PostReportResponse as LemmyapiDatatypesPostReportResponse import it.vercruysse.lemmyapi.datatypes.PostReportView as LemmyapiDatatypesPostReportView @@ -454,14 +458,14 @@ internal class Transformer : MapperGenerator { admin_person_id = d.admin_person_id, post_id = d.post_id, reason = d.reason, - published = d.when_, + published_at = d.when_, ) override fun toUni(d: X6DatatypesAdminPurgeCommentView): LemmyapiDatatypesAdminPurgeCommentView = LemmyapiDatatypesAdminPurgeCommentView( admin_purge_comment = this.toUni(d = d.admin_purge_comment), admin = d.admin?.let { this.toUni(d = it) }, - post = this.toUni(d = d.post), + post = this.toUni(d = d.post, counts = X6DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), ) override fun toUni(d: X6DatatypesAdminPurgeCommunity): LemmyapiDatatypesAdminPurgeCommunity = @@ -469,7 +473,7 @@ internal class Transformer : MapperGenerator { id = d.id, admin_person_id = d.admin_person_id, reason = d.reason, - published = d.when_, + published_at = d.when_, ) override fun toUni(d: X6DatatypesAdminPurgeCommunityView): LemmyapiDatatypesAdminPurgeCommunityView = LemmyapiDatatypesAdminPurgeCommunityView( @@ -482,7 +486,7 @@ internal class Transformer : MapperGenerator { id = d.id, admin_person_id = d.admin_person_id, reason = d.reason, - published = d.when_, + published_at = d.when_, ) override fun toUni(d: X6DatatypesAdminPurgePersonView): LemmyapiDatatypesAdminPurgePersonView = @@ -497,14 +501,14 @@ internal class Transformer : MapperGenerator { admin_person_id = d.admin_person_id, community_id = d.community_id, reason = d.reason, - published = d.when_, + published_at = d.when_, ) override fun toUni(d: X6DatatypesAdminPurgePostView): LemmyapiDatatypesAdminPurgePostView = LemmyapiDatatypesAdminPurgePostView( admin_purge_post = this.toUni(d = d.admin_purge_post), admin = d.admin?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community), + community = this.toUni(d = d.community, counts = X6DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), ) override fun toUni(d: X6DatatypesBanFromCommunityResponse): LemmyapiDatatypesBanFromCommunityResponse = LemmyapiDatatypesBanFromCommunityResponse( @@ -541,32 +545,29 @@ internal class Transformer : MapperGenerator { uuid = d.uuid, ) - override fun toUni(d: X6DatatypesComment): LemmyapiDatatypesComment = LemmyapiDatatypesComment( + override fun toUni(d: X6DatatypesComment, counts: X6DatatypesCommentAggregates): LemmyapiDatatypesComment = LemmyapiDatatypesComment( id = d.id, creator_id = d.creator_id, post_id = d.post_id, content = d.content, removed = d.removed, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, deleted = d.deleted, ap_id = d.ap_id, local = d.local, path = d.path, distinguished = d.distinguished, language_id = d.language_id, + score = counts.score, + upvotes = counts.upvotes, + downvotes = counts.downvotes, + child_count = counts.child_count, + report_count = -1, + unresolved_report_count = -1, + federation_pending = false, ) - override fun toUni(d: X6DatatypesCommentAggregates): LemmyapiDatatypesCommentAggregates = - LemmyapiDatatypesCommentAggregates( - comment_id = d.comment_id, - score = d.score, - upvotes = d.upvotes, - downvotes = d.downvotes, - published = d.published, - child_count = d.child_count, - ) - override fun toUni(d: X6DatatypesCommentReply): LemmyapiDatatypesCommentReply = LemmyapiDatatypesCommentReply( id = d.id, @@ -584,12 +585,11 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X6DatatypesCommentReplyView): LemmyapiDatatypesCommentReplyView = LemmyapiDatatypesCommentReplyView( comment_reply = this.toUni(d = d.comment_reply), - comment = this.toUni(d = d.comment), + comment = this.toUni(d = d.comment, d.counts), creator = this.toUni(d = d.creator), - post = this.toUni(d = d.post), - community = this.toUni(d = d.community), + post = this.toUni(d = d.post, counts = X6DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), + community = this.toUni(d = d.community, counts = X6DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), recipient = this.toUni(d = d.recipient), - counts = this.toUni(d = d.counts), creator_banned_from_community = d.creator_banned_from_community, banned_from_community = d.banned_from_community, creator_is_moderator = d.creator_is_moderator, @@ -609,8 +609,8 @@ internal class Transformer : MapperGenerator { reason = d.reason, resolved = d.resolved, resolver_id = d.resolver_id, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, ) override fun toUni(d: X6DatatypesCommentReportResponse): LemmyapiDatatypesCommentReportResponse = @@ -621,20 +621,19 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X6DatatypesCommentReportView): LemmyapiDatatypesCommentReportView = LemmyapiDatatypesCommentReportView( comment_report = this.toUni(d = d.comment_report), - comment = this.toUni(d = d.comment), - post = this.toUni(d = d.post), - community = this.toUni(d = d.community), + comment = this.toUni(d = d.comment, d.counts), + post = this.toUni(d = d.post, counts = X6DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), + community = this.toUni(d = d.community, counts = X6DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), creator = this.toUni(d = d.creator), comment_creator = this.toUni(d = d.comment_creator), - counts = this.toUni(d = d.counts), creator_banned_from_community = d.creator_banned_from_community, creator_is_moderator = d.creator_is_moderator, creator_is_admin = d.creator_is_admin, - creator_blocked = d.creator_blocked, - subscribed = d.subscribed, - saved = d.saved, - my_vote = d.my_vote, resolver = d.resolver?.let { this.toUni(d = it) }, + creator_banned = d.creator.banned, + person_actions = PersonActions(if (d.creator_blocked) "" else null), + comment_actions = CommentActions(d.my_vote, null, if (d.saved) "" else null), + community_actions = CommunityActions(null, CommunityFollowerState.from(d.subscribed)), ) override fun toUni(d: X6DatatypesCommentResponse): LemmyapiDatatypesCommentResponse = @@ -645,33 +644,33 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X6DatatypesCommentView): LemmyapiDatatypesCommentView = LemmyapiDatatypesCommentView( - comment = this.toUni(d = d.comment), + comment = this.toUni(d = d.comment, d.counts), creator = this.toUni(d = d.creator), - post = this.toUni(d = d.post), - community = this.toUni(d = d.community), - counts = this.toUni(d = d.counts), + post = this.toUni(d = d.post, counts = X6DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), + community = this.toUni(d = d.community, counts = X6DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), creator_banned_from_community = d.creator_banned_from_community, - banned_from_community = d.banned_from_community, creator_is_moderator = d.creator_is_moderator, creator_is_admin = d.creator_is_admin, - subscribed = d.subscribed, - saved = d.saved, - creator_blocked = d.creator_blocked, - my_vote = d.my_vote, + post_tags = emptyList(), + creator_banned = d.creator.banned, + can_mod = false, + person_actions = PersonActions(if (d.creator_blocked) "" else null), + comment_actions = CommentActions(d.my_vote, null, if (d.saved) "" else null), + community_actions = CommunityActions(null, CommunityFollowerState.from(d.subscribed)), ) - override fun toUni(d: X6DatatypesCommunity): LemmyapiDatatypesCommunity = + override fun toUni(d: X6DatatypesCommunity, counts: X6DatatypesCommunityAggregates): LemmyapiDatatypesCommunity = LemmyapiDatatypesCommunity( id = d.id, name = d.name, title = d.title, description = d.description, removed = d.removed, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, deleted = d.deleted, nsfw = d.nsfw, - actor_id = d.actor_id, + ap_id = d.actor_id, local = d.local, icon = d.icon, banner = d.banner, @@ -679,30 +678,27 @@ internal class Transformer : MapperGenerator { posting_restricted_to_mods = d.posting_restricted_to_mods, instance_id = d.instance_id, visibility = d.visibility, - ) - - override fun toUni(d: X6DatatypesCommunityAggregates): LemmyapiDatatypesCommunityAggregates = - LemmyapiDatatypesCommunityAggregates( - community_id = d.community_id, - subscribers = d.subscribers, - posts = d.posts, - comments = d.comments, - published = d.published, - users_active_day = d.users_active_day, - users_active_week = d.users_active_week, - users_active_month = d.users_active_month, - users_active_half_year = d.users_active_half_year, - subscribers_local = d.subscribers_local, + subscribers = counts.subscribers, + posts = counts.posts, + comments = counts.comments, + users_active_day = counts.users_active_day, + users_active_week = counts.users_active_week, + users_active_month = counts.users_active_month, + users_active_half_year = counts.users_active_half_year, + subscribers_local = -1, + report_count = -1, + unresolved_report_count = -1, + local_removed = false, ) override fun toUni(d: X6DatatypesCommunityFollowerView): LemmyapiDatatypesCommunityFollowerView = LemmyapiDatatypesCommunityFollowerView( - community = this.toUni(d = d.community), + community = this.toUni(d = d.community, counts = X6DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), follower = this.toUni(d = d.follower), ) override fun toUni(d: X6DatatypesCommunityModeratorView): LemmyapiDatatypesCommunityModeratorView = LemmyapiDatatypesCommunityModeratorView( - community = this.toUni(d = d.community), + community = this.toUni(d = d.community, counts = X6DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), moderator = this.toUni(d = d.moderator), ) @@ -714,11 +710,10 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X6DatatypesCommunityView): LemmyapiDatatypesCommunityView = LemmyapiDatatypesCommunityView( - community = this.toUni(d = d.community), - subscribed = d.subscribed, - blocked = d.blocked, - counts = this.toUni(d = d.counts), - banned_from_community = d.banned_from_community, + community = this.toUni(d = d.community, d.counts), + can_mod = false, + post_tags = emptyList(), + community_actions = CommunityActions(null, CommunityFollowerState.from(d.subscribed), if (d.blocked) "" else null, null, if (d.banned_from_community) "" else null, if (d.banned_from_community) "" else null), ) override fun toUni(d: X6DatatypesCustomEmoji): LemmyapiDatatypesCustomEmoji = @@ -728,8 +723,8 @@ internal class Transformer : MapperGenerator { image_url = d.image_url, alt_text = d.alt_text, category = d.category, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, ) override fun toUni(d: X6DatatypesCustomEmojiKeyword): LemmyapiDatatypesCustomEmojiKeyword = @@ -787,84 +782,114 @@ internal class Transformer : MapperGenerator { val modlogList = mutableListOf() // Add ModRemovePost entries - modlogList.addAll(d.removed_posts.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemovePost(mod_remove_post = this.toUni(d = view)) - }) + modlogList.addAll( + d.removed_posts.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemovePost(mod_remove_post = this.toUni(d = view)) + }, + ) // Add ModLockPost entries - modlogList.addAll(d.locked_posts.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModLockPost(mod_lock_post = this.toUni(d = view)) - }) + modlogList.addAll( + d.locked_posts.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModLockPost(mod_lock_post = this.toUni(d = view)) + }, + ) // Add ModFeaturePost entries - modlogList.addAll(d.featured_posts.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModFeaturePost(mod_feature_post = this.toUni(d = view)) - }) + modlogList.addAll( + d.featured_posts.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModFeaturePost(mod_feature_post = this.toUni(d = view)) + }, + ) // Add ModRemoveComment entries - modlogList.addAll(d.removed_comments.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemoveComment(mod_remove_comment = this.toUni(d = view)) - }) + modlogList.addAll( + d.removed_comments.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemoveComment(mod_remove_comment = this.toUni(d = view)) + }, + ) // Add ModRemoveCommunity entries - modlogList.addAll(d.removed_communities.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemoveCommunity(mod_remove_community = this.toUni(d = view)) - }) + modlogList.addAll( + d.removed_communities.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemoveCommunity(mod_remove_community = this.toUni(d = view)) + }, + ) // Add ModBanFromCommunity entries - modlogList.addAll(d.banned_from_community.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModBanFromCommunity(mod_ban_from_community = this.toUni(d = view)) - }) + modlogList.addAll( + d.banned_from_community.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModBanFromCommunity(mod_ban_from_community = this.toUni(d = view)) + }, + ) // Add ModBan entries - modlogList.addAll(d.banned.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModBan(mod_ban = this.toUni(d = view)) - }) + modlogList.addAll( + d.banned.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModBan(mod_ban = this.toUni(d = view)) + }, + ) // Add ModAddCommunity entries - modlogList.addAll(d.added_to_community.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModAddCommunity(mod_add_community = this.toUni(d = view)) - }) + modlogList.addAll( + d.added_to_community.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModAddCommunity(mod_add_community = this.toUni(d = view)) + }, + ) // Add ModTransferCommunity entries - modlogList.addAll(d.transferred_to_community.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModTransferCommunity(mod_transfer_community = this.toUni(d = view)) - }) + modlogList.addAll( + d.transferred_to_community.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModTransferCommunity(mod_transfer_community = this.toUni(d = view)) + }, + ) // Add ModAdd entries - modlogList.addAll(d.added.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModAdd(mod_add = this.toUni(d = view)) - }) + modlogList.addAll( + d.added.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModAdd(mod_add = this.toUni(d = view)) + }, + ) // Add AdminPurgePerson entries - modlogList.addAll(d.admin_purged_persons.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgePerson(admin_purge_person = this.toUni(d = view)) - }) + modlogList.addAll( + d.admin_purged_persons.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgePerson(admin_purge_person = this.toUni(d = view)) + }, + ) // Add AdminPurgeCommunity entries - modlogList.addAll(d.admin_purged_communities.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgeCommunity(admin_purge_community = this.toUni(d = view)) - }) + modlogList.addAll( + d.admin_purged_communities.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgeCommunity(admin_purge_community = this.toUni(d = view)) + }, + ) // Add AdminPurgePost entries - modlogList.addAll(d.admin_purged_posts.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgePost(admin_purge_post = this.toUni(d = view)) - }) + modlogList.addAll( + d.admin_purged_posts.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgePost(admin_purge_post = this.toUni(d = view)) + }, + ) // Add AdminPurgeComment entries - modlogList.addAll(d.admin_purged_comments.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgeComment(admin_purge_comment = this.toUni(d = view)) - }) + modlogList.addAll( + d.admin_purged_comments.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgeComment(admin_purge_comment = this.toUni(d = view)) + }, + ) // Add ModHideCommunity entries (mapped to ModChangeCommunityVisibility) - modlogList.addAll(d.hidden_communities.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModChangeCommunityVisibility(mod_change_community_visibility = this.toUni(d = view)) - }) + modlogList.addAll( + d.hidden_communities.map { view -> + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModChangeCommunityVisibility(mod_change_community_visibility = this.toUni(d = view)) + }, + ) return it.vercruysse.lemmyapi.datatypes.GetModlogResponse( modlog = modlogList, next_page = null, - prev_page = null + prev_page = null, ) } @@ -945,8 +970,8 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X6DatatypesInstance): LemmyapiDatatypesInstance = LemmyapiDatatypesInstance( id = d.id, domain = d.domain, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, software = d.software, version = d.version, ) @@ -954,8 +979,8 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X6DatatypesInstanceWithFederationState): LemmyapiDatatypesInstanceWithFederationState = LemmyapiDatatypesInstanceWithFederationState( id = d.id, domain = d.domain, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, software = d.software, version = d.version, federation_state = d.federation_state?.let { this.toUni(d = it) }, @@ -1014,10 +1039,10 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X6DatatypesLocalImage): LemmyapiDatatypesLocalImage = LemmyapiDatatypesLocalImage( - local_user_id = d.local_user_id, + person_id = d.local_user_id, pictrs_alias = d.pictrs_alias, pictrs_delete_token = d.pictrs_delete_token, - published = d.published, + published_at = d.published, ) override fun toUni(d: X6DatatypesLocalImageView): LemmyapiDatatypesLocalImageView = @@ -1047,8 +1072,8 @@ internal class Transformer : MapperGenerator { federation_enabled = d.federation_enabled, captcha_enabled = d.captcha_enabled, captcha_difficulty = d.captcha_difficulty, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, registration_mode = d.registration_mode, reports_email_admins = d.reports_email_admins, federation_signed_fetch = d.federation_signed_fetch, @@ -1059,30 +1084,30 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X6DatatypesLocalSiteRateLimit): LemmyapiDatatypesLocalSiteRateLimit = LemmyapiDatatypesLocalSiteRateLimit( local_site_id = d.local_site_id, - message = d.message, - message_per_second = d.message_per_second, - post = d.post, - post_per_second = d.post_per_second, - register = d.register, - register_per_second = d.register_per_second, - image = d.image, - image_per_second = d.image_per_second, - comment = d.comment, - comment_per_second = d.comment_per_second, - search = d.search, - search_per_second = d.search_per_second, - published = d.published, - updated = d.updated, - import_user_settings = d.import_user_settings, - import_user_settings_per_second = d.import_user_settings_per_second, + message_max_requests = d.message, + message_interval_seconds = d.message_per_second, + post_max_requests = d.post, + post_interval_seconds = d.post_per_second, + register_max_requests = d.register, + register_interval_seconds = d.register_per_second, + image_max_requests = d.image, + image_interval_seconds = d.image_per_second, + comment_max_requests = d.comment, + comment_interval_seconds = d.comment_per_second, + search_max_requests = d.search, + search_interval_seconds = d.search_per_second, + published_at = d.published, + updated_at = d.updated, + import_user_settings_max_requests = d.import_user_settings, + import_user_settings_interval_seconds = d.import_user_settings_per_second, ) override fun toUni(d: X6DatatypesLocalSiteUrlBlocklist): LemmyapiDatatypesLocalSiteUrlBlocklist = LemmyapiDatatypesLocalSiteUrlBlocklist( id = d.id, url = d.url, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, ) override fun toUni(d: X6DatatypesLocalUser): LemmyapiDatatypesLocalUser = @@ -1097,7 +1122,6 @@ internal class Transformer : MapperGenerator { interface_language = d.interface_language, show_avatars = d.show_avatars, send_notifications_to_email = d.send_notifications_to_email, - show_scores = d.show_scores, show_bot_accounts = d.show_bot_accounts, show_read_posts = d.show_read_posts, email_verified = d.email_verified, @@ -1112,15 +1136,26 @@ internal class Transformer : MapperGenerator { enable_keyboard_navigation = d.enable_keyboard_navigation, enable_animated_images = d.enable_animated_images, collapse_bot_comments = d.collapse_bot_comments, - last_donation_notification = "", + last_donation_notification_at = "", + // TODO: map using local_user_vote_display_mode + show_score = d.show_scores, + show_upvotes = d.show_scores, + show_person_votes = d.show_scores, + show_upvote_percentage = d.show_scores, + hide_media = false, + show_downvotes = VoteShow.Show, + enable_private_messages = true, + default_comment_sort_type = SortType.Active, + auto_mark_fetched_posts_as_read = false, + default_post_time_range_seconds = null, ) override fun toUni(d: X6DatatypesLocalUserView): LemmyapiDatatypesLocalUserView = LemmyapiDatatypesLocalUserView( local_user = this.toUni(d = d.local_user), local_user_vote_display_mode = this.toUni(d = d.local_user_vote_display_mode), - person = this.toUni(d = d.person), - counts = this.toUni(d = d.counts), + person = this.toUni(d = d.person, d.counts), + banned = d.person.banned, ) override fun toUni(d: X6DatatypesLocalUserVoteDisplayMode): LemmyapiDatatypesLocalUserVoteDisplayMode = LemmyapiDatatypesLocalUserVoteDisplayMode( @@ -1141,7 +1176,7 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X6DatatypesLoginToken): LemmyapiDatatypesLoginToken = LemmyapiDatatypesLoginToken( user_id = d.user_id, - published = d.published, + published_at = d.published, ip = d.ip, user_agent = d.user_agent, ) @@ -1151,7 +1186,7 @@ internal class Transformer : MapperGenerator { mod_person_id = d.mod_person_id, other_person_id = d.other_person_id, removed = d.removed, - published = d.when_, + published_at = d.when_, ) override fun toUni(d: X6DatatypesModAddCommunity): LemmyapiDatatypesModAddCommunity = @@ -1161,14 +1196,14 @@ internal class Transformer : MapperGenerator { other_person_id = d.other_person_id, community_id = d.community_id, removed = d.removed, - published = d.when_, + published_at = d.when_, ) override fun toUni(d: X6DatatypesModAddCommunityView): LemmyapiDatatypesModAddCommunityView = LemmyapiDatatypesModAddCommunityView( mod_add_community = this.toUni(d = d.mod_add_community), moderator = d.moderator?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community), + community = this.toUni(d = d.community, counts = X6DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), other_person = this.toUni(d = d.modded_person), ) @@ -1185,8 +1220,8 @@ internal class Transformer : MapperGenerator { other_person_id = d.other_person_id, reason = d.reason, banned = d.banned, - expires = d.expires, - published = d.when_, + expires_at = d.expires, + published_at = d.when_, instance_id = -1, ) @@ -1198,14 +1233,14 @@ internal class Transformer : MapperGenerator { community_id = d.community_id, reason = d.reason, banned = d.banned, - expires = d.expires, - published = d.when_, + expires_at = d.expires, + published_at = d.when_, ) override fun toUni(d: X6DatatypesModBanFromCommunityView): LemmyapiDatatypesModBanFromCommunityView = LemmyapiDatatypesModBanFromCommunityView( mod_ban_from_community = this.toUni(d = d.mod_ban_from_community), moderator = d.moderator?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community), + community = this.toUni(d = d.community, counts = X6DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), other_person = this.toUni(d = d.banned_person), ) @@ -1222,7 +1257,7 @@ internal class Transformer : MapperGenerator { mod_person_id = d.mod_person_id, post_id = d.post_id, featured = d.featured, - published = d.when_, + published_at = d.when_, is_featured_community = d.is_featured_community, ) @@ -1230,8 +1265,8 @@ internal class Transformer : MapperGenerator { LemmyapiDatatypesModFeaturePostView( mod_feature_post = this.toUni(d = d.mod_feature_post), moderator = d.moderator?.let { this.toUni(d = it) }, - post = this.toUni(d = d.post), - community = this.toUni(d = d.community), + post = this.toUni(d = d.post, counts = X6DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), + community = this.toUni(d = d.community, counts = X6DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), ) override fun toUni(d: X6DatatypesModHideCommunity): LemmyapiDatatypesModChangeCommunityVisibility = @@ -1239,7 +1274,7 @@ internal class Transformer : MapperGenerator { id = d.id, community_id = d.community_id, mod_person_id = d.mod_person_id, - published = d.when_, + published_at = d.when_, reason = d.reason, visibility = if (d.hidden) { it.vercruysse.lemmyapi.dto.CommunityVisibility.Unlisted @@ -1252,7 +1287,7 @@ internal class Transformer : MapperGenerator { LemmyapiDatatypesModChangeCommunityVisibilityView( mod_change_community_visibility = this.toUni(d = d.mod_hide_community), moderator = d.admin?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community), + community = this.toUni(d = d.community, counts = X6DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), ) override fun toUni(d: X6DatatypesModLockPost): LemmyapiDatatypesModLockPost = @@ -1261,15 +1296,15 @@ internal class Transformer : MapperGenerator { mod_person_id = d.mod_person_id, post_id = d.post_id, locked = d.locked, - published = d.when_, + published_at = d.when_, ) override fun toUni(d: X6DatatypesModLockPostView): LemmyapiDatatypesModLockPostView = LemmyapiDatatypesModLockPostView( mod_lock_post = this.toUni(d = d.mod_lock_post), moderator = d.moderator?.let { this.toUni(d = it) }, - post = this.toUni(d = d.post), - community = this.toUni(d = d.community), + post = this.toUni(d = d.post, counts = X6DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), + community = this.toUni(d = d.community, counts = X6DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), ) override fun toUni(d: X6DatatypesModlogListParams): LemmyapiDatatypesModlogListParams = @@ -1291,17 +1326,17 @@ internal class Transformer : MapperGenerator { comment_id = d.comment_id, reason = d.reason, removed = d.removed, - published = d.when_, + published_at = d.when_, ) override fun toUni(d: X6DatatypesModRemoveCommentView): LemmyapiDatatypesModRemoveCommentView = LemmyapiDatatypesModRemoveCommentView( mod_remove_comment = this.toUni(d = d.mod_remove_comment), moderator = d.moderator?.let { this.toUni(d = it) }, - comment = this.toUni(d = d.comment), + comment = this.toUni(d = d.comment, X6DatatypesCommentAggregates(-1, -1, -1, -1, "", -1)), other_person = this.toUni(d = d.commenter), - post = this.toUni(d = d.post), - community = this.toUni(d = d.community), + post = this.toUni(d = d.post, counts = X6DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), + community = this.toUni(d = d.community, counts = X6DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), ) override fun toUni(d: X6DatatypesModRemoveCommunity): LemmyapiDatatypesModRemoveCommunity = @@ -1311,13 +1346,13 @@ internal class Transformer : MapperGenerator { community_id = d.community_id, reason = d.reason, removed = d.removed, - published = d.when_, + published_at = d.when_, ) override fun toUni(d: X6DatatypesModRemoveCommunityView): LemmyapiDatatypesModRemoveCommunityView = LemmyapiDatatypesModRemoveCommunityView( mod_remove_community = this.toUni(d = d.mod_remove_community), moderator = d.moderator?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community), + community = this.toUni(d = d.community, counts = X6DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), ) override fun toUni(d: X6DatatypesModRemovePost): LemmyapiDatatypesModRemovePost = @@ -1327,15 +1362,15 @@ internal class Transformer : MapperGenerator { post_id = d.post_id, reason = d.reason, removed = d.removed, - published = d.when_, + published_at = d.when_, ) override fun toUni(d: X6DatatypesModRemovePostView): LemmyapiDatatypesModRemovePostView = LemmyapiDatatypesModRemovePostView( mod_remove_post = this.toUni(d = d.mod_remove_post), moderator = d.moderator?.let { this.toUni(d = it) }, - post = this.toUni(d = d.post), - community = this.toUni(d = d.community), + post = this.toUni(d = d.post, counts = X6DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), + community = this.toUni(d = d.community, counts = X6DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), ) override fun toUni(d: X6DatatypesModTransferCommunity): LemmyapiDatatypesModTransferCommunity = @@ -1344,13 +1379,13 @@ internal class Transformer : MapperGenerator { mod_person_id = d.mod_person_id, other_person_id = d.other_person_id, community_id = d.community_id, - published = d.when_, + published_at = d.when_, ) override fun toUni(d: X6DatatypesModTransferCommunityView): LemmyapiDatatypesModTransferCommunityView = LemmyapiDatatypesModTransferCommunityView( mod_transfer_community = this.toUni(d = d.mod_transfer_community), moderator = d.moderator?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community), + community = this.toUni(d = d.community, counts = X6DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), other_person = this.toUni(d = d.modded_person), ) @@ -1359,38 +1394,33 @@ internal class Transformer : MapperGenerator { local_user_view = this.toUni(d = d.local_user_view), follows = d.follows.map { this.toUni(d = it) }, moderates = d.moderates.map { this.toUni(d = it) }, - community_blocks = d.community_blocks.map { this.toUni(d = it.community) }, + community_blocks = d.community_blocks.map { this.toUni(d = it.community, counts = X6DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)) }, instance_blocks = d.instance_blocks.map { this.toUni(d = it.instance) }, person_blocks = d.person_blocks.map { this.toUni(d = it.target) }, discussion_languages = d.discussion_languages, ) - override fun toUni(d: X6DatatypesPerson): LemmyapiDatatypesPerson = LemmyapiDatatypesPerson( + fun toUni(d: X6DatatypesPerson) = this.toUni(d, X6DatatypesPersonAggregates(-1, -1, -1)) + + override fun toUni(d: X6DatatypesPerson, counts: X6DatatypesPersonAggregates): LemmyapiDatatypesPerson = LemmyapiDatatypesPerson( id = d.id, name = d.name, display_name = d.display_name, avatar = d.avatar, - banned = d.banned, - published = d.published, - updated = d.updated, - actor_id = d.actor_id, + published_at = d.published, + updated_at = d.updated, + ap_id = d.actor_id, bio = d.bio, local = d.local, banner = d.banner, deleted = d.deleted, matrix_user_id = d.matrix_user_id, bot_account = d.bot_account, - ban_expires = d.ban_expires, instance_id = d.instance_id, + comment_count = counts.comment_count, + post_count = counts.post_count, ) - override fun toUni(d: X6DatatypesPersonAggregates): LemmyapiDatatypesPersonAggregates = - LemmyapiDatatypesPersonAggregates( - person_id = d.person_id, - post_count = d.post_count, - comment_count = d.comment_count, - ) - override fun toUni(d: X6DatatypesPersonMention): LemmyapiDatatypesPersonMention = LemmyapiDatatypesPersonMention( id = d.id, @@ -1408,12 +1438,11 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X6DatatypesPersonMentionView): LemmyapiDatatypesPersonMentionView = LemmyapiDatatypesPersonMentionView( person_mention = this.toUni(d = d.person_mention), - comment = this.toUni(d = d.comment), + comment = this.toUni(d = d.comment, d.counts), creator = this.toUni(d = d.creator), - post = this.toUni(d = d.post), - community = this.toUni(d = d.community), + post = this.toUni(d = d.post, counts = X6DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), + community = this.toUni(d = d.community, counts = X6DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), recipient = this.toUni(d = d.recipient), - counts = this.toUni(d = d.counts), creator_banned_from_community = d.creator_banned_from_community, banned_from_community = d.banned_from_community, creator_is_moderator = d.creator_is_moderator, @@ -1426,12 +1455,13 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X6DatatypesPersonView): LemmyapiDatatypesPersonView = LemmyapiDatatypesPersonView( - person = this.toUni(d = d.person), - counts = this.toUni(d = d.counts), + person = this.toUni(d = d.person, d.counts), is_admin = d.is_admin, + person_actions = null, + creator_banned = d.person.banned, ) - override fun toUni(d: X6DatatypesPost): LemmyapiDatatypesPost = LemmyapiDatatypesPost( + override fun toUni(d: X6DatatypesPost, counts: X6DatatypesPostAggregates): LemmyapiDatatypesPost = LemmyapiDatatypesPost( id = d.id, name = d.name, url = d.url, @@ -1440,8 +1470,8 @@ internal class Transformer : MapperGenerator { community_id = d.community_id, removed = d.removed, locked = d.locked, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, deleted = d.deleted, nsfw = d.nsfw, embed_title = d.embed_title, @@ -1455,19 +1485,16 @@ internal class Transformer : MapperGenerator { featured_local = d.featured_local, url_content_type = d.url_content_type, alt_text = d.alt_text, + comments = counts.comments, + score = counts.score, + upvotes = counts.upvotes, + downvotes = counts.downvotes, + newest_comment_time_at = counts.newest_comment_time, + report_count = -1, + unresolved_report_count = -1, + federation_pending = false, ) - override fun toUni(d: X6DatatypesPostAggregates): LemmyapiDatatypesPostAggregates = - LemmyapiDatatypesPostAggregates( - post_id = d.post_id, - comments = d.comments, - score = d.score, - upvotes = d.upvotes, - downvotes = d.downvotes, - published = d.published, - newest_comment_time = d.newest_comment_time, - ) - override fun toUni(d: X6DatatypesPostReport): LemmyapiDatatypesPostReport = LemmyapiDatatypesPostReport( id = d.id, @@ -1479,8 +1506,8 @@ internal class Transformer : MapperGenerator { reason = d.reason, resolved = d.resolved, resolver_id = d.resolver_id, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, violates_instance_rules = false, ) @@ -1492,22 +1519,18 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X6DatatypesPostReportView): LemmyapiDatatypesPostReportView = LemmyapiDatatypesPostReportView( post_report = this.toUni(d = d.post_report), - post = this.toUni(d = d.post), - community = this.toUni(d = d.community), + post = this.toUni(d = d.post, d.counts), + community = this.toUni(d = d.community, counts = X6DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), creator = this.toUni(d = d.creator), post_creator = this.toUni(d = d.post_creator), + post_actions = PostActions(toAt(d.read), null, d.counts.comments - d.unread_comments, toAt(d.saved), null, d.my_vote, toAt(d.hidden)), + person_actions = PersonActions(toAt(d.creator_blocked)), + community_actions = CommunityActions(null, CommunityFollowerState.from(d.subscribed)), + resolver = d.resolver?.let { this.toUni(d = it) }, creator_banned_from_community = d.creator_banned_from_community, + creator_banned = d.creator.banned, creator_is_moderator = d.creator_is_moderator, creator_is_admin = d.creator_is_admin, - subscribed = d.subscribed, - saved = d.saved, - read = d.read, - hidden = d.hidden, - creator_blocked = d.creator_blocked, - my_vote = d.my_vote, - unread_comments = d.unread_comments, - counts = this.toUni(d = d.counts), - resolver = d.resolver?.let { this.toUni(d = it) }, ) override fun toUni(d: X6DatatypesPostResponse): LemmyapiDatatypesPostResponse = @@ -1516,22 +1539,19 @@ internal class Transformer : MapperGenerator { ) override fun toUni(d: X6DatatypesPostView): LemmyapiDatatypesPostView = LemmyapiDatatypesPostView( - post = this.toUni(d = d.post), + post = this.toUni(d = d.post, d.counts), creator = this.toUni(d = d.creator), - community = this.toUni(d = d.community), + community = this.toUni(d = d.community, counts = X6DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), + image_details = d.image_details?.let { this.toUni(d = it) }, + post_actions = PostActions(toAt(d.read), null, d.counts.comments - d.unread_comments, toAt(d.saved), null, d.my_vote, toAt(d.hidden)), + person_actions = PersonActions(toAt(d.creator_blocked)), + community_actions = CommunityActions(null, CommunityFollowerState.from(d.subscribed)), + can_mod = false, + tags = emptyList(), creator_banned_from_community = d.creator_banned_from_community, - banned_from_community = d.banned_from_community, + creator_banned = d.creator.banned, creator_is_moderator = d.creator_is_moderator, creator_is_admin = d.creator_is_admin, - counts = this.toUni(d = d.counts), - subscribed = d.subscribed, - saved = d.saved, - read = d.read, - hidden = d.hidden, - creator_blocked = d.creator_blocked, - my_vote = d.my_vote, - unread_comments = d.unread_comments, - image_details = d.image_details?.let { this.toUni(d = it) }, ) override fun toUni(d: X6DatatypesPrivateMessage): LemmyapiDatatypesPrivateMessage = @@ -1542,8 +1562,8 @@ internal class Transformer : MapperGenerator { content = d.content, deleted = d.deleted, read = d.read, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, ap_id = d.ap_id, local = d.local, removed = false, @@ -1558,8 +1578,8 @@ internal class Transformer : MapperGenerator { reason = d.reason, resolved = d.resolved, resolver_id = d.resolver_id, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, ) override fun toUni(d: X6DatatypesPrivateMessageReportResponse): LemmyapiDatatypesPrivateMessageReportResponse = LemmyapiDatatypesPrivateMessageReportResponse( @@ -1592,10 +1612,10 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X6DatatypesReadableFederationState): LemmyapiDatatypesReadableFederationState = LemmyapiDatatypesReadableFederationState( instance_id = d.instance_id, last_successful_id = d.last_successful_id, - last_successful_published_time = d.last_successful_published_time, + last_successful_published_time_at = d.last_successful_published_time, fail_count = d.fail_count, - last_retry = d.last_retry, - next_retry = d.next_retry, + last_retry_at = d.last_retry, + next_retry_at = d.next_retry, ) override fun toUni(d: X6DatatypesRegistrationApplication): LemmyapiDatatypesRegistrationApplication = LemmyapiDatatypesRegistrationApplication( @@ -1604,7 +1624,7 @@ internal class Transformer : MapperGenerator { answer = d.answer, admin_id = d.admin_id, deny_reason = d.deny_reason, - published = d.published, + published_at = d.published, ) override fun toUni(d: X6DatatypesRegistrationApplicationResponse): LemmyapiDatatypesRegistrationApplicationResponse = @@ -1640,12 +1660,12 @@ internal class Transformer : MapperGenerator { id = d.id, name = d.name, sidebar = d.sidebar, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, icon = d.icon, banner = d.banner, description = d.description, - actor_id = d.actor_id, + ap_id = d.actor_id, last_refreshed_at = d.last_refreshed_at, inbox_url = d.inbox_url, instance_id = d.instance_id, @@ -1681,8 +1701,8 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X6DatatypesTagline): LemmyapiDatatypesTagline = LemmyapiDatatypesTagline( id = d.id, content = d.content, - published = d.published, - updated = d.updated, + published_at = d.published, + updated_at = d.updated, ) override fun toUni(d: X6DatatypesUpdateTotpResponse): LemmyapiDatatypesUpdateTotpResponse = @@ -1692,6 +1712,7 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X6DatatypesVoteView): LemmyapiDatatypesVoteView = LemmyapiDatatypesVoteView( creator = this.toUni(d = d.creator), + creator_banned = d.creator.banned, creator_banned_from_community = d.creator_banned_from_community, score = d.score, ) @@ -1721,7 +1742,7 @@ internal class Transformer : MapperGenerator { ban = d.ban, remove_data = d.remove_or_restore_data, reason = d.reason, - expires = d.expires, + expires = d.expires_at, ) override fun fromUni(d: LemmyapiDatatypesBanPerson): X6DatatypesBanPerson = X6DatatypesBanPerson( @@ -1729,7 +1750,7 @@ internal class Transformer : MapperGenerator { ban = d.ban, remove_data = d.remove_or_restore_data, reason = d.reason, - expires = d.expires, + expires = d.expires_at, ) override fun fromUni(d: LemmyapiDatatypesBlockCommunity): X6DatatypesBlockCommunity = @@ -1857,18 +1878,18 @@ internal class Transformer : MapperGenerator { discussion_languages = d.discussion_languages, slur_filter_regex = d.slur_filter_regex, actor_name_max_length = d.actor_name_max_length, - rate_limit_message = d.rate_limit_message, - rate_limit_message_per_second = d.rate_limit_message_per_second, - rate_limit_post = d.rate_limit_post, - rate_limit_post_per_second = d.rate_limit_post_per_second, - rate_limit_register = d.rate_limit_register, - rate_limit_register_per_second = d.rate_limit_register_per_second, - rate_limit_image = d.rate_limit_image, - rate_limit_image_per_second = d.rate_limit_image_per_second, - rate_limit_comment = d.rate_limit_comment, - rate_limit_comment_per_second = d.rate_limit_comment_per_second, - rate_limit_search = d.rate_limit_search, - rate_limit_search_per_second = d.rate_limit_search_per_second, + rate_limit_message = d.rate_limit_message_max_requests, + rate_limit_message_per_second = d.rate_limit_message_interval_seconds, + rate_limit_post = d.rate_limit_post_max_requests, + rate_limit_post_per_second = d.rate_limit_post_interval_seconds, + rate_limit_register = d.rate_limit_register_max_requests, + rate_limit_register_per_second = d.rate_limit_register_interval_seconds, + rate_limit_image = d.rate_limit_image_max_requests, + rate_limit_image_per_second = d.rate_limit_image_interval_seconds, + rate_limit_comment = d.rate_limit_comment_max_requests, + rate_limit_comment_per_second = d.rate_limit_comment_interval_seconds, + rate_limit_search = d.rate_limit_search_max_requests, + rate_limit_search_per_second = d.rate_limit_search_interval_seconds, federation_enabled = d.federation_enabled, federation_debug = d.federation_debug, captcha_enabled = d.captcha_enabled, @@ -1989,18 +2010,18 @@ internal class Transformer : MapperGenerator { discussion_languages = d.discussion_languages, slur_filter_regex = d.slur_filter_regex, actor_name_max_length = d.actor_name_max_length, - rate_limit_message = d.rate_limit_message, - rate_limit_message_per_second = d.rate_limit_message_per_second, - rate_limit_post = d.rate_limit_post, - rate_limit_post_per_second = d.rate_limit_post_per_second, - rate_limit_register = d.rate_limit_register, - rate_limit_register_per_second = d.rate_limit_register_per_second, - rate_limit_image = d.rate_limit_image, - rate_limit_image_per_second = d.rate_limit_image_per_second, - rate_limit_comment = d.rate_limit_comment, - rate_limit_comment_per_second = d.rate_limit_comment_per_second, - rate_limit_search = d.rate_limit_search, - rate_limit_search_per_second = d.rate_limit_search_per_second, + rate_limit_message = d.rate_limit_message_max_requests, + rate_limit_message_per_second = d.rate_limit_message_interval_seconds, + rate_limit_post = d.rate_limit_post_max_requests, + rate_limit_post_per_second = d.rate_limit_post_interval_seconds, + rate_limit_register = d.rate_limit_register_max_requests, + rate_limit_register_per_second = d.rate_limit_register_interval_seconds, + rate_limit_image = d.rate_limit_image_max_requests, + rate_limit_image_per_second = d.rate_limit_image_interval_seconds, + rate_limit_comment = d.rate_limit_comment_max_requests, + rate_limit_comment_per_second = d.rate_limit_comment_interval_seconds, + rate_limit_search = d.rate_limit_search_max_requests, + rate_limit_search_per_second = d.rate_limit_search_interval_seconds, federation_enabled = d.federation_enabled, federation_debug = d.federation_debug, captcha_enabled = d.captcha_enabled, @@ -2097,9 +2118,6 @@ internal class Transformer : MapperGenerator { limit = d.limit, community_id = d.community_id, community_name = d.community_name, - saved_only = d.saved_only, - liked_only = d.liked_only, - disliked_only = d.disliked_only, show_hidden = d.show_hidden, show_read = d.show_read, show_nsfw = d.show_nsfw, @@ -2381,7 +2399,7 @@ internal class Transformer : MapperGenerator { listing_type = d.listing_type, page = d.page, limit = d.limit, - post_title_only = d.post_title_only, + post_title_only = d.title_only, ) override fun fromUni(d: LemmyapiDatatypesTransferCommunity): X6DatatypesTransferCommunity = diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModlogCombinedView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/ModlogCombinedView.kt similarity index 54% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModlogCombinedView.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/ModlogCombinedView.kt index bc91b05c..751f875a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModlogCombinedView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/ModlogCombinedView.kt @@ -1,9 +1,26 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - +package it.vercruysse.lemmyapi.v1.x0.x0.combinedtypes + +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.AdminAllowInstanceView +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.AdminBlockInstanceView +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.AdminPurgeCommentView +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.AdminPurgeCommunityView +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.AdminPurgePersonView +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.AdminPurgePostView +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ModAddCommunityView +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ModAddView +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ModBanFromCommunityView +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ModBanView +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ModChangeCommunityVisibilityView +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ModFeaturePostView +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ModLockPostView +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ModRemoveCommentView +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ModRemoveCommunityView +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ModRemovePostView +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ModTransferCommunityView import kotlinx.serialization.ExperimentalSerializationApi import kotlinx.serialization.SerialName -import kotlinx.serialization.json.JsonClassDiscriminator import kotlinx.serialization.Serializable +import kotlinx.serialization.json.JsonClassDiscriminator @Serializable @OptIn(ExperimentalSerializationApi::class) @@ -12,102 +29,102 @@ internal sealed class ModlogCombinedView { @Serializable @SerialName("AdminAllowInstance") internal data class AdminAllowInstance( - val admin_allow_instance: AdminAllowInstanceView + val admin_allow_instance: AdminAllowInstanceView, ) : ModlogCombinedView() @Serializable @SerialName("AdminBlockInstance") internal data class AdminBlockInstance( - val admin_block_instance: AdminBlockInstanceView + val admin_block_instance: AdminBlockInstanceView, ) : ModlogCombinedView() @Serializable @SerialName("AdminPurgeComment") internal data class AdminPurgeComment( - val admin_purge_comment: AdminPurgeCommentView + val admin_purge_comment: AdminPurgeCommentView, ) : ModlogCombinedView() @Serializable @SerialName("AdminPurgeCommunity") internal data class AdminPurgeCommunity( - val admin_purge_community: AdminPurgeCommunityView + val admin_purge_community: AdminPurgeCommunityView, ) : ModlogCombinedView() @Serializable @SerialName("AdminPurgePerson") internal data class AdminPurgePerson( - val admin_purge_person: AdminPurgePersonView + val admin_purge_person: AdminPurgePersonView, ) : ModlogCombinedView() @Serializable @SerialName("AdminPurgePost") internal data class AdminPurgePost( - val admin_purge_post: AdminPurgePostView + val admin_purge_post: AdminPurgePostView, ) : ModlogCombinedView() @Serializable @SerialName("ModAdd") internal data class ModAdd( - val mod_add: ModAddView + val mod_add: ModAddView, ) : ModlogCombinedView() @Serializable @SerialName("ModAddCommunity") internal data class ModAddCommunity( - val mod_add_community: ModAddCommunityView + val mod_add_community: ModAddCommunityView, ) : ModlogCombinedView() @Serializable @SerialName("ModBan") internal data class ModBan( - val mod_ban: ModBanView + val mod_ban: ModBanView, ) : ModlogCombinedView() @Serializable @SerialName("ModBanFromCommunity") internal data class ModBanFromCommunity( - val mod_ban_from_community: ModBanFromCommunityView + val mod_ban_from_community: ModBanFromCommunityView, ) : ModlogCombinedView() @Serializable @SerialName("ModFeaturePost") internal data class ModFeaturePost( - val mod_feature_post: ModFeaturePostView + val mod_feature_post: ModFeaturePostView, ) : ModlogCombinedView() @Serializable @SerialName("ModChangeCommunityVisibility") internal data class ModChangeCommunityVisibility( - val mod_change_community_visibility: ModChangeCommunityVisibilityView + val mod_change_community_visibility: ModChangeCommunityVisibilityView, ) : ModlogCombinedView() @Serializable @SerialName("ModLockPost") internal data class ModLockPost( - val mod_lock_post: ModLockPostView + val mod_lock_post: ModLockPostView, ) : ModlogCombinedView() @Serializable @SerialName("ModRemoveComment") internal data class ModRemoveComment( - val mod_remove_comment: ModRemoveCommentView + val mod_remove_comment: ModRemoveCommentView, ) : ModlogCombinedView() @Serializable @SerialName("ModRemoveCommunity") internal data class ModRemoveCommunity( - val mod_remove_community: ModRemoveCommunityView + val mod_remove_community: ModRemoveCommunityView, ) : ModlogCombinedView() @Serializable @SerialName("ModRemovePost") internal data class ModRemovePost( - val mod_remove_post: ModRemovePostView + val mod_remove_post: ModRemovePostView, ) : ModlogCombinedView() @Serializable @SerialName("ModTransferCommunity") internal data class ModTransferCommunity( - val mod_transfer_community: ModTransferCommunityView + val mod_transfer_community: ModTransferCommunityView, ) : ModlogCombinedView() } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/NotificationData.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/NotificationData.kt new file mode 100644 index 00000000..18d481f8 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/NotificationData.kt @@ -0,0 +1,32 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.combinedtypes + +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CommentView +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PostView +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PrivateMessageView +import kotlinx.serialization.ExperimentalSerializationApi +import kotlinx.serialization.SerialName +import kotlinx.serialization.Serializable +import kotlinx.serialization.json.JsonClassDiscriminator + +@Serializable +@OptIn(ExperimentalSerializationApi::class) +@JsonClassDiscriminator("type_") +internal sealed class NotificationData { + @Serializable + @SerialName("Post") + internal data class Post( + val post: PostView, + ) : NotificationData() + + @Serializable + @SerialName("Comment") + internal data class Comment( + val comment: CommentView, + ) : NotificationData() + + @Serializable + @SerialName("PrivateMessage") + internal data class PrivateMessage( + val private_message: PrivateMessageView, + ) : NotificationData() +} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonContentCombinedView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/PersonContentCombinedView.kt similarity index 55% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonContentCombinedView.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/PersonContentCombinedView.kt index ad605456..465af53e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonContentCombinedView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/PersonContentCombinedView.kt @@ -1,9 +1,11 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes +package it.vercruysse.lemmyapi.v1.x0.x0.combinedtypes +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CommentView +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PostView import kotlinx.serialization.ExperimentalSerializationApi import kotlinx.serialization.SerialName -import kotlinx.serialization.json.JsonClassDiscriminator import kotlinx.serialization.Serializable +import kotlinx.serialization.json.JsonClassDiscriminator @Serializable @OptIn(ExperimentalSerializationApi::class) @@ -11,13 +13,9 @@ import kotlinx.serialization.Serializable internal sealed class PersonContentCombinedView { @Serializable @SerialName("Post") - internal data class Post( - val post: PostView - ) : PersonContentCombinedView() + internal data class Post(val post: PostView) : PersonContentCombinedView() @Serializable @SerialName("Comment") - internal data class Comment( - val comment: CommentView - ) : PersonContentCombinedView() + internal data class Comment(val comment: CommentView) : PersonContentCombinedView() } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/PersonLikedCombinedView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/PersonLikedCombinedView.kt new file mode 100644 index 00000000..dbe9a2d7 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/PersonLikedCombinedView.kt @@ -0,0 +1,25 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.combinedtypes + +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CommentView +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PostView +import kotlinx.serialization.ExperimentalSerializationApi +import kotlinx.serialization.SerialName +import kotlinx.serialization.Serializable +import kotlinx.serialization.json.JsonClassDiscriminator + +@Serializable +@OptIn(ExperimentalSerializationApi::class) +@JsonClassDiscriminator("type_") +internal sealed class PersonLikedCombinedView { + @Serializable + @SerialName("Post") + internal data class Post( + val post: PostView, + ) : PersonLikedCombinedView() + + @Serializable + @SerialName("Comment") + internal data class Comment( + val comment: CommentView, + ) : PersonLikedCombinedView() +} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonSavedCombinedView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/PersonSavedCombinedView.kt similarity index 70% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonSavedCombinedView.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/PersonSavedCombinedView.kt index b1419daf..aa263b16 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonSavedCombinedView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/PersonSavedCombinedView.kt @@ -1,9 +1,11 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes +package it.vercruysse.lemmyapi.v1.x0.x0.combinedtypes +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CommentView +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PostView import kotlinx.serialization.ExperimentalSerializationApi import kotlinx.serialization.SerialName -import kotlinx.serialization.json.JsonClassDiscriminator import kotlinx.serialization.Serializable +import kotlinx.serialization.json.JsonClassDiscriminator @Serializable @OptIn(ExperimentalSerializationApi::class) @@ -12,12 +14,12 @@ internal sealed class PersonSavedCombinedView { @Serializable @SerialName("Post") internal data class Post( - val post: PostView + val post: PostView, ) : PersonSavedCombinedView() @Serializable @SerialName("Comment") internal data class Comment( - val comment: CommentView + val comment: CommentView, ) : PersonSavedCombinedView() } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/PostOrCommentOrPrivateMessage.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/PostOrCommentOrPrivateMessage.kt new file mode 100644 index 00000000..748ac07e --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/PostOrCommentOrPrivateMessage.kt @@ -0,0 +1,29 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.combinedtypes + +import kotlinx.serialization.ExperimentalSerializationApi +import kotlinx.serialization.SerialName +import kotlinx.serialization.Serializable +import kotlinx.serialization.json.JsonClassDiscriminator + +@Serializable +@OptIn(ExperimentalSerializationApi::class) +@JsonClassDiscriminator("type_") +internal sealed class PostOrCommentOrPrivateMessage { + @Serializable + @SerialName("Post") + internal data class Post( + val post: it.vercruysse.lemmyapi.v1.x0.x0.datatypes.Post, + ) : PostOrCommentOrPrivateMessage() + + @Serializable + @SerialName("Comment") + internal data class Comment( + val comment: it.vercruysse.lemmyapi.v1.x0.x0.datatypes.Comment, + ) : PostOrCommentOrPrivateMessage() + + @Serializable + @SerialName("PrivateMessage") + internal data class PrivateMessage( + val private_message: it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PrivateMessage, + ) : PostOrCommentOrPrivateMessage() +} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ReportCombinedView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/ReportCombinedView.kt similarity index 62% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ReportCombinedView.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/ReportCombinedView.kt index fdf52b72..6c418c64 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ReportCombinedView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/ReportCombinedView.kt @@ -1,9 +1,13 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes +package it.vercruysse.lemmyapi.v1.x0.x0.combinedtypes +import it.vercruysse.lemmyapi.datatypes.CommentReportView +import it.vercruysse.lemmyapi.datatypes.CommunityReportView +import it.vercruysse.lemmyapi.datatypes.PostReportView +import it.vercruysse.lemmyapi.datatypes.PrivateMessageReportView import kotlinx.serialization.ExperimentalSerializationApi import kotlinx.serialization.SerialName -import kotlinx.serialization.json.JsonClassDiscriminator import kotlinx.serialization.Serializable +import kotlinx.serialization.json.JsonClassDiscriminator @Serializable @OptIn(ExperimentalSerializationApi::class) @@ -12,24 +16,24 @@ internal sealed class ReportCombinedView { @Serializable @SerialName("Post") internal data class Post( - val post: PostReportView + val post: PostReportView, ) : ReportCombinedView() @Serializable @SerialName("Comment") internal data class Comment( - val comment: CommentReportView + val comment: CommentReportView, ) : ReportCombinedView() @Serializable @SerialName("PrivateMessage") internal data class PrivateMessage( - val private_message: PrivateMessageReportView + val private_message: PrivateMessageReportView, ) : ReportCombinedView() @Serializable @SerialName("Community") internal data class Community( - val community: CommunityReportView + val community: CommunityReportView, ) : ReportCombinedView() } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/SearchCombinedView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/SearchCombinedView.kt new file mode 100644 index 00000000..e004d9aa --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/SearchCombinedView.kt @@ -0,0 +1,36 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.combinedtypes + +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CommentView +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CommunityView +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.MultiCommunityView +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PersonView +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PostView +import kotlinx.serialization.ExperimentalSerializationApi +import kotlinx.serialization.SerialName +import kotlinx.serialization.Serializable +import kotlinx.serialization.json.JsonClassDiscriminator + +@Serializable +@OptIn(ExperimentalSerializationApi::class) +@JsonClassDiscriminator("type_") +internal sealed class SearchCombinedView { + @Serializable + @SerialName("Post") + internal data class Post(val post: PostView) : SearchCombinedView() + + @Serializable + @SerialName("Comment") + internal data class Comment(val comment: CommentView) : SearchCombinedView() + + @Serializable + @SerialName("Community") + internal data class Community(val community: CommunityView) : SearchCombinedView() + + @Serializable + @SerialName("Person") + internal data class Person(val person: PersonView) : SearchCombinedView() + + @Serializable + @SerialName("MultiCommunity") + internal data class MultiCommunity(val multiCommunity: MultiCommunityView) : SearchCombinedView() +} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAllowInstance.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAllowInstance.kt index c7702e50..e0e892ae 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAllowInstance.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAllowInstance.kt @@ -9,5 +9,5 @@ internal data class AdminAllowInstance( val admin_person_id: PersonId, val allowed: Boolean, val reason: String? = null, - val published: String, + val published_at: String, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBlockInstance.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBlockInstance.kt index 64cc4654..ca877a41 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBlockInstance.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBlockInstance.kt @@ -9,6 +9,6 @@ internal data class AdminBlockInstance( val admin_person_id: PersonId, val blocked: Boolean, val reason: String? = null, - val expires: String? = null, - val published: String, + val expires_at: String? = null, + val published_at: String, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBlockInstanceParams.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBlockInstanceParams.kt index 2a51c34b..7d3b25be 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBlockInstanceParams.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBlockInstanceParams.kt @@ -7,5 +7,5 @@ internal data class AdminBlockInstanceParams( val instance: String, val block: Boolean, val reason: String? = null, - val expires: String? = null, + val expires_at: String? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminListUsers.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminListUsers.kt new file mode 100644 index 00000000..c04fe763 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminListUsers.kt @@ -0,0 +1,11 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class AdminListUsers( + val banned_only: Boolean? = null, + val page_cursor: PaginationCursor? = null, + val page_back: Boolean? = null, + val limit: Long? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminListUsersResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminListUsersResponse.kt new file mode 100644 index 00000000..bb157c32 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminListUsersResponse.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class AdminListUsersResponse( + val users: List, + val next_page: PaginationCursor? = null, + val prev_page: PaginationCursor? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeComment.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeComment.kt index 52f610ae..e9948446 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeComment.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeComment.kt @@ -8,5 +8,5 @@ internal data class AdminPurgeComment( val admin_person_id: PersonId, val post_id: PostId, val reason: String? = null, - val published: String, + val published_at: String, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeCommunity.kt index 614db106..2fda781d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeCommunity.kt @@ -7,5 +7,5 @@ internal data class AdminPurgeCommunity( val id: AdminPurgeCommunityId, val admin_person_id: PersonId, val reason: String? = null, - val published: String, + val published_at: String, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePerson.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePerson.kt index b237a4b4..22141c93 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePerson.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePerson.kt @@ -7,5 +7,5 @@ internal data class AdminPurgePerson( val id: AdminPurgePersonId, val admin_person_id: PersonId, val reason: String? = null, - val published: String, + val published_at: String, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePost.kt index 9d1982b8..52330b54 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePost.kt @@ -8,5 +8,5 @@ internal data class AdminPurgePost( val admin_person_id: PersonId, val community_id: CommunityId, val reason: String? = null, - val published: String, + val published_at: String, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BanFromCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BanFromCommunity.kt index 53d5fd93..dc0f9d1e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BanFromCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BanFromCommunity.kt @@ -9,5 +9,5 @@ internal data class BanFromCommunity( val ban: Boolean, val remove_or_restore_data: Boolean? = null, val reason: String? = null, - val expires: Long? = null, + val expires_at: Long? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BanPerson.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BanPerson.kt index 706b15d5..c85c5197 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BanPerson.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BanPerson.kt @@ -8,5 +8,5 @@ internal data class BanPerson( val ban: Boolean, val remove_or_restore_data: Boolean? = null, val reason: String? = null, - val expires: Long? = null, + val expires_at: Long? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Comment.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Comment.kt index e4e44146..ea5a161d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Comment.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Comment.kt @@ -9,8 +9,8 @@ internal data class Comment( val post_id: PostId, val content: String, val removed: Boolean, - val published: String, - val updated: String? = null, + val published_at: String, + val updated_at: String? = null, val deleted: Boolean, val ap_id: DbUrl, val local: Boolean, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentActions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentActions.kt index ddb679f8..002aeb14 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentActions.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentActions.kt @@ -4,9 +4,7 @@ import kotlinx.serialization.Serializable @Serializable internal data class CommentActions( - val person_id: PersonId, - val comment_id: CommentId, val like_score: Long? = null, - val liked: String? = null, - val saved: String? = null, + val liked_at: String? = null, + val saved_at: String? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReply.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReply.kt deleted file mode 100644 index be66ae9c..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReply.kt +++ /dev/null @@ -1,12 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class CommentReply( - val id: CommentReplyId, - val recipient_id: PersonId, - val comment_id: CommentId, - val read: Boolean, - val published: String, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReplyView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReplyView.kt deleted file mode 100644 index f0a822e8..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReplyView.kt +++ /dev/null @@ -1,24 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class CommentReplyView( - val comment_reply: CommentReply, - val recipient: Person, - val comment: Comment, - val creator: Person, - val post: Post, - val community: Community, - val community_actions: CommunityActions? = null, - val comment_actions: CommentActions? = null, - val person_actions: PersonActions? = null, - val instance_actions: InstanceActions? = null, - val creator_home_instance_actions: InstanceActions? = null, - val creator_local_instance_actions: InstanceActions? = null, - val creator_community_actions: CommunityActions? = null, - val creator_is_admin: Boolean, - val post_tags: TagsView, - val can_mod: Boolean, - val creator_banned: Boolean, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReport.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReport.kt index e69891f8..78cd8172 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReport.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReport.kt @@ -11,7 +11,7 @@ internal data class CommentReport( val reason: String, val resolved: Boolean, val resolver_id: PersonId? = null, - val published: String, - val updated: String? = null, + val published_at: String, + val updated_at: String? = null, val violates_instance_rules: Boolean, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReportView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReportView.kt index 53e91d4c..2695355e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReportView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReportView.kt @@ -2,6 +2,8 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes import kotlinx.serialization.Serializable +// TODO changed + @Serializable internal data class CommentReportView( val comment_report: CommentReport, @@ -12,8 +14,10 @@ internal data class CommentReportView( val comment_creator: Person, val comment_actions: CommentActions? = null, val resolver: Person? = null, - val creator_community_actions: CommunityActions? = null, val person_actions: PersonActions? = null, val community_actions: CommunityActions? = null, val creator_is_admin: Boolean, + val creator_is_moderator: Boolean, + val creator_banned: Boolean, + val creator_banned_from_community: Boolean, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentResponse.kt index 9b892eb6..28f06fd9 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentResponse.kt @@ -5,5 +5,4 @@ import kotlinx.serialization.Serializable @Serializable internal data class CommentResponse( val comment_view: CommentView, - val recipient_ids: List, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentSlimView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentSlimView.kt index 817e2333..e5b05066 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentSlimView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentSlimView.kt @@ -8,11 +8,9 @@ internal data class CommentSlimView( val creator: Person, val comment_actions: CommentActions? = null, val person_actions: PersonActions? = null, - val creator_community_actions: CommunityActions? = null, - val instance_actions: InstanceActions? = null, - val creator_home_instance_actions: InstanceActions? = null, - val creator_local_instance_actions: InstanceActions? = null, val creator_is_admin: Boolean, val can_mod: Boolean, val creator_banned: Boolean, + val creator_is_moderator: Boolean, + val creator_banned_from_community: Boolean, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentView.kt index 5a9a79a1..7d97eb23 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentView.kt @@ -11,12 +11,10 @@ internal data class CommentView( val community_actions: CommunityActions? = null, val comment_actions: CommentActions? = null, val person_actions: PersonActions? = null, - val instance_actions: InstanceActions? = null, - val creator_home_instance_actions: InstanceActions? = null, - val creator_local_instance_actions: InstanceActions? = null, - val creator_community_actions: CommunityActions? = null, - val creator_is_admin: Boolean, val post_tags: TagsView, val can_mod: Boolean, val creator_banned: Boolean, + val creator_is_admin: Boolean, + val creator_is_moderator: Boolean, + val creator_banned_from_community: Boolean, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Community.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Community.kt index 1ea40d76..491043d0 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Community.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Community.kt @@ -1,5 +1,6 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes +import it.vercruysse.lemmyapi.dto.CommunityVisibility import kotlinx.serialization.Serializable @Serializable @@ -9,8 +10,8 @@ internal data class Community( val title: String, val sidebar: String? = null, val removed: Boolean, - val published: String, - val updated: String? = null, + val published_at: String, + val updated_at: String? = null, val deleted: Boolean, val nsfw: Boolean, val ap_id: DbUrl, @@ -19,7 +20,7 @@ internal data class Community( val banner: DbUrl? = null, val posting_restricted_to_mods: Boolean, val instance_id: InstanceId, - val visibility: String /* "Public" | "Unlisted" | "LocalOnlyPublic" | "LocalOnlyPrivate" | "Private" */, + val visibility: CommunityVisibility /* "Public" | "Unlisted" | "LocalOnlyPublic" | "LocalOnlyPrivate" | "Private" */, val description: String? = null, val subscribers: Long, val posts: Long, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityActions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityActions.kt index 001625cb..feba210c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityActions.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityActions.kt @@ -1,13 +1,16 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes +import it.vercruysse.lemmyapi.dto.CommunityFollowerState +import it.vercruysse.lemmyapi.dto.CommunityNotificationsMode import kotlinx.serialization.Serializable @Serializable internal data class CommunityActions( - val followed: String? = null, - val follow_state: String? /* "Accepted" | "Pending" | "ApprovalRequired" */ = null, - val blocked: String? = null, - val became_moderator: String? = null, - val received_ban: String? = null, - val ban_expires: String? = null, + val followed_at: String? = null, + val follow_state: CommunityFollowerState? /* "Accepted" | "Pending" | "ApprovalRequired" */ = null, + val blocked_at: String? = null, + val became_moderator_at: String? = null, + val received_ban_at: String? = null, + val ban_expires_at: String? = null, + val notifications: CommunityNotificationsMode? /* "AllPostsAndComments" | "AllPosts" | "RepliesAndMentions" | "Mute" */ = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityIdQuery.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityIdQuery.kt new file mode 100644 index 00000000..829551bd --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityIdQuery.kt @@ -0,0 +1,8 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class CommunityIdQuery( + val id: CommunityId, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityReport.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityReport.kt index a915e3f1..03dcd2b9 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityReport.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityReport.kt @@ -16,6 +16,6 @@ internal data class CommunityReport( val reason: String, val resolved: Boolean, val resolver_id: PersonId? = null, - val published: String, - val updated: String? = null, + val published_at: String, + val updated_at: String? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityReportView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityReportView.kt index 8d3d3bb8..ea34f024 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityReportView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityReportView.kt @@ -8,4 +8,8 @@ internal data class CommunityReportView( val community: Community, val creator: Person, val resolver: Person? = null, + val creator_is_admin: Boolean, + val creator_is_moderator: Boolean, + val creator_banned: Boolean, + val creator_banned_from_community: Boolean, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityView.kt index 8e94593c..712fc34a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityView.kt @@ -6,7 +6,6 @@ import kotlinx.serialization.Serializable internal data class CommunityView( val community: Community, val community_actions: CommunityActions? = null, - val instance_actions: InstanceActions? = null, val can_mod: Boolean, val post_tags: TagsView, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCommunityTag.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCommunityTag.kt index c09469a1..0e2b4893 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCommunityTag.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCommunityTag.kt @@ -5,5 +5,7 @@ import kotlinx.serialization.Serializable @Serializable internal data class CreateCommunityTag( val community_id: CommunityId, - val display_name: String, + val name: String, + val display_name: String? = null, + val description: String? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateMultiCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateMultiCommunity.kt new file mode 100644 index 00000000..6cd9135a --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateMultiCommunity.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class CreateMultiCommunity( + val name: String, + val title: String? = null, + val description: String? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateOrDeleteMultiCommunityEntry.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateOrDeleteMultiCommunityEntry.kt new file mode 100644 index 00000000..adec06cd --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateOrDeleteMultiCommunityEntry.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class CreateOrDeleteMultiCommunityEntry( + val id: MultiCommunityId, + val community_id: CommunityId, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreatePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreatePost.kt index bd3d9a53..4e7a67cb 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreatePost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreatePost.kt @@ -14,5 +14,5 @@ internal data class CreatePost( val language_id: LanguageId? = null, val custom_thumbnail: String? = null, val tags: List? = null, - val scheduled_publish_time: Long? = null, + val scheduled_publish_time_at: Long? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateSite.kt index bae3c601..61795ce9 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateSite.kt @@ -1,5 +1,6 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes +import it.vercruysse.lemmyapi.dto.FederationMode import it.vercruysse.lemmyapi.dto.RegistrationMode import it.vercruysse.lemmyapi.dto.SortType import it.vercruysse.lemmyapi.dto.PostListingMode @@ -16,39 +17,41 @@ internal data class CreateSite( val application_question: String? = null, val private_instance: Boolean? = null, val default_theme: String? = null, - val default_post_listing_type: ListingType? /* "All" | "Local" | "Subscribed" | "ModeratorView" */ = null, + val default_post_listing_type: ListingType? /* "All" | "Local" | "Subscribed" | "ModeratorView" | "Suggested" */ = null, val default_post_listing_mode: PostListingMode? /* "List" | "Card" | "SmallCard" */ = null, val default_post_sort_type: SortType? /* "Active" | "Hot" | "New" | "Old" | "Top" | "MostComments" | "NewComments" | "Controversial" | "Scaled" */ = null, val default_post_time_range_seconds: Long? = null, val default_comment_sort_type: SortType? /* "Hot" | "Top" | "New" | "Old" | "Controversial" */ = null, val legal_information: String? = null, val application_email_admins: Boolean? = null, - val hide_modlog_mod_names: Boolean? = null, val discussion_languages: List? = null, val slur_filter_regex: String? = null, val actor_name_max_length: Long? = null, - val rate_limit_message: Long? = null, - val rate_limit_message_per_second: Long? = null, - val rate_limit_post: Long? = null, - val rate_limit_post_per_second: Long? = null, - val rate_limit_register: Long? = null, - val rate_limit_register_per_second: Long? = null, - val rate_limit_image: Long? = null, - val rate_limit_image_per_second: Long? = null, - val rate_limit_comment: Long? = null, - val rate_limit_comment_per_second: Long? = null, - val rate_limit_search: Long? = null, - val rate_limit_search_per_second: Long? = null, + val rate_limit_message_max_requests: Long? = null, + val rate_limit_message_interval_seconds: Long? = null, + val rate_limit_post_max_requests: Long? = null, + val rate_limit_post_interval_seconds: Long? = null, + val rate_limit_register_max_requests: Long? = null, + val rate_limit_register_interval_seconds: Long? = null, + val rate_limit_image_max_requests: Long? = null, + val rate_limit_image_interval_seconds: Long? = null, + val rate_limit_comment_max_requests: Long? = null, + val rate_limit_comment_interval_seconds: Long? = null, + val rate_limit_search_max_requests: Long? = null, + val rate_limit_search_interval_seconds: Long? = null, + val rate_limit_import_user_settings_max_requests: Long? = null, + val rate_limit_import_user_settings_interval_seconds: Long? = null, val federation_enabled: Boolean? = null, val captcha_enabled: Boolean? = null, val captcha_difficulty: String? = null, val registration_mode: RegistrationMode? /* "Closed" | "RequireApplication" | "Open" */ = null, val oauth_registration: Boolean? = null, val content_warning: String? = null, - val post_upvotes: String? /* "All" | "Local" | "Disable" */ = null, - val post_downvotes: String? /* "All" | "Local" | "Disable" */ = null, - val comment_upvotes: String? /* "All" | "Local" | "Disable" */ = null, - val comment_downvotes: String? /* "All" | "Local" | "Disable" */ = null, + val post_upvotes: FederationMode? /* "All" | "Local" | "Disable" */ = null, + val post_downvotes: FederationMode? /* "All" | "Local" | "Disable" */ = null, + val comment_upvotes: FederationMode? /* "All" | "Local" | "Disable" */ = null, + val comment_downvotes: FederationMode? /* "All" | "Local" | "Disable" */ = null, val disallow_nsfw_content: Boolean? = null, val disable_email_notifications: Boolean? = null, + val suggested_communities: MultiCommunityId? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CustomEmoji.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CustomEmoji.kt index 2647f145..0b69265b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CustomEmoji.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CustomEmoji.kt @@ -9,6 +9,6 @@ internal data class CustomEmoji( val image_url: DbUrl, val alt_text: String, val category: String, - val published: String, - val updated: String? = null, + val published_at: String, + val updated_at: String? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditPost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditPost.kt index 3d71f396..db8d218e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditPost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditPost.kt @@ -12,6 +12,6 @@ internal data class EditPost( val nsfw: Boolean? = null, val language_id: LanguageId? = null, val custom_thumbnail: String? = null, - val scheduled_publish_time: Long? = null, + val scheduled_publish_time_at: Long? = null, val tags: List? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditSite.kt index 3685a0bf..2fd081f0 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditSite.kt @@ -1,5 +1,6 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes +import it.vercruysse.lemmyapi.dto.FederationMode import it.vercruysse.lemmyapi.dto.RegistrationMode import it.vercruysse.lemmyapi.dto.SortType import it.vercruysse.lemmyapi.dto.PostListingMode @@ -16,29 +17,32 @@ internal data class EditSite( val application_question: String? = null, val private_instance: Boolean? = null, val default_theme: String? = null, - val default_post_listing_type: ListingType? /* "All" | "Local" | "Subscribed" | "ModeratorView" */ = null, + val default_post_listing_type: ListingType? /* "All" | "Local" | "Subscribed" | "ModeratorView" | "Suggested" */ = null, val default_post_listing_mode: PostListingMode? /* "List" | "Card" | "SmallCard" */ = null, val default_post_sort_type: SortType? /* "Active" | "Hot" | "New" | "Old" | "Top" | "MostComments" | "NewComments" | "Controversial" | "Scaled" */ = null, val default_post_time_range_seconds: Long? = null, val default_comment_sort_type: SortType? /* "Hot" | "Top" | "New" | "Old" | "Controversial" */ = null, val legal_information: String? = null, val application_email_admins: Boolean? = null, - val hide_modlog_mod_names: Boolean? = null, val discussion_languages: List? = null, val slur_filter_regex: String? = null, val actor_name_max_length: Long? = null, - val rate_limit_message: Long? = null, - val rate_limit_message_per_second: Long? = null, - val rate_limit_post: Long? = null, - val rate_limit_post_per_second: Long? = null, - val rate_limit_register: Long? = null, - val rate_limit_register_per_second: Long? = null, - val rate_limit_image: Long? = null, - val rate_limit_image_per_second: Long? = null, - val rate_limit_comment: Long? = null, - val rate_limit_comment_per_second: Long? = null, - val rate_limit_search: Long? = null, - val rate_limit_search_per_second: Long? = null, + val rate_limit_message_max_requests: Long? = null, + val rate_limit_message_interval_seconds: Long? = null, + val rate_limit_post_max_requests: Long? = null, + val rate_limit_post_interval_seconds: Long? = null, + val rate_limit_register_max_requests: Long? = null, + val rate_limit_register_interval_seconds: Long? = null, + val rate_limit_image_max_requests: Long? = null, + val rate_limit_image_interval_seconds: Long? = null, + val rate_limit_comment_max_requests: Long? = null, + val rate_limit_comment_interval_seconds: Long? = null, + val rate_limit_search_max_requests: Long? = null, + val rate_limit_search_interval_seconds: Long? = null, + /** Added in 1.0.0 */ + val rate_limit_import_user_settings_max_requests: Long? = null, + /** Added in 1.0.0 */ + val rate_limit_import_user_settings_interval_seconds: Long? = null, val federation_enabled: Boolean? = null, val captcha_enabled: Boolean? = null, val captcha_difficulty: String? = null, @@ -47,10 +51,12 @@ internal data class EditSite( val reports_email_admins: Boolean? = null, val content_warning: String? = null, val oauth_registration: Boolean? = null, - val post_upvotes: String? /* "All" | "Local" | "Disable" */ = null, - val post_downvotes: String? /* "All" | "Local" | "Disable" */ = null, - val comment_upvotes: String? /* "All" | "Local" | "Disable" */ = null, - val comment_downvotes: String? /* "All" | "Local" | "Disable" */ = null, + val post_upvotes: FederationMode? /* "All" | "Local" | "Disable" */ = null, + val post_downvotes: FederationMode? /* "All" | "Local" | "Disable" */ = null, + val comment_upvotes: FederationMode? /* "All" | "Local" | "Disable" */ = null, + val comment_downvotes: FederationMode? /* "All" | "Local" | "Disable" */ = null, val disallow_nsfw_content: Boolean? = null, val disable_email_notifications: Boolean? = null, + /** Added in 1.0.0 */ + val suggested_communities: MultiCommunityId? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ExportDataResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ExportDataResponse.kt new file mode 100644 index 00000000..33840e96 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ExportDataResponse.kt @@ -0,0 +1,14 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import it.vercruysse.lemmyapi.v1.x0.x0.combinedtypes.PostOrCommentOrPrivateMessage +import kotlinx.serialization.Serializable + +@Serializable +internal data class ExportDataResponse( + val notifications: List, + val content: List, + val read_posts: List, + val liked: List, + val moderates: List, + val settings: UserSettingsBackup, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/FederationBlockList.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/FederationBlockList.kt index a4006345..76aec696 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/FederationBlockList.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/FederationBlockList.kt @@ -5,7 +5,7 @@ import kotlinx.serialization.Serializable @Serializable internal data class FederationBlockList( val instance_id: InstanceId, - val published: String, - val updated: String? = null, - val expires: String? = null, + val published_at: String, + val updated_at: String? = null, + val expires_at: String? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/FollowMultiCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/FollowMultiCommunity.kt new file mode 100644 index 00000000..69079e77 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/FollowMultiCommunity.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class FollowMultiCommunity( + val multi_community_id: MultiCommunityId, + val follow: Boolean, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetComments.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetComments.kt index f021a2b3..289e58b0 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetComments.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetComments.kt @@ -6,7 +6,7 @@ import kotlinx.serialization.Serializable @Serializable internal data class GetComments( - val type_: ListingType? /* "All" | "Local" | "Subscribed" | "ModeratorView" */ = null, + val type_: ListingType? /* "All" | "Local" | "Subscribed" | "ModeratorView" | "Suggested" */ = null, val sort: CommentSortType? /* "Hot" | "Top" | "New" | "Old" | "Controversial" */ = null, val time_range_seconds: Long? = null, val max_depth: Long? = null, @@ -17,6 +17,4 @@ internal data class GetComments( val community_name: String? = null, val post_id: PostId? = null, val parent_id: CommentId? = null, - val liked_only: Boolean? = null, - val disliked_only: Boolean? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetModlog.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetModlog.kt index a992e716..e5e164ba 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetModlog.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetModlog.kt @@ -9,7 +9,7 @@ internal data class GetModlog( val mod_person_id: PersonId? = null, val community_id: CommunityId? = null, val type_: ModlogActionType? /* "All" | "ModRemovePost" | "ModLockPost" | "ModFeaturePost" | "ModRemoveComment" | "ModRemoveCommunity" | "ModBanFromCommunity" | "ModAddCommunity" | "ModTransferCommunity" | "ModAdd" | "ModBan" | "ModChangeCommunityVisibility" | "AdminPurgePerson" | "AdminPurgeCommunity" | "AdminPurgePost" | "AdminPurgeComment" | "AdminBlockInstance" | "AdminAllowInstance" */ = null, - val listing_type: ListingType? /* "All" | "Local" | "Subscribed" | "ModeratorView" */ = null, + val listing_type: ListingType? /* "All" | "Local" | "Subscribed" | "ModeratorView" | "Suggested" */ = null, val other_person_id: PersonId? = null, val post_id: PostId? = null, val comment_id: CommentId? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetModlogResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetModlogResponse.kt index d1696e65..83b62a27 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetModlogResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetModlogResponse.kt @@ -1,5 +1,6 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes +import it.vercruysse.lemmyapi.v1.x0.x0.combinedtypes.ModlogCombinedView import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetMultiCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetMultiCommunity.kt new file mode 100644 index 00000000..9f09b0c0 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetMultiCommunity.kt @@ -0,0 +1,8 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class GetMultiCommunity( + val id: MultiCommunityId, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetMultiCommunityResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetMultiCommunityResponse.kt new file mode 100644 index 00000000..4079bdcb --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetMultiCommunityResponse.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class GetMultiCommunityResponse( + val multi_community_view: MultiCommunityView, + val communities: List, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetPosts.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetPosts.kt index c8aed619..fc4781fe 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetPosts.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetPosts.kt @@ -6,13 +6,12 @@ import kotlinx.serialization.Serializable @Serializable internal data class GetPosts( - val type_: ListingType? /* "All" | "Local" | "Subscribed" | "ModeratorView" */ = null, + val type_: ListingType? /* "All" | "Local" | "Subscribed" | "ModeratorView" | "Suggested" */ = null, val sort: SortType? /* "Active" | "Hot" | "New" | "Old" | "Top" | "MostComments" | "NewComments" | "Controversial" | "Scaled" */ = null, val time_range_seconds: Long? = null, val community_id: CommunityId? = null, val community_name: String? = null, - val liked_only: Boolean? = null, - val disliked_only: Boolean? = null, + val multi_community_id: MultiCommunityId? = null, val show_hidden: Boolean? = null, val show_read: Boolean? = null, val show_nsfw: Boolean? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetRandomCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetRandomCommunity.kt index 12c97794..ae78a033 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetRandomCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetRandomCommunity.kt @@ -5,6 +5,6 @@ import kotlinx.serialization.Serializable @Serializable internal data class GetRandomCommunity( - val type_: ListingType? /* "All" | "Local" | "Subscribed" | "ModeratorView" */ = null, + val type_: ListingType? /* "All" | "Local" | "Subscribed" | "ModeratorView" | "Suggested" */ = null, val show_nsfw: Boolean? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/InboxCombinedView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/InboxCombinedView.kt deleted file mode 100644 index 88af3d09..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/InboxCombinedView.kt +++ /dev/null @@ -1,35 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.ExperimentalSerializationApi -import kotlinx.serialization.SerialName -import kotlinx.serialization.json.JsonClassDiscriminator -import kotlinx.serialization.Serializable - -@Serializable -@OptIn(ExperimentalSerializationApi::class) -@JsonClassDiscriminator("type_") -internal sealed class InboxCombinedView { - @Serializable - @SerialName("CommentReply") - internal data class CommentReply( - val comment_reply: CommentReplyView - ) : InboxCombinedView() - - @Serializable - @SerialName("CommentMention") - internal data class CommentMention( - val comment_mention: PersonCommentMentionView - ) : InboxCombinedView() - - @Serializable - @SerialName("PostMention") - internal data class PostMention( - val post_mention: PersonPostMentionView - ) : InboxCombinedView() - - @Serializable - @SerialName("PrivateMessage") - internal data class PrivateMessage( - val private_message: PrivateMessageView - ) : InboxCombinedView() -} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Instance.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Instance.kt index 7e608402..4ec66939 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Instance.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Instance.kt @@ -6,8 +6,8 @@ import kotlinx.serialization.Serializable internal data class Instance( val id: InstanceId, val domain: String, - val published: String, - val updated: String? = null, + val published_at: String, + val updated_at: String? = null, val software: String? = null, val version: String? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/InstanceActions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/InstanceActions.kt index fa7a7a24..3d2e2d47 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/InstanceActions.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/InstanceActions.kt @@ -4,7 +4,8 @@ import kotlinx.serialization.Serializable @Serializable internal data class InstanceActions( - val blocked: String? = null, - val received_ban: String? = null, - val ban_expires: String? = null, + val blocked_communities_at: String? = null, + val received_ban_at: String? = null, + val ban_expires_at: String? = null, + val blocked_persons_at: String? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/InstanceWithFederationState.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/InstanceWithFederationState.kt index 487557cc..f7f5d6b7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/InstanceWithFederationState.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/InstanceWithFederationState.kt @@ -7,8 +7,8 @@ internal data class InstanceWithFederationState( val federation_state: ReadableFederationState? = null, val id: InstanceId, val domain: String, - val published: String, - val updated: String? = null, + val published_at: String, + val updated_at: String? = null, val software: String? = null, val version: String? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommunities.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommunities.kt index f2e5c519..4bef5ae6 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommunities.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommunities.kt @@ -6,7 +6,7 @@ import kotlinx.serialization.Serializable @Serializable internal data class ListCommunities( - val type_: ListingType? /* "All" | "Local" | "Subscribed" | "ModeratorView" */ = null, + val type_: ListingType? /* "All" | "Local" | "Subscribed" | "ModeratorView" | "Suggested" */ = null, val sort: SortType? /* "ActiveSixMonths" | "ActiveMonthly" | "ActiveWeekly" | "ActiveDaily" | "Hot" | "New" | "Old" | "NameAsc" | "NameDesc" | "Comments" | "Posts" | "Subscribers" | "SubscribersLocal" */ = null, val time_range_seconds: Long? = null, val show_nsfw: Boolean? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListLoginsResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListLoginsResponse.kt new file mode 100644 index 00000000..e59a28ac --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListLoginsResponse.kt @@ -0,0 +1,8 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ListLoginsResponse( + val logins: List, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListMultiCommunities.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListMultiCommunities.kt new file mode 100644 index 00000000..ad84799b --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListMultiCommunities.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ListMultiCommunities( + val creator_id: PersonId? = null, + val followed_only: Boolean? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListMultiCommunitiesResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListMultiCommunitiesResponse.kt new file mode 100644 index 00000000..835037ab --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListMultiCommunitiesResponse.kt @@ -0,0 +1,8 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ListMultiCommunitiesResponse( + val multi_communities: List, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListInbox.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListNotifications.kt similarity index 67% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListInbox.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListNotifications.kt index fea15cac..40810c40 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListInbox.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListNotifications.kt @@ -4,8 +4,8 @@ import it.vercruysse.lemmyapi.dto.ListingType import kotlinx.serialization.Serializable @Serializable -internal data class ListInbox( - val type_: ListingType? /* "All" | "CommentReply" | "CommentMention" | "PostMention" | "PrivateMessage" */ = null, +internal data class ListNotifications( + val type_: ListingType? /* "All" | "Reply" | "Mention" | "PrivateMessage" | "Subscribed" */ = null, val unread_only: Boolean? = null, val page_cursor: PaginationCursor? = null, val page_back: Boolean? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListNotificationsResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListNotificationsResponse.kt new file mode 100644 index 00000000..b4585373 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListNotificationsResponse.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ListNotificationsResponse( + val notifications: List, + val next_page: PaginationCursor? = null, + val prev_page: PaginationCursor? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonContentResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonContentResponse.kt index e410995f..e89806a3 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonContentResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonContentResponse.kt @@ -1,5 +1,6 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes +import it.vercruysse.lemmyapi.v1.x0.x0.combinedtypes.PersonContentCombinedView import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListBannedPersons.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonHidden.kt similarity index 85% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListBannedPersons.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonHidden.kt index 554bc229..11e9e55b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListBannedPersons.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonHidden.kt @@ -3,7 +3,7 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes import kotlinx.serialization.Serializable @Serializable -internal data class ListBannedPersons( +internal data class ListPersonHidden( val page_cursor: PaginationCursor? = null, val page_back: Boolean? = null, val limit: Long? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListInboxResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonHiddenResponse.kt similarity index 71% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListInboxResponse.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonHiddenResponse.kt index edac8675..05fbb2df 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListInboxResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonHiddenResponse.kt @@ -3,8 +3,8 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes import kotlinx.serialization.Serializable @Serializable -internal data class ListInboxResponse( - val inbox: List, +internal data class ListPersonHiddenResponse( + val hidden: List, val next_page: PaginationCursor? = null, val prev_page: PaginationCursor? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonLiked.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonLiked.kt new file mode 100644 index 00000000..131c30a9 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonLiked.kt @@ -0,0 +1,14 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import it.vercruysse.lemmyapi.dto.LikeType +import it.vercruysse.lemmyapi.dto.ListingType +import kotlinx.serialization.Serializable + +@Serializable +internal data class ListPersonLiked( + val type_: ListingType? /* "All" | "Comments" | "Posts" */ = null, + val like_type: LikeType? /* "All" | "LikedOnly" | "DislikedOnly" */ = null, + val page_cursor: PaginationCursor? = null, + val page_back: Boolean? = null, + val limit: Long? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonLikedResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonLikedResponse.kt new file mode 100644 index 00000000..25a1cd1b --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonLikedResponse.kt @@ -0,0 +1,11 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import it.vercruysse.lemmyapi.v1.x0.x0.combinedtypes.PersonLikedCombinedView +import kotlinx.serialization.Serializable + +@Serializable +internal data class ListPersonLikedResponse( + val liked: List, + val next_page: PaginationCursor? = null, + val prev_page: PaginationCursor? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonRead.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonRead.kt new file mode 100644 index 00000000..555b7eb7 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonRead.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ListPersonRead( + val page_cursor: PaginationCursor? = null, + val page_back: Boolean? = null, + val limit: Long? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BannedPersonsResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonReadResponse.kt similarity index 72% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BannedPersonsResponse.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonReadResponse.kt index 9b16f5ea..59ac1d96 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BannedPersonsResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonReadResponse.kt @@ -3,8 +3,8 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes import kotlinx.serialization.Serializable @Serializable -internal data class BannedPersonsResponse( - val banned: List, +internal data class ListPersonReadResponse( + val read: List, val next_page: PaginationCursor? = null, val prev_page: PaginationCursor? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonSavedResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonSavedResponse.kt index 139539d2..19dba5fc 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonSavedResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonSavedResponse.kt @@ -1,5 +1,6 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes +import it.vercruysse.lemmyapi.v1.x0.x0.combinedtypes.PersonSavedCombinedView import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListReportsResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListReportsResponse.kt index 4e333d6f..109fd5ca 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListReportsResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListReportsResponse.kt @@ -1,7 +1,10 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes +import it.vercruysse.lemmyapi.v1.x0.x0.combinedtypes.ReportCombinedView import kotlinx.serialization.Serializable +// TODO: changed in new + @Serializable internal data class ListReportsResponse( val reports: List, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalImage.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalImage.kt index 591a5a1e..5d0544fb 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalImage.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalImage.kt @@ -4,7 +4,8 @@ import kotlinx.serialization.Serializable @Serializable internal data class LocalImage( - val local_user_id: LocalUserId? = null, val pictrs_alias: String, - val published: String, + val published_at: String, + val person_id: PersonId? = null, + val thumbnail_for_post_id: PostId? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalImageView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalImageView.kt index ac586bb8..a8148e3a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalImageView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalImageView.kt @@ -6,4 +6,5 @@ import kotlinx.serialization.Serializable internal data class LocalImageView( val local_image: LocalImage, val person: Person, + val post: Post? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSite.kt index 4644bc5d..79ed0d04 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSite.kt @@ -1,5 +1,6 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes +import it.vercruysse.lemmyapi.dto.FederationMode import it.vercruysse.lemmyapi.dto.SortType import it.vercruysse.lemmyapi.dto.PostListingMode import it.vercruysse.lemmyapi.dto.RegistrationMode @@ -16,17 +17,16 @@ internal data class LocalSite( val application_question: String? = null, val private_instance: Boolean, val default_theme: String, - val default_post_listing_type: ListingType /* "All" | "Local" | "Subscribed" | "ModeratorView" */, + val default_post_listing_type: ListingType /* "All" | "Local" | "Subscribed" | "ModeratorView" | "Suggested" */, val legal_information: String? = null, - val hide_modlog_mod_names: Boolean, val application_email_admins: Boolean, val slur_filter_regex: String? = null, val actor_name_max_length: Long, val federation_enabled: Boolean, val captcha_enabled: Boolean, val captcha_difficulty: String, - val published: String, - val updated: String? = null, + val published_at: String, + val updated_at: String? = null, val registration_mode: RegistrationMode /* "Closed" | "RequireApplication" | "Open" */, val reports_email_admins: Boolean, val federation_signed_fetch: Boolean, @@ -34,10 +34,10 @@ internal data class LocalSite( val default_post_sort_type: SortType /* "Active" | "Hot" | "New" | "Old" | "Top" | "MostComments" | "NewComments" | "Controversial" | "Scaled" */, val default_comment_sort_type: SortType /* "Hot" | "Top" | "New" | "Old" | "Controversial" */, val oauth_registration: Boolean, - val post_upvotes: String /* "All" | "Local" | "Disable" */, - val post_downvotes: String /* "All" | "Local" | "Disable" */, - val comment_upvotes: String /* "All" | "Local" | "Disable" */, - val comment_downvotes: String /* "All" | "Local" | "Disable" */, + val post_upvotes: FederationMode /* "All" | "Local" | "Disable" */, + val post_downvotes: FederationMode /* "All" | "Local" | "Disable" */, + val comment_upvotes: FederationMode /* "All" | "Local" | "Disable" */, + val comment_downvotes: FederationMode /* "All" | "Local" | "Disable" */, val default_post_time_range_seconds: Long? = null, val disallow_nsfw_content: Boolean, val users: Long, @@ -49,4 +49,6 @@ internal data class LocalSite( val users_active_month: Long, val users_active_half_year: Long, val disable_email_notifications: Boolean, + val suggested_communities: MultiCommunityId? = null, + val multi_comm_follower: PersonId, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSiteRateLimit.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSiteRateLimit.kt index bd9aa8b3..c48776cd 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSiteRateLimit.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSiteRateLimit.kt @@ -5,20 +5,20 @@ import kotlinx.serialization.Serializable @Serializable internal data class LocalSiteRateLimit( val local_site_id: LocalSiteId, - val message: Long, - val message_per_second: Long, - val post: Long, - val post_per_second: Long, - val register: Long, - val register_per_second: Long, - val image: Long, - val image_per_second: Long, - val comment: Long, - val comment_per_second: Long, - val search: Long, - val search_per_second: Long, - val published: String, - val updated: String? = null, - val import_user_settings: Long, - val import_user_settings_per_second: Long, + val message_max_requests: Long, + val message_interval_seconds: Long, + val post_max_requests: Long, + val post_interval_seconds: Long, + val register_max_requests: Long, + val register_interval_seconds: Long, + val image_max_requests: Long, + val image_interval_seconds: Long, + val comment_max_requests: Long, + val comment_interval_seconds: Long, + val search_max_requests: Long, + val search_interval_seconds: Long, + val published_at: String, + val updated_at: String? = null, + val import_user_settings_max_requests: Long, + val import_user_settings_interval_seconds: Long, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSiteUrlBlocklist.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSiteUrlBlocklist.kt index eba57ea2..cafafaa0 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSiteUrlBlocklist.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSiteUrlBlocklist.kt @@ -6,6 +6,6 @@ import kotlinx.serialization.Serializable internal data class LocalSiteUrlBlocklist( val id: Long, val url: String, - val published: String, - val updated: String? = null, + val published_at: String, + val updated_at: String? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUser.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUser.kt index cd77ed71..a535db67 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUser.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUser.kt @@ -1,8 +1,8 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -import it.vercruysse.lemmyapi.dto.SortType import it.vercruysse.lemmyapi.dto.PostListingMode import it.vercruysse.lemmyapi.dto.ListingType +import it.vercruysse.lemmyapi.dto.SortType import kotlinx.serialization.Serializable @Serializable @@ -13,7 +13,7 @@ internal data class LocalUser( val show_nsfw: Boolean, val theme: String, val default_post_sort_type: SortType /* "Active" | "Hot" | "New" | "Old" | "Top" | "MostComments" | "NewComments" | "Controversial" | "Scaled" */, - val default_listing_type: ListingType /* "All" | "Local" | "Subscribed" | "ModeratorView" */, + val default_listing_type: ListingType /* "All" | "Local" | "Subscribed" | "ModeratorView" | "Suggested" */, val interface_language: String, val show_avatars: Boolean, val send_notifications_to_email: Boolean, @@ -33,11 +33,12 @@ internal data class LocalUser( val collapse_bot_comments: Boolean, val default_comment_sort_type: SortType /* "Hot" | "Top" | "New" | "Old" | "Controversial" */, val auto_mark_fetched_posts_as_read: Boolean, - val last_donation_notification: String, + val last_donation_notification_at: String, val hide_media: Boolean, val default_post_time_range_seconds: Long? = null, val show_score: Boolean, val show_upvotes: Boolean, - val show_downvotes: Boolean, + val show_downvotes: String /* "Show" | "ShowForOthers" | "Hide" */, val show_upvote_percentage: Boolean, + val show_person_votes: Boolean, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUserView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUserView.kt index b792434a..6f1b0dc6 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUserView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUserView.kt @@ -6,5 +6,5 @@ import kotlinx.serialization.Serializable internal data class LocalUserView( val local_user: LocalUser, val person: Person, - val instance_actions: InstanceActions? = null, + val banned: Boolean, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LockPost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LockPost.kt index 360ec3c9..216e6a13 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LockPost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LockPost.kt @@ -6,4 +6,5 @@ import kotlinx.serialization.Serializable internal data class LockPost( val post_id: PostId, val locked: Boolean, + val reason: String? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LoginToken.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LoginToken.kt index 1c3b099c..998caf4a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LoginToken.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LoginToken.kt @@ -5,7 +5,7 @@ import kotlinx.serialization.Serializable @Serializable internal data class LoginToken( val user_id: LocalUserId, - val published: String, + val published_at: String, val ip: String? = null, val user_agent: String? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MarkCommentReplyAsRead.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MarkNotificationAsRead.kt similarity index 60% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MarkCommentReplyAsRead.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MarkNotificationAsRead.kt index b5ed47e9..f5e7925e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MarkCommentReplyAsRead.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MarkNotificationAsRead.kt @@ -3,7 +3,7 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes import kotlinx.serialization.Serializable @Serializable -internal data class MarkCommentReplyAsRead( - val comment_reply_id: CommentReplyId, +internal data class MarkNotificationAsRead( + val notification_id: NotificationId, val read: Boolean, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MarkPersonCommentMentionAsRead.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MarkPersonCommentMentionAsRead.kt deleted file mode 100644 index 4d2781c9..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MarkPersonCommentMentionAsRead.kt +++ /dev/null @@ -1,9 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class MarkPersonCommentMentionAsRead( - val person_comment_mention_id: PersonCommentMentionId, - val read: Boolean, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MarkPersonPostMentionAsRead.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MarkPersonPostMentionAsRead.kt deleted file mode 100644 index e369dc94..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MarkPersonPostMentionAsRead.kt +++ /dev/null @@ -1,9 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class MarkPersonPostMentionAsRead( - val person_post_mention_id: PersonPostMentionId, - val read: Boolean, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAdd.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAdd.kt index cf671617..dd71ba32 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAdd.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAdd.kt @@ -4,9 +4,9 @@ import kotlinx.serialization.Serializable @Serializable internal data class ModAdd( - val id: Long, + val id: ModAddId, val mod_person_id: PersonId, val other_person_id: PersonId, val removed: Boolean, - val published: String, + val published_at: String, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddCommunity.kt index 101e98d8..9e11b693 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddCommunity.kt @@ -4,10 +4,10 @@ import kotlinx.serialization.Serializable @Serializable internal data class ModAddCommunity( - val id: Long, + val id: ModAddCommunityId, val mod_person_id: PersonId, val other_person_id: PersonId, val community_id: CommunityId, val removed: Boolean, - val published: String, + val published_at: String, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonPostMentionId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddCommunityId.kt similarity index 52% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonPostMentionId.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddCommunityId.kt index 29e3d769..66659d68 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonPostMentionId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddCommunityId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -internal typealias PersonPostMentionId = Long +internal typealias ModAddCommunityId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReplyId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddId.kt similarity index 55% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReplyId.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddId.kt index bcd91325..1f40181f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReplyId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -internal typealias CommentReplyId = Long +internal typealias ModAddId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBan.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBan.kt index f6e1ea4b..47ad1ab9 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBan.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBan.kt @@ -4,12 +4,12 @@ import kotlinx.serialization.Serializable @Serializable internal data class ModBan( - val id: Long, + val id: ModBanId, val mod_person_id: PersonId, val other_person_id: PersonId, val reason: String? = null, val banned: Boolean, - val expires: String? = null, - val published: String, + val expires_at: String? = null, + val published_at: String, val instance_id: InstanceId, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanFromCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanFromCommunity.kt index eac2ebc2..2863b3de 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanFromCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanFromCommunity.kt @@ -4,12 +4,12 @@ import kotlinx.serialization.Serializable @Serializable internal data class ModBanFromCommunity( - val id: Long, + val id: ModBanFromCommunityId, val mod_person_id: PersonId, val other_person_id: PersonId, val community_id: CommunityId, val reason: String? = null, val banned: Boolean, - val expires: String? = null, - val published: String, + val expires_at: String? = null, + val published_at: String, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonCommentMentionId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanFromCommunityId.kt similarity index 51% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonCommentMentionId.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanFromCommunityId.kt index aeed1422..2408402f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonCommentMentionId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanFromCommunityId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -internal typealias PersonCommentMentionId = Long +internal typealias ModBanFromCommunityId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanId.kt new file mode 100644 index 00000000..b30d70d9 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +internal typealias ModBanId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModChangeCommunityVisibility.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModChangeCommunityVisibility.kt index 06e96839..939e2e9c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModChangeCommunityVisibility.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModChangeCommunityVisibility.kt @@ -5,10 +5,9 @@ import kotlinx.serialization.Serializable @Serializable internal data class ModChangeCommunityVisibility( - val id: Long, + val id: ModChangeCommunityVisibilityId, val community_id: CommunityId, val mod_person_id: PersonId, - val published: String, - val reason: String? = null, + val published_at: String, val visibility: CommunityVisibility /* "Public" | "Unlisted" | "LocalOnlyPublic" | "LocalOnlyPrivate" | "Private" */, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModChangeCommunityVisibilityId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModChangeCommunityVisibilityId.kt new file mode 100644 index 00000000..08b7d005 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModChangeCommunityVisibilityId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +internal typealias ModChangeCommunityVisibilityId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModEditPost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModEditPost.kt new file mode 100644 index 00000000..69654dd8 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModEditPost.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ModEditPost( + val post_id: PostId, + val nsfw: Boolean? = null, + val tags: List? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModFeaturePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModFeaturePost.kt index 90e4b7e5..816baf99 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModFeaturePost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModFeaturePost.kt @@ -4,10 +4,10 @@ import kotlinx.serialization.Serializable @Serializable internal data class ModFeaturePost( - val id: Long, + val id: ModFeaturePostId, val mod_person_id: PersonId, val post_id: PostId, val featured: Boolean, - val published: String, + val published_at: String, val is_featured_community: Boolean, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModFeaturePostId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModFeaturePostId.kt new file mode 100644 index 00000000..b9ce8874 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModFeaturePostId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +internal typealias ModFeaturePostId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockPost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockPost.kt index a43d8c9f..34b63da1 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockPost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockPost.kt @@ -4,9 +4,10 @@ import kotlinx.serialization.Serializable @Serializable internal data class ModLockPost( - val id: Long, + val id: ModLockPostId, val mod_person_id: PersonId, val post_id: PostId, val locked: Boolean, - val published: String, + val published_at: String, + val reason: String? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockPostId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockPostId.kt new file mode 100644 index 00000000..e1999e72 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockPostId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +internal typealias ModLockPostId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveComment.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveComment.kt index d0af642a..db53a87b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveComment.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveComment.kt @@ -4,10 +4,10 @@ import kotlinx.serialization.Serializable @Serializable internal data class ModRemoveComment( - val id: Long, + val id: ModRemoveCommentId, val mod_person_id: PersonId, val comment_id: CommentId, val reason: String? = null, val removed: Boolean, - val published: String, + val published_at: String, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveCommentId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveCommentId.kt new file mode 100644 index 00000000..62777bdd --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveCommentId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +internal typealias ModRemoveCommentId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveCommunity.kt index 3eafd99c..62d1d4f6 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveCommunity.kt @@ -4,10 +4,10 @@ import kotlinx.serialization.Serializable @Serializable internal data class ModRemoveCommunity( - val id: Long, + val id: ModRemoveCommunityId, val mod_person_id: PersonId, val community_id: CommunityId, val reason: String? = null, val removed: Boolean, - val published: String, + val published_at: String, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveCommunityId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveCommunityId.kt new file mode 100644 index 00000000..bc282875 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveCommunityId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +internal typealias ModRemoveCommunityId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemovePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemovePost.kt index f94f8997..1226e9db 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemovePost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemovePost.kt @@ -4,10 +4,10 @@ import kotlinx.serialization.Serializable @Serializable internal data class ModRemovePost( - val id: Long, + val id: ModRemovePostId, val mod_person_id: PersonId, val post_id: PostId, val reason: String? = null, val removed: Boolean, - val published: String, + val published_at: String, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemovePostId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemovePostId.kt new file mode 100644 index 00000000..8346d797 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemovePostId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +internal typealias ModRemovePostId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModTransferCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModTransferCommunity.kt index f469f82b..876709ba 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModTransferCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModTransferCommunity.kt @@ -4,9 +4,9 @@ import kotlinx.serialization.Serializable @Serializable internal data class ModTransferCommunity( - val id: Long, + val id: ModTransferCommunityId, val mod_person_id: PersonId, val other_person_id: PersonId, val community_id: CommunityId, - val published: String, + val published_at: String, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModTransferCommunityId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModTransferCommunityId.kt new file mode 100644 index 00000000..c7a776d4 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModTransferCommunityId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +internal typealias ModTransferCommunityId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MultiCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MultiCommunity.kt new file mode 100644 index 00000000..e50adfdf --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MultiCommunity.kt @@ -0,0 +1,18 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class MultiCommunity( + val id: MultiCommunityId, + val creator_id: PersonId, + val instance_id: InstanceId, + val name: String, + val title: String? = null, + val description: String? = null, + val local: Boolean, + val deleted: Boolean, + val ap_id: DbUrl, + val published_at: String, + val updated_at: String? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MultiCommunityFollow.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MultiCommunityFollow.kt new file mode 100644 index 00000000..bb0990c8 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MultiCommunityFollow.kt @@ -0,0 +1,11 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import it.vercruysse.lemmyapi.dto.CommunityFollowerState +import kotlinx.serialization.Serializable + +@Serializable +internal data class MultiCommunityFollow( + val multi_community_id: MultiCommunityId, + val person_id: PersonId, + val follow_state: CommunityFollowerState /* "Accepted" | "Pending" | "ApprovalRequired" */, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MultiCommunityId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MultiCommunityId.kt new file mode 100644 index 00000000..d7165bb7 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MultiCommunityId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +internal typealias MultiCommunityId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MultiCommunityView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MultiCommunityView.kt new file mode 100644 index 00000000..af54730a --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MultiCommunityView.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class MultiCommunityView( + val multi: MultiCommunity, + val owner: Person, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MyUserInfo.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MyUserInfo.kt index 57ac2a53..23846845 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MyUserInfo.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MyUserInfo.kt @@ -8,7 +8,8 @@ internal data class MyUserInfo( val follows: List, val moderates: List, val community_blocks: List, - val instance_blocks: List, + val instance_communities_blocks: List, + val instance_persons_blocks: List, val person_blocks: List, val keyword_blocks: List, val discussion_languages: List, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/NotePerson.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/NotePerson.kt new file mode 100644 index 00000000..c2875f3c --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/NotePerson.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class NotePerson( + val person_id: PersonId, + val note: String, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Notification.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Notification.kt new file mode 100644 index 00000000..db37cdc1 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Notification.kt @@ -0,0 +1,16 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import it.vercruysse.lemmyapi.dto.NotificationType +import kotlinx.serialization.Serializable + +@Serializable +internal data class Notification( + val id: NotificationId, + val recipient_id: PersonId, + val comment_id: CommentId? = null, + val read: Boolean, + val published_at: String, + val kind: NotificationType /* "Mention" | "Reply" | "Subscribed" | "PrivateMessage" */, + val post_id: PostId? = null, + val private_message_id: PrivateMessageId? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/NotificationId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/NotificationId.kt new file mode 100644 index 00000000..14701b9a --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/NotificationId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +internal typealias NotificationId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/NotificationView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/NotificationView.kt new file mode 100644 index 00000000..9f0be07e --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/NotificationView.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import it.vercruysse.lemmyapi.v1.x0.x0.combinedtypes.NotificationData +import kotlinx.serialization.Serializable + +@Serializable +internal data class NotificationView( + val notification: Notification, + val data: NotificationData, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/OAuthAccount.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/OAuthAccount.kt index 19cc5546..db59d342 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/OAuthAccount.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/OAuthAccount.kt @@ -7,6 +7,6 @@ internal data class OAuthAccount( val local_user_id: LocalUserId, val oauth_provider_id: OAuthProviderId, val oauth_user_id: String, - val published: String, - val updated: String? = null, + val published_at: String, + val updated_at: String? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/OAuthProvider.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/OAuthProvider.kt index 703ab221..ee3bacde 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/OAuthProvider.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/OAuthProvider.kt @@ -16,7 +16,7 @@ internal data class OAuthProvider( val auto_verify_email: Boolean, val account_linking_enabled: Boolean, val enabled: Boolean, - val published: String, - val updated: String? = null, + val published_at: String, + val updated_at: String? = null, val use_pkce: Boolean, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Person.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Person.kt index bcab8f44..dfccfd38 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Person.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Person.kt @@ -8,8 +8,8 @@ internal data class Person( val name: String, val display_name: String? = null, val avatar: DbUrl? = null, - val published: String, - val updated: String? = null, + val published_at: String, + val updated_at: String? = null, val ap_id: DbUrl, val bio: String? = null, val local: Boolean, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonActions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonActions.kt index 62e736e7..8f41142f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonActions.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonActions.kt @@ -4,5 +4,10 @@ import kotlinx.serialization.Serializable @Serializable internal data class PersonActions( - val blocked: String? = null, + val blocked_at: String? = null, + val noted_at: String? = null, + val note: String? = null, + val voted_at: String? = null, + val upvotes: Long? = null, + val downvotes: Long? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonCommentMention.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonCommentMention.kt deleted file mode 100644 index 95732c8d..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonCommentMention.kt +++ /dev/null @@ -1,12 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class PersonCommentMention( - val id: PersonCommentMentionId, - val recipient_id: PersonId, - val comment_id: CommentId, - val read: Boolean, - val published: String, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonCommentMentionView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonCommentMentionView.kt deleted file mode 100644 index 21b9d45b..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonCommentMentionView.kt +++ /dev/null @@ -1,23 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class PersonCommentMentionView( - val person_comment_mention: PersonCommentMention, - val recipient: Person, - val comment: Comment, - val creator: Person, - val post: Post, - val community: Community, - val community_actions: CommunityActions? = null, - val comment_actions: CommentActions? = null, - val person_actions: PersonActions? = null, - val instance_actions: InstanceActions? = null, - val creator_home_instance_actions: InstanceActions? = null, - val creator_local_instance_actions: InstanceActions? = null, - val creator_community_actions: CommunityActions? = null, - val creator_is_admin: Boolean, - val can_mod: Boolean, - val creator_banned: Boolean, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonPostMention.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonPostMention.kt deleted file mode 100644 index 9a6231e6..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonPostMention.kt +++ /dev/null @@ -1,12 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class PersonPostMention( - val id: PersonPostMentionId, - val recipient_id: PersonId, - val post_id: PostId, - val read: Boolean, - val published: String, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonPostMentionView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonPostMentionView.kt deleted file mode 100644 index 4cca1b51..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonPostMentionView.kt +++ /dev/null @@ -1,24 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class PersonPostMentionView( - val person_post_mention: PersonPostMention, - val recipient: Person, - val post: Post, - val creator: Person, - val community: Community, - val image_details: ImageDetails? = null, - val community_actions: CommunityActions? = null, - val person_actions: PersonActions? = null, - val post_actions: PostActions? = null, - val instance_actions: InstanceActions? = null, - val creator_home_instance_actions: InstanceActions? = null, - val creator_local_instance_actions: InstanceActions? = null, - val creator_community_actions: CommunityActions? = null, - val post_tags: TagsView, - val creator_is_admin: Boolean, - val can_mod: Boolean, - val creator_banned: Boolean, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonView.kt index 3a2c8a4a..444bf8ae 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonView.kt @@ -6,7 +6,6 @@ import kotlinx.serialization.Serializable internal data class PersonView( val person: Person, val is_admin: Boolean, - val home_instance_actions: InstanceActions? = null, - val local_instance_actions: InstanceActions? = null, + val person_actions: PersonActions? = null, val creator_banned: Boolean, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Post.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Post.kt index 4458f19d..44fb7c8b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Post.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Post.kt @@ -12,8 +12,8 @@ internal data class Post( val community_id: CommunityId, val removed: Boolean, val locked: Boolean, - val published: String, - val updated: String? = null, + val published_at: String, + val updated_at: String? = null, val deleted: Boolean, val nsfw: Boolean, val embed_title: String? = null, @@ -27,12 +27,12 @@ internal data class Post( val featured_local: Boolean, val url_content_type: String? = null, val alt_text: String? = null, - val scheduled_publish_time: String? = null, + val scheduled_publish_time_at: String? = null, val comments: Long, val score: Long, val upvotes: Long, val downvotes: Long, - val newest_comment_time: String, + val newest_comment_time_at: String, val report_count: Long, val unresolved_report_count: Long, val federation_pending: Boolean, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostActions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostActions.kt index 994e5c8f..dfec232d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostActions.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostActions.kt @@ -1,14 +1,16 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes +import it.vercruysse.lemmyapi.dto.PostNotificationsMode import kotlinx.serialization.Serializable @Serializable internal data class PostActions( - val read: String? = null, - val read_comments: String? = null, + val read_at: String? = null, + val read_comments_at: String? = null, val read_comments_amount: Long? = null, - val saved: String? = null, - val liked: String? = null, - val like_score: Long? = null, - val hidden: String? = null, + val saved_at: String? = null, + val liked_at: String? = null, + val like_score: Int? = null, + val hidden_at: String? = null, + val notifications: PostNotificationsMode? /* "AllComments" | "RepliesAndMentions" | "Mute" */ = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostReport.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostReport.kt index bfb5111d..3a31b35e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostReport.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostReport.kt @@ -13,8 +13,7 @@ internal data class PostReport( val reason: String, val resolved: Boolean, val resolver_id: PersonId? = null, - val published: String, - val updated: String? = null, - /** Added in Lemmy 1.0.0 */ + val published_at: String, + val updated_at: String? = null, val violates_instance_rules: Boolean, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostReportView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostReportView.kt index ffa31495..e4b9c3cc 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostReportView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostReportView.kt @@ -9,10 +9,12 @@ internal data class PostReportView( val community: Community, val creator: Person, val post_creator: Person, - val creator_community_actions: CommunityActions? = null, val community_actions: CommunityActions? = null, val post_actions: PostActions? = null, val person_actions: PersonActions? = null, val resolver: Person? = null, val creator_is_admin: Boolean, + val creator_is_moderator: Boolean, + val creator_banned: Boolean, + val creator_banned_from_community: Boolean, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostView.kt index 1674910a..a8355e31 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostView.kt @@ -11,12 +11,10 @@ internal data class PostView( val community_actions: CommunityActions? = null, val person_actions: PersonActions? = null, val post_actions: PostActions? = null, - val instance_actions: InstanceActions? = null, - val creator_home_instance_actions: InstanceActions? = null, - val creator_local_instance_actions: InstanceActions? = null, - val creator_community_actions: CommunityActions? = null, - val creator_is_admin: Boolean, val tags: TagsView, val can_mod: Boolean, val creator_banned: Boolean, + val creator_is_admin: Boolean, + val creator_is_moderator: Boolean, + val creator_banned_from_community: Boolean, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessage.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessage.kt index b202cb3f..80c26298 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessage.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessage.kt @@ -9,9 +9,8 @@ internal data class PrivateMessage( val recipient_id: PersonId, val content: String, val deleted: Boolean, - val read: Boolean, - val published: String, - val updated: String? = null, + val published_at: String, + val updated_at: String? = null, val ap_id: DbUrl, val local: Boolean, val removed: Boolean, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessageReport.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessageReport.kt index dbc17d10..44db2bfa 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessageReport.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessageReport.kt @@ -11,6 +11,6 @@ internal data class PrivateMessageReport( val reason: String, val resolved: Boolean, val resolver_id: PersonId? = null, - val published: String, - val updated: String? = null, + val published_at: String, + val updated_at: String? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessageReportView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessageReportView.kt index 3ea1cce6..1b51ba92 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessageReportView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessageReportView.kt @@ -9,4 +9,6 @@ internal data class PrivateMessageReportView( val creator: Person, val private_message_creator: Person, val resolver: Person? = null, + val creator_is_admin: Boolean, + val creator_banned: Boolean, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ReadableFederationState.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ReadableFederationState.kt index 2743ac41..177070ab 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ReadableFederationState.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ReadableFederationState.kt @@ -7,7 +7,7 @@ internal data class ReadableFederationState( val next_retry: String? = null, val instance_id: InstanceId, val last_successful_id: ActivityId? = null, - val last_successful_published_time: String? = null, + val last_successful_published_time_at: String? = null, val fail_count: Long, - val last_retry: String? = null, + val last_retry_at: String? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RegistrationApplication.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RegistrationApplication.kt index 507f378f..ad8cb1d0 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RegistrationApplication.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RegistrationApplication.kt @@ -9,5 +9,5 @@ internal data class RegistrationApplication( val answer: String, val admin_id: PersonId? = null, val deny_reason: String? = null, - val published: String, + val published_at: String, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ResolveObjectResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ResolveObjectResponse.kt deleted file mode 100644 index d0cc7e42..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ResolveObjectResponse.kt +++ /dev/null @@ -1,11 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class ResolveObjectResponse( - val comment: CommentView? = null, - val post: PostView? = null, - val community: CommunityView? = null, - val person: PersonView? = null, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SaveUserSettings.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SaveUserSettings.kt index d6aa1171..c019a04f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SaveUserSettings.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SaveUserSettings.kt @@ -10,7 +10,7 @@ internal data class SaveUserSettings( val show_nsfw: Boolean? = null, val blur_nsfw: Boolean? = null, val theme: String? = null, - val default_listing_type: ListingType? /* "All" | "Local" | "Subscribed" | "ModeratorView" */ = null, + val default_listing_type: ListingType? /* "All" | "Local" | "Subscribed" | "ModeratorView" | "Suggested" */ = null, val post_listing_mode: PostListingMode? /* "List" | "Card" | "SmallCard" */ = null, val default_post_sort_type: SortType? /* "Active" | "Hot" | "New" | "Old" | "Top" | "MostComments" | "NewComments" | "Controversial" | "Scaled" */ = null, val default_post_time_range_seconds: Long? = null, @@ -35,8 +35,9 @@ internal data class SaveUserSettings( val collapse_bot_comments: Boolean? = null, val show_scores: Boolean? = null, val show_upvotes: Boolean? = null, - val show_downvotes: Boolean? = null, + val show_downvotes: String? /* "Show" | "ShowForOthers" | "Hide" */ = null, val show_upvote_percentage: Boolean? = null, val auto_mark_fetched_posts_as_read: Boolean? = null, val hide_media: Boolean? = null, + val show_person_votes: Boolean? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Search.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Search.kt index bfad8fb8..358bbc6e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Search.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Search.kt @@ -7,18 +7,19 @@ import kotlinx.serialization.Serializable @Serializable internal data class Search( - val search_term: String? = null, + val q: String, val community_id: CommunityId? = null, val community_name: String? = null, val creator_id: PersonId? = null, - val type_: SearchType? /* "All" | "Comments" | "Posts" | "Communities" | "Users" */ = null, + val type_: SearchType? /* "All" | "Comments" | "Posts" | "Communities" | "Users" | "MultiCommunities" */ = null, val sort: SortType? /* "New" | "Top" | "Old" */ = null, val time_range_seconds: Long? = null, - val listing_type: ListingType? /* "All" | "Local" | "Subscribed" | "ModeratorView" */ = null, + val listing_type: ListingType? /* "All" | "Local" | "Subscribed" | "ModeratorView" | "Suggested" */ = null, val title_only: Boolean? = null, val post_url_only: Boolean? = null, val liked_only: Boolean? = null, val disliked_only: Boolean? = null, + val show_nsfw: Boolean? = null, val page_cursor: PaginationCursor? = null, val page_back: Boolean? = null, val limit: Long? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SearchCombinedView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SearchCombinedView.kt deleted file mode 100644 index 1d9ec56f..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SearchCombinedView.kt +++ /dev/null @@ -1,35 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.ExperimentalSerializationApi -import kotlinx.serialization.SerialName -import kotlinx.serialization.json.JsonClassDiscriminator -import kotlinx.serialization.Serializable - -@Serializable -@OptIn(ExperimentalSerializationApi::class) -@JsonClassDiscriminator("type_") -internal sealed class SearchCombinedView { - @Serializable - @SerialName("Post") - internal data class Post( - val post: PostView - ) : SearchCombinedView() - - @Serializable - @SerialName("Comment") - internal data class Comment( - val comment: CommentView - ) : SearchCombinedView() - - @Serializable - @SerialName("Community") - internal data class Community( - val community: CommunityView - ) : SearchCombinedView() - - @Serializable - @SerialName("Person") - internal data class Person( - val person: PersonView - ) : SearchCombinedView() -} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SearchResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SearchResponse.kt index 896e2165..c73a3098 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SearchResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SearchResponse.kt @@ -1,5 +1,6 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes +import it.vercruysse.lemmyapi.v1.x0.x0.combinedtypes.SearchCombinedView import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Site.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Site.kt index 2bb63905..ca55b295 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Site.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Site.kt @@ -2,15 +2,13 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes import kotlinx.serialization.Serializable -// TODO: changes - @Serializable internal data class Site( val id: SiteId, val name: String, val sidebar: String? = null, - val published: String, - val updated: String? = null, + val published_at: String, + val updated_at: String? = null, val icon: DbUrl? = null, val banner: DbUrl? = null, val description: String? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SiteResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SiteResponse.kt index 98451c79..4138b49e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SiteResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SiteResponse.kt @@ -2,10 +2,7 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes import kotlinx.serialization.Serializable -// TODO: research taglines changes - @Serializable internal data class SiteResponse( val site_view: SiteView, -// val taglines: List = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Tag.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Tag.kt index 02a2243d..01740b4a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Tag.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Tag.kt @@ -6,9 +6,11 @@ import kotlinx.serialization.Serializable internal data class Tag( val id: TagId, val ap_id: DbUrl, - val display_name: String, + val name: String, + val display_name: String? = null, + val description: String? = null, val community_id: CommunityId, - val published: String, - val updated: String? = null, + val published_at: String, + val updated_at: String? = null, val deleted: Boolean, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Tagline.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Tagline.kt index 45eff328..dbb967b4 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Tagline.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Tagline.kt @@ -6,6 +6,6 @@ import kotlinx.serialization.Serializable internal data class Tagline( val id: TaglineId, val content: String, - val published: String, - val updated: String? = null, + val published_at: String, + val updated_at: String? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UpdateCommunityNotifications.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UpdateCommunityNotifications.kt new file mode 100644 index 00000000..f7c77b29 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UpdateCommunityNotifications.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import it.vercruysse.lemmyapi.dto.CommunityNotificationsMode +import kotlinx.serialization.Serializable + +@Serializable +internal data class UpdateCommunityNotifications( + val community_id: CommunityId, + val mode: CommunityNotificationsMode /* "AllPostsAndComments" | "AllPosts" | "RepliesAndMentions" | "Mute" */, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UpdateCommunityTag.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UpdateCommunityTag.kt index 49cc6aa7..ebb12880 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UpdateCommunityTag.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UpdateCommunityTag.kt @@ -5,5 +5,6 @@ import kotlinx.serialization.Serializable @Serializable internal data class UpdateCommunityTag( val tag_id: TagId, - val display_name: String, + val display_name: String? = null, + val description: String? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UpdateMultiCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UpdateMultiCommunity.kt new file mode 100644 index 00000000..7c4917b9 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UpdateMultiCommunity.kt @@ -0,0 +1,11 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class UpdateMultiCommunity( + val id: MultiCommunityId, + val title: String? = null, + val description: String? = null, + val deleted: Boolean? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UpdatePostNotifications.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UpdatePostNotifications.kt new file mode 100644 index 00000000..c06320a4 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UpdatePostNotifications.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class UpdatePostNotifications( + val post_id: PostId, + val mode: String /* "AllComments" | "RepliesAndMentions" | "Mute" */, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UserBlockInstanceCommunitiesParams.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UserBlockInstanceCommunitiesParams.kt new file mode 100644 index 00000000..6ab283e8 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UserBlockInstanceCommunitiesParams.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class UserBlockInstanceCommunitiesParams( + val instance_id: InstanceId, + val block: Boolean, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UserBlockInstanceParams.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UserBlockInstancePersonsParams.kt similarity index 76% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UserBlockInstanceParams.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UserBlockInstancePersonsParams.kt index 46ef6814..07427d6a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UserBlockInstanceParams.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UserBlockInstancePersonsParams.kt @@ -3,7 +3,7 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes import kotlinx.serialization.Serializable @Serializable -internal data class UserBlockInstanceParams( +internal data class UserBlockInstancePersonsParams( val instance_id: InstanceId, val block: Boolean, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UserSettingsBackup.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UserSettingsBackup.kt new file mode 100644 index 00000000..742610f8 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UserSettingsBackup.kt @@ -0,0 +1,22 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class UserSettingsBackup( + val display_name: String? = null, + val bio: String? = null, + val avatar: String? = null, + val banner: String? = null, + val matrix_id: String? = null, + val bot_account: Boolean? = null, + val settings: LocalUser? = null, + val followed_communities: List, + val saved_posts: List, + val saved_comments: List, + val blocked_communities: List, + val blocked_users: List, + val blocked_instances: List, + val blocked_instances_communities: List, + val blocked_instances_persons: List, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/VoteView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/VoteView.kt index 4f02c9bb..89217c84 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/VoteView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/VoteView.kt @@ -5,7 +5,7 @@ import kotlinx.serialization.Serializable @Serializable internal data class VoteView( val creator: Person, - val item_id: Long, + val creator_banned: Boolean, val creator_banned_from_community: Boolean, - val score: Long, + val score: Int, ) diff --git a/app/src/jvmTest/kotlin/JavaSerializableTest.kt b/app/src/jvmTest/kotlin/JavaSerializableTest.kt index 069ea2a2..8dc4f7e5 100644 --- a/app/src/jvmTest/kotlin/JavaSerializableTest.kt +++ b/app/src/jvmTest/kotlin/JavaSerializableTest.kt @@ -14,7 +14,7 @@ class JavaSerializableTest { community_id = 1, removed = false, locked = false, - published = "published", + published_at = "published", deleted = false, nsfw = false, ap_id = "ap_id", @@ -22,6 +22,17 @@ class JavaSerializableTest { language_id = 1, featured_community = false, featured_local = false, + url_content_type = null, + alt_text = null, + scheduled_publish_time_at = null, + comments = 0L, + score = 0L, + upvotes = 0L, + downvotes = 0, + newest_comment_time_at = "newest_comment_time", + report_count = 0, + unresolved_report_count = 0, + federation_pending = false, ) assertInstanceOf(Serializable::class.java, post) From 6a1e9cf57e6046edf0fc9fc5913dd7e2bf0b038e Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Mon, 15 Sep 2025 16:41:21 +0200 Subject: [PATCH 009/110] Some more fields --- .../kotlin/it/vercruysse/lemmyapi/datatypes/MyUserInfo.kt | 5 ++--- .../kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt | 3 ++- .../kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt | 3 ++- .../kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt | 3 ++- .../kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt | 3 ++- .../kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt | 3 ++- .../kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt | 3 ++- .../lemmyapi/v1/x0/x0/datatypes/ReadableFederationState.kt | 2 +- 8 files changed, 15 insertions(+), 10 deletions(-) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MyUserInfo.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MyUserInfo.kt index 359c17f0..849b36db 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MyUserInfo.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MyUserInfo.kt @@ -13,9 +13,8 @@ data class MyUserInfo( val moderates: List, val community_blocks: List, - // TODO add mapping once figured out - val instance_blocks: List, - + val instance_community_blocks: List, + val instance_person_blocks: List, val person_blocks: List, /** Added in Lemmy 1.0.0 */ val keyword_blocks: List = emptyList(), diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt index 626268f7..00cb4163 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt @@ -452,7 +452,8 @@ internal class Transformer(var auth: String) : MapperGenerator { follows = d.follows.map { this.toUni(d = it) }, moderates = d.moderates.map { this.toUni(d = it) }, community_blocks = d.community_blocks.map { this.toUni(d = it.community, counts = X5DatatypesCommunityAggregates(-1, -1, -1, -1, -1, "", -1, -1, -1, -1, -1)) }, - instance_blocks = listOf(), + instance_community_blocks = emptyList(), + instance_person_blocks = emptyList(), person_blocks = d.person_blocks.map { this.toUni(d = it.target) }, discussion_languages = d.discussion_languages, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt index 87d26a9b..7e5f4daf 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt @@ -1352,7 +1352,8 @@ internal class Transformer : MapperGenerator { follows = d.follows.map { this.toUni(d = it) }, moderates = d.moderates.map { this.toUni(d = it) }, community_blocks = d.community_blocks.map { this.toUni(d = it.community, counts = X0DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)) }, - instance_blocks = d.instance_blocks.map { this.toUni(d = it.instance) }, + instance_community_blocks = d.instance_blocks.map { this.toUni(d = it.instance) }, + instance_person_blocks = emptyList(), person_blocks = d.person_blocks.map { this.toUni(d = it.target) }, discussion_languages = d.discussion_languages, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt index 08c175c6..efee67e0 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt @@ -1398,7 +1398,8 @@ internal class Transformer : MapperGenerator { follows = d.follows.map { this.toUni(d = it) }, moderates = d.moderates.map { this.toUni(d = it) }, community_blocks = d.community_blocks.map { this.toUni(d = it.community, counts = X11DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)) }, - instance_blocks = d.instance_blocks.map { this.toUni(d = it.instance) }, + instance_community_blocks = d.instance_blocks.map { this.toUni(d = it.instance) }, + instance_person_blocks = emptyList(), person_blocks = d.person_blocks.map { this.toUni(d = it.target) }, discussion_languages = d.discussion_languages, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt index e6132fc6..5bc832b5 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt @@ -1382,7 +1382,8 @@ internal class Transformer : MapperGenerator { follows = d.follows.map { this.toUni(d = it) }, moderates = d.moderates.map { this.toUni(d = it) }, community_blocks = d.community_blocks.map { this.toUni(d = it.community, counts = X3DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)) }, - instance_blocks = d.instance_blocks.map { this.toUni(d = it.instance) }, + instance_community_blocks = d.instance_blocks.map { this.toUni(d = it.instance) }, + instance_person_blocks = emptyList(), person_blocks = d.person_blocks.map { this.toUni(d = it.target) }, discussion_languages = d.discussion_languages, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt index 1f8bca8c..12c00a4e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt @@ -1389,7 +1389,8 @@ internal class Transformer : MapperGenerator { follows = d.follows.map { this.toUni(d = it) }, moderates = d.moderates.map { this.toUni(d = it) }, community_blocks = d.community_blocks.map { this.toUni(d = it.community, counts = X4DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)) }, - instance_blocks = d.instance_blocks.map { this.toUni(d = it.instance) }, + instance_community_blocks = d.instance_blocks.map { this.toUni(d = it.instance) }, + instance_person_blocks = emptyList(), person_blocks = d.person_blocks.map { this.toUni(d = it.target) }, discussion_languages = d.discussion_languages, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt index 0a5d8a16..c377b4bb 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt @@ -1395,7 +1395,8 @@ internal class Transformer : MapperGenerator { follows = d.follows.map { this.toUni(d = it) }, moderates = d.moderates.map { this.toUni(d = it) }, community_blocks = d.community_blocks.map { this.toUni(d = it.community, counts = X6DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)) }, - instance_blocks = d.instance_blocks.map { this.toUni(d = it.instance) }, + instance_community_blocks = d.instance_blocks.map { this.toUni(d = it.instance) }, + instance_person_blocks = emptyList(), person_blocks = d.person_blocks.map { this.toUni(d = it.target) }, discussion_languages = d.discussion_languages, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ReadableFederationState.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ReadableFederationState.kt index 177070ab..aa458b31 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ReadableFederationState.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ReadableFederationState.kt @@ -4,7 +4,7 @@ import kotlinx.serialization.Serializable @Serializable internal data class ReadableFederationState( - val next_retry: String? = null, + val next_retry_at: String? = null, val instance_id: InstanceId, val last_successful_id: ActivityId? = null, val last_successful_published_time_at: String? = null, From ecf7eb17f8949d91803efa2b80286386b7edc007 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Mon, 15 Sep 2025 18:30:21 +0200 Subject: [PATCH 010/110] Fix LocalUserVoteDisplayMode --- .../src/main/kotlin/MapperGenerator0x19x11.kt | 1 - .../src/main/kotlin/MapperGenerator0x19x4.kt | 1 - .../src/main/kotlin/MapperGenerator0x19x6.kt | 1 - .../lemmyapi/datatypes/CommentReplyView.kt | 1 + .../lemmyapi/datatypes/CommunityView.kt | 8 ------ .../lemmyapi/datatypes/CreateCommunity.kt | 5 ++-- .../lemmyapi/datatypes/GetModlog.kt | 17 ++++++++---- .../lemmyapi/datatypes/LocalUser.kt | 4 --- .../lemmyapi/datatypes/LocalUserView.kt | 8 ------ .../datatypes/LocalUserVoteDisplayMode.kt | 18 ------------- .../lemmyapi/v0/x19/x0/Transformer.kt | 1 - .../lemmyapi/v0/x19/x11/MapperGenerator.kt | 3 +-- .../lemmyapi/v0/x19/x11/Transformer.kt | 27 ++++++------------- .../lemmyapi/v0/x19/x4/MapperGenerator.kt | 3 +-- .../lemmyapi/v0/x19/x4/Transformer.kt | 27 ++++++------------- .../lemmyapi/v0/x19/x6/MapperGenerator.kt | 3 +-- .../lemmyapi/v0/x19/x6/Transformer.kt | 27 ++++++------------- 17 files changed, 42 insertions(+), 113 deletions(-) delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUserVoteDisplayMode.kt diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt index 6a154db2..26933448 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt @@ -82,7 +82,6 @@ internal interface MapperGenerator0x19x11 { fun toUni(d: LocalSiteUrlBlocklist): it.vercruysse.lemmyapi.datatypes.LocalSiteUrlBlocklist fun toUni(d: LocalUser): it.vercruysse.lemmyapi.datatypes.LocalUser fun toUni(d: LocalUserView): it.vercruysse.lemmyapi.datatypes.LocalUserView - fun toUni(d: LocalUserVoteDisplayMode): it.vercruysse.lemmyapi.datatypes.LocalUserVoteDisplayMode fun toUni(d: LoginResponse): it.vercruysse.lemmyapi.datatypes.LoginResponse fun toUni(d: LoginToken): it.vercruysse.lemmyapi.datatypes.LoginToken fun toUni(d: ModAdd): it.vercruysse.lemmyapi.datatypes.ModAdd diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt index d0ec5b11..fcf1339b 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt @@ -81,7 +81,6 @@ internal interface MapperGenerator0x19x4 { fun toUni(d: LocalSiteUrlBlocklist): it.vercruysse.lemmyapi.datatypes.LocalSiteUrlBlocklist fun toUni(d: LocalUser): it.vercruysse.lemmyapi.datatypes.LocalUser fun toUni(d: LocalUserView): it.vercruysse.lemmyapi.datatypes.LocalUserView - fun toUni(d: LocalUserVoteDisplayMode): it.vercruysse.lemmyapi.datatypes.LocalUserVoteDisplayMode fun toUni(d: LoginResponse): it.vercruysse.lemmyapi.datatypes.LoginResponse fun toUni(d: LoginToken): it.vercruysse.lemmyapi.datatypes.LoginToken fun toUni(d: ModAdd): it.vercruysse.lemmyapi.datatypes.ModAdd diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt index 450401f6..42497799 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt @@ -82,7 +82,6 @@ internal interface MapperGenerator0x19x6 { fun toUni(d: LocalSiteUrlBlocklist): it.vercruysse.lemmyapi.datatypes.LocalSiteUrlBlocklist fun toUni(d: LocalUser): it.vercruysse.lemmyapi.datatypes.LocalUser fun toUni(d: LocalUserView): it.vercruysse.lemmyapi.datatypes.LocalUserView - fun toUni(d: LocalUserVoteDisplayMode): it.vercruysse.lemmyapi.datatypes.LocalUserVoteDisplayMode fun toUni(d: LoginResponse): it.vercruysse.lemmyapi.datatypes.LoginResponse fun toUni(d: LoginToken): it.vercruysse.lemmyapi.datatypes.LoginToken fun toUni(d: ModAdd): it.vercruysse.lemmyapi.datatypes.ModAdd diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReplyView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReplyView.kt index bb3f8949..82e2ebb1 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReplyView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReplyView.kt @@ -8,6 +8,7 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize // TODO: changed look into it +// IS REMOVED @CommonParcelize @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityView.kt index 36f2330e..75cda557 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityView.kt @@ -4,18 +4,10 @@ import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize -// TODO: changed - @CommonParcelize @Serializable data class CommunityView( val community: Community, - -// val subscribed: SubscribedType /* "Subscribed" | "NotSubscribed" | "Pending" */, -// val blocked: Boolean, -// val counts: CommunityAggregates, -// val banned_from_community: Boolean, - val community_actions: CommunityActions? = null, val can_mod: Boolean, val post_tags: TagsView, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommunity.kt index 230ca8a9..2db89e0d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommunity.kt @@ -6,18 +6,17 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize -// TODO: changed - @CommonParcelize @Serializable data class CreateCommunity( val name: String, val title: String, + val sidebar: String? = null, val description: String? = null, val icon: String? = null, val banner: String? = null, val nsfw: Boolean? = null, val posting_restricted_to_mods: Boolean? = null, val discussion_languages: List? = null, - val visibility: CommunityVisibility? /* "Public" | "LocalOnly" */ = null, + val visibility: CommunityVisibility? /* "Public" | "Unlisted" | "LocalOnlyPublic" | "LocalOnlyPrivate" | "Private" */ = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetModlog.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetModlog.kt index dd622370..2ae1e069 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetModlog.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetModlog.kt @@ -5,18 +5,25 @@ import it.vercruysse.lemmyapi.dto.ModlogActionType import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize - -// TODO: many changes +import it.vercruysse.lemmyapi.dto.ListingType +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PaginationCursor @CommonParcelize @Serializable data class GetModlog( val mod_person_id: PersonId? = null, val community_id: CommunityId? = null, - val page: Long? = null, - val limit: Long? = null, - val type_: ModlogActionType? /* "All" | "ModRemovePost" | "ModLockPost" | "ModFeaturePost" | "ModRemoveComment" | "ModRemoveCommunity" | "ModBanFromCommunity" | "ModAddCommunity" | "ModTransferCommunity" | "ModAdd" | "ModBan" | "ModHideCommunity" | "AdminPurgePerson" | "AdminPurgeCommunity" | "AdminPurgePost" | "AdminPurgeComment" */ = null, + val type_: ModlogActionType? /* "All" | "ModRemovePost" | "ModLockPost" | "ModFeaturePost" | "ModRemoveComment" | "ModRemoveCommunity" | "ModBanFromCommunity" | "ModAddCommunity" | "ModTransferCommunity" | "ModAdd" | "ModBan" | "ModChangeCommunityVisibility" | "AdminPurgePerson" | "AdminPurgeCommunity" | "AdminPurgePost" | "AdminPurgeComment" | "AdminBlockInstance" | "AdminAllowInstance" */ = null, + /** Added in 1.0.0 */ + val listing_type: ListingType? /* "All" | "Local" | "Subscribed" | "ModeratorView" | "Suggested" */ = null, val other_person_id: PersonId? = null, val post_id: PostId? = null, val comment_id: CommentId? = null, + /** Added in 1.0.0 */ + val page_cursor: PaginationCursor? = null, + /** Added in 1.0.0 */ + val page_back: Boolean? = null, + /** Removed in 1.0.0 */ + val page: Long? = null, + val limit: Long? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUser.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUser.kt index 3ca361a7..25421559 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUser.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUser.kt @@ -52,13 +52,9 @@ data class LocalUser( val hide_media: Boolean, /** Added in 1.0.0 */ val default_post_time_range_seconds: Long? = null, - /** Added in 1.0.0 */ val show_score: Boolean, - /** Added in 1.0.0 */ val show_upvotes: Boolean, - /** Added in 1.0.0 */ val show_downvotes: VoteShow /* "Show" | "ShowForOthers" | "Hide" */, - /** Added in 1.0.0 */ val show_upvote_percentage: Boolean, /** Added in 1.0.0 */ val show_person_votes: Boolean, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUserView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUserView.kt index 430421ea..8b1f82bb 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUserView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUserView.kt @@ -6,19 +6,11 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize -// TODO: changes - @CommonParcelize @Serializable data class LocalUserView( val local_user: LocalUser, - // Added in 0.19.4 - // TODO Possible add actual default instead? - // TODO: removed? - // TODO seems to be moved into local_user - val local_user_vote_display_mode: LocalUserVoteDisplayMode? = null, val person: Person, - /** Added in 1.0.0 */ val banned: Boolean, ) : DatatypeRoot, Identity { override val id: Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUserVoteDisplayMode.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUserVoteDisplayMode.kt deleted file mode 100644 index 03cdefe2..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUserVoteDisplayMode.kt +++ /dev/null @@ -1,18 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -// TODO seems removed - -@CommonParcelize -@Serializable -data class LocalUserVoteDisplayMode( - val local_user_id: LocalUserId, - val score: Boolean, - val upvotes: Boolean, - val downvotes: Boolean, - val upvote_percentage: Boolean, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt index 7e5f4daf..602d17b9 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt @@ -1122,7 +1122,6 @@ internal class Transformer : MapperGenerator { local_user = this.toUni(d = d.local_user), person = this.toUni(d = d.person, d.counts), banned = d.person.banned, - local_user_vote_display_mode = null, ) override fun toUni(d: X0DatatypesLoginResponse): LemmyapiDatatypesLoginResponse = diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt index 392006d3..496c1dc2 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt @@ -73,9 +73,8 @@ internal interface MapperGenerator { fun toUni(d: LocalSite): it.vercruysse.lemmyapi.datatypes.LocalSite fun toUni(d: LocalSiteRateLimit): it.vercruysse.lemmyapi.datatypes.LocalSiteRateLimit fun toUni(d: LocalSiteUrlBlocklist): it.vercruysse.lemmyapi.datatypes.LocalSiteUrlBlocklist - fun toUni(d: LocalUser): it.vercruysse.lemmyapi.datatypes.LocalUser + fun toUni(d: LocalUser, e: LocalUserVoteDisplayMode): it.vercruysse.lemmyapi.datatypes.LocalUser fun toUni(d: LocalUserView): it.vercruysse.lemmyapi.datatypes.LocalUserView - fun toUni(d: LocalUserVoteDisplayMode): it.vercruysse.lemmyapi.datatypes.LocalUserVoteDisplayMode fun toUni(d: LoginResponse): it.vercruysse.lemmyapi.datatypes.LoginResponse fun toUni(d: LoginToken): it.vercruysse.lemmyapi.datatypes.LoginToken fun toUni(d: ModAdd): it.vercruysse.lemmyapi.datatypes.ModAdd diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt index efee67e0..d6a66507 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt @@ -137,7 +137,6 @@ import it.vercruysse.lemmyapi.datatypes.LocalSiteRateLimit as LemmyapiDatatypesL import it.vercruysse.lemmyapi.datatypes.LocalSiteUrlBlocklist as LemmyapiDatatypesLocalSiteUrlBlocklist import it.vercruysse.lemmyapi.datatypes.LocalUser as LemmyapiDatatypesLocalUser import it.vercruysse.lemmyapi.datatypes.LocalUserView as LemmyapiDatatypesLocalUserView -import it.vercruysse.lemmyapi.datatypes.LocalUserVoteDisplayMode as LemmyapiDatatypesLocalUserVoteDisplayMode import it.vercruysse.lemmyapi.datatypes.LockPost as LemmyapiDatatypesLockPost import it.vercruysse.lemmyapi.datatypes.Login as LemmyapiDatatypesLogin import it.vercruysse.lemmyapi.datatypes.LoginResponse as LemmyapiDatatypesLoginResponse @@ -1111,7 +1110,7 @@ internal class Transformer : MapperGenerator { updated_at = d.updated, ) - override fun toUni(d: X11DatatypesLocalUser): LemmyapiDatatypesLocalUser = + override fun toUni(d: X11DatatypesLocalUser, e: X11DatatypesLocalUserVoteDisplayMode): LemmyapiDatatypesLocalUser = LemmyapiDatatypesLocalUser( id = d.id, person_id = d.person_id, @@ -1138,12 +1137,11 @@ internal class Transformer : MapperGenerator { enable_animated_images = d.enable_animated_images, collapse_bot_comments = d.collapse_bot_comments, last_donation_notification_at = d.last_donation_notification, - show_score = d.show_scores, - // TODO map uinsg local_user_vote_display_mode - show_upvotes = d.show_scores, - show_person_votes = d.show_scores, - show_upvote_percentage = d.show_scores, - show_downvotes = VoteShow.Show, + show_score = e.score, + show_upvotes = e.upvotes, + show_person_votes = e.score, + show_upvote_percentage = e.upvote_percentage, + show_downvotes = if (e.downvotes) VoteShow.Show else VoteShow.Hide, auto_mark_fetched_posts_as_read = false, default_comment_sort_type = SortType.Active, enable_private_messages = true, @@ -1154,21 +1152,12 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X11DatatypesLocalUserView): LemmyapiDatatypesLocalUserView = LemmyapiDatatypesLocalUserView( - local_user = this.toUni(d = d.local_user), - local_user_vote_display_mode = this.toUni(d = d.local_user_vote_display_mode), + local_user = this.toUni(d = d.local_user, e = d.local_user_vote_display_mode), person = this.toUni(d = d.person, d.counts), banned = d.person.banned, ) - override fun toUni(d: X11DatatypesLocalUserVoteDisplayMode): LemmyapiDatatypesLocalUserVoteDisplayMode = LemmyapiDatatypesLocalUserVoteDisplayMode( - local_user_id = d.local_user_id, - score = d.score, - upvotes = d.upvotes, - downvotes = d.downvotes, - upvote_percentage = d.upvote_percentage, - ) - override fun toUni(d: X11DatatypesLoginResponse): LemmyapiDatatypesLoginResponse = LemmyapiDatatypesLoginResponse( jwt = d.jwt, @@ -1639,7 +1628,7 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X11DatatypesRegistrationApplicationView): LemmyapiDatatypesRegistrationApplicationView = LemmyapiDatatypesRegistrationApplicationView( registration_application = this.toUni(d = d.registration_application), - creator_local_user = this.toUni(d = d.creator_local_user), + creator_local_user = this.toUni(d = d.creator_local_user, e = X11DatatypesLocalUserVoteDisplayMode(-1, true, true, true, true)), creator = this.toUni(d = d.creator), admin = d.admin?.let { this.toUni(d = it) }, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt index 3d5fd3ca..5409f357 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt @@ -73,9 +73,8 @@ internal interface MapperGenerator { fun toUni(d: LocalSite): it.vercruysse.lemmyapi.datatypes.LocalSite fun toUni(d: LocalSiteRateLimit): it.vercruysse.lemmyapi.datatypes.LocalSiteRateLimit fun toUni(d: LocalSiteUrlBlocklist): it.vercruysse.lemmyapi.datatypes.LocalSiteUrlBlocklist - fun toUni(d: LocalUser): it.vercruysse.lemmyapi.datatypes.LocalUser + fun toUni(d: LocalUser, e: LocalUserVoteDisplayMode): it.vercruysse.lemmyapi.datatypes.LocalUser fun toUni(d: LocalUserView): it.vercruysse.lemmyapi.datatypes.LocalUserView - fun toUni(d: LocalUserVoteDisplayMode): it.vercruysse.lemmyapi.datatypes.LocalUserVoteDisplayMode fun toUni(d: LoginToken): it.vercruysse.lemmyapi.datatypes.LoginToken fun toUni(d: LoginResponse): it.vercruysse.lemmyapi.datatypes.LoginResponse fun toUni(d: ModAdd): it.vercruysse.lemmyapi.datatypes.ModAdd diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt index 12c00a4e..7dadb456 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt @@ -135,7 +135,6 @@ import it.vercruysse.lemmyapi.datatypes.LocalSiteRateLimit as LemmyapiDatatypesL import it.vercruysse.lemmyapi.datatypes.LocalSiteUrlBlocklist as LemmyapiDatatypesLocalSiteUrlBlocklist import it.vercruysse.lemmyapi.datatypes.LocalUser as LemmyapiDatatypesLocalUser import it.vercruysse.lemmyapi.datatypes.LocalUserView as LemmyapiDatatypesLocalUserView -import it.vercruysse.lemmyapi.datatypes.LocalUserVoteDisplayMode as LemmyapiDatatypesLocalUserVoteDisplayMode import it.vercruysse.lemmyapi.datatypes.LockPost as LemmyapiDatatypesLockPost import it.vercruysse.lemmyapi.datatypes.Login as LemmyapiDatatypesLogin import it.vercruysse.lemmyapi.datatypes.LoginResponse as LemmyapiDatatypesLoginResponse @@ -1102,7 +1101,7 @@ internal class Transformer : MapperGenerator { updated_at = d.updated, ) - override fun toUni(d: X4DatatypesLocalUser): LemmyapiDatatypesLocalUser = + override fun toUni(d: X4DatatypesLocalUser, e: X4DatatypesLocalUserVoteDisplayMode): LemmyapiDatatypesLocalUser = LemmyapiDatatypesLocalUser( id = d.id, person_id = d.person_id, @@ -1129,13 +1128,12 @@ internal class Transformer : MapperGenerator { enable_animated_images = d.enable_animated_images, collapse_bot_comments = d.collapse_bot_comments, last_donation_notification_at = "", - // TODO: map using local_user_vote_display_mode - show_score = d.show_scores, - show_upvotes = d.show_scores, - show_person_votes = d.show_scores, - show_upvote_percentage = d.show_scores, + show_score = e.score, + show_upvotes = e.upvotes, + show_person_votes = e.score, + show_upvote_percentage = e.upvote_percentage, + show_downvotes = if (e.downvotes) VoteShow.Show else VoteShow.Hide, hide_media = false, - show_downvotes = VoteShow.Show, enable_private_messages = true, default_comment_sort_type = SortType.Active, auto_mark_fetched_posts_as_read = false, @@ -1145,20 +1143,11 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X4DatatypesLocalUserView): LemmyapiDatatypesLocalUserView = LemmyapiDatatypesLocalUserView( - local_user = this.toUni(d = d.local_user), - local_user_vote_display_mode = this.toUni(d = d.local_user_vote_display_mode), + local_user = this.toUni(d = d.local_user, d.local_user_vote_display_mode), person = this.toUni(d = d.person, d.counts), banned = d.person.banned, ) - override fun toUni(d: X4DatatypesLocalUserVoteDisplayMode): LemmyapiDatatypesLocalUserVoteDisplayMode = LemmyapiDatatypesLocalUserVoteDisplayMode( - local_user_id = d.local_user_id, - score = d.score, - upvotes = d.upvotes, - downvotes = d.downvotes, - upvote_percentage = d.upvote_percentage, - ) - override fun toUni(d: X4DatatypesLoginToken): LemmyapiDatatypesLoginToken = LemmyapiDatatypesLoginToken( user_id = d.user_id, @@ -1629,7 +1618,7 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X4DatatypesRegistrationApplicationView): LemmyapiDatatypesRegistrationApplicationView = LemmyapiDatatypesRegistrationApplicationView( registration_application = this.toUni(d = d.registration_application), - creator_local_user = this.toUni(d = d.creator_local_user), + creator_local_user = this.toUni(d = d.creator_local_user, e = X4DatatypesLocalUserVoteDisplayMode(-1, true, true, true, true)), creator = this.toUni(d = d.creator), admin = d.admin?.let { this.toUni(d = it) }, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt index 5b15ee24..72858ad5 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt @@ -75,9 +75,8 @@ internal interface MapperGenerator { fun toUni(d: LocalSite): it.vercruysse.lemmyapi.datatypes.LocalSite fun toUni(d: LocalSiteRateLimit): it.vercruysse.lemmyapi.datatypes.LocalSiteRateLimit fun toUni(d: LocalSiteUrlBlocklist): it.vercruysse.lemmyapi.datatypes.LocalSiteUrlBlocklist - fun toUni(d: LocalUser): it.vercruysse.lemmyapi.datatypes.LocalUser + fun toUni(d: LocalUser, e: LocalUserVoteDisplayMode): it.vercruysse.lemmyapi.datatypes.LocalUser fun toUni(d: LocalUserView): it.vercruysse.lemmyapi.datatypes.LocalUserView - fun toUni(d: LocalUserVoteDisplayMode): it.vercruysse.lemmyapi.datatypes.LocalUserVoteDisplayMode fun toUni(d: LoginResponse): it.vercruysse.lemmyapi.datatypes.LoginResponse fun toUni(d: LoginToken): it.vercruysse.lemmyapi.datatypes.LoginToken fun toUni(d: ModAdd): it.vercruysse.lemmyapi.datatypes.ModAdd diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt index c377b4bb..06afe4f3 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt @@ -137,7 +137,6 @@ import it.vercruysse.lemmyapi.datatypes.LocalSiteRateLimit as LemmyapiDatatypesL import it.vercruysse.lemmyapi.datatypes.LocalSiteUrlBlocklist as LemmyapiDatatypesLocalSiteUrlBlocklist import it.vercruysse.lemmyapi.datatypes.LocalUser as LemmyapiDatatypesLocalUser import it.vercruysse.lemmyapi.datatypes.LocalUserView as LemmyapiDatatypesLocalUserView -import it.vercruysse.lemmyapi.datatypes.LocalUserVoteDisplayMode as LemmyapiDatatypesLocalUserVoteDisplayMode import it.vercruysse.lemmyapi.datatypes.LockPost as LemmyapiDatatypesLockPost import it.vercruysse.lemmyapi.datatypes.Login as LemmyapiDatatypesLogin import it.vercruysse.lemmyapi.datatypes.LoginResponse as LemmyapiDatatypesLoginResponse @@ -1110,7 +1109,7 @@ internal class Transformer : MapperGenerator { updated_at = d.updated, ) - override fun toUni(d: X6DatatypesLocalUser): LemmyapiDatatypesLocalUser = + override fun toUni(d: X6DatatypesLocalUser, e: X6DatatypesLocalUserVoteDisplayMode): LemmyapiDatatypesLocalUser = LemmyapiDatatypesLocalUser( id = d.id, person_id = d.person_id, @@ -1137,13 +1136,12 @@ internal class Transformer : MapperGenerator { enable_animated_images = d.enable_animated_images, collapse_bot_comments = d.collapse_bot_comments, last_donation_notification_at = "", - // TODO: map using local_user_vote_display_mode - show_score = d.show_scores, - show_upvotes = d.show_scores, - show_person_votes = d.show_scores, - show_upvote_percentage = d.show_scores, + show_score = e.score, + show_upvotes = e.upvotes, + show_person_votes = e.score, + show_upvote_percentage = e.upvote_percentage, + show_downvotes = if (e.downvotes) VoteShow.Show else VoteShow.Hide, hide_media = false, - show_downvotes = VoteShow.Show, enable_private_messages = true, default_comment_sort_type = SortType.Active, auto_mark_fetched_posts_as_read = false, @@ -1152,20 +1150,11 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X6DatatypesLocalUserView): LemmyapiDatatypesLocalUserView = LemmyapiDatatypesLocalUserView( - local_user = this.toUni(d = d.local_user), - local_user_vote_display_mode = this.toUni(d = d.local_user_vote_display_mode), + local_user = this.toUni(d = d.local_user, e = d.local_user_vote_display_mode), person = this.toUni(d = d.person, d.counts), banned = d.person.banned, ) - override fun toUni(d: X6DatatypesLocalUserVoteDisplayMode): LemmyapiDatatypesLocalUserVoteDisplayMode = LemmyapiDatatypesLocalUserVoteDisplayMode( - local_user_id = d.local_user_id, - score = d.score, - upvotes = d.upvotes, - downvotes = d.downvotes, - upvote_percentage = d.upvote_percentage, - ) - override fun toUni(d: X6DatatypesLoginResponse): LemmyapiDatatypesLoginResponse = LemmyapiDatatypesLoginResponse( jwt = d.jwt, @@ -1635,7 +1624,7 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X6DatatypesRegistrationApplicationView): LemmyapiDatatypesRegistrationApplicationView = LemmyapiDatatypesRegistrationApplicationView( registration_application = this.toUni(d = d.registration_application), - creator_local_user = this.toUni(d = d.creator_local_user), + creator_local_user = this.toUni(d = d.creator_local_user, e = X6DatatypesLocalUserVoteDisplayMode(-1, true, true, true, true)), creator = this.toUni(d = d.creator), admin = d.admin?.let { this.toUni(d = it) }, ) From c7dda7a1ffa96e669e242033f0057a8f376b747d Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Tue, 16 Sep 2025 21:15:18 +0200 Subject: [PATCH 011/110] Remove SiteAggregates --- .../src/main/kotlin/MapperGenerator0x18x5.kt | 1 - .../src/main/kotlin/MapperGenerator0x19x0.kt | 1 - .../src/main/kotlin/MapperGenerator0x19x11.kt | 1 - .../src/main/kotlin/MapperGenerator0x19x3.kt | 1 - .../src/main/kotlin/MapperGenerator0x19x4.kt | 1 - .../src/main/kotlin/MapperGenerator0x19x6.kt | 1 - .../lemmyapi/datatypes/GetSiteResponse.kt | 22 +++-- .../lemmyapi/datatypes/LocalSite.kt | 25 ++++-- .../it/vercruysse/lemmyapi/datatypes/Site.kt | 3 +- .../lemmyapi/datatypes/SiteAggregates.kt | 22 ----- .../vercruysse/lemmyapi/datatypes/SiteView.kt | 5 +- .../lemmyapi/v0/x18/x5/MapperGenerator.kt | 3 +- .../lemmyapi/v0/x18/x5/Transformer.kt | 86 ++++++++++--------- .../lemmyapi/v0/x19/x0/MapperGenerator.kt | 3 +- .../lemmyapi/v0/x19/x0/Transformer.kt | 50 ++++++----- .../lemmyapi/v0/x19/x11/MapperGenerator.kt | 3 +- .../lemmyapi/v0/x19/x11/Transformer.kt | 48 ++++++----- .../lemmyapi/v0/x19/x3/MapperGenerator.kt | 3 +- .../lemmyapi/v0/x19/x3/Transformer.kt | 50 ++++++----- .../lemmyapi/v0/x19/x4/MapperGenerator.kt | 3 +- .../lemmyapi/v0/x19/x4/Transformer.kt | 48 ++++++----- .../lemmyapi/v0/x19/x6/MapperGenerator.kt | 3 +- .../lemmyapi/v0/x19/x6/Transformer.kt | 48 ++++++----- .../lemmyapi/v1/x0/x0/datatypes/LocalSite.kt | 3 +- 24 files changed, 231 insertions(+), 203 deletions(-) delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SiteAggregates.kt diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x18x5.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x18x5.kt index e8604c62..6423f26c 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x18x5.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x18x5.kt @@ -262,7 +262,6 @@ internal interface MapperGenerator0x18x5 { fun toUni(d: ResolveObjectResponse): it.vercruysse.lemmyapi.datatypes.ResolveObjectResponse fun toUni(d: SearchResponse): it.vercruysse.lemmyapi.datatypes.SearchResponse fun toUni(d: Site): it.vercruysse.lemmyapi.datatypes.Site - fun toUni(d: SiteAggregates): it.vercruysse.lemmyapi.datatypes.SiteAggregates fun toUni(d: SiteResponse): it.vercruysse.lemmyapi.datatypes.SiteResponse fun toUni(d: SiteView): it.vercruysse.lemmyapi.datatypes.SiteView fun toUni(d: Tagline): it.vercruysse.lemmyapi.datatypes.Tagline diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x0.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x0.kt index 1cf63a4c..d42e2b35 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x0.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x0.kt @@ -220,7 +220,6 @@ internal interface MapperGenerator0x19x0 { fun toUni(d: ResolveObjectResponse): it.vercruysse.lemmyapi.datatypes.ResolveObjectResponse fun toUni(d: SearchResponse): it.vercruysse.lemmyapi.datatypes.SearchResponse fun toUni(d: Site): it.vercruysse.lemmyapi.datatypes.Site - fun toUni(d: SiteAggregates): it.vercruysse.lemmyapi.datatypes.SiteAggregates fun toUni(d: SiteResponse): it.vercruysse.lemmyapi.datatypes.SiteResponse fun toUni(d: SiteView): it.vercruysse.lemmyapi.datatypes.SiteView fun toUni(d: Tagline): it.vercruysse.lemmyapi.datatypes.Tagline diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt index 26933448..ab15eeaa 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt @@ -131,7 +131,6 @@ internal interface MapperGenerator0x19x11 { fun toUni(d: ResolveObjectResponse): it.vercruysse.lemmyapi.datatypes.ResolveObjectResponse fun toUni(d: SearchResponse): it.vercruysse.lemmyapi.datatypes.SearchResponse fun toUni(d: Site): it.vercruysse.lemmyapi.datatypes.Site - fun toUni(d: SiteAggregates): it.vercruysse.lemmyapi.datatypes.SiteAggregates fun toUni(d: SiteResponse): it.vercruysse.lemmyapi.datatypes.SiteResponse fun toUni(d: SiteView): it.vercruysse.lemmyapi.datatypes.SiteView fun toUni(d: Tagline): it.vercruysse.lemmyapi.datatypes.Tagline diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x3.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x3.kt index 5975fc8d..51cb132e 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x3.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x3.kt @@ -221,7 +221,6 @@ internal interface MapperGenerator0x19x3 { fun toUni(d: ResolveObjectResponse): it.vercruysse.lemmyapi.datatypes.ResolveObjectResponse fun toUni(d: SearchResponse): it.vercruysse.lemmyapi.datatypes.SearchResponse fun toUni(d: Site): it.vercruysse.lemmyapi.datatypes.Site - fun toUni(d: SiteAggregates): it.vercruysse.lemmyapi.datatypes.SiteAggregates fun toUni(d: SiteResponse): it.vercruysse.lemmyapi.datatypes.SiteResponse fun toUni(d: SiteView): it.vercruysse.lemmyapi.datatypes.SiteView fun toUni(d: Tagline): it.vercruysse.lemmyapi.datatypes.Tagline diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt index fcf1339b..747d11b6 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt @@ -130,7 +130,6 @@ internal interface MapperGenerator0x19x4 { fun toUni(d: ResolveObjectResponse): it.vercruysse.lemmyapi.datatypes.ResolveObjectResponse fun toUni(d: SearchResponse): it.vercruysse.lemmyapi.datatypes.SearchResponse fun toUni(d: Site): it.vercruysse.lemmyapi.datatypes.Site - fun toUni(d: SiteAggregates): it.vercruysse.lemmyapi.datatypes.SiteAggregates fun toUni(d: SiteResponse): it.vercruysse.lemmyapi.datatypes.SiteResponse fun toUni(d: SiteView): it.vercruysse.lemmyapi.datatypes.SiteView fun toUni(d: Tagline): it.vercruysse.lemmyapi.datatypes.Tagline diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt index 42497799..06d21e02 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt @@ -131,7 +131,6 @@ internal interface MapperGenerator0x19x6 { fun toUni(d: ResolveObjectResponse): it.vercruysse.lemmyapi.datatypes.ResolveObjectResponse fun toUni(d: SearchResponse): it.vercruysse.lemmyapi.datatypes.SearchResponse fun toUni(d: Site): it.vercruysse.lemmyapi.datatypes.Site - fun toUni(d: SiteAggregates): it.vercruysse.lemmyapi.datatypes.SiteAggregates fun toUni(d: SiteResponse): it.vercruysse.lemmyapi.datatypes.SiteResponse fun toUni(d: SiteView): it.vercruysse.lemmyapi.datatypes.SiteView fun toUni(d: Tagline): it.vercruysse.lemmyapi.datatypes.Tagline diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetSiteResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetSiteResponse.kt index f2592169..2465ab77 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetSiteResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetSiteResponse.kt @@ -5,18 +5,28 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize -// TODO: many changes - @CommonParcelize @Serializable data class GetSiteResponse( val site_view: SiteView, val admins: List, val version: String, - val my_user: MyUserInfo? = null, val all_languages: List, val discussion_languages: List, - val taglines: List, - val custom_emojis: List, val blocked_urls: List, -) : DatatypeRoot + /** Removed in 1.0.0 */ + // TODO remove ? + val my_user: MyUserInfo? = null, + /** Removed in 1.0.0 */ + // TODO remove + val custom_emojis: List, + val tagline: Tagline? = null, + /** Added in 1.0.0 */ + val oauth_providers: List, + /** Added in 1.0.0 */ + val admin_oauth_providers: List, + /** Added in 1.0.0 */ + val image_upload_disabled: Boolean, + /** Added in 1.0.0 */ + val active_plugins: List, + ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalSite.kt index 1c273b63..a580b5d2 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalSite.kt @@ -9,6 +9,7 @@ import it.vercruysse.lemmyapi.dto.ListingType import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.dto.FederationMode // TODO: lots of changes @@ -18,8 +19,6 @@ data class LocalSite( override val id: LocalSiteId, val site_id: SiteId, val site_setup: Boolean, - val enable_downvotes: Boolean, - val enable_nsfw: Boolean, val community_creation_admin_only: Boolean, val require_email_verification: Boolean, val application_question: String? = null, @@ -27,8 +26,6 @@ data class LocalSite( val default_theme: String, val default_post_listing_type: ListingType /* "All" | "Local" | "Subscribed" | "ModeratorView" */, val legal_information: String? = null, - /** Removed in Lemmy 1.0.0 */ - val hide_modlog_mod_names: Boolean, val application_email_admins: Boolean, val slur_filter_regex: String? = null, val actor_name_max_length: Long, @@ -42,4 +39,22 @@ data class LocalSite( val federation_signed_fetch: Boolean, val default_post_listing_mode: PostListingMode /* "List" | "Card" | "SmallCard" */, val default_sort_type: SortType /* "Active" | "Hot" | "New" | "Old" | "TopDay" | "TopWeek" | "TopMonth" | "TopYear" | "TopAll" | "MostComments" | "NewComments" | "TopHour" | "TopSixHour" | "TopTwelveHour" | "TopThreeMonths" | "TopSixMonths" | "TopNineMonths" | "Controversial" | "Scaled" */, -) : DatatypeRoot, Identity + val default_comment_sort_type: SortType /* "Hot" | "Top" | "New" | "Old" | "Controversial" */, + val oauth_registration: Boolean, + val post_upvotes: FederationMode /* "All" | "Local" | "Disable" */, + val post_downvotes: FederationMode /* "All" | "Local" | "Disable" */, + val comment_upvotes: FederationMode /* "All" | "Local" | "Disable" */, + val comment_downvotes: FederationMode /* "All" | "Local" | "Disable" */, + val default_post_time_range_seconds: Long? = null, + val disallow_nsfw_content: Boolean, + val users: Long, + val posts: Long, + val comments: Long, + val communities: Long, + val users_active_day: Long, + val users_active_week: Long, + val users_active_month: Long, + val users_active_half_year: Long, + val disable_email_notifications: Boolean, + val suggested_communities: MultiCommunityId? = null, + ) : DatatypeRoot, Identity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Site.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Site.kt index f27482f7..3a22dcd7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Site.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Site.kt @@ -6,8 +6,6 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize -// TODO: changes - @CommonParcelize @Serializable data class Site( @@ -22,6 +20,7 @@ data class Site( val ap_id: String, val last_refreshed_at: String, val inbox_url: String, + val public_key: String? = null, val instance_id: InstanceId, val content_warning: String? = null, ) : DatatypeRoot, Identity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SiteAggregates.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SiteAggregates.kt deleted file mode 100644 index 9acdebc0..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SiteAggregates.kt +++ /dev/null @@ -1,22 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -// TODO: changes - -@CommonParcelize -@Serializable -data class SiteAggregates( - val site_id: SiteId, - val users: Long, - val posts: Long, - val comments: Long, - val communities: Long, - val users_active_day: Long, - val users_active_week: Long, - val users_active_month: Long, - val users_active_half_year: Long, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SiteView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SiteView.kt index 95d06506..13d8de0d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SiteView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SiteView.kt @@ -6,15 +6,14 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize -// TODO: changes - @CommonParcelize @Serializable data class SiteView( val site: Site, val local_site: LocalSite, val local_site_rate_limit: LocalSiteRateLimit, - val counts: SiteAggregates, + /** Added in 1.0.0 */ + val instance: Instance?, ) : DatatypeRoot, Identity { override val id: Long get() = site.id diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/MapperGenerator.kt index 78f28e37..9c9111de 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/MapperGenerator.kt @@ -39,7 +39,7 @@ internal interface MapperGenerator { fun toUni(d: GetSiteResponse): it.vercruysse.lemmyapi.datatypes.GetSiteResponse - fun toUni(d: LocalSite): it.vercruysse.lemmyapi.datatypes.LocalSite + fun toUni(d: LocalSite, counts: SiteAggregates): it.vercruysse.lemmyapi.datatypes.LocalSite fun toUni(d: PersonMentionView): it.vercruysse.lemmyapi.datatypes.PersonMentionView @@ -157,7 +157,6 @@ internal interface MapperGenerator { fun toUni(d: ResolveObjectResponse): it.vercruysse.lemmyapi.datatypes.ResolveObjectResponse fun toUni(d: SearchResponse): it.vercruysse.lemmyapi.datatypes.SearchResponse fun toUni(d: Site): it.vercruysse.lemmyapi.datatypes.Site - fun toUni(d: SiteAggregates): it.vercruysse.lemmyapi.datatypes.SiteAggregates fun toUni(d: SiteResponse): it.vercruysse.lemmyapi.datatypes.SiteResponse fun toUni(d: SiteView): it.vercruysse.lemmyapi.datatypes.SiteView fun toUni(d: Tagline): it.vercruysse.lemmyapi.datatypes.Tagline diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt index 00cb4163..d71c2c94 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt @@ -2,11 +2,14 @@ package it.vercruysse.lemmyapi.v0.x18.x5 import it.vercruysse.lemmyapi.datatypes.CommentActions import it.vercruysse.lemmyapi.datatypes.CommunityActions +import it.vercruysse.lemmyapi.datatypes.GetModlogResponse import it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState +import it.vercruysse.lemmyapi.datatypes.ModlogCombinedView import it.vercruysse.lemmyapi.datatypes.PersonActions import it.vercruysse.lemmyapi.datatypes.PostActions import it.vercruysse.lemmyapi.dto.CommunityFollowerState import it.vercruysse.lemmyapi.dto.CommunityVisibility +import it.vercruysse.lemmyapi.dto.FederationMode import it.vercruysse.lemmyapi.dto.PostListingMode import it.vercruysse.lemmyapi.dto.SortType import it.vercruysse.lemmyapi.dto.VoteShow @@ -197,7 +200,6 @@ import it.vercruysse.lemmyapi.datatypes.SaveUserSettings as LemmyapiDatatypesSav import it.vercruysse.lemmyapi.datatypes.Search as LemmyapiDatatypesSearch import it.vercruysse.lemmyapi.datatypes.SearchResponse as LemmyapiDatatypesSearchResponse import it.vercruysse.lemmyapi.datatypes.Site as LemmyapiDatatypesSite -import it.vercruysse.lemmyapi.datatypes.SiteAggregates as LemmyapiDatatypesSiteAggregates import it.vercruysse.lemmyapi.datatypes.SiteResponse as LemmyapiDatatypesSiteResponse import it.vercruysse.lemmyapi.datatypes.SiteView as LemmyapiDatatypesSiteView import it.vercruysse.lemmyapi.datatypes.Tagline as LemmyapiDatatypesTagline @@ -578,18 +580,20 @@ internal class Transformer(var auth: String) : MapperGenerator { my_user = d.my_user?.let { this.toUni(d = it) }, all_languages = d.all_languages.map { this.toUni(d = it) }, discussion_languages = d.discussion_languages, - taglines = d.taglines.map { this.toUni(d = it) }, custom_emojis = d.custom_emojis.map { this.toUni(d = it) }, - blocked_urls = listOf(), + blocked_urls = emptyList(), + tagline = if (d.taglines.isEmpty()) null else this.toUni(d = d.taglines.random()), + oauth_providers = emptyList(), + admin_oauth_providers = emptyList(), + image_upload_disabled = false, + active_plugins = emptyList(), ) - override fun toUni(d: X5DatatypesLocalSite): LemmyapiDatatypesLocalSite = + override fun toUni(d: X5DatatypesLocalSite, counts: X5DatatypesSiteAggregates): LemmyapiDatatypesLocalSite = LemmyapiDatatypesLocalSite( id = d.id, site_id = d.site_id, site_setup = d.site_setup, - enable_downvotes = d.enable_downvotes, - enable_nsfw = d.enable_nsfw, community_creation_admin_only = d.community_creation_admin_only, require_email_verification = d.require_email_verification, application_question = d.application_question, @@ -597,7 +601,6 @@ internal class Transformer(var auth: String) : MapperGenerator { default_theme = d.default_theme, default_post_listing_type = d.default_post_listing_type, legal_information = d.legal_information, - hide_modlog_mod_names = d.hide_modlog_mod_names, application_email_admins = d.application_email_admins, slur_filter_regex = d.slur_filter_regex, actor_name_max_length = d.actor_name_max_length, @@ -611,6 +614,24 @@ internal class Transformer(var auth: String) : MapperGenerator { federation_signed_fetch = false, default_post_listing_mode = PostListingMode.Card, default_sort_type = SortType.Active, + disallow_nsfw_content = !d.enable_nsfw, + oauth_registration = false, + disable_email_notifications = false, + suggested_communities = null, + default_comment_sort_type = SortType.Active, + default_post_time_range_seconds = null, + post_upvotes = FederationMode.All, + post_downvotes = if (d.enable_downvotes) FederationMode.All else FederationMode.Disable, + comment_upvotes = FederationMode.All, + comment_downvotes = if (d.enable_downvotes) FederationMode.All else FederationMode.Disable, + users = counts.users, + posts = counts.posts, + comments = counts.comments, + communities = counts.communities, + users_active_day = counts.users_active_day, + users_active_week = counts.users_active_week, + users_active_month = counts.users_active_month, + users_active_half_year = counts.users_active_half_year, ) override fun toUni(d: X5DatatypesPersonMentionView): LemmyapiDatatypesPersonMentionView = @@ -910,114 +931,114 @@ internal class Transformer(var auth: String) : MapperGenerator { ) override fun toUni(d: X5DatatypesGetModlogResponse): LemmyapiDatatypesGetModlogResponse { - val modlogList = mutableListOf() + val modlogList = mutableListOf() // Add ModRemovePost entries modlogList.addAll( d.removed_posts.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemovePost(mod_remove_post = this.toUni(d = view)) + ModlogCombinedView.ModRemovePost(mod_remove_post = this.toUni(d = view)) }, ) // Add ModLockPost entries modlogList.addAll( d.locked_posts.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModLockPost(mod_lock_post = this.toUni(d = view)) + ModlogCombinedView.ModLockPost(mod_lock_post = this.toUni(d = view)) }, ) // Add ModFeaturePost entries modlogList.addAll( d.featured_posts.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModFeaturePost(mod_feature_post = this.toUni(d = view)) + ModlogCombinedView.ModFeaturePost(mod_feature_post = this.toUni(d = view)) }, ) // Add ModRemoveComment entries modlogList.addAll( d.removed_comments.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemoveComment(mod_remove_comment = this.toUni(d = view)) + ModlogCombinedView.ModRemoveComment(mod_remove_comment = this.toUni(d = view)) }, ) // Add ModRemoveCommunity entries modlogList.addAll( d.removed_communities.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemoveCommunity(mod_remove_community = this.toUni(d = view)) + ModlogCombinedView.ModRemoveCommunity(mod_remove_community = this.toUni(d = view)) }, ) // Add ModBanFromCommunity entries modlogList.addAll( d.banned_from_community.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModBanFromCommunity(mod_ban_from_community = this.toUni(d = view)) + ModlogCombinedView.ModBanFromCommunity(mod_ban_from_community = this.toUni(d = view)) }, ) // Add ModBan entries modlogList.addAll( d.banned.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModBan(mod_ban = this.toUni(d = view)) + ModlogCombinedView.ModBan(mod_ban = this.toUni(d = view)) }, ) // Add ModAddCommunity entries modlogList.addAll( d.added_to_community.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModAddCommunity(mod_add_community = this.toUni(d = view)) + ModlogCombinedView.ModAddCommunity(mod_add_community = this.toUni(d = view)) }, ) // Add ModTransferCommunity entries modlogList.addAll( d.transferred_to_community.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModTransferCommunity(mod_transfer_community = this.toUni(d = view)) + ModlogCombinedView.ModTransferCommunity(mod_transfer_community = this.toUni(d = view)) }, ) // Add ModAdd entries modlogList.addAll( d.added.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModAdd(mod_add = this.toUni(d = view)) + ModlogCombinedView.ModAdd(mod_add = this.toUni(d = view)) }, ) // Add AdminPurgePerson entries modlogList.addAll( d.admin_purged_persons.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgePerson(admin_purge_person = this.toUni(d = view)) + ModlogCombinedView.AdminPurgePerson(admin_purge_person = this.toUni(d = view)) }, ) // Add AdminPurgeCommunity entries modlogList.addAll( d.admin_purged_communities.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgeCommunity(admin_purge_community = this.toUni(d = view)) + ModlogCombinedView.AdminPurgeCommunity(admin_purge_community = this.toUni(d = view)) }, ) // Add AdminPurgePost entries modlogList.addAll( d.admin_purged_posts.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgePost(admin_purge_post = this.toUni(d = view)) + ModlogCombinedView.AdminPurgePost(admin_purge_post = this.toUni(d = view)) }, ) // Add AdminPurgeComment entries modlogList.addAll( d.admin_purged_comments.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgeComment(admin_purge_comment = this.toUni(d = view)) + ModlogCombinedView.AdminPurgeComment(admin_purge_comment = this.toUni(d = view)) }, ) // Add ModHideCommunity entries (mapped to ModChangeCommunityVisibility) modlogList.addAll( d.hidden_communities.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModChangeCommunityVisibility(mod_change_community_visibility = this.toUni(d = view)) + ModlogCombinedView.ModChangeCommunityVisibility(mod_change_community_visibility = this.toUni(d = view)) }, ) - return it.vercruysse.lemmyapi.datatypes.GetModlogResponse( + return GetModlogResponse( modlog = modlogList, next_page = null, prev_page = null, @@ -1534,19 +1555,6 @@ internal class Transformer(var auth: String) : MapperGenerator { instance_id = d.instance_id, ) - override fun toUni(d: X5DatatypesSiteAggregates): LemmyapiDatatypesSiteAggregates = - LemmyapiDatatypesSiteAggregates( - site_id = d.site_id, - users = d.users, - posts = d.posts, - comments = d.comments, - communities = d.communities, - users_active_day = d.users_active_day, - users_active_week = d.users_active_week, - users_active_month = d.users_active_month, - users_active_half_year = d.users_active_half_year, - ) - override fun toUni(d: X5DatatypesSiteResponse): LemmyapiDatatypesSiteResponse = LemmyapiDatatypesSiteResponse( site_view = this.toUni(d = d.site_view), @@ -1555,9 +1563,9 @@ internal class Transformer(var auth: String) : MapperGenerator { override fun toUni(d: X5DatatypesSiteView): LemmyapiDatatypesSiteView = LemmyapiDatatypesSiteView( site = this.toUni(d = d.site), - local_site = this.toUni(d = d.local_site), + local_site = this.toUni(d = d.local_site, counts = d.counts), local_site_rate_limit = this.toUni(d = d.local_site_rate_limit), - counts = this.toUni(d = d.counts), + instance = null, ) override fun toUni(d: X5DatatypesTagline): LemmyapiDatatypesTagline = LemmyapiDatatypesTagline( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt index dc86c992..4f9a3cac 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt @@ -24,7 +24,7 @@ internal interface MapperGenerator { fun toUni(d: GetSiteResponse): it.vercruysse.lemmyapi.datatypes.GetSiteResponse - fun toUni(d: LocalSite): it.vercruysse.lemmyapi.datatypes.LocalSite + fun toUni(d: LocalSite, counts: SiteAggregates): it.vercruysse.lemmyapi.datatypes.LocalSite fun toUni(d: PersonMentionView): it.vercruysse.lemmyapi.datatypes.PersonMentionView @@ -149,7 +149,6 @@ internal interface MapperGenerator { fun toUni(d: ResolveObjectResponse): it.vercruysse.lemmyapi.datatypes.ResolveObjectResponse fun toUni(d: SearchResponse): it.vercruysse.lemmyapi.datatypes.SearchResponse fun toUni(d: Site): it.vercruysse.lemmyapi.datatypes.Site - fun toUni(d: SiteAggregates): it.vercruysse.lemmyapi.datatypes.SiteAggregates fun toUni(d: SiteResponse): it.vercruysse.lemmyapi.datatypes.SiteResponse fun toUni(d: SiteView): it.vercruysse.lemmyapi.datatypes.SiteView fun toUni(d: Tagline): it.vercruysse.lemmyapi.datatypes.Tagline diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt index 602d17b9..0debb0c6 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt @@ -6,6 +6,7 @@ import it.vercruysse.lemmyapi.datatypes.PersonActions import it.vercruysse.lemmyapi.datatypes.PostActions import it.vercruysse.lemmyapi.dto.CommunityFollowerState import it.vercruysse.lemmyapi.dto.CommunityVisibility +import it.vercruysse.lemmyapi.dto.FederationMode import it.vercruysse.lemmyapi.dto.PostListingMode import it.vercruysse.lemmyapi.dto.SortType import it.vercruysse.lemmyapi.dto.VoteShow @@ -201,7 +202,6 @@ import it.vercruysse.lemmyapi.datatypes.SaveUserSettings as LemmyapiDatatypesSav import it.vercruysse.lemmyapi.datatypes.Search as LemmyapiDatatypesSearch import it.vercruysse.lemmyapi.datatypes.SearchResponse as LemmyapiDatatypesSearchResponse import it.vercruysse.lemmyapi.datatypes.Site as LemmyapiDatatypesSite -import it.vercruysse.lemmyapi.datatypes.SiteAggregates as LemmyapiDatatypesSiteAggregates import it.vercruysse.lemmyapi.datatypes.SiteResponse as LemmyapiDatatypesSiteResponse import it.vercruysse.lemmyapi.datatypes.SiteView as LemmyapiDatatypesSiteView import it.vercruysse.lemmyapi.datatypes.Tagline as LemmyapiDatatypesTagline @@ -514,18 +514,20 @@ internal class Transformer : MapperGenerator { my_user = d.my_user?.let { this.toUni(d = it) }, all_languages = d.all_languages.map { this.toUni(d = it) }, discussion_languages = d.discussion_languages, - taglines = d.taglines.map { this.toUni(d = it) }, custom_emojis = d.custom_emojis.map { this.toUni(d = it) }, - blocked_urls = listOf(), + blocked_urls = emptyList(), + tagline = if (d.taglines.isEmpty()) null else this.toUni(d = d.taglines.random()), + oauth_providers = emptyList(), + admin_oauth_providers = emptyList(), + image_upload_disabled = false, + active_plugins = emptyList(), ) - override fun toUni(d: X0DatatypesLocalSite): LemmyapiDatatypesLocalSite = + override fun toUni(d: X0DatatypesLocalSite, counts: X0DatatypesSiteAggregates): LemmyapiDatatypesLocalSite = LemmyapiDatatypesLocalSite( id = d.id, site_id = d.site_id, site_setup = d.site_setup, - enable_downvotes = d.enable_downvotes, - enable_nsfw = d.enable_nsfw, community_creation_admin_only = d.community_creation_admin_only, require_email_verification = d.require_email_verification, application_question = d.application_question, @@ -533,7 +535,6 @@ internal class Transformer : MapperGenerator { default_theme = d.default_theme, default_post_listing_type = d.default_post_listing_type, legal_information = d.legal_information, - hide_modlog_mod_names = d.hide_modlog_mod_names, application_email_admins = d.application_email_admins, slur_filter_regex = d.slur_filter_regex, actor_name_max_length = d.actor_name_max_length, @@ -547,6 +548,24 @@ internal class Transformer : MapperGenerator { federation_signed_fetch = d.federation_signed_fetch, default_post_listing_mode = PostListingMode.Card, default_sort_type = SortType.Active, + disallow_nsfw_content = !d.enable_nsfw, + oauth_registration = false, + disable_email_notifications = false, + suggested_communities = null, + default_comment_sort_type = SortType.Active, + default_post_time_range_seconds = null, + post_upvotes = FederationMode.All, + post_downvotes = if (d.enable_downvotes) FederationMode.All else FederationMode.Disable, + comment_upvotes = FederationMode.All, + comment_downvotes = if (d.enable_downvotes) FederationMode.All else FederationMode.Disable, + users = counts.users, + posts = counts.posts, + comments = counts.comments, + communities = counts.communities, + users_active_day = counts.users_active_day, + users_active_week = counts.users_active_week, + users_active_month = counts.users_active_month, + users_active_half_year = counts.users_active_half_year, ) override fun toUni(d: X0DatatypesPersonMentionView): LemmyapiDatatypesPersonMentionView = @@ -1576,19 +1595,6 @@ internal class Transformer : MapperGenerator { instance_id = d.instance_id, ) - override fun toUni(d: X0DatatypesSiteAggregates): LemmyapiDatatypesSiteAggregates = - LemmyapiDatatypesSiteAggregates( - site_id = d.site_id, - users = d.users, - posts = d.posts, - comments = d.comments, - communities = d.communities, - users_active_day = d.users_active_day, - users_active_week = d.users_active_week, - users_active_month = d.users_active_month, - users_active_half_year = d.users_active_half_year, - ) - override fun toUni(d: X0DatatypesSiteResponse): LemmyapiDatatypesSiteResponse = LemmyapiDatatypesSiteResponse( site_view = this.toUni(d = d.site_view), @@ -1597,9 +1603,9 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X0DatatypesSiteView): LemmyapiDatatypesSiteView = LemmyapiDatatypesSiteView( site = this.toUni(d = d.site), - local_site = this.toUni(d = d.local_site), + local_site = this.toUni(d = d.local_site, counts = d.counts), local_site_rate_limit = this.toUni(d = d.local_site_rate_limit), - counts = this.toUni(d = d.counts), + instance = null, ) override fun toUni(d: X0DatatypesTagline): LemmyapiDatatypesTagline = LemmyapiDatatypesTagline( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt index 496c1dc2..d3f777bf 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt @@ -70,7 +70,7 @@ internal interface MapperGenerator { fun toUni(d: ListRegistrationApplicationsResponse): it.vercruysse.lemmyapi.datatypes.ListRegistrationApplicationsResponse fun toUni(d: LocalImage): it.vercruysse.lemmyapi.datatypes.LocalImage fun toUni(d: LocalImageView): it.vercruysse.lemmyapi.datatypes.LocalImageView - fun toUni(d: LocalSite): it.vercruysse.lemmyapi.datatypes.LocalSite + fun toUni(d: LocalSite, counts: SiteAggregates): it.vercruysse.lemmyapi.datatypes.LocalSite fun toUni(d: LocalSiteRateLimit): it.vercruysse.lemmyapi.datatypes.LocalSiteRateLimit fun toUni(d: LocalSiteUrlBlocklist): it.vercruysse.lemmyapi.datatypes.LocalSiteUrlBlocklist fun toUni(d: LocalUser, e: LocalUserVoteDisplayMode): it.vercruysse.lemmyapi.datatypes.LocalUser @@ -126,7 +126,6 @@ internal interface MapperGenerator { fun toUni(d: ResolveObjectResponse): it.vercruysse.lemmyapi.datatypes.ResolveObjectResponse fun toUni(d: SearchResponse): it.vercruysse.lemmyapi.datatypes.SearchResponse fun toUni(d: Site): it.vercruysse.lemmyapi.datatypes.Site - fun toUni(d: SiteAggregates): it.vercruysse.lemmyapi.datatypes.SiteAggregates fun toUni(d: SiteResponse): it.vercruysse.lemmyapi.datatypes.SiteResponse fun toUni(d: SiteView): it.vercruysse.lemmyapi.datatypes.SiteView fun toUni(d: Tagline): it.vercruysse.lemmyapi.datatypes.Tagline diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt index d6a66507..f8df3a71 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt @@ -5,6 +5,7 @@ import it.vercruysse.lemmyapi.datatypes.CommunityActions import it.vercruysse.lemmyapi.datatypes.PersonActions import it.vercruysse.lemmyapi.datatypes.PostActions import it.vercruysse.lemmyapi.dto.CommunityFollowerState +import it.vercruysse.lemmyapi.dto.FederationMode import it.vercruysse.lemmyapi.dto.SortType import it.vercruysse.lemmyapi.dto.VoteShow import it.vercruysse.lemmyapi.utils.toAt @@ -212,7 +213,6 @@ import it.vercruysse.lemmyapi.datatypes.SaveUserSettings as LemmyapiDatatypesSav import it.vercruysse.lemmyapi.datatypes.Search as LemmyapiDatatypesSearch import it.vercruysse.lemmyapi.datatypes.SearchResponse as LemmyapiDatatypesSearchResponse import it.vercruysse.lemmyapi.datatypes.Site as LemmyapiDatatypesSite -import it.vercruysse.lemmyapi.datatypes.SiteAggregates as LemmyapiDatatypesSiteAggregates import it.vercruysse.lemmyapi.datatypes.SiteResponse as LemmyapiDatatypesSiteResponse import it.vercruysse.lemmyapi.datatypes.SiteView as LemmyapiDatatypesSiteView import it.vercruysse.lemmyapi.datatypes.Tagline as LemmyapiDatatypesTagline @@ -941,9 +941,13 @@ internal class Transformer : MapperGenerator { my_user = d.my_user?.let { this.toUni(d = it) }, all_languages = d.all_languages.map { this.toUni(d = it) }, discussion_languages = d.discussion_languages, - taglines = d.taglines.map { this.toUni(d = it) }, custom_emojis = d.custom_emojis.map { this.toUni(d = it) }, blocked_urls = d.blocked_urls.map { this.toUni(d = it) }, + tagline = if (d.taglines.isEmpty()) null else this.toUni(d = d.taglines.random()), + oauth_providers = emptyList(), + admin_oauth_providers = emptyList(), + image_upload_disabled = false, + active_plugins = emptyList(), ) override fun toUni(d: X11DatatypesGetUnreadCountResponse): LemmyapiDatatypesGetUnreadCountResponse = LemmyapiDatatypesGetUnreadCountResponse( @@ -1051,13 +1055,11 @@ internal class Transformer : MapperGenerator { person = this.toUni(d = d.person), ) - override fun toUni(d: X11DatatypesLocalSite): LemmyapiDatatypesLocalSite = + override fun toUni(d: X11DatatypesLocalSite, counts: X11DatatypesSiteAggregates): LemmyapiDatatypesLocalSite = LemmyapiDatatypesLocalSite( id = d.id, site_id = d.site_id, site_setup = d.site_setup, - enable_downvotes = d.enable_downvotes, - enable_nsfw = d.enable_nsfw, community_creation_admin_only = d.community_creation_admin_only, require_email_verification = d.require_email_verification, application_question = d.application_question, @@ -1065,7 +1067,6 @@ internal class Transformer : MapperGenerator { default_theme = d.default_theme, default_post_listing_type = d.default_post_listing_type, legal_information = d.legal_information, - hide_modlog_mod_names = d.hide_modlog_mod_names, application_email_admins = d.application_email_admins, slur_filter_regex = d.slur_filter_regex, actor_name_max_length = d.actor_name_max_length, @@ -1079,6 +1080,24 @@ internal class Transformer : MapperGenerator { federation_signed_fetch = d.federation_signed_fetch, default_post_listing_mode = d.default_post_listing_mode, default_sort_type = d.default_sort_type, + disallow_nsfw_content = !d.enable_nsfw, + oauth_registration = false, + disable_email_notifications = false, + suggested_communities = null, + default_comment_sort_type = SortType.Active, + default_post_time_range_seconds = null, + post_upvotes = FederationMode.All, + post_downvotes = if (d.enable_downvotes) FederationMode.All else FederationMode.Disable, + comment_upvotes = FederationMode.All, + comment_downvotes = if (d.enable_downvotes) FederationMode.All else FederationMode.Disable, + users = counts.users, + posts = counts.posts, + comments = counts.comments, + communities = counts.communities, + users_active_day = counts.users_active_day, + users_active_week = counts.users_active_week, + users_active_month = counts.users_active_month, + users_active_half_year = counts.users_active_half_year, ) override fun toUni(d: X11DatatypesLocalSiteRateLimit): LemmyapiDatatypesLocalSiteRateLimit = @@ -1666,19 +1685,6 @@ internal class Transformer : MapperGenerator { content_warning = d.content_warning, ) - override fun toUni(d: X11DatatypesSiteAggregates): LemmyapiDatatypesSiteAggregates = - LemmyapiDatatypesSiteAggregates( - site_id = d.site_id, - users = d.users, - posts = d.posts, - comments = d.comments, - communities = d.communities, - users_active_day = d.users_active_day, - users_active_week = d.users_active_week, - users_active_month = d.users_active_month, - users_active_half_year = d.users_active_half_year, - ) - override fun toUni(d: X11DatatypesSiteResponse): LemmyapiDatatypesSiteResponse = LemmyapiDatatypesSiteResponse( site_view = this.toUni(d = d.site_view), @@ -1688,9 +1694,9 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X11DatatypesSiteView): LemmyapiDatatypesSiteView = LemmyapiDatatypesSiteView( site = this.toUni(d = d.site), - local_site = this.toUni(d = d.local_site), + local_site = this.toUni(d = d.local_site, counts = d.counts), local_site_rate_limit = this.toUni(d = d.local_site_rate_limit), - counts = this.toUni(d = d.counts), + instance = null, ) override fun toUni(d: X11DatatypesTagline): LemmyapiDatatypesTagline = LemmyapiDatatypesTagline( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt index a0897510..282e48a7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt @@ -18,7 +18,7 @@ internal interface MapperGenerator { fun toUni(d: GetSiteResponse): it.vercruysse.lemmyapi.datatypes.GetSiteResponse - fun toUni(d: LocalSite): it.vercruysse.lemmyapi.datatypes.LocalSite + fun toUni(d: LocalSite, counts: SiteAggregates): it.vercruysse.lemmyapi.datatypes.LocalSite fun toUni(d: PersonMentionView): it.vercruysse.lemmyapi.datatypes.PersonMentionView @@ -146,7 +146,6 @@ internal interface MapperGenerator { fun toUni(d: ResolveObjectResponse): it.vercruysse.lemmyapi.datatypes.ResolveObjectResponse fun toUni(d: SearchResponse): it.vercruysse.lemmyapi.datatypes.SearchResponse fun toUni(d: Site): it.vercruysse.lemmyapi.datatypes.Site - fun toUni(d: SiteAggregates): it.vercruysse.lemmyapi.datatypes.SiteAggregates fun toUni(d: SiteResponse): it.vercruysse.lemmyapi.datatypes.SiteResponse fun toUni(d: SiteView): it.vercruysse.lemmyapi.datatypes.SiteView fun toUni(d: Tagline): it.vercruysse.lemmyapi.datatypes.Tagline diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt index 5bc832b5..aee6bade 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt @@ -7,6 +7,7 @@ import it.vercruysse.lemmyapi.datatypes.PersonActions import it.vercruysse.lemmyapi.datatypes.PostActions import it.vercruysse.lemmyapi.dto.CommunityFollowerState import it.vercruysse.lemmyapi.dto.CommunityVisibility +import it.vercruysse.lemmyapi.dto.FederationMode import it.vercruysse.lemmyapi.dto.PostListingMode import it.vercruysse.lemmyapi.dto.SortType import it.vercruysse.lemmyapi.dto.VoteShow @@ -207,7 +208,6 @@ import it.vercruysse.lemmyapi.datatypes.SaveUserSettings as LemmyapiDatatypesSav import it.vercruysse.lemmyapi.datatypes.Search as LemmyapiDatatypesSearch import it.vercruysse.lemmyapi.datatypes.SearchResponse as LemmyapiDatatypesSearchResponse import it.vercruysse.lemmyapi.datatypes.Site as LemmyapiDatatypesSite -import it.vercruysse.lemmyapi.datatypes.SiteAggregates as LemmyapiDatatypesSiteAggregates import it.vercruysse.lemmyapi.datatypes.SiteResponse as LemmyapiDatatypesSiteResponse import it.vercruysse.lemmyapi.datatypes.SiteView as LemmyapiDatatypesSiteView import it.vercruysse.lemmyapi.datatypes.Tagline as LemmyapiDatatypesTagline @@ -532,18 +532,20 @@ internal class Transformer : MapperGenerator { my_user = d.my_user?.let { this.toUni(d = it) }, all_languages = d.all_languages.map { this.toUni(d = it) }, discussion_languages = d.discussion_languages, - taglines = d.taglines.map { this.toUni(d = it) }, custom_emojis = d.custom_emojis.map { this.toUni(d = it) }, - blocked_urls = listOf(), + blocked_urls = emptyList(), + tagline = if (d.taglines.isEmpty()) null else this.toUni(d = d.taglines.random()), + oauth_providers = emptyList(), + admin_oauth_providers = emptyList(), + image_upload_disabled = false, + active_plugins = emptyList(), ) - override fun toUni(d: X3DatatypesLocalSite): LemmyapiDatatypesLocalSite = + override fun toUni(d: X3DatatypesLocalSite, counts: X3DatatypesSiteAggregates): LemmyapiDatatypesLocalSite = LemmyapiDatatypesLocalSite( id = d.id, site_id = d.site_id, site_setup = d.site_setup, - enable_downvotes = d.enable_downvotes, - enable_nsfw = d.enable_nsfw, community_creation_admin_only = d.community_creation_admin_only, require_email_verification = d.require_email_verification, application_question = d.application_question, @@ -551,7 +553,6 @@ internal class Transformer : MapperGenerator { default_theme = d.default_theme, default_post_listing_type = d.default_post_listing_type, legal_information = d.legal_information, - hide_modlog_mod_names = d.hide_modlog_mod_names, application_email_admins = d.application_email_admins, slur_filter_regex = d.slur_filter_regex, actor_name_max_length = d.actor_name_max_length, @@ -565,6 +566,24 @@ internal class Transformer : MapperGenerator { federation_signed_fetch = d.federation_signed_fetch, default_post_listing_mode = PostListingMode.Card, default_sort_type = SortType.Active, + disallow_nsfw_content = !d.enable_nsfw, + oauth_registration = false, + disable_email_notifications = false, + suggested_communities = null, + default_comment_sort_type = SortType.Active, + default_post_time_range_seconds = null, + post_upvotes = FederationMode.All, + post_downvotes = if (d.enable_downvotes) FederationMode.All else FederationMode.Disable, + comment_upvotes = FederationMode.All, + comment_downvotes = if (d.enable_downvotes) FederationMode.All else FederationMode.Disable, + users = counts.users, + posts = counts.posts, + comments = counts.comments, + communities = counts.communities, + users_active_day = counts.users_active_day, + users_active_week = counts.users_active_week, + users_active_month = counts.users_active_month, + users_active_half_year = counts.users_active_half_year, ) override fun toUni(d: X3DatatypesPersonMentionView): LemmyapiDatatypesPersonMentionView = @@ -1606,19 +1625,6 @@ internal class Transformer : MapperGenerator { instance_id = d.instance_id, ) - override fun toUni(d: X3DatatypesSiteAggregates): LemmyapiDatatypesSiteAggregates = - LemmyapiDatatypesSiteAggregates( - site_id = d.site_id, - users = d.users, - posts = d.posts, - comments = d.comments, - communities = d.communities, - users_active_day = d.users_active_day, - users_active_week = d.users_active_week, - users_active_month = d.users_active_month, - users_active_half_year = d.users_active_half_year, - ) - override fun toUni(d: X3DatatypesSiteResponse): LemmyapiDatatypesSiteResponse = LemmyapiDatatypesSiteResponse( site_view = this.toUni(d = d.site_view), @@ -1627,9 +1633,9 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X3DatatypesSiteView): LemmyapiDatatypesSiteView = LemmyapiDatatypesSiteView( site = this.toUni(d = d.site), - local_site = this.toUni(d = d.local_site), + local_site = this.toUni(d = d.local_site, counts = d.counts), local_site_rate_limit = this.toUni(d = d.local_site_rate_limit), - counts = this.toUni(d = d.counts), + instance = null, ) override fun toUni(d: X3DatatypesTagline): LemmyapiDatatypesTagline = LemmyapiDatatypesTagline( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt index 5409f357..9cd2c5d5 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt @@ -70,7 +70,7 @@ internal interface MapperGenerator { fun toUni(d: ListRegistrationApplicationsResponse): it.vercruysse.lemmyapi.datatypes.ListRegistrationApplicationsResponse fun toUni(d: LocalImage): it.vercruysse.lemmyapi.datatypes.LocalImage fun toUni(d: LocalImageView): it.vercruysse.lemmyapi.datatypes.LocalImageView - fun toUni(d: LocalSite): it.vercruysse.lemmyapi.datatypes.LocalSite + fun toUni(d: LocalSite, counts: SiteAggregates): it.vercruysse.lemmyapi.datatypes.LocalSite fun toUni(d: LocalSiteRateLimit): it.vercruysse.lemmyapi.datatypes.LocalSiteRateLimit fun toUni(d: LocalSiteUrlBlocklist): it.vercruysse.lemmyapi.datatypes.LocalSiteUrlBlocklist fun toUni(d: LocalUser, e: LocalUserVoteDisplayMode): it.vercruysse.lemmyapi.datatypes.LocalUser @@ -126,7 +126,6 @@ internal interface MapperGenerator { fun toUni(d: ResolveObjectResponse): it.vercruysse.lemmyapi.datatypes.ResolveObjectResponse fun toUni(d: SearchResponse): it.vercruysse.lemmyapi.datatypes.SearchResponse fun toUni(d: Site): it.vercruysse.lemmyapi.datatypes.Site - fun toUni(d: SiteAggregates): it.vercruysse.lemmyapi.datatypes.SiteAggregates fun toUni(d: SiteResponse): it.vercruysse.lemmyapi.datatypes.SiteResponse fun toUni(d: SiteView): it.vercruysse.lemmyapi.datatypes.SiteView fun toUni(d: Tagline): it.vercruysse.lemmyapi.datatypes.Tagline diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt index 7dadb456..d5caff4f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt @@ -5,6 +5,7 @@ import it.vercruysse.lemmyapi.datatypes.CommunityActions import it.vercruysse.lemmyapi.datatypes.PersonActions import it.vercruysse.lemmyapi.datatypes.PostActions import it.vercruysse.lemmyapi.dto.CommunityFollowerState +import it.vercruysse.lemmyapi.dto.FederationMode import it.vercruysse.lemmyapi.dto.SortType import it.vercruysse.lemmyapi.dto.VoteShow import it.vercruysse.lemmyapi.utils.toAt @@ -210,7 +211,6 @@ import it.vercruysse.lemmyapi.datatypes.SaveUserSettings as LemmyapiDatatypesSav import it.vercruysse.lemmyapi.datatypes.Search as LemmyapiDatatypesSearch import it.vercruysse.lemmyapi.datatypes.SearchResponse as LemmyapiDatatypesSearchResponse import it.vercruysse.lemmyapi.datatypes.Site as LemmyapiDatatypesSite -import it.vercruysse.lemmyapi.datatypes.SiteAggregates as LemmyapiDatatypesSiteAggregates import it.vercruysse.lemmyapi.datatypes.SiteResponse as LemmyapiDatatypesSiteResponse import it.vercruysse.lemmyapi.datatypes.SiteView as LemmyapiDatatypesSiteView import it.vercruysse.lemmyapi.datatypes.Tagline as LemmyapiDatatypesTagline @@ -941,9 +941,13 @@ internal class Transformer : MapperGenerator { my_user = d.my_user?.let { this.toUni(d = it) }, all_languages = d.all_languages.map { this.toUni(d = it) }, discussion_languages = d.discussion_languages, - taglines = d.taglines.map { this.toUni(d = it) }, custom_emojis = d.custom_emojis.map { this.toUni(d = it) }, blocked_urls = d.blocked_urls.map { this.toUni(d = it) }, + tagline = if (d.taglines.isEmpty()) null else this.toUni(d = d.taglines.random()), + oauth_providers = emptyList(), + admin_oauth_providers = emptyList(), + image_upload_disabled = false, + active_plugins = emptyList(), ) override fun toUni(d: X4DatatypesGetUnreadCountResponse): LemmyapiDatatypesGetUnreadCountResponse = @@ -1042,13 +1046,11 @@ internal class Transformer : MapperGenerator { person = this.toUni(d = d.person), ) - override fun toUni(d: X4DatatypesLocalSite): LemmyapiDatatypesLocalSite = + override fun toUni(d: X4DatatypesLocalSite, counts: X4DatatypesSiteAggregates): LemmyapiDatatypesLocalSite = LemmyapiDatatypesLocalSite( id = d.id, site_id = d.site_id, site_setup = d.site_setup, - enable_downvotes = d.enable_downvotes, - enable_nsfw = d.enable_nsfw, community_creation_admin_only = d.community_creation_admin_only, require_email_verification = d.require_email_verification, application_question = d.application_question, @@ -1056,7 +1058,6 @@ internal class Transformer : MapperGenerator { default_theme = d.default_theme, default_post_listing_type = d.default_post_listing_type, legal_information = d.legal_information, - hide_modlog_mod_names = d.hide_modlog_mod_names, application_email_admins = d.application_email_admins, slur_filter_regex = d.slur_filter_regex, actor_name_max_length = d.actor_name_max_length, @@ -1070,6 +1071,24 @@ internal class Transformer : MapperGenerator { federation_signed_fetch = d.federation_signed_fetch, default_post_listing_mode = d.default_post_listing_mode, default_sort_type = d.default_sort_type, + disallow_nsfw_content = !d.enable_nsfw, + oauth_registration = false, + disable_email_notifications = false, + suggested_communities = null, + default_comment_sort_type = SortType.Active, + default_post_time_range_seconds = null, + post_upvotes = FederationMode.All, + post_downvotes = if (d.enable_downvotes) FederationMode.All else FederationMode.Disable, + comment_upvotes = FederationMode.All, + comment_downvotes = if (d.enable_downvotes) FederationMode.All else FederationMode.Disable, + users = counts.users, + posts = counts.posts, + comments = counts.comments, + communities = counts.communities, + users_active_day = counts.users_active_day, + users_active_week = counts.users_active_week, + users_active_month = counts.users_active_month, + users_active_half_year = counts.users_active_half_year, ) override fun toUni(d: X4DatatypesLocalSiteRateLimit): LemmyapiDatatypesLocalSiteRateLimit = @@ -1656,19 +1675,6 @@ internal class Transformer : MapperGenerator { content_warning = d.content_warning, ) - override fun toUni(d: X4DatatypesSiteAggregates): LemmyapiDatatypesSiteAggregates = - LemmyapiDatatypesSiteAggregates( - site_id = d.site_id, - users = d.users, - posts = d.posts, - comments = d.comments, - communities = d.communities, - users_active_day = d.users_active_day, - users_active_week = d.users_active_week, - users_active_month = d.users_active_month, - users_active_half_year = d.users_active_half_year, - ) - override fun toUni(d: X4DatatypesSiteResponse): LemmyapiDatatypesSiteResponse = LemmyapiDatatypesSiteResponse( site_view = this.toUni(d = d.site_view), @@ -1677,9 +1683,9 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X4DatatypesSiteView): LemmyapiDatatypesSiteView = LemmyapiDatatypesSiteView( site = this.toUni(d = d.site), - local_site = this.toUni(d = d.local_site), + local_site = this.toUni(d = d.local_site, counts = d.counts), local_site_rate_limit = this.toUni(d = d.local_site_rate_limit), - counts = this.toUni(d = d.counts), + instance = null, ) override fun toUni(d: X4DatatypesTagline): LemmyapiDatatypesTagline = LemmyapiDatatypesTagline( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt index 72858ad5..37887deb 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt @@ -72,7 +72,7 @@ internal interface MapperGenerator { fun toUni(d: ListRegistrationApplicationsResponse): it.vercruysse.lemmyapi.datatypes.ListRegistrationApplicationsResponse fun toUni(d: LocalImage): it.vercruysse.lemmyapi.datatypes.LocalImage fun toUni(d: LocalImageView): it.vercruysse.lemmyapi.datatypes.LocalImageView - fun toUni(d: LocalSite): it.vercruysse.lemmyapi.datatypes.LocalSite + fun toUni(d: LocalSite, counts: SiteAggregates): it.vercruysse.lemmyapi.datatypes.LocalSite fun toUni(d: LocalSiteRateLimit): it.vercruysse.lemmyapi.datatypes.LocalSiteRateLimit fun toUni(d: LocalSiteUrlBlocklist): it.vercruysse.lemmyapi.datatypes.LocalSiteUrlBlocklist fun toUni(d: LocalUser, e: LocalUserVoteDisplayMode): it.vercruysse.lemmyapi.datatypes.LocalUser @@ -128,7 +128,6 @@ internal interface MapperGenerator { fun toUni(d: ResolveObjectResponse): it.vercruysse.lemmyapi.datatypes.ResolveObjectResponse fun toUni(d: SearchResponse): it.vercruysse.lemmyapi.datatypes.SearchResponse fun toUni(d: Site): it.vercruysse.lemmyapi.datatypes.Site - fun toUni(d: SiteAggregates): it.vercruysse.lemmyapi.datatypes.SiteAggregates fun toUni(d: SiteResponse): it.vercruysse.lemmyapi.datatypes.SiteResponse fun toUni(d: SiteView): it.vercruysse.lemmyapi.datatypes.SiteView fun toUni(d: Tagline): it.vercruysse.lemmyapi.datatypes.Tagline diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt index 06afe4f3..3e5d9dc9 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt @@ -5,6 +5,7 @@ import it.vercruysse.lemmyapi.datatypes.CommunityActions import it.vercruysse.lemmyapi.datatypes.PersonActions import it.vercruysse.lemmyapi.datatypes.PostActions import it.vercruysse.lemmyapi.dto.CommunityFollowerState +import it.vercruysse.lemmyapi.dto.FederationMode import it.vercruysse.lemmyapi.dto.SortType import it.vercruysse.lemmyapi.dto.VoteShow import it.vercruysse.lemmyapi.utils.toAt @@ -212,7 +213,6 @@ import it.vercruysse.lemmyapi.datatypes.SaveUserSettings as LemmyapiDatatypesSav import it.vercruysse.lemmyapi.datatypes.Search as LemmyapiDatatypesSearch import it.vercruysse.lemmyapi.datatypes.SearchResponse as LemmyapiDatatypesSearchResponse import it.vercruysse.lemmyapi.datatypes.Site as LemmyapiDatatypesSite -import it.vercruysse.lemmyapi.datatypes.SiteAggregates as LemmyapiDatatypesSiteAggregates import it.vercruysse.lemmyapi.datatypes.SiteResponse as LemmyapiDatatypesSiteResponse import it.vercruysse.lemmyapi.datatypes.SiteView as LemmyapiDatatypesSiteView import it.vercruysse.lemmyapi.datatypes.Tagline as LemmyapiDatatypesTagline @@ -942,9 +942,13 @@ internal class Transformer : MapperGenerator { my_user = d.my_user?.let { this.toUni(d = it) }, all_languages = d.all_languages.map { this.toUni(d = it) }, discussion_languages = d.discussion_languages, - taglines = d.taglines.map { this.toUni(d = it) }, custom_emojis = d.custom_emojis.map { this.toUni(d = it) }, blocked_urls = d.blocked_urls.map { this.toUni(d = it) }, + tagline = if (d.taglines.isEmpty()) null else this.toUni(d = d.taglines.random()), + oauth_providers = emptyList(), + admin_oauth_providers = emptyList(), + image_upload_disabled = false, + active_plugins = emptyList(), ) override fun toUni(d: X6DatatypesGetUnreadCountResponse): LemmyapiDatatypesGetUnreadCountResponse = LemmyapiDatatypesGetUnreadCountResponse( @@ -1050,13 +1054,11 @@ internal class Transformer : MapperGenerator { person = this.toUni(d = d.person), ) - override fun toUni(d: X6DatatypesLocalSite): LemmyapiDatatypesLocalSite = + override fun toUni(d: X6DatatypesLocalSite, counts: X6DatatypesSiteAggregates): LemmyapiDatatypesLocalSite = LemmyapiDatatypesLocalSite( id = d.id, site_id = d.site_id, site_setup = d.site_setup, - enable_downvotes = d.enable_downvotes, - enable_nsfw = d.enable_nsfw, community_creation_admin_only = d.community_creation_admin_only, require_email_verification = d.require_email_verification, application_question = d.application_question, @@ -1064,7 +1066,6 @@ internal class Transformer : MapperGenerator { default_theme = d.default_theme, default_post_listing_type = d.default_post_listing_type, legal_information = d.legal_information, - hide_modlog_mod_names = d.hide_modlog_mod_names, application_email_admins = d.application_email_admins, slur_filter_regex = d.slur_filter_regex, actor_name_max_length = d.actor_name_max_length, @@ -1078,6 +1079,24 @@ internal class Transformer : MapperGenerator { federation_signed_fetch = d.federation_signed_fetch, default_post_listing_mode = d.default_post_listing_mode, default_sort_type = d.default_sort_type, + disallow_nsfw_content = !d.enable_nsfw, + oauth_registration = false, + disable_email_notifications = false, + suggested_communities = null, + default_comment_sort_type = SortType.Active, + default_post_time_range_seconds = null, + post_upvotes = FederationMode.All, + post_downvotes = if (d.enable_downvotes) FederationMode.All else FederationMode.Disable, + comment_upvotes = FederationMode.All, + comment_downvotes = if (d.enable_downvotes) FederationMode.All else FederationMode.Disable, + users = counts.users, + posts = counts.posts, + comments = counts.comments, + communities = counts.communities, + users_active_day = counts.users_active_day, + users_active_week = counts.users_active_week, + users_active_month = counts.users_active_month, + users_active_half_year = counts.users_active_half_year, ) override fun toUni(d: X6DatatypesLocalSiteRateLimit): LemmyapiDatatypesLocalSiteRateLimit = @@ -1662,19 +1681,6 @@ internal class Transformer : MapperGenerator { content_warning = d.content_warning, ) - override fun toUni(d: X6DatatypesSiteAggregates): LemmyapiDatatypesSiteAggregates = - LemmyapiDatatypesSiteAggregates( - site_id = d.site_id, - users = d.users, - posts = d.posts, - comments = d.comments, - communities = d.communities, - users_active_day = d.users_active_day, - users_active_week = d.users_active_week, - users_active_month = d.users_active_month, - users_active_half_year = d.users_active_half_year, - ) - override fun toUni(d: X6DatatypesSiteResponse): LemmyapiDatatypesSiteResponse = LemmyapiDatatypesSiteResponse( site_view = this.toUni(d = d.site_view), @@ -1683,9 +1689,9 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X6DatatypesSiteView): LemmyapiDatatypesSiteView = LemmyapiDatatypesSiteView( site = this.toUni(d = d.site), - local_site = this.toUni(d = d.local_site), + local_site = this.toUni(d = d.local_site, counts = d.counts), local_site_rate_limit = this.toUni(d = d.local_site_rate_limit), - counts = this.toUni(d = d.counts), + instance = null, ) override fun toUni(d: X6DatatypesTagline): LemmyapiDatatypesTagline = LemmyapiDatatypesTagline( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSite.kt index 79ed0d04..179bb04b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSite.kt @@ -19,6 +19,7 @@ internal data class LocalSite( val default_theme: String, val default_post_listing_type: ListingType /* "All" | "Local" | "Subscribed" | "ModeratorView" | "Suggested" */, val legal_information: String? = null, + val application_email_admins: Boolean, val slur_filter_regex: String? = null, val actor_name_max_length: Long, @@ -32,6 +33,7 @@ internal data class LocalSite( val federation_signed_fetch: Boolean, val default_post_listing_mode: PostListingMode /* "List" | "Card" | "SmallCard" */, val default_post_sort_type: SortType /* "Active" | "Hot" | "New" | "Old" | "Top" | "MostComments" | "NewComments" | "Controversial" | "Scaled" */, + val default_comment_sort_type: SortType /* "Hot" | "Top" | "New" | "Old" | "Controversial" */, val oauth_registration: Boolean, val post_upvotes: FederationMode /* "All" | "Local" | "Disable" */, @@ -50,5 +52,4 @@ internal data class LocalSite( val users_active_half_year: Long, val disable_email_notifications: Boolean, val suggested_communities: MultiCommunityId? = null, - val multi_comm_follower: PersonId, ) From 7db3d6e29f1421e1bb01b2aea490bc10a3af0420 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Tue, 16 Sep 2025 21:59:08 +0200 Subject: [PATCH 012/110] Fix taglines --- .../kotlin/it/vercruysse/lemmyapi/datatypes/SiteResponse.kt | 3 --- .../kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt | 1 - .../kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt | 1 - .../kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt | 1 - .../kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt | 1 - .../kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt | 1 - .../kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt | 1 - 7 files changed, 9 deletions(-) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SiteResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SiteResponse.kt index d9ba1a67..dc7cdd27 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SiteResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SiteResponse.kt @@ -5,11 +5,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize -// TODO: research taglines changes - @CommonParcelize @Serializable data class SiteResponse( val site_view: SiteView, - val taglines: List, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt index d71c2c94..d6ae948e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt @@ -1558,7 +1558,6 @@ internal class Transformer(var auth: String) : MapperGenerator { override fun toUni(d: X5DatatypesSiteResponse): LemmyapiDatatypesSiteResponse = LemmyapiDatatypesSiteResponse( site_view = this.toUni(d = d.site_view), - taglines = d.taglines.map { this.toUni(d = it) }, ) override fun toUni(d: X5DatatypesSiteView): LemmyapiDatatypesSiteView = LemmyapiDatatypesSiteView( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt index 0debb0c6..e052dc97 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt @@ -1598,7 +1598,6 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X0DatatypesSiteResponse): LemmyapiDatatypesSiteResponse = LemmyapiDatatypesSiteResponse( site_view = this.toUni(d = d.site_view), - taglines = d.taglines.map { this.toUni(d = it) }, ) override fun toUni(d: X0DatatypesSiteView): LemmyapiDatatypesSiteView = LemmyapiDatatypesSiteView( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt index f8df3a71..9d5ed7f0 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt @@ -1688,7 +1688,6 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X11DatatypesSiteResponse): LemmyapiDatatypesSiteResponse = LemmyapiDatatypesSiteResponse( site_view = this.toUni(d = d.site_view), - taglines = d.taglines.map { this.toUni(d = it) }, ) override fun toUni(d: X11DatatypesSiteView): LemmyapiDatatypesSiteView = diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt index aee6bade..bcb736f2 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt @@ -1628,7 +1628,6 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X3DatatypesSiteResponse): LemmyapiDatatypesSiteResponse = LemmyapiDatatypesSiteResponse( site_view = this.toUni(d = d.site_view), - taglines = d.taglines.map { this.toUni(d = it) }, ) override fun toUni(d: X3DatatypesSiteView): LemmyapiDatatypesSiteView = LemmyapiDatatypesSiteView( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt index d5caff4f..254bd8fb 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt @@ -1678,7 +1678,6 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X4DatatypesSiteResponse): LemmyapiDatatypesSiteResponse = LemmyapiDatatypesSiteResponse( site_view = this.toUni(d = d.site_view), - taglines = d.taglines.map { this.toUni(d = it) }, ) override fun toUni(d: X4DatatypesSiteView): LemmyapiDatatypesSiteView = LemmyapiDatatypesSiteView( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt index 3e5d9dc9..57d30884 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt @@ -1684,7 +1684,6 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X6DatatypesSiteResponse): LemmyapiDatatypesSiteResponse = LemmyapiDatatypesSiteResponse( site_view = this.toUni(d = d.site_view), - taglines = d.taglines.map { this.toUni(d = it) }, ) override fun toUni(d: X6DatatypesSiteView): LemmyapiDatatypesSiteView = LemmyapiDatatypesSiteView( From 0ec55f669d4dd3376e9026b17d530ae7fe7c1757 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Wed, 17 Sep 2025 23:30:27 +0200 Subject: [PATCH 013/110] Fix Search mappings --- .../src/main/kotlin/MapperGenerator0x19x0.kt | 2 +- .../src/main/kotlin/MapperGenerator0x19x11.kt | 2 +- .../src/main/kotlin/MapperGenerator0x19x3.kt | 2 +- .../src/main/kotlin/MapperGenerator0x19x4.kt | 2 +- .../src/main/kotlin/MapperGenerator0x19x6.kt | 2 +- .../lemmyapi/LemmyApiBaseController.kt | 2 +- .../datatypes/BannedPersonsResponse.kt | 7 +--- .../lemmyapi/datatypes/BlockInstance.kt | 15 ------- .../lemmyapi/datatypes/CreateSite.kt | 2 +- .../vercruysse/lemmyapi/datatypes/HidePost.kt | 2 +- .../lemmyapi/datatypes/ListCommunities.kt | 10 +++-- .../lemmyapi/datatypes/ListMedia.kt | 8 +++- .../lemmyapi/datatypes/ListPostLikes.kt | 7 +++- .../datatypes/ListRegistrationApplications.kt | 7 +++- .../lemmyapi/datatypes/LocalSite.kt | 2 - .../vercruysse/lemmyapi/datatypes/Search.kt | 2 - .../lemmyapi/datatypes/SearchCombinedView.kt | 39 +++++++++++++++++++ .../lemmyapi/datatypes/SearchResponse.kt | 12 +++--- .../UserBlockInstanceCommunitiesParams.kt | 3 +- .../datatypes/UserBlockInstanceParams.kt | 12 ------ .../lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt | 2 +- .../lemmyapi/v0/x18/x5/Transformer.kt | 12 +++--- .../lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt | 2 +- .../lemmyapi/v0/x19/x0/MapperGenerator.kt | 2 +- .../lemmyapi/v0/x19/x0/Transformer.kt | 14 ++++--- .../lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt | 2 +- .../lemmyapi/v0/x19/x11/MapperGenerator.kt | 2 +- .../lemmyapi/v0/x19/x11/Transformer.kt | 14 ++++--- .../lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt | 2 +- .../lemmyapi/v0/x19/x3/MapperGenerator.kt | 2 +- .../lemmyapi/v0/x19/x3/Transformer.kt | 14 ++++--- .../lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt | 2 +- .../lemmyapi/v0/x19/x4/MapperGenerator.kt | 2 +- .../lemmyapi/v0/x19/x4/Transformer.kt | 14 ++++--- .../lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt | 2 +- .../lemmyapi/v0/x19/x6/MapperGenerator.kt | 2 +- .../lemmyapi/v0/x19/x6/Transformer.kt | 14 ++++--- 37 files changed, 137 insertions(+), 107 deletions(-) delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BlockInstance.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SearchCombinedView.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UserBlockInstanceParams.kt diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x0.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x0.kt index d42e2b35..9a55e290 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x0.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x0.kt @@ -232,7 +232,7 @@ internal interface MapperGenerator0x19x0 { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.BanFromCommunity): BanFromCommunity fun fromUni(d: it.vercruysse.lemmyapi.datatypes.BanPerson): BanPerson fun fromUni(d: it.vercruysse.lemmyapi.datatypes.BlockCommunity): BlockCommunity - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.BlockInstance): BlockInstance + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.UserBlockInstanceCommunitiesParams): BlockInstance fun fromUni(d: it.vercruysse.lemmyapi.datatypes.BlockPerson): BlockPerson fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ChangePassword): ChangePassword fun fromUni(d: it.vercruysse.lemmyapi.datatypes.CreateComment): CreateComment diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt index ab15eeaa..f3f76ba9 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt @@ -144,7 +144,7 @@ internal interface MapperGenerator0x19x11 { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.BanFromCommunity): BanFromCommunity fun fromUni(d: it.vercruysse.lemmyapi.datatypes.BanPerson): BanPerson fun fromUni(d: it.vercruysse.lemmyapi.datatypes.BlockCommunity): BlockCommunity - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.BlockInstance): BlockInstance + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.UserBlockInstanceCommunitiesParams): BlockInstance fun fromUni(d: it.vercruysse.lemmyapi.datatypes.BlockPerson): BlockPerson fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ChangePassword): ChangePassword fun fromUni(d: it.vercruysse.lemmyapi.datatypes.CreateComment): CreateComment diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x3.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x3.kt index 51cb132e..66012156 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x3.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x3.kt @@ -233,7 +233,7 @@ internal interface MapperGenerator0x19x3 { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.BanFromCommunity): BanFromCommunity fun fromUni(d: it.vercruysse.lemmyapi.datatypes.BanPerson): BanPerson fun fromUni(d: it.vercruysse.lemmyapi.datatypes.BlockCommunity): BlockCommunity - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.BlockInstance): BlockInstance + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.UserBlockInstanceCommunitiesParams): BlockInstance fun fromUni(d: it.vercruysse.lemmyapi.datatypes.BlockPerson): BlockPerson fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ChangePassword): ChangePassword fun fromUni(d: it.vercruysse.lemmyapi.datatypes.CreateComment): CreateComment diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt index 747d11b6..c1a44f7c 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt @@ -143,7 +143,7 @@ internal interface MapperGenerator0x19x4 { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.BanFromCommunity): BanFromCommunity fun fromUni(d: it.vercruysse.lemmyapi.datatypes.BanPerson): BanPerson fun fromUni(d: it.vercruysse.lemmyapi.datatypes.BlockCommunity): BlockCommunity - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.BlockInstance): BlockInstance + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.UserBlockInstanceCommunitiesParams): BlockInstance fun fromUni(d: it.vercruysse.lemmyapi.datatypes.BlockPerson): BlockPerson fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ChangePassword): ChangePassword fun fromUni(d: it.vercruysse.lemmyapi.datatypes.CreateComment): CreateComment diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt index 06d21e02..4df5631a 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt @@ -144,7 +144,7 @@ internal interface MapperGenerator0x19x6 { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.BanFromCommunity): BanFromCommunity fun fromUni(d: it.vercruysse.lemmyapi.datatypes.BanPerson): BanPerson fun fromUni(d: it.vercruysse.lemmyapi.datatypes.BlockCommunity): BlockCommunity - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.BlockInstance): BlockInstance + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.UserBlockInstanceCommunitiesParams): BlockInstance fun fromUni(d: it.vercruysse.lemmyapi.datatypes.BlockPerson): BlockPerson fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ChangePassword): ChangePassword fun fromUni(d: it.vercruysse.lemmyapi.datatypes.CreateComment): CreateComment diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt index 2684fa7a..7f4101de 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt @@ -627,7 +627,7 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version * * @POST("site/block") */ - abstract suspend fun blockInstance(form: BlockInstance): Result + abstract suspend fun blockInstance(form: UserBlockInstanceCommunitiesParams): Result /** * Generate a TOTP / two-factor secret. diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BannedPersonsResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BannedPersonsResponse.kt index 7a7612a3..1544f440 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BannedPersonsResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BannedPersonsResponse.kt @@ -5,11 +5,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize -// TODO: 1.0.0 lemmy types are outdated Banned renamed to Hidden -// is now ListPersonHiddenResponse -// TODO not sure if banned person was actually renamed to hidden person - -// IT doesnt seem that BannedPersonsResponse to ListPersonHiddenResponse +// TODO is now admin/list/users +// AdminListUsersResponse @CommonParcelize @Serializable data class BannedPersonsResponse( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BlockInstance.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BlockInstance.kt deleted file mode 100644 index d4c3e1d6..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BlockInstance.kt +++ /dev/null @@ -1,15 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -// TODO: renamed to UserBlockInstanceParams - -@CommonParcelize -@Serializable -data class BlockInstance( - val instance_id: InstanceId, - val block: Boolean, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateSite.kt index b2023c80..6670e416 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateSite.kt @@ -59,6 +59,6 @@ data class CreateSite( val registration_mode: RegistrationMode? /* "Closed" | "RequireApplication" | "Open" */ = null, val content_warning: String? = null, val default_post_listing_mode: PostListingMode? /* "List" | "Card" | "SmallCard" */ = null, - /* Added in 1.0.0 */ + /** Added in 1.0.0 */ val suggested_communities: MultiCommunityId? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/HidePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/HidePost.kt index fc9de690..0fe1b7ef 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/HidePost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/HidePost.kt @@ -5,7 +5,7 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize -// TODO changes again +// TODO changes again, single post Id @CommonParcelize @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommunities.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommunities.kt index 4dd0a46c..4674865f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommunities.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommunities.kt @@ -6,15 +6,19 @@ import it.vercruysse.lemmyapi.dto.ListingType import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize - -// TODO: changes +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PaginationCursor @CommonParcelize @Serializable data class ListCommunities( + val show_nsfw: Boolean? = null, val type_: ListingType? /* "All" | "Local" | "Subscribed" | "ModeratorView" */ = null, val sort: SortType? /* "Active" | "Hot" | "New" | "Old" | "TopDay" | "TopWeek" | "TopMonth" | "TopYear" | "TopAll" | "MostComments" | "NewComments" | "TopHour" | "TopSixHour" | "TopTwelveHour" | "TopThreeMonths" | "TopSixMonths" | "TopNineMonths" | "Controversial" | "Scaled" */ = null, - val show_nsfw: Boolean? = null, + /** Added in 1.0.0 */ + val page_cursor: PaginationCursor? = null, + /** Added in 1.0.0 */ + val page_back: Boolean? = null, + /** Removed in 1.0.0 */ val page: Long? = null, val limit: Long? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListMedia.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListMedia.kt index ac1c06ef..718e0a1e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListMedia.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListMedia.kt @@ -4,12 +4,16 @@ import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize - -// TODO: cursor changes +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PaginationCursor @CommonParcelize @Serializable data class ListMedia( + /** Removed in 1.0.0 */ val page: Long? = null, + /** Added in 1.0.0 */ + val page_cursor: PaginationCursor? = null, + /** Added in 1.0.0 */ + val page_back: Boolean? = null, val limit: Long? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPostLikes.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPostLikes.kt index ff93201f..980eb0ce 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPostLikes.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPostLikes.kt @@ -5,12 +5,15 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize -// TODO: cursor changes - @CommonParcelize @Serializable data class ListPostLikes( val post_id: PostId, + /** Removed in 1.0.0 */ val page: Long? = null, + /** Added in 1.0.0 */ + val page_cursor: PaginationCursor? = null, + /** Added in 1.0.0 */ + val page_back: Boolean? = null, val limit: Long? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListRegistrationApplications.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListRegistrationApplications.kt index a0d7f5ad..0c1d86e3 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListRegistrationApplications.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListRegistrationApplications.kt @@ -5,12 +5,15 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize -// TODO: cursor changes - @CommonParcelize @Serializable data class ListRegistrationApplications( val unread_only: Boolean? = null, + /** Removed in 1.0.0 */ val page: Long? = null, + /** Added in 1.0.0 */ + val page_cursor: PaginationCursor? = null, + /** Added in 1.0.0 */ + val page_back: Boolean? = null, val limit: Long? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalSite.kt index a580b5d2..d97b128f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalSite.kt @@ -11,8 +11,6 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.dto.FederationMode -// TODO: lots of changes - @CommonParcelize @Serializable data class LocalSite( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Search.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Search.kt index 875a3ab3..4f2bcd9e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Search.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Search.kt @@ -9,8 +9,6 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PaginationCursor -// TODO: changes - @CommonParcelize @Serializable data class Search( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SearchCombinedView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SearchCombinedView.kt new file mode 100644 index 00000000..a89afa18 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SearchCombinedView.kt @@ -0,0 +1,39 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.ExperimentalSerializationApi +import kotlinx.serialization.SerialName +import kotlinx.serialization.Serializable +import kotlinx.serialization.json.JsonClassDiscriminator + +@CommonParcelize +@Serializable +@OptIn(ExperimentalSerializationApi::class) +@JsonClassDiscriminator("type_") +sealed class SearchCombinedView : DatatypeRoot { + @CommonParcelize + @Serializable + @SerialName("Post") + data class Post(val post: PostView) : SearchCombinedView() + + @CommonParcelize + @Serializable + @SerialName("Comment") + data class Comment(val comment: CommentView) : SearchCombinedView() + + @CommonParcelize + @Serializable + @SerialName("Community") + data class Community(val community: CommunityView) : SearchCombinedView() + + @CommonParcelize + @Serializable + @SerialName("Person") + data class Person(val person: PersonView) : SearchCombinedView() + + @CommonParcelize + @Serializable + @SerialName("MultiCommunity") + data class MultiCommunity(val multiCommunity: MultiCommunityView) : SearchCombinedView() +} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SearchResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SearchResponse.kt index 28893bc9..2fddcbf6 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SearchResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SearchResponse.kt @@ -1,19 +1,17 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.dto.SearchType import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize -// TODO: Changes @CommonParcelize @Serializable data class SearchResponse( - val type_: SearchType /* "All" | "Comments" | "Posts" | "Communities" | "Users" | "Url" */, - val comments: List, - val posts: List, - val communities: List, - val users: List, + val results: List, + /** Added in 1.0.0 */ + val next_page: PaginationCursor? = null, + /** Added in 1.0.0 */ + val prev_page: PaginationCursor? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UserBlockInstanceCommunitiesParams.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UserBlockInstanceCommunitiesParams.kt index e1694ee6..a762a962 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UserBlockInstanceCommunitiesParams.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UserBlockInstanceCommunitiesParams.kt @@ -1,9 +1,10 @@ package it.vercruysse.lemmyapi.datatypes -import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable +import it.vercruysse.lemmyapi.CommonParcelize + @CommonParcelize @Serializable data class UserBlockInstanceCommunitiesParams( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UserBlockInstanceParams.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UserBlockInstanceParams.kt deleted file mode 100644 index e7750cae..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UserBlockInstanceParams.kt +++ /dev/null @@ -1,12 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.CommonParcelize -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -@CommonParcelize -@Serializable -data class UserBlockInstanceParams( - val instance_id: InstanceId, - val block: Boolean, -): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt index 210d481c..417221d7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt @@ -851,7 +851,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * @POST("site/block") */ override suspend fun blockInstance( - form: it.vercruysse.lemmyapi.datatypes.BlockInstance, + form: it.vercruysse.lemmyapi.datatypes.UserBlockInstanceCommunitiesParams, ): Result = notSupported() // possible supported by using old logic, but not be worth the effort diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt index d6ae948e..64c28232 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt @@ -199,6 +199,7 @@ import it.vercruysse.lemmyapi.datatypes.SavePost as LemmyapiDatatypesSavePost import it.vercruysse.lemmyapi.datatypes.SaveUserSettings as LemmyapiDatatypesSaveUserSettings import it.vercruysse.lemmyapi.datatypes.Search as LemmyapiDatatypesSearch import it.vercruysse.lemmyapi.datatypes.SearchResponse as LemmyapiDatatypesSearchResponse +import it.vercruysse.lemmyapi.datatypes.SearchCombinedView as LemmyapiDatatypesSearchCombinedView import it.vercruysse.lemmyapi.datatypes.Site as LemmyapiDatatypesSite import it.vercruysse.lemmyapi.datatypes.SiteResponse as LemmyapiDatatypesSiteResponse import it.vercruysse.lemmyapi.datatypes.SiteView as LemmyapiDatatypesSiteView @@ -1533,11 +1534,12 @@ internal class Transformer(var auth: String) : MapperGenerator { override fun toUni(d: X5DatatypesSearchResponse): LemmyapiDatatypesSearchResponse = LemmyapiDatatypesSearchResponse( - type_ = d.type_, - comments = d.comments.map { this.toUni(d = it) }, - posts = d.posts.map { this.toUni(d = it) }, - communities = d.communities.map { this.toUni(d = it) }, - users = d.users.map { this.toUni(d = it) }, + results = buildList { + addAll(d.comments.map { LemmyapiDatatypesSearchCombinedView.Comment(comment = this@Transformer.toUni(d = it)) }) + addAll(d.posts.map { LemmyapiDatatypesSearchCombinedView.Post(post = this@Transformer.toUni(d = it)) }) + addAll(d.communities.map { LemmyapiDatatypesSearchCombinedView.Community(community = this@Transformer.toUni(d = it)) }) + addAll(d.users.map { LemmyapiDatatypesSearchCombinedView.Person(person = this@Transformer.toUni(d = it)) }) + } ) override fun toUni(d: X5DatatypesSite): LemmyapiDatatypesSite = LemmyapiDatatypesSite( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt index 8a1b44f6..0f24af73 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt @@ -833,7 +833,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * @POST("site/block") */ override suspend fun blockInstance( - form: it.vercruysse.lemmyapi.datatypes.BlockInstance, + form: it.vercruysse.lemmyapi.datatypes.UserBlockInstanceCommunitiesParams, ): Result = api.blockInstance(transformer.fromUni(form)) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt index 4f9a3cac..3a1649f1 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt @@ -161,7 +161,7 @@ internal interface MapperGenerator { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.BanFromCommunity): BanFromCommunity fun fromUni(d: it.vercruysse.lemmyapi.datatypes.BanPerson): BanPerson fun fromUni(d: it.vercruysse.lemmyapi.datatypes.BlockCommunity): BlockCommunity - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.BlockInstance): BlockInstance + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.UserBlockInstanceCommunitiesParams): BlockInstance fun fromUni(d: it.vercruysse.lemmyapi.datatypes.BlockPerson): BlockPerson fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ChangePassword): ChangePassword fun fromUni(d: it.vercruysse.lemmyapi.datatypes.CreateComment): CreateComment diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt index e052dc97..1681b26e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt @@ -31,7 +31,7 @@ import it.vercruysse.lemmyapi.datatypes.BanPersonResponse as LemmyapiDatatypesBa import it.vercruysse.lemmyapi.datatypes.BannedPersonsResponse as LemmyapiDatatypesBannedPersonsResponse import it.vercruysse.lemmyapi.datatypes.BlockCommunity as LemmyapiDatatypesBlockCommunity import it.vercruysse.lemmyapi.datatypes.BlockCommunityResponse as LemmyapiDatatypesBlockCommunityResponse -import it.vercruysse.lemmyapi.datatypes.BlockInstance as LemmyapiDatatypesBlockInstance +import it.vercruysse.lemmyapi.datatypes.UserBlockInstanceCommunitiesParams as LemmyapiDatatypesBlockInstance import it.vercruysse.lemmyapi.datatypes.BlockPerson as LemmyapiDatatypesBlockPerson import it.vercruysse.lemmyapi.datatypes.BlockPersonResponse as LemmyapiDatatypesBlockPersonResponse import it.vercruysse.lemmyapi.datatypes.CaptchaResponse as LemmyapiDatatypesCaptchaResponse @@ -201,6 +201,7 @@ import it.vercruysse.lemmyapi.datatypes.SavePost as LemmyapiDatatypesSavePost import it.vercruysse.lemmyapi.datatypes.SaveUserSettings as LemmyapiDatatypesSaveUserSettings import it.vercruysse.lemmyapi.datatypes.Search as LemmyapiDatatypesSearch import it.vercruysse.lemmyapi.datatypes.SearchResponse as LemmyapiDatatypesSearchResponse +import it.vercruysse.lemmyapi.datatypes.SearchCombinedView as LemmyapiDatatypesSearchCombinedView import it.vercruysse.lemmyapi.datatypes.Site as LemmyapiDatatypesSite import it.vercruysse.lemmyapi.datatypes.SiteResponse as LemmyapiDatatypesSiteResponse import it.vercruysse.lemmyapi.datatypes.SiteView as LemmyapiDatatypesSiteView @@ -1573,11 +1574,12 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X0DatatypesSearchResponse): LemmyapiDatatypesSearchResponse = LemmyapiDatatypesSearchResponse( - type_ = d.type_, - comments = d.comments.map { this.toUni(d = it) }, - posts = d.posts.map { this.toUni(d = it) }, - communities = d.communities.map { this.toUni(d = it) }, - users = d.users.map { this.toUni(d = it) }, + results = buildList { + addAll(d.comments.map { LemmyapiDatatypesSearchCombinedView.Comment(comment = this@Transformer.toUni(d = it)) }) + addAll(d.posts.map { LemmyapiDatatypesSearchCombinedView.Post(post = this@Transformer.toUni(d = it)) }) + addAll(d.communities.map { LemmyapiDatatypesSearchCombinedView.Community(community = this@Transformer.toUni(d = it)) }) + addAll(d.users.map { LemmyapiDatatypesSearchCombinedView.Person(person = this@Transformer.toUni(d = it)) }) + } ) override fun toUni(d: X0DatatypesSite): LemmyapiDatatypesSite = LemmyapiDatatypesSite( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt index 2199aa2b..b22cc1c2 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt @@ -834,7 +834,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * @POST("site/block") */ override suspend fun blockInstance( - form: it.vercruysse.lemmyapi.datatypes.BlockInstance, + form: it.vercruysse.lemmyapi.datatypes.UserBlockInstanceCommunitiesParams, ): Result = api.blockInstance(transformer.fromUni(form)) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt index d3f777bf..c6c6e5fe 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt @@ -139,7 +139,7 @@ internal interface MapperGenerator { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.BanFromCommunity): BanFromCommunity fun fromUni(d: it.vercruysse.lemmyapi.datatypes.BanPerson): BanPerson fun fromUni(d: it.vercruysse.lemmyapi.datatypes.BlockCommunity): BlockCommunity - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.BlockInstance): BlockInstance + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.UserBlockInstanceCommunitiesParams): BlockInstance fun fromUni(d: it.vercruysse.lemmyapi.datatypes.BlockPerson): BlockPerson fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ChangePassword): ChangePassword fun fromUni(d: it.vercruysse.lemmyapi.datatypes.CreateComment): CreateComment diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt index 9d5ed7f0..b1cf7870 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt @@ -29,7 +29,7 @@ import it.vercruysse.lemmyapi.datatypes.BanPersonResponse as LemmyapiDatatypesBa import it.vercruysse.lemmyapi.datatypes.BannedPersonsResponse as LemmyapiDatatypesBannedPersonsResponse import it.vercruysse.lemmyapi.datatypes.BlockCommunity as LemmyapiDatatypesBlockCommunity import it.vercruysse.lemmyapi.datatypes.BlockCommunityResponse as LemmyapiDatatypesBlockCommunityResponse -import it.vercruysse.lemmyapi.datatypes.BlockInstance as LemmyapiDatatypesBlockInstance +import it.vercruysse.lemmyapi.datatypes.UserBlockInstanceCommunitiesParams as LemmyapiDatatypesBlockInstance import it.vercruysse.lemmyapi.datatypes.BlockPerson as LemmyapiDatatypesBlockPerson import it.vercruysse.lemmyapi.datatypes.BlockPersonResponse as LemmyapiDatatypesBlockPersonResponse import it.vercruysse.lemmyapi.datatypes.CaptchaResponse as LemmyapiDatatypesCaptchaResponse @@ -212,6 +212,7 @@ import it.vercruysse.lemmyapi.datatypes.SavePost as LemmyapiDatatypesSavePost import it.vercruysse.lemmyapi.datatypes.SaveUserSettings as LemmyapiDatatypesSaveUserSettings import it.vercruysse.lemmyapi.datatypes.Search as LemmyapiDatatypesSearch import it.vercruysse.lemmyapi.datatypes.SearchResponse as LemmyapiDatatypesSearchResponse +import it.vercruysse.lemmyapi.datatypes.SearchCombinedView as LemmyapiDatatypesSearchCombinedView import it.vercruysse.lemmyapi.datatypes.Site as LemmyapiDatatypesSite import it.vercruysse.lemmyapi.datatypes.SiteResponse as LemmyapiDatatypesSiteResponse import it.vercruysse.lemmyapi.datatypes.SiteView as LemmyapiDatatypesSiteView @@ -1662,11 +1663,12 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X11DatatypesSearchResponse): LemmyapiDatatypesSearchResponse = LemmyapiDatatypesSearchResponse( - type_ = d.type_, - comments = d.comments.map { this.toUni(d = it) }, - posts = d.posts.map { this.toUni(d = it) }, - communities = d.communities.map { this.toUni(d = it) }, - users = d.users.map { this.toUni(d = it) }, + results = buildList { + addAll(d.comments.map { LemmyapiDatatypesSearchCombinedView.Comment(comment = this@Transformer.toUni(d = it)) }) + addAll(d.posts.map { LemmyapiDatatypesSearchCombinedView.Post(post = this@Transformer.toUni(d = it)) }) + addAll(d.communities.map { LemmyapiDatatypesSearchCombinedView.Community(community = this@Transformer.toUni(d = it)) }) + addAll(d.users.map { LemmyapiDatatypesSearchCombinedView.Person(person = this@Transformer.toUni(d = it)) }) + } ) override fun toUni(d: X11DatatypesSite): LemmyapiDatatypesSite = LemmyapiDatatypesSite( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt index 400917a1..db6f7ed4 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt @@ -834,7 +834,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * @POST("site/block") */ override suspend fun blockInstance( - form: it.vercruysse.lemmyapi.datatypes.BlockInstance, + form: it.vercruysse.lemmyapi.datatypes.UserBlockInstanceCommunitiesParams, ): Result = api.blockInstance(transformer.fromUni(form)) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt index 282e48a7..ad7ad0e2 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt @@ -158,7 +158,7 @@ internal interface MapperGenerator { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.BanFromCommunity): BanFromCommunity fun fromUni(d: it.vercruysse.lemmyapi.datatypes.BanPerson): BanPerson fun fromUni(d: it.vercruysse.lemmyapi.datatypes.BlockCommunity): BlockCommunity - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.BlockInstance): BlockInstance + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.UserBlockInstanceCommunitiesParams): BlockInstance fun fromUni(d: it.vercruysse.lemmyapi.datatypes.BlockPerson): BlockPerson fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ChangePassword): ChangePassword fun fromUni(d: it.vercruysse.lemmyapi.datatypes.CreateComment): CreateComment diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt index bcb736f2..c37db835 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt @@ -33,7 +33,7 @@ import it.vercruysse.lemmyapi.datatypes.BanPersonResponse as LemmyapiDatatypesBa import it.vercruysse.lemmyapi.datatypes.BannedPersonsResponse as LemmyapiDatatypesBannedPersonsResponse import it.vercruysse.lemmyapi.datatypes.BlockCommunity as LemmyapiDatatypesBlockCommunity import it.vercruysse.lemmyapi.datatypes.BlockCommunityResponse as LemmyapiDatatypesBlockCommunityResponse -import it.vercruysse.lemmyapi.datatypes.BlockInstance as LemmyapiDatatypesBlockInstance +import it.vercruysse.lemmyapi.datatypes.UserBlockInstanceCommunitiesParams as LemmyapiDatatypesBlockInstance import it.vercruysse.lemmyapi.datatypes.BlockPerson as LemmyapiDatatypesBlockPerson import it.vercruysse.lemmyapi.datatypes.BlockPersonResponse as LemmyapiDatatypesBlockPersonResponse import it.vercruysse.lemmyapi.datatypes.CaptchaResponse as LemmyapiDatatypesCaptchaResponse @@ -207,6 +207,7 @@ import it.vercruysse.lemmyapi.datatypes.SavePost as LemmyapiDatatypesSavePost import it.vercruysse.lemmyapi.datatypes.SaveUserSettings as LemmyapiDatatypesSaveUserSettings import it.vercruysse.lemmyapi.datatypes.Search as LemmyapiDatatypesSearch import it.vercruysse.lemmyapi.datatypes.SearchResponse as LemmyapiDatatypesSearchResponse +import it.vercruysse.lemmyapi.datatypes.SearchCombinedView as LemmyapiDatatypesSearchCombinedView import it.vercruysse.lemmyapi.datatypes.Site as LemmyapiDatatypesSite import it.vercruysse.lemmyapi.datatypes.SiteResponse as LemmyapiDatatypesSiteResponse import it.vercruysse.lemmyapi.datatypes.SiteView as LemmyapiDatatypesSiteView @@ -1603,11 +1604,12 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X3DatatypesSearchResponse): LemmyapiDatatypesSearchResponse = LemmyapiDatatypesSearchResponse( - type_ = d.type_, - comments = d.comments.map { this.toUni(d = it) }, - posts = d.posts.map { this.toUni(d = it) }, - communities = d.communities.map { this.toUni(d = it) }, - users = d.users.map { this.toUni(d = it) }, + results = buildList { + addAll(d.comments.map { LemmyapiDatatypesSearchCombinedView.Comment(comment = this@Transformer.toUni(d = it)) }) + addAll(d.posts.map { LemmyapiDatatypesSearchCombinedView.Post(post = this@Transformer.toUni(d = it)) }) + addAll(d.communities.map { LemmyapiDatatypesSearchCombinedView.Community(community = this@Transformer.toUni(d = it)) }) + addAll(d.users.map { LemmyapiDatatypesSearchCombinedView.Person(person = this@Transformer.toUni(d = it)) }) + } ) override fun toUni(d: X3DatatypesSite): LemmyapiDatatypesSite = LemmyapiDatatypesSite( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt index 45563d59..7b19a750 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt @@ -833,7 +833,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * @POST("site/block") */ override suspend fun blockInstance( - form: it.vercruysse.lemmyapi.datatypes.BlockInstance, + form: it.vercruysse.lemmyapi.datatypes.UserBlockInstanceCommunitiesParams, ): Result = api.blockInstance(transformer.fromUni(form)) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt index 9cd2c5d5..4d004175 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt @@ -139,7 +139,7 @@ internal interface MapperGenerator { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.BanFromCommunity): BanFromCommunity fun fromUni(d: it.vercruysse.lemmyapi.datatypes.BanPerson): BanPerson fun fromUni(d: it.vercruysse.lemmyapi.datatypes.BlockCommunity): BlockCommunity - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.BlockInstance): BlockInstance + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.UserBlockInstanceCommunitiesParams): BlockInstance fun fromUni(d: it.vercruysse.lemmyapi.datatypes.BlockPerson): BlockPerson fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ChangePassword): ChangePassword fun fromUni(d: it.vercruysse.lemmyapi.datatypes.CreateComment): CreateComment diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt index 254bd8fb..24c60c42 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt @@ -29,7 +29,7 @@ import it.vercruysse.lemmyapi.datatypes.BanPersonResponse as LemmyapiDatatypesBa import it.vercruysse.lemmyapi.datatypes.BannedPersonsResponse as LemmyapiDatatypesBannedPersonsResponse import it.vercruysse.lemmyapi.datatypes.BlockCommunity as LemmyapiDatatypesBlockCommunity import it.vercruysse.lemmyapi.datatypes.BlockCommunityResponse as LemmyapiDatatypesBlockCommunityResponse -import it.vercruysse.lemmyapi.datatypes.BlockInstance as LemmyapiDatatypesBlockInstance +import it.vercruysse.lemmyapi.datatypes.UserBlockInstanceCommunitiesParams as LemmyapiDatatypesBlockInstance import it.vercruysse.lemmyapi.datatypes.BlockPerson as LemmyapiDatatypesBlockPerson import it.vercruysse.lemmyapi.datatypes.BlockPersonResponse as LemmyapiDatatypesBlockPersonResponse import it.vercruysse.lemmyapi.datatypes.CaptchaResponse as LemmyapiDatatypesCaptchaResponse @@ -210,6 +210,7 @@ import it.vercruysse.lemmyapi.datatypes.SavePost as LemmyapiDatatypesSavePost import it.vercruysse.lemmyapi.datatypes.SaveUserSettings as LemmyapiDatatypesSaveUserSettings import it.vercruysse.lemmyapi.datatypes.Search as LemmyapiDatatypesSearch import it.vercruysse.lemmyapi.datatypes.SearchResponse as LemmyapiDatatypesSearchResponse +import it.vercruysse.lemmyapi.datatypes.SearchCombinedView as LemmyapiDatatypesSearchCombinedView import it.vercruysse.lemmyapi.datatypes.Site as LemmyapiDatatypesSite import it.vercruysse.lemmyapi.datatypes.SiteResponse as LemmyapiDatatypesSiteResponse import it.vercruysse.lemmyapi.datatypes.SiteView as LemmyapiDatatypesSiteView @@ -1652,11 +1653,12 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X4DatatypesSearchResponse): LemmyapiDatatypesSearchResponse = LemmyapiDatatypesSearchResponse( - type_ = d.type_, - comments = d.comments.map { this.toUni(d = it) }, - posts = d.posts.map { this.toUni(d = it) }, - communities = d.communities.map { this.toUni(d = it) }, - users = d.users.map { this.toUni(d = it) }, + results = buildList { + addAll(d.comments.map { LemmyapiDatatypesSearchCombinedView.Comment(comment = this@Transformer.toUni(d = it)) }) + addAll(d.posts.map { LemmyapiDatatypesSearchCombinedView.Post(post = this@Transformer.toUni(d = it)) }) + addAll(d.communities.map { LemmyapiDatatypesSearchCombinedView.Community(community = this@Transformer.toUni(d = it)) }) + addAll(d.users.map { LemmyapiDatatypesSearchCombinedView.Person(person = this@Transformer.toUni(d = it)) }) + } ) override fun toUni(d: X4DatatypesSite): LemmyapiDatatypesSite = LemmyapiDatatypesSite( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt index 3943af27..ea11047b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt @@ -833,7 +833,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * @POST("site/block") */ override suspend fun blockInstance( - form: it.vercruysse.lemmyapi.datatypes.BlockInstance, + form: it.vercruysse.lemmyapi.datatypes.UserBlockInstanceCommunitiesParams, ): Result = api.blockInstance(transformer.fromUni(form)) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt index 37887deb..06c1081b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt @@ -141,7 +141,7 @@ internal interface MapperGenerator { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.BanFromCommunity): BanFromCommunity fun fromUni(d: it.vercruysse.lemmyapi.datatypes.BanPerson): BanPerson fun fromUni(d: it.vercruysse.lemmyapi.datatypes.BlockCommunity): BlockCommunity - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.BlockInstance): BlockInstance + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.UserBlockInstanceCommunitiesParams): BlockInstance fun fromUni(d: it.vercruysse.lemmyapi.datatypes.BlockPerson): BlockPerson fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ChangePassword): ChangePassword fun fromUni(d: it.vercruysse.lemmyapi.datatypes.CreateComment): CreateComment diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt index 57d30884..4ac5e01b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt @@ -29,7 +29,7 @@ import it.vercruysse.lemmyapi.datatypes.BanPersonResponse as LemmyapiDatatypesBa import it.vercruysse.lemmyapi.datatypes.BannedPersonsResponse as LemmyapiDatatypesBannedPersonsResponse import it.vercruysse.lemmyapi.datatypes.BlockCommunity as LemmyapiDatatypesBlockCommunity import it.vercruysse.lemmyapi.datatypes.BlockCommunityResponse as LemmyapiDatatypesBlockCommunityResponse -import it.vercruysse.lemmyapi.datatypes.BlockInstance as LemmyapiDatatypesBlockInstance +import it.vercruysse.lemmyapi.datatypes.UserBlockInstanceCommunitiesParams as LemmyapiDatatypesBlockInstance import it.vercruysse.lemmyapi.datatypes.BlockPerson as LemmyapiDatatypesBlockPerson import it.vercruysse.lemmyapi.datatypes.BlockPersonResponse as LemmyapiDatatypesBlockPersonResponse import it.vercruysse.lemmyapi.datatypes.CaptchaResponse as LemmyapiDatatypesCaptchaResponse @@ -212,6 +212,7 @@ import it.vercruysse.lemmyapi.datatypes.SavePost as LemmyapiDatatypesSavePost import it.vercruysse.lemmyapi.datatypes.SaveUserSettings as LemmyapiDatatypesSaveUserSettings import it.vercruysse.lemmyapi.datatypes.Search as LemmyapiDatatypesSearch import it.vercruysse.lemmyapi.datatypes.SearchResponse as LemmyapiDatatypesSearchResponse +import it.vercruysse.lemmyapi.datatypes.SearchCombinedView as LemmyapiDatatypesSearchCombinedView import it.vercruysse.lemmyapi.datatypes.Site as LemmyapiDatatypesSite import it.vercruysse.lemmyapi.datatypes.SiteResponse as LemmyapiDatatypesSiteResponse import it.vercruysse.lemmyapi.datatypes.SiteView as LemmyapiDatatypesSiteView @@ -1658,11 +1659,12 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X6DatatypesSearchResponse): LemmyapiDatatypesSearchResponse = LemmyapiDatatypesSearchResponse( - type_ = d.type_, - comments = d.comments.map { this.toUni(d = it) }, - posts = d.posts.map { this.toUni(d = it) }, - communities = d.communities.map { this.toUni(d = it) }, - users = d.users.map { this.toUni(d = it) }, + results = buildList { + addAll(d.comments.map { LemmyapiDatatypesSearchCombinedView.Comment(comment = this@Transformer.toUni(d = it)) }) + addAll(d.posts.map { LemmyapiDatatypesSearchCombinedView.Post(post = this@Transformer.toUni(d = it)) }) + addAll(d.communities.map { LemmyapiDatatypesSearchCombinedView.Community(community = this@Transformer.toUni(d = it)) }) + addAll(d.users.map { LemmyapiDatatypesSearchCombinedView.Person(person = this@Transformer.toUni(d = it)) }) + } ) override fun toUni(d: X6DatatypesSite): LemmyapiDatatypesSite = LemmyapiDatatypesSite( From ef8dc71bd102363552de7c7d9797db18452be472 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Tue, 23 Sep 2025 23:53:47 +0200 Subject: [PATCH 014/110] Fix ListReports --- .../src/main/kotlin/MapperGenerator0x18x5.kt | 12 --- .../src/main/kotlin/MapperGenerator0x19x0.kt | 6 -- .../src/main/kotlin/MapperGenerator0x19x11.kt | 6 -- .../src/main/kotlin/MapperGenerator0x19x3.kt | 6 -- .../src/main/kotlin/MapperGenerator0x19x4.kt | 6 -- .../src/main/kotlin/MapperGenerator0x19x6.kt | 6 -- .../lemmyapi/LemmyApiBaseController.kt | 20 +--- .../lemmyapi/datatypes/ListCommentReports.kt | 18 ---- .../datatypes/ListCommentReportsResponse.kt | 14 --- .../lemmyapi/datatypes/ListPostReports.kt | 18 ---- .../datatypes/ListPostReportsResponse.kt | 14 --- .../datatypes/ListPrivateMessageReports.kt | 16 --- .../ListPrivateMessageReportsResponse.kt | 14 --- .../lemmyapi/datatypes/ListReports.kt | 10 +- .../lemmyapi/dto/CustomDataTypes.kt | 14 ++- .../lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt | 101 +++++++++++++----- .../lemmyapi/v0/x18/x5/MapperGenerator.kt | 9 +- .../lemmyapi/v0/x18/x5/Transformer.kt | 33 ++---- .../lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt | 101 +++++++++++++----- .../lemmyapi/v0/x19/x0/MapperGenerator.kt | 11 +- .../lemmyapi/v0/x19/x0/Transformer.kt | 57 ++++------ .../lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt | 101 +++++++++++++----- .../lemmyapi/v0/x19/x11/MapperGenerator.kt | 9 +- .../lemmyapi/v0/x19/x11/Transformer.kt | 71 +++++------- .../lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt | 101 +++++++++++++----- .../lemmyapi/v0/x19/x3/MapperGenerator.kt | 9 +- .../lemmyapi/v0/x19/x3/Transformer.kt | 67 ++++-------- .../lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt | 101 +++++++++++++----- .../lemmyapi/v0/x19/x4/MapperGenerator.kt | 9 +- .../lemmyapi/v0/x19/x4/Transformer.kt | 75 +++++-------- .../lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt | 101 +++++++++++++----- .../lemmyapi/v0/x19/x6/MapperGenerator.kt | 9 +- .../lemmyapi/v0/x19/x6/Transformer.kt | 71 +++++------- .../v1/x0/x0/datatypes/ListReports.kt | 4 +- 34 files changed, 605 insertions(+), 615 deletions(-) delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommentReports.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommentReportsResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPostReports.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPostReportsResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPrivateMessageReports.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPrivateMessageReportsResponse.kt diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x18x5.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x18x5.kt index 6423f26c..0bd861b8 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x18x5.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x18x5.kt @@ -209,10 +209,7 @@ internal interface MapperGenerator0x18x5 { fun toUni(d: GetUnreadRegistrationApplicationCountResponse): it.vercruysse.lemmyapi.datatypes.GetUnreadRegistrationApplicationCountResponse fun toUni(d: Instance): it.vercruysse.lemmyapi.datatypes.Instance fun toUni(d: Language): it.vercruysse.lemmyapi.datatypes.Language - fun toUni(d: ListCommentReportsResponse): it.vercruysse.lemmyapi.datatypes.ListCommentReportsResponse fun toUni(d: ListCommunitiesResponse): it.vercruysse.lemmyapi.datatypes.ListCommunitiesResponse - fun toUni(d: ListPostReportsResponse): it.vercruysse.lemmyapi.datatypes.ListPostReportsResponse - fun toUni(d: ListPrivateMessageReportsResponse): it.vercruysse.lemmyapi.datatypes.ListPrivateMessageReportsResponse fun toUni(d: ListRegistrationApplicationsResponse): it.vercruysse.lemmyapi.datatypes.ListRegistrationApplicationsResponse fun toUni(d: LocalUserView): it.vercruysse.lemmyapi.datatypes.LocalUserView @@ -406,18 +403,9 @@ internal interface MapperGenerator0x18x5 { @Konvert(mappings = [Mapping(target = "auth", constant = "auth")]) fun fromUni(d: it.vercruysse.lemmyapi.datatypes.HideCommunity): HideCommunity - @Konvert(mappings = [Mapping(target = "auth", constant = "auth")]) - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListCommentReports): ListCommentReports - @Konvert(mappings = [Mapping(target = "auth", constant = "auth")]) fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListCommunities): ListCommunities - @Konvert(mappings = [Mapping(target = "auth", constant = "auth")]) - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListPostReports): ListPostReports - - @Konvert(mappings = [Mapping(target = "auth", constant = "auth")]) - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListPrivateMessageReports): ListPrivateMessageReports - @Konvert(mappings = [Mapping(target = "auth", constant = "auth")]) fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListRegistrationApplications): ListRegistrationApplications diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x0.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x0.kt index 9a55e290..b44d551a 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x0.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x0.kt @@ -161,10 +161,7 @@ internal interface MapperGenerator0x19x0 { fun toUni(d: Instance): it.vercruysse.lemmyapi.datatypes.Instance fun toUni(d: InstanceWithFederationState): it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState fun toUni(d: Language): it.vercruysse.lemmyapi.datatypes.Language - fun toUni(d: ListCommentReportsResponse): it.vercruysse.lemmyapi.datatypes.ListCommentReportsResponse fun toUni(d: ListCommunitiesResponse): it.vercruysse.lemmyapi.datatypes.ListCommunitiesResponse - fun toUni(d: ListPostReportsResponse): it.vercruysse.lemmyapi.datatypes.ListPostReportsResponse - fun toUni(d: ListPrivateMessageReportsResponse): it.vercruysse.lemmyapi.datatypes.ListPrivateMessageReportsResponse fun toUni(d: ListRegistrationApplicationsResponse): it.vercruysse.lemmyapi.datatypes.ListRegistrationApplicationsResponse fun toUni(d: LocalSiteRateLimit): it.vercruysse.lemmyapi.datatypes.LocalSiteRateLimit @@ -274,10 +271,7 @@ internal interface MapperGenerator0x19x0 { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetReportCount): GetReportCount fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetSiteMetadata): GetSiteMetadata fun fromUni(d: it.vercruysse.lemmyapi.datatypes.HideCommunity): HideCommunity - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListCommentReports): ListCommentReports fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListCommunities): ListCommunities - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListPostReports): ListPostReports - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListPrivateMessageReports): ListPrivateMessageReports fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListRegistrationApplications): ListRegistrationApplications fun fromUni(d: it.vercruysse.lemmyapi.datatypes.LockPost): LockPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.Login): Login diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt index f3f76ba9..63752259 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt @@ -68,12 +68,9 @@ internal interface MapperGenerator0x19x11 { fun toUni(d: Language): it.vercruysse.lemmyapi.datatypes.Language fun toUni(d: LinkMetadata): it.vercruysse.lemmyapi.datatypes.LinkMetadata fun toUni(d: ListCommentLikesResponse): it.vercruysse.lemmyapi.datatypes.ListCommentLikesResponse - fun toUni(d: ListCommentReportsResponse): it.vercruysse.lemmyapi.datatypes.ListCommentReportsResponse fun toUni(d: ListCommunitiesResponse): it.vercruysse.lemmyapi.datatypes.ListCommunitiesResponse fun toUni(d: ListMediaResponse): it.vercruysse.lemmyapi.datatypes.ListMediaResponse fun toUni(d: ListPostLikesResponse): it.vercruysse.lemmyapi.datatypes.ListPostLikesResponse - fun toUni(d: ListPostReportsResponse): it.vercruysse.lemmyapi.datatypes.ListPostReportsResponse - fun toUni(d: ListPrivateMessageReportsResponse): it.vercruysse.lemmyapi.datatypes.ListPrivateMessageReportsResponse fun toUni(d: ListRegistrationApplicationsResponse): it.vercruysse.lemmyapi.datatypes.ListRegistrationApplicationsResponse fun toUni(d: LocalImage): it.vercruysse.lemmyapi.datatypes.LocalImage fun toUni(d: LocalImageView): it.vercruysse.lemmyapi.datatypes.LocalImageView @@ -189,12 +186,9 @@ internal interface MapperGenerator0x19x11 { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.HideCommunity): HideCommunity fun fromUni(d: it.vercruysse.lemmyapi.datatypes.HidePost): HidePost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListCommentLikes): ListCommentLikes - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListCommentReports): ListCommentReports fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListCommunities): ListCommunities fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListMedia): ListMedia fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListPostLikes): ListPostLikes - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListPostReports): ListPostReports - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListPrivateMessageReports): ListPrivateMessageReports fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListRegistrationApplications): ListRegistrationApplications fun fromUni(d: it.vercruysse.lemmyapi.datatypes.LockPost): LockPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.Login): Login diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x3.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x3.kt index 66012156..fda7c047 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x3.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x3.kt @@ -162,11 +162,8 @@ internal interface MapperGenerator0x19x3 { fun toUni(d: InstanceWithFederationState): it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState fun toUni(d: Language): it.vercruysse.lemmyapi.datatypes.Language fun toUni(d: ListCommentLikesResponse): it.vercruysse.lemmyapi.datatypes.ListCommentLikesResponse - fun toUni(d: ListCommentReportsResponse): it.vercruysse.lemmyapi.datatypes.ListCommentReportsResponse fun toUni(d: ListCommunitiesResponse): it.vercruysse.lemmyapi.datatypes.ListCommunitiesResponse fun toUni(d: ListPostLikesResponse): it.vercruysse.lemmyapi.datatypes.ListPostLikesResponse - fun toUni(d: ListPostReportsResponse): it.vercruysse.lemmyapi.datatypes.ListPostReportsResponse - fun toUni(d: ListPrivateMessageReportsResponse): it.vercruysse.lemmyapi.datatypes.ListPrivateMessageReportsResponse fun toUni(d: ListRegistrationApplicationsResponse): it.vercruysse.lemmyapi.datatypes.ListRegistrationApplicationsResponse fun toUni(d: LocalSiteRateLimit): it.vercruysse.lemmyapi.datatypes.LocalSiteRateLimit @@ -276,11 +273,8 @@ internal interface MapperGenerator0x19x3 { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetSiteMetadata): GetSiteMetadata fun fromUni(d: it.vercruysse.lemmyapi.datatypes.HideCommunity): HideCommunity fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListCommentLikes): ListCommentLikes - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListCommentReports): ListCommentReports fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListCommunities): ListCommunities fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListPostLikes): ListPostLikes - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListPostReports): ListPostReports - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListPrivateMessageReports): ListPrivateMessageReports fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListRegistrationApplications): ListRegistrationApplications fun fromUni(d: it.vercruysse.lemmyapi.datatypes.LockPost): LockPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.Login): Login diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt index c1a44f7c..806aa4bb 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt @@ -67,12 +67,9 @@ internal interface MapperGenerator0x19x4 { fun toUni(d: Language): it.vercruysse.lemmyapi.datatypes.Language fun toUni(d: LinkMetadata): it.vercruysse.lemmyapi.datatypes.LinkMetadata fun toUni(d: ListCommentLikesResponse): it.vercruysse.lemmyapi.datatypes.ListCommentLikesResponse - fun toUni(d: ListCommentReportsResponse): it.vercruysse.lemmyapi.datatypes.ListCommentReportsResponse fun toUni(d: ListCommunitiesResponse): it.vercruysse.lemmyapi.datatypes.ListCommunitiesResponse fun toUni(d: ListMediaResponse): it.vercruysse.lemmyapi.datatypes.ListMediaResponse fun toUni(d: ListPostLikesResponse): it.vercruysse.lemmyapi.datatypes.ListPostLikesResponse - fun toUni(d: ListPostReportsResponse): it.vercruysse.lemmyapi.datatypes.ListPostReportsResponse - fun toUni(d: ListPrivateMessageReportsResponse): it.vercruysse.lemmyapi.datatypes.ListPrivateMessageReportsResponse fun toUni(d: ListRegistrationApplicationsResponse): it.vercruysse.lemmyapi.datatypes.ListRegistrationApplicationsResponse fun toUni(d: LocalImage): it.vercruysse.lemmyapi.datatypes.LocalImage fun toUni(d: LocalImageView): it.vercruysse.lemmyapi.datatypes.LocalImageView @@ -187,12 +184,9 @@ internal interface MapperGenerator0x19x4 { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.HideCommunity): HideCommunity fun fromUni(d: it.vercruysse.lemmyapi.datatypes.HidePost): HidePost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListCommentLikes): ListCommentLikes - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListCommentReports): ListCommentReports fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListCommunities): ListCommunities fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListMedia): ListMedia fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListPostLikes): ListPostLikes - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListPostReports): ListPostReports - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListPrivateMessageReports): ListPrivateMessageReports fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListRegistrationApplications): ListRegistrationApplications fun fromUni(d: it.vercruysse.lemmyapi.datatypes.LockPost): LockPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.Login): Login diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt index 4df5631a..4efbe486 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt @@ -68,12 +68,9 @@ internal interface MapperGenerator0x19x6 { fun toUni(d: Language): it.vercruysse.lemmyapi.datatypes.Language fun toUni(d: LinkMetadata): it.vercruysse.lemmyapi.datatypes.LinkMetadata fun toUni(d: ListCommentLikesResponse): it.vercruysse.lemmyapi.datatypes.ListCommentLikesResponse - fun toUni(d: ListCommentReportsResponse): it.vercruysse.lemmyapi.datatypes.ListCommentReportsResponse fun toUni(d: ListCommunitiesResponse): it.vercruysse.lemmyapi.datatypes.ListCommunitiesResponse fun toUni(d: ListMediaResponse): it.vercruysse.lemmyapi.datatypes.ListMediaResponse fun toUni(d: ListPostLikesResponse): it.vercruysse.lemmyapi.datatypes.ListPostLikesResponse - fun toUni(d: ListPostReportsResponse): it.vercruysse.lemmyapi.datatypes.ListPostReportsResponse - fun toUni(d: ListPrivateMessageReportsResponse): it.vercruysse.lemmyapi.datatypes.ListPrivateMessageReportsResponse fun toUni(d: ListRegistrationApplicationsResponse): it.vercruysse.lemmyapi.datatypes.ListRegistrationApplicationsResponse fun toUni(d: LocalImage): it.vercruysse.lemmyapi.datatypes.LocalImage fun toUni(d: LocalImageView): it.vercruysse.lemmyapi.datatypes.LocalImageView @@ -189,12 +186,9 @@ internal interface MapperGenerator0x19x6 { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.HideCommunity): HideCommunity fun fromUni(d: it.vercruysse.lemmyapi.datatypes.HidePost): HidePost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListCommentLikes): ListCommentLikes - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListCommentReports): ListCommentReports fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListCommunities): ListCommunities fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListMedia): ListMedia fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListPostLikes): ListPostLikes - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListPostReports): ListPostReports - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListPrivateMessageReports): ListPrivateMessageReports fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListRegistrationApplications): ListRegistrationApplications fun fromUni(d: it.vercruysse.lemmyapi.datatypes.LockPost): LockPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.Login): Login diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt index 7f4101de..e1c2b87e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt @@ -238,11 +238,9 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version abstract suspend fun resolvePostReport(form: ResolvePostReport): Result /** - * List post reports. - * - * @GET("post/report/list") + * List reports. */ - abstract suspend fun listPostReports(form: ListPostReports): Result + abstract suspend fun listReports(form: ListReports): Result /** * Fetch metadata for any given site. @@ -335,13 +333,6 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version */ abstract suspend fun resolveCommentReport(form: ResolveCommentReport): Result - /** - * List comment reports. - * - * @GET("comment/report/list") - */ - abstract suspend fun listCommentReports(form: ListCommentReports): Result - /** * Edit a private message. * @@ -391,13 +382,6 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version */ abstract suspend fun resolvePrivateMessageReport(form: ResolvePrivateMessageReport): Result - /** - * List private message reports. - * - * @GET("private_message/report/list") - */ - abstract suspend fun listPrivateMessageReports(form: ListPrivateMessageReports): Result - /** * Get the details for a person. * diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommentReports.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommentReports.kt deleted file mode 100644 index ae290c13..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommentReports.kt +++ /dev/null @@ -1,18 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -// TODO: removed - -@CommonParcelize -@Serializable -data class ListCommentReports( - val comment_id: CommentId? = null, - val page: Long? = null, - val limit: Long? = null, - val unresolved_only: Boolean? = null, - val community_id: CommunityId? = null, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommentReportsResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommentReportsResponse.kt deleted file mode 100644 index aa7f5116..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommentReportsResponse.kt +++ /dev/null @@ -1,14 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -// TODO: removed - -@CommonParcelize -@Serializable -data class ListCommentReportsResponse( - val comment_reports: List, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPostReports.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPostReports.kt deleted file mode 100644 index 63ac2cea..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPostReports.kt +++ /dev/null @@ -1,18 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -// TODO: removed - -@CommonParcelize -@Serializable -data class ListPostReports( - val page: Long? = null, - val limit: Long? = null, - val unresolved_only: Boolean? = null, - val community_id: CommunityId? = null, - val post_id: PostId? = null, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPostReportsResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPostReportsResponse.kt deleted file mode 100644 index 771f167e..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPostReportsResponse.kt +++ /dev/null @@ -1,14 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -// TODO: removed - -@CommonParcelize -@Serializable -data class ListPostReportsResponse( - val post_reports: List, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPrivateMessageReports.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPrivateMessageReports.kt deleted file mode 100644 index bb9d1b89..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPrivateMessageReports.kt +++ /dev/null @@ -1,16 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -// TODO: removed - -@CommonParcelize -@Serializable -data class ListPrivateMessageReports( - val page: Long? = null, - val limit: Long? = null, - val unresolved_only: Boolean? = null, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPrivateMessageReportsResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPrivateMessageReportsResponse.kt deleted file mode 100644 index 36e3141c..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPrivateMessageReportsResponse.kt +++ /dev/null @@ -1,14 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -// TODO: removed - -@CommonParcelize -@Serializable -data class ListPrivateMessageReportsResponse( - val private_message_reports: List, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListReports.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListReports.kt index b7c0486c..b5bcf75f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListReports.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListReports.kt @@ -2,19 +2,25 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.dto.ListingType +import it.vercruysse.lemmyapi.dto.ReportType import kotlinx.serialization.Serializable @CommonParcelize @Serializable data class ListReports( val unresolved_only: Boolean? = null, - val type_: ListingType? /* "All" | "Posts" | "Comments" | "PrivateMessages" | "Communities" */ = null, + val type_: ReportType /* "All" | "Posts" | "Comments" | "PrivateMessages" | "Communities" */, val post_id: PostId? = null, + /** Removed in 1.0.0 */ val community_id: CommunityId? = null, + val page: Long? = null, + /** Added in 1.0.0 */ val page_cursor: PaginationCursor? = null, + /** Added in 1.0.0 */ val page_back: Boolean? = null, val limit: Long? = null, + /** Added in 1.0.0 */ val show_community_rule_violations: Boolean? = null, + /** Added in 1.0.0 */ val my_reports_only: Boolean? = null, ): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/dto/CustomDataTypes.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/dto/CustomDataTypes.kt index e26aeb5b..d2b6211f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/dto/CustomDataTypes.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/dto/CustomDataTypes.kt @@ -42,9 +42,9 @@ enum class CommunityFollowerState { companion object { fun from(d: SubscribedType): CommunityFollowerState? = when (d) { - SubscribedType.Subscribed -> CommunityFollowerState.Accepted + SubscribedType.Subscribed -> Accepted SubscribedType.NotSubscribed -> null - SubscribedType.Pending -> CommunityFollowerState.Pending + SubscribedType.Pending -> Pending } } } @@ -206,6 +206,16 @@ enum class NotificationType(override val minimumVersion: Version = V1_0_0, overr PrivateMessage, } +@Serializable +enum class ReportType(override val minimumVersion: Version = V1_0_0, override val maximumVersion: Version? = null) : + VersionTracker { + All, + Posts, + Comments, + PrivateMessages, + Communities, +} + /** * Tracks the version of the supported entries from this enum * Use this in conjunction with [getSupportedEntries] diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt index 417221d7..a923b00d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt @@ -331,14 +331,79 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba apiV18.resolvePostReport(transformer.fromUni(form)).map(transformer::toUni) /** - * List post reports. - * - * @GET("post/report/list") - */ - override suspend fun listPostReports( - form: it.vercruysse.lemmyapi.datatypes.ListPostReports, - ): Result = - apiV18.listPostReports(transformer.fromUni(form)).map(transformer::toUni) + * List reports. + */ + override suspend fun listReports( + form: it.vercruysse.lemmyapi.datatypes.ListReports, + ): Result = + when (form.type_) { + it.vercruysse.lemmyapi.dto.ReportType.Communities -> notSupported() + it.vercruysse.lemmyapi.dto.ReportType.Posts -> { + apiV18.listPostReports(transformer.fromUniP(form)).map { resp -> + val items = resp.post_reports.map { r -> + it.vercruysse.lemmyapi.datatypes.ReportCombinedView.Post( + transformer.toUni(r), + ) + } + it.vercruysse.lemmyapi.datatypes.ListReportsResponse(items) + } + } + it.vercruysse.lemmyapi.dto.ReportType.Comments -> { + apiV18.listCommentReports(transformer.fromUniC(form)).map { resp -> + val items = resp.comment_reports.map { r -> + it.vercruysse.lemmyapi.datatypes.ReportCombinedView.Comment( + transformer.toUni(r), + ) + } + it.vercruysse.lemmyapi.datatypes.ListReportsResponse(items) + } + } + it.vercruysse.lemmyapi.dto.ReportType.PrivateMessages -> { + apiV18.listPrivateMessageReports(transformer.fromUniPm(form)).map { resp -> + val items = resp.private_message_reports.map { r -> + it.vercruysse.lemmyapi.datatypes.ReportCombinedView.PrivateMessage( + transformer.toUni(r), + ) + } + it.vercruysse.lemmyapi.datatypes.ListReportsResponse(items) + } + } + it.vercruysse.lemmyapi.dto.ReportType.All -> { + runCatching { + val postsResp = apiV18.listPostReports(transformer.fromUniP(form)).getOrThrow() + val commentsResp = apiV18.listCommentReports(transformer.fromUniC(form)).getOrThrow() + val privateMessagesResp = apiV18.listPrivateMessageReports(transformer.fromUniPm(form)).getOrThrow() + + val allReports = mutableListOf() + + allReports.addAll( + postsResp.post_reports.map { r -> + it.vercruysse.lemmyapi.datatypes.ReportCombinedView.Post( + transformer.toUni(r), + ) + }, + ) + + allReports.addAll( + commentsResp.comment_reports.map { r -> + it.vercruysse.lemmyapi.datatypes.ReportCombinedView.Comment( + transformer.toUni(r), + ) + }, + ) + + allReports.addAll( + privateMessagesResp.private_message_reports.map { r -> + it.vercruysse.lemmyapi.datatypes.ReportCombinedView.PrivateMessage( + transformer.toUni(r), + ) + }, + ) + + it.vercruysse.lemmyapi.datatypes.ListReportsResponse(allReports) + } + } + } /** * Fetch metadata for any given site. @@ -470,16 +535,6 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba ): Result = apiV18.resolveCommentReport(transformer.fromUni(form)).map(transformer::toUni) - /** - * List comment reports. - * - * @GET("comment/report/list") - */ - override suspend fun listCommentReports( - form: it.vercruysse.lemmyapi.datatypes.ListCommentReports, - ): Result = - apiV18.listCommentReports(transformer.fromUni(form)).map(transformer::toUni) - /** * Edit a private message. * @@ -550,16 +605,6 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba ): Result = apiV18.resolvePrivateMessageReport(transformer.fromUni(form)).map(transformer::toUni) - /** - * List private message reports. - * - * @GET("private_message/report/list") - */ - override suspend fun listPrivateMessageReports( - form: it.vercruysse.lemmyapi.datatypes.ListPrivateMessageReports, - ): Result = - apiV18.listPrivateMessageReports(transformer.fromUni(form)).map(transformer::toUni) - /** * Get the details for a person. * diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/MapperGenerator.kt index 9c9111de..8d95d28a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/MapperGenerator.kt @@ -103,10 +103,7 @@ internal interface MapperGenerator { ): it.vercruysse.lemmyapi.datatypes.GetUnreadRegistrationApplicationCountResponse fun toUni(d: Instance): it.vercruysse.lemmyapi.datatypes.Instance fun toUni(d: Language): it.vercruysse.lemmyapi.datatypes.Language - fun toUni(d: ListCommentReportsResponse): it.vercruysse.lemmyapi.datatypes.ListCommentReportsResponse fun toUni(d: ListCommunitiesResponse): it.vercruysse.lemmyapi.datatypes.ListCommunitiesResponse - fun toUni(d: ListPostReportsResponse): it.vercruysse.lemmyapi.datatypes.ListPostReportsResponse - fun toUni(d: ListPrivateMessageReportsResponse): it.vercruysse.lemmyapi.datatypes.ListPrivateMessageReportsResponse fun toUni(d: ListRegistrationApplicationsResponse): it.vercruysse.lemmyapi.datatypes.ListRegistrationApplicationsResponse fun toUni(d: LocalUserView): it.vercruysse.lemmyapi.datatypes.LocalUserView @@ -256,13 +253,13 @@ internal interface MapperGenerator { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.HideCommunity): HideCommunity - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListCommentReports): ListCommentReports + fun fromUniC(d: it.vercruysse.lemmyapi.datatypes.ListReports): ListCommentReports fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListCommunities): ListCommunities - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListPostReports): ListPostReports + fun fromUniP(d: it.vercruysse.lemmyapi.datatypes.ListReports): ListPostReports - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListPrivateMessageReports): ListPrivateMessageReports + fun fromUniPm(d: it.vercruysse.lemmyapi.datatypes.ListReports): ListPrivateMessageReports fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListRegistrationApplications): ListRegistrationApplications diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt index 64c28232..13b3133d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt @@ -114,16 +114,11 @@ import it.vercruysse.lemmyapi.datatypes.GetUnreadRegistrationApplicationCountRes import it.vercruysse.lemmyapi.datatypes.HideCommunity as LemmyapiDatatypesHideCommunity import it.vercruysse.lemmyapi.datatypes.Instance as LemmyapiDatatypesInstance import it.vercruysse.lemmyapi.datatypes.Language as LemmyapiDatatypesLanguage -import it.vercruysse.lemmyapi.datatypes.ListCommentReports as LemmyapiDatatypesListCommentReports -import it.vercruysse.lemmyapi.datatypes.ListCommentReportsResponse as LemmyapiDatatypesListCommentReportsResponse import it.vercruysse.lemmyapi.datatypes.ListCommunities as LemmyapiDatatypesListCommunities import it.vercruysse.lemmyapi.datatypes.ListCommunitiesResponse as LemmyapiDatatypesListCommunitiesResponse -import it.vercruysse.lemmyapi.datatypes.ListPostReports as LemmyapiDatatypesListPostReports -import it.vercruysse.lemmyapi.datatypes.ListPostReportsResponse as LemmyapiDatatypesListPostReportsResponse -import it.vercruysse.lemmyapi.datatypes.ListPrivateMessageReports as LemmyapiDatatypesListPrivateMessageReports -import it.vercruysse.lemmyapi.datatypes.ListPrivateMessageReportsResponse as LemmyapiDatatypesListPrivateMessageReportsResponse import it.vercruysse.lemmyapi.datatypes.ListRegistrationApplications as LemmyapiDatatypesListRegistrationApplications import it.vercruysse.lemmyapi.datatypes.ListRegistrationApplicationsResponse as LemmyapiDatatypesListRegistrationApplicationsResponse +import it.vercruysse.lemmyapi.datatypes.ListReports as LemmyapiDatatypesListReports import it.vercruysse.lemmyapi.datatypes.LocalSite as LemmyapiDatatypesLocalSite import it.vercruysse.lemmyapi.datatypes.LocalSiteRateLimit as LemmyapiDatatypesLocalSiteRateLimit import it.vercruysse.lemmyapi.datatypes.LocalUser as LemmyapiDatatypesLocalUser @@ -198,8 +193,8 @@ import it.vercruysse.lemmyapi.datatypes.SaveComment as LemmyapiDatatypesSaveComm import it.vercruysse.lemmyapi.datatypes.SavePost as LemmyapiDatatypesSavePost import it.vercruysse.lemmyapi.datatypes.SaveUserSettings as LemmyapiDatatypesSaveUserSettings import it.vercruysse.lemmyapi.datatypes.Search as LemmyapiDatatypesSearch -import it.vercruysse.lemmyapi.datatypes.SearchResponse as LemmyapiDatatypesSearchResponse import it.vercruysse.lemmyapi.datatypes.SearchCombinedView as LemmyapiDatatypesSearchCombinedView +import it.vercruysse.lemmyapi.datatypes.SearchResponse as LemmyapiDatatypesSearchResponse import it.vercruysse.lemmyapi.datatypes.Site as LemmyapiDatatypesSite import it.vercruysse.lemmyapi.datatypes.SiteResponse as LemmyapiDatatypesSiteResponse import it.vercruysse.lemmyapi.datatypes.SiteView as LemmyapiDatatypesSiteView @@ -308,13 +303,10 @@ import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.HideCommunity as X5DatatypesHi import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.Instance as X5DatatypesInstance import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.Language as X5DatatypesLanguage import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.ListCommentReports as X5DatatypesListCommentReports -import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.ListCommentReportsResponse as X5DatatypesListCommentReportsResponse import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.ListCommunities as X5DatatypesListCommunities import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.ListCommunitiesResponse as X5DatatypesListCommunitiesResponse import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.ListPostReports as X5DatatypesListPostReports -import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.ListPostReportsResponse as X5DatatypesListPostReportsResponse import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.ListPrivateMessageReports as X5DatatypesListPrivateMessageReports -import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.ListPrivateMessageReportsResponse as X5DatatypesListPrivateMessageReportsResponse import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.ListRegistrationApplications as X5DatatypesListRegistrationApplications import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.ListRegistrationApplicationsResponse as X5DatatypesListRegistrationApplicationsResponse import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.LocalSite as X5DatatypesLocalSite @@ -1112,23 +1104,10 @@ internal class Transformer(var auth: String) : MapperGenerator { name = d.name, ) - override fun toUni(d: X5DatatypesListCommentReportsResponse): LemmyapiDatatypesListCommentReportsResponse = LemmyapiDatatypesListCommentReportsResponse( - comment_reports = d.comment_reports.map { this.toUni(d = it) }, - ) - override fun toUni(d: X5DatatypesListCommunitiesResponse): LemmyapiDatatypesListCommunitiesResponse = LemmyapiDatatypesListCommunitiesResponse( communities = d.communities.map { this.toUni(d = it) }, ) - override fun toUni(d: X5DatatypesListPostReportsResponse): LemmyapiDatatypesListPostReportsResponse = LemmyapiDatatypesListPostReportsResponse( - post_reports = d.post_reports.map { this.toUni(d = it) }, - ) - - override fun toUni(d: X5DatatypesListPrivateMessageReportsResponse): LemmyapiDatatypesListPrivateMessageReportsResponse = - LemmyapiDatatypesListPrivateMessageReportsResponse( - private_message_reports = d.private_message_reports.map { this.toUni(d = it) }, - ) - override fun toUni(d: X5DatatypesListRegistrationApplicationsResponse): LemmyapiDatatypesListRegistrationApplicationsResponse = LemmyapiDatatypesListRegistrationApplicationsResponse( registration_applications = d.registration_applications.map { this.toUni(d = it) }, @@ -1539,7 +1518,7 @@ internal class Transformer(var auth: String) : MapperGenerator { addAll(d.posts.map { LemmyapiDatatypesSearchCombinedView.Post(post = this@Transformer.toUni(d = it)) }) addAll(d.communities.map { LemmyapiDatatypesSearchCombinedView.Community(community = this@Transformer.toUni(d = it)) }) addAll(d.users.map { LemmyapiDatatypesSearchCombinedView.Person(person = this@Transformer.toUni(d = it)) }) - } + }, ) override fun toUni(d: X5DatatypesSite): LemmyapiDatatypesSite = LemmyapiDatatypesSite( @@ -2035,7 +2014,7 @@ internal class Transformer(var auth: String) : MapperGenerator { auth = auth, ) - override fun fromUni(d: LemmyapiDatatypesListCommentReports): X5DatatypesListCommentReports = + override fun fromUniC(d: LemmyapiDatatypesListReports): X5DatatypesListCommentReports = X5DatatypesListCommentReports( page = d.page, limit = d.limit, @@ -2054,7 +2033,7 @@ internal class Transformer(var auth: String) : MapperGenerator { auth = auth, ) - override fun fromUni(d: LemmyapiDatatypesListPostReports): X5DatatypesListPostReports = + override fun fromUniP(d: LemmyapiDatatypesListReports): X5DatatypesListPostReports = X5DatatypesListPostReports( page = d.page, limit = d.limit, @@ -2063,7 +2042,7 @@ internal class Transformer(var auth: String) : MapperGenerator { auth = auth, ) - override fun fromUni(d: LemmyapiDatatypesListPrivateMessageReports): X5DatatypesListPrivateMessageReports = X5DatatypesListPrivateMessageReports( + override fun fromUniPm(d: LemmyapiDatatypesListReports): X5DatatypesListPrivateMessageReports = X5DatatypesListPrivateMessageReports( page = d.page, limit = d.limit, unresolved_only = d.unresolved_only, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt index 0f24af73..08ff074a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt @@ -317,14 +317,79 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba api.resolvePostReport(transformer.fromUni(form)).map(transformer::toUni) /** - * List post reports. - * - * @GET("post/report/list") - */ - override suspend fun listPostReports( - form: it.vercruysse.lemmyapi.datatypes.ListPostReports, - ): Result = - api.listPostReports(transformer.fromUni(form)).map(transformer::toUni) + * List reports. + */ + override suspend fun listReports( + form: it.vercruysse.lemmyapi.datatypes.ListReports, + ): Result = + when (form.type_) { + it.vercruysse.lemmyapi.dto.ReportType.Communities -> notSupported() + it.vercruysse.lemmyapi.dto.ReportType.Posts -> { + api.listPostReports(transformer.fromUniP(form)).map { resp -> + val items = resp.post_reports.map { r -> + it.vercruysse.lemmyapi.datatypes.ReportCombinedView.Post( + transformer.toUni(r), + ) + } + it.vercruysse.lemmyapi.datatypes.ListReportsResponse(items) + } + } + it.vercruysse.lemmyapi.dto.ReportType.Comments -> { + api.listCommentReports(transformer.fromUniC(form)).map { resp -> + val items = resp.comment_reports.map { r -> + it.vercruysse.lemmyapi.datatypes.ReportCombinedView.Comment( + transformer.toUni(r), + ) + } + it.vercruysse.lemmyapi.datatypes.ListReportsResponse(items) + } + } + it.vercruysse.lemmyapi.dto.ReportType.PrivateMessages -> { + api.listPrivateMessageReports(transformer.fromUniPm(form)).map { resp -> + val items = resp.private_message_reports.map { r -> + it.vercruysse.lemmyapi.datatypes.ReportCombinedView.PrivateMessage( + transformer.toUni(r), + ) + } + it.vercruysse.lemmyapi.datatypes.ListReportsResponse(items) + } + } + it.vercruysse.lemmyapi.dto.ReportType.All -> { + runCatching { + val postsResp = api.listPostReports(transformer.fromUniP(form)).getOrThrow() + val commentsResp = api.listCommentReports(transformer.fromUniC(form)).getOrThrow() + val privateMessagesResp = api.listPrivateMessageReports(transformer.fromUniPm(form)).getOrThrow() + + val allReports = mutableListOf() + + allReports.addAll( + postsResp.post_reports.map { r -> + it.vercruysse.lemmyapi.datatypes.ReportCombinedView.Post( + transformer.toUni(r), + ) + }, + ) + + allReports.addAll( + commentsResp.comment_reports.map { r -> + it.vercruysse.lemmyapi.datatypes.ReportCombinedView.Comment( + transformer.toUni(r), + ) + }, + ) + + allReports.addAll( + privateMessagesResp.private_message_reports.map { r -> + it.vercruysse.lemmyapi.datatypes.ReportCombinedView.PrivateMessage( + transformer.toUni(r), + ) + }, + ) + + it.vercruysse.lemmyapi.datatypes.ListReportsResponse(allReports) + } + } + } /** * Fetch metadata for any given site. @@ -456,16 +521,6 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba ): Result = api.resolveCommentReport(transformer.fromUni(form)).map(transformer::toUni) - /** - * List comment reports. - * - * @GET("comment/report/list") - */ - override suspend fun listCommentReports( - form: it.vercruysse.lemmyapi.datatypes.ListCommentReports, - ): Result = - api.listCommentReports(transformer.fromUni(form)).map(transformer::toUni) - /** * Edit a private message. * @@ -536,16 +591,6 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba ): Result = api.resolvePrivateMessageReport(transformer.fromUni(form)).map(transformer::toUni) - /** - * List private message reports. - * - * @GET("private_message/report/list") - */ - override suspend fun listPrivateMessageReports( - form: it.vercruysse.lemmyapi.datatypes.ListPrivateMessageReports, - ): Result = - api.listPrivateMessageReports(transformer.fromUni(form)).map(transformer::toUni) - /** * Get the details for a person. * diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt index 3a1649f1..8e2ed16d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt @@ -88,10 +88,7 @@ internal interface MapperGenerator { fun toUni(d: Instance): it.vercruysse.lemmyapi.datatypes.Instance fun toUni(d: InstanceWithFederationState): it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState fun toUni(d: Language): it.vercruysse.lemmyapi.datatypes.Language - fun toUni(d: ListCommentReportsResponse): it.vercruysse.lemmyapi.datatypes.ListCommentReportsResponse fun toUni(d: ListCommunitiesResponse): it.vercruysse.lemmyapi.datatypes.ListCommunitiesResponse - fun toUni(d: ListPostReportsResponse): it.vercruysse.lemmyapi.datatypes.ListPostReportsResponse - fun toUni(d: ListPrivateMessageReportsResponse): it.vercruysse.lemmyapi.datatypes.ListPrivateMessageReportsResponse fun toUni(d: ListRegistrationApplicationsResponse): it.vercruysse.lemmyapi.datatypes.ListRegistrationApplicationsResponse fun toUni(d: LocalSiteRateLimit): it.vercruysse.lemmyapi.datatypes.LocalSiteRateLimit @@ -203,10 +200,12 @@ internal interface MapperGenerator { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetReportCount): GetReportCount fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetSiteMetadata): GetSiteMetadata fun fromUni(d: it.vercruysse.lemmyapi.datatypes.HideCommunity): HideCommunity - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListCommentReports): ListCommentReports + fun fromUniC(d: it.vercruysse.lemmyapi.datatypes.ListReports): ListCommentReports + fun fromUniP(d: it.vercruysse.lemmyapi.datatypes.ListReports): ListPostReports + fun fromUniPm(d: it.vercruysse.lemmyapi.datatypes.ListReports): ListPrivateMessageReports + + // Legacy specific list*Requests (still used internally) fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListCommunities): ListCommunities - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListPostReports): ListPostReports - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListPrivateMessageReports): ListPrivateMessageReports fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListRegistrationApplications): ListRegistrationApplications fun fromUni(d: it.vercruysse.lemmyapi.datatypes.LockPost): LockPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.Login): Login diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt index 1681b26e..1adf8db0 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt @@ -31,7 +31,6 @@ import it.vercruysse.lemmyapi.datatypes.BanPersonResponse as LemmyapiDatatypesBa import it.vercruysse.lemmyapi.datatypes.BannedPersonsResponse as LemmyapiDatatypesBannedPersonsResponse import it.vercruysse.lemmyapi.datatypes.BlockCommunity as LemmyapiDatatypesBlockCommunity import it.vercruysse.lemmyapi.datatypes.BlockCommunityResponse as LemmyapiDatatypesBlockCommunityResponse -import it.vercruysse.lemmyapi.datatypes.UserBlockInstanceCommunitiesParams as LemmyapiDatatypesBlockInstance import it.vercruysse.lemmyapi.datatypes.BlockPerson as LemmyapiDatatypesBlockPerson import it.vercruysse.lemmyapi.datatypes.BlockPersonResponse as LemmyapiDatatypesBlockPersonResponse import it.vercruysse.lemmyapi.datatypes.CaptchaResponse as LemmyapiDatatypesCaptchaResponse @@ -113,14 +112,8 @@ import it.vercruysse.lemmyapi.datatypes.HideCommunity as LemmyapiDatatypesHideCo import it.vercruysse.lemmyapi.datatypes.Instance as LemmyapiDatatypesInstance import it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState as LemmyapiDatatypesInstanceWithFederationState import it.vercruysse.lemmyapi.datatypes.Language as LemmyapiDatatypesLanguage -import it.vercruysse.lemmyapi.datatypes.ListCommentReports as LemmyapiDatatypesListCommentReports -import it.vercruysse.lemmyapi.datatypes.ListCommentReportsResponse as LemmyapiDatatypesListCommentReportsResponse import it.vercruysse.lemmyapi.datatypes.ListCommunities as LemmyapiDatatypesListCommunities import it.vercruysse.lemmyapi.datatypes.ListCommunitiesResponse as LemmyapiDatatypesListCommunitiesResponse -import it.vercruysse.lemmyapi.datatypes.ListPostReports as LemmyapiDatatypesListPostReports -import it.vercruysse.lemmyapi.datatypes.ListPostReportsResponse as LemmyapiDatatypesListPostReportsResponse -import it.vercruysse.lemmyapi.datatypes.ListPrivateMessageReports as LemmyapiDatatypesListPrivateMessageReports -import it.vercruysse.lemmyapi.datatypes.ListPrivateMessageReportsResponse as LemmyapiDatatypesListPrivateMessageReportsResponse import it.vercruysse.lemmyapi.datatypes.ListRegistrationApplications as LemmyapiDatatypesListRegistrationApplications import it.vercruysse.lemmyapi.datatypes.ListRegistrationApplicationsResponse as LemmyapiDatatypesListRegistrationApplicationsResponse import it.vercruysse.lemmyapi.datatypes.LocalSite as LemmyapiDatatypesLocalSite @@ -200,8 +193,8 @@ import it.vercruysse.lemmyapi.datatypes.SaveComment as LemmyapiDatatypesSaveComm import it.vercruysse.lemmyapi.datatypes.SavePost as LemmyapiDatatypesSavePost import it.vercruysse.lemmyapi.datatypes.SaveUserSettings as LemmyapiDatatypesSaveUserSettings import it.vercruysse.lemmyapi.datatypes.Search as LemmyapiDatatypesSearch -import it.vercruysse.lemmyapi.datatypes.SearchResponse as LemmyapiDatatypesSearchResponse import it.vercruysse.lemmyapi.datatypes.SearchCombinedView as LemmyapiDatatypesSearchCombinedView +import it.vercruysse.lemmyapi.datatypes.SearchResponse as LemmyapiDatatypesSearchResponse import it.vercruysse.lemmyapi.datatypes.Site as LemmyapiDatatypesSite import it.vercruysse.lemmyapi.datatypes.SiteResponse as LemmyapiDatatypesSiteResponse import it.vercruysse.lemmyapi.datatypes.SiteView as LemmyapiDatatypesSiteView @@ -209,6 +202,7 @@ import it.vercruysse.lemmyapi.datatypes.Tagline as LemmyapiDatatypesTagline import it.vercruysse.lemmyapi.datatypes.TransferCommunity as LemmyapiDatatypesTransferCommunity import it.vercruysse.lemmyapi.datatypes.UpdateTotp as LemmyapiDatatypesUpdateTotp import it.vercruysse.lemmyapi.datatypes.UpdateTotpResponse as LemmyapiDatatypesUpdateTotpResponse +import it.vercruysse.lemmyapi.datatypes.UserBlockInstanceCommunitiesParams as LemmyapiDatatypesBlockInstance import it.vercruysse.lemmyapi.datatypes.VerifyEmail as LemmyapiDatatypesVerifyEmail import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.AddAdmin as X0DatatypesAddAdmin import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.AddAdminResponse as X0DatatypesAddAdminResponse @@ -315,13 +309,10 @@ import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.Instance as X0DatatypesInstanc import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.InstanceWithFederationState as X0DatatypesInstanceWithFederationState import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.Language as X0DatatypesLanguage import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.ListCommentReports as X0DatatypesListCommentReports -import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.ListCommentReportsResponse as X0DatatypesListCommentReportsResponse import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.ListCommunities as X0DatatypesListCommunities import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.ListCommunitiesResponse as X0DatatypesListCommunitiesResponse import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.ListPostReports as X0DatatypesListPostReports -import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.ListPostReportsResponse as X0DatatypesListPostReportsResponse import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.ListPrivateMessageReports as X0DatatypesListPrivateMessageReports -import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.ListPrivateMessageReportsResponse as X0DatatypesListPrivateMessageReportsResponse import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.ListRegistrationApplications as X0DatatypesListRegistrationApplications import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.ListRegistrationApplicationsResponse as X0DatatypesListRegistrationApplicationsResponse import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.LocalSite as X0DatatypesLocalSite @@ -1054,23 +1045,10 @@ internal class Transformer : MapperGenerator { name = d.name, ) - override fun toUni(d: X0DatatypesListCommentReportsResponse): LemmyapiDatatypesListCommentReportsResponse = LemmyapiDatatypesListCommentReportsResponse( - comment_reports = d.comment_reports.map { this.toUni(d = it) }, - ) - override fun toUni(d: X0DatatypesListCommunitiesResponse): LemmyapiDatatypesListCommunitiesResponse = LemmyapiDatatypesListCommunitiesResponse( communities = d.communities.map { this.toUni(d = it) }, ) - override fun toUni(d: X0DatatypesListPostReportsResponse): LemmyapiDatatypesListPostReportsResponse = LemmyapiDatatypesListPostReportsResponse( - post_reports = d.post_reports.map { this.toUni(d = it) }, - ) - - override fun toUni(d: X0DatatypesListPrivateMessageReportsResponse): LemmyapiDatatypesListPrivateMessageReportsResponse = - LemmyapiDatatypesListPrivateMessageReportsResponse( - private_message_reports = d.private_message_reports.map { this.toUni(d = it) }, - ) - override fun toUni(d: X0DatatypesListRegistrationApplicationsResponse): LemmyapiDatatypesListRegistrationApplicationsResponse = LemmyapiDatatypesListRegistrationApplicationsResponse( registration_applications = d.registration_applications.map { this.toUni(d = it) }, @@ -1579,7 +1557,7 @@ internal class Transformer : MapperGenerator { addAll(d.posts.map { LemmyapiDatatypesSearchCombinedView.Post(post = this@Transformer.toUni(d = it)) }) addAll(d.communities.map { LemmyapiDatatypesSearchCombinedView.Community(community = this@Transformer.toUni(d = it)) }) addAll(d.users.map { LemmyapiDatatypesSearchCombinedView.Person(person = this@Transformer.toUni(d = it)) }) - } + }, ) override fun toUni(d: X0DatatypesSite): LemmyapiDatatypesSite = LemmyapiDatatypesSite( @@ -2043,7 +2021,7 @@ internal class Transformer : MapperGenerator { reason = d.reason, ) - override fun fromUni(d: LemmyapiDatatypesListCommentReports): X0DatatypesListCommentReports = + override fun fromUniC(d: it.vercruysse.lemmyapi.datatypes.ListReports): X0DatatypesListCommentReports = X0DatatypesListCommentReports( page = d.page, limit = d.limit, @@ -2051,28 +2029,29 @@ internal class Transformer : MapperGenerator { community_id = d.community_id, ) - override fun fromUni(d: LemmyapiDatatypesListCommunities): X0DatatypesListCommunities = - X0DatatypesListCommunities( - type_ = d.type_, - sort = d.sort, - show_nsfw = d.show_nsfw, + override fun fromUniP(d: it.vercruysse.lemmyapi.datatypes.ListReports): X0DatatypesListPostReports = + X0DatatypesListPostReports( page = d.page, limit = d.limit, + unresolved_only = d.unresolved_only, + community_id = d.community_id, ) - override fun fromUni(d: LemmyapiDatatypesListPostReports): X0DatatypesListPostReports = - X0DatatypesListPostReports( + override fun fromUniPm(d: it.vercruysse.lemmyapi.datatypes.ListReports): X0DatatypesListPrivateMessageReports = + X0DatatypesListPrivateMessageReports( page = d.page, limit = d.limit, unresolved_only = d.unresolved_only, - community_id = d.community_id, ) - override fun fromUni(d: LemmyapiDatatypesListPrivateMessageReports): X0DatatypesListPrivateMessageReports = X0DatatypesListPrivateMessageReports( - page = d.page, - limit = d.limit, - unresolved_only = d.unresolved_only, - ) + override fun fromUni(d: LemmyapiDatatypesListCommunities): X0DatatypesListCommunities = + X0DatatypesListCommunities( + type_ = d.type_, + sort = d.sort, + show_nsfw = d.show_nsfw, + page = d.page, + limit = d.limit, + ) override fun fromUni(d: LemmyapiDatatypesListRegistrationApplications): X0DatatypesListRegistrationApplications = X0DatatypesListRegistrationApplications( unread_only = d.unread_only, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt index b22cc1c2..439d64d7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt @@ -317,14 +317,79 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba api.resolvePostReport(transformer.fromUni(form)).map(transformer::toUni) /** - * List post reports. - * - * @GET("post/report/list") - */ - override suspend fun listPostReports( - form: it.vercruysse.lemmyapi.datatypes.ListPostReports, - ): Result = - api.listPostReports(transformer.fromUni(form)).map(transformer::toUni) + * List reports. + */ + override suspend fun listReports( + form: it.vercruysse.lemmyapi.datatypes.ListReports, + ): Result = + when (form.type_) { + it.vercruysse.lemmyapi.dto.ReportType.Communities -> notSupported() + it.vercruysse.lemmyapi.dto.ReportType.Posts -> { + api.listPostReports(transformer.fromUniP(form)).map { resp -> + val items = resp.post_reports.map { r -> + it.vercruysse.lemmyapi.datatypes.ReportCombinedView.Post( + transformer.toUni(r), + ) + } + it.vercruysse.lemmyapi.datatypes.ListReportsResponse(items) + } + } + it.vercruysse.lemmyapi.dto.ReportType.Comments -> { + api.listCommentReports(transformer.fromUniC(form)).map { resp -> + val items = resp.comment_reports.map { r -> + it.vercruysse.lemmyapi.datatypes.ReportCombinedView.Comment( + transformer.toUni(r), + ) + } + it.vercruysse.lemmyapi.datatypes.ListReportsResponse(items) + } + } + it.vercruysse.lemmyapi.dto.ReportType.PrivateMessages -> { + api.listPrivateMessageReports(transformer.fromUniPm(form)).map { resp -> + val items = resp.private_message_reports.map { r -> + it.vercruysse.lemmyapi.datatypes.ReportCombinedView.PrivateMessage( + transformer.toUni(r), + ) + } + it.vercruysse.lemmyapi.datatypes.ListReportsResponse(items) + } + } + it.vercruysse.lemmyapi.dto.ReportType.All -> { + runCatching { + val postsResp = api.listPostReports(transformer.fromUniP(form)).getOrThrow() + val commentsResp = api.listCommentReports(transformer.fromUniC(form)).getOrThrow() + val privateMessagesResp = api.listPrivateMessageReports(transformer.fromUniPm(form)).getOrThrow() + + val allReports = mutableListOf() + + allReports.addAll( + postsResp.post_reports.map { r -> + it.vercruysse.lemmyapi.datatypes.ReportCombinedView.Post( + transformer.toUni(r), + ) + }, + ) + + allReports.addAll( + commentsResp.comment_reports.map { r -> + it.vercruysse.lemmyapi.datatypes.ReportCombinedView.Comment( + transformer.toUni(r), + ) + }, + ) + + allReports.addAll( + privateMessagesResp.private_message_reports.map { r -> + it.vercruysse.lemmyapi.datatypes.ReportCombinedView.PrivateMessage( + transformer.toUni(r), + ) + }, + ) + + it.vercruysse.lemmyapi.datatypes.ListReportsResponse(allReports) + } + } + } /** * Fetch metadata for any given site. @@ -456,16 +521,6 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba ): Result = api.resolveCommentReport(transformer.fromUni(form)).map(transformer::toUni) - /** - * List comment reports. - * - * @GET("comment/report/list") - */ - override suspend fun listCommentReports( - form: it.vercruysse.lemmyapi.datatypes.ListCommentReports, - ): Result = - api.listCommentReports(transformer.fromUni(form)).map(transformer::toUni) - /** * Edit a private message. * @@ -536,16 +591,6 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba ): Result = api.resolvePrivateMessageReport(transformer.fromUni(form)).map(transformer::toUni) - /** - * List private message reports. - * - * @GET("private_message/report/list") - */ - override suspend fun listPrivateMessageReports( - form: it.vercruysse.lemmyapi.datatypes.ListPrivateMessageReports, - ): Result = - api.listPrivateMessageReports(transformer.fromUni(form)).map(transformer::toUni) - /** * Get the details for a person. * diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt index c6c6e5fe..694f8028 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt @@ -61,12 +61,9 @@ internal interface MapperGenerator { fun toUni(d: Language): it.vercruysse.lemmyapi.datatypes.Language fun toUni(d: LinkMetadata): it.vercruysse.lemmyapi.datatypes.LinkMetadata fun toUni(d: ListCommentLikesResponse): it.vercruysse.lemmyapi.datatypes.ListCommentLikesResponse - fun toUni(d: ListCommentReportsResponse): it.vercruysse.lemmyapi.datatypes.ListCommentReportsResponse fun toUni(d: ListCommunitiesResponse): it.vercruysse.lemmyapi.datatypes.ListCommunitiesResponse fun toUni(d: ListMediaResponse): it.vercruysse.lemmyapi.datatypes.ListMediaResponse fun toUni(d: ListPostLikesResponse): it.vercruysse.lemmyapi.datatypes.ListPostLikesResponse - fun toUni(d: ListPostReportsResponse): it.vercruysse.lemmyapi.datatypes.ListPostReportsResponse - fun toUni(d: ListPrivateMessageReportsResponse): it.vercruysse.lemmyapi.datatypes.ListPrivateMessageReportsResponse fun toUni(d: ListRegistrationApplicationsResponse): it.vercruysse.lemmyapi.datatypes.ListRegistrationApplicationsResponse fun toUni(d: LocalImage): it.vercruysse.lemmyapi.datatypes.LocalImage fun toUni(d: LocalImageView): it.vercruysse.lemmyapi.datatypes.LocalImageView @@ -183,13 +180,13 @@ internal interface MapperGenerator { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetSiteMetadata): GetSiteMetadata fun fromUni(d: it.vercruysse.lemmyapi.datatypes.HideCommunity): HideCommunity fun fromUni(d: it.vercruysse.lemmyapi.datatypes.HidePost): HidePost + fun fromUniC(d: it.vercruysse.lemmyapi.datatypes.ListReports): ListCommentReports + fun fromUniP(d: it.vercruysse.lemmyapi.datatypes.ListReports): ListPostReports + fun fromUniPm(d: it.vercruysse.lemmyapi.datatypes.ListReports): ListPrivateMessageReports fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListCommentLikes): ListCommentLikes - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListCommentReports): ListCommentReports fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListCommunities): ListCommunities fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListMedia): ListMedia fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListPostLikes): ListPostLikes - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListPostReports): ListPostReports - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListPrivateMessageReports): ListPrivateMessageReports fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListRegistrationApplications): ListRegistrationApplications fun fromUni(d: it.vercruysse.lemmyapi.datatypes.LockPost): LockPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.Login): Login diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt index b1cf7870..2d5644d8 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt @@ -29,7 +29,6 @@ import it.vercruysse.lemmyapi.datatypes.BanPersonResponse as LemmyapiDatatypesBa import it.vercruysse.lemmyapi.datatypes.BannedPersonsResponse as LemmyapiDatatypesBannedPersonsResponse import it.vercruysse.lemmyapi.datatypes.BlockCommunity as LemmyapiDatatypesBlockCommunity import it.vercruysse.lemmyapi.datatypes.BlockCommunityResponse as LemmyapiDatatypesBlockCommunityResponse -import it.vercruysse.lemmyapi.datatypes.UserBlockInstanceCommunitiesParams as LemmyapiDatatypesBlockInstance import it.vercruysse.lemmyapi.datatypes.BlockPerson as LemmyapiDatatypesBlockPerson import it.vercruysse.lemmyapi.datatypes.BlockPersonResponse as LemmyapiDatatypesBlockPersonResponse import it.vercruysse.lemmyapi.datatypes.CaptchaResponse as LemmyapiDatatypesCaptchaResponse @@ -117,18 +116,12 @@ import it.vercruysse.lemmyapi.datatypes.Language as LemmyapiDatatypesLanguage import it.vercruysse.lemmyapi.datatypes.LinkMetadata as LemmyapiDatatypesLinkMetadata import it.vercruysse.lemmyapi.datatypes.ListCommentLikes as LemmyapiDatatypesListCommentLikes import it.vercruysse.lemmyapi.datatypes.ListCommentLikesResponse as LemmyapiDatatypesListCommentLikesResponse -import it.vercruysse.lemmyapi.datatypes.ListCommentReports as LemmyapiDatatypesListCommentReports -import it.vercruysse.lemmyapi.datatypes.ListCommentReportsResponse as LemmyapiDatatypesListCommentReportsResponse import it.vercruysse.lemmyapi.datatypes.ListCommunities as LemmyapiDatatypesListCommunities import it.vercruysse.lemmyapi.datatypes.ListCommunitiesResponse as LemmyapiDatatypesListCommunitiesResponse import it.vercruysse.lemmyapi.datatypes.ListMedia as LemmyapiDatatypesListMedia import it.vercruysse.lemmyapi.datatypes.ListMediaResponse as LemmyapiDatatypesListMediaResponse import it.vercruysse.lemmyapi.datatypes.ListPostLikes as LemmyapiDatatypesListPostLikes import it.vercruysse.lemmyapi.datatypes.ListPostLikesResponse as LemmyapiDatatypesListPostLikesResponse -import it.vercruysse.lemmyapi.datatypes.ListPostReports as LemmyapiDatatypesListPostReports -import it.vercruysse.lemmyapi.datatypes.ListPostReportsResponse as LemmyapiDatatypesListPostReportsResponse -import it.vercruysse.lemmyapi.datatypes.ListPrivateMessageReports as LemmyapiDatatypesListPrivateMessageReports -import it.vercruysse.lemmyapi.datatypes.ListPrivateMessageReportsResponse as LemmyapiDatatypesListPrivateMessageReportsResponse import it.vercruysse.lemmyapi.datatypes.ListRegistrationApplications as LemmyapiDatatypesListRegistrationApplications import it.vercruysse.lemmyapi.datatypes.ListRegistrationApplicationsResponse as LemmyapiDatatypesListRegistrationApplicationsResponse import it.vercruysse.lemmyapi.datatypes.LocalImage as LemmyapiDatatypesLocalImage @@ -211,8 +204,8 @@ import it.vercruysse.lemmyapi.datatypes.SaveComment as LemmyapiDatatypesSaveComm import it.vercruysse.lemmyapi.datatypes.SavePost as LemmyapiDatatypesSavePost import it.vercruysse.lemmyapi.datatypes.SaveUserSettings as LemmyapiDatatypesSaveUserSettings import it.vercruysse.lemmyapi.datatypes.Search as LemmyapiDatatypesSearch -import it.vercruysse.lemmyapi.datatypes.SearchResponse as LemmyapiDatatypesSearchResponse import it.vercruysse.lemmyapi.datatypes.SearchCombinedView as LemmyapiDatatypesSearchCombinedView +import it.vercruysse.lemmyapi.datatypes.SearchResponse as LemmyapiDatatypesSearchResponse import it.vercruysse.lemmyapi.datatypes.Site as LemmyapiDatatypesSite import it.vercruysse.lemmyapi.datatypes.SiteResponse as LemmyapiDatatypesSiteResponse import it.vercruysse.lemmyapi.datatypes.SiteView as LemmyapiDatatypesSiteView @@ -220,6 +213,7 @@ import it.vercruysse.lemmyapi.datatypes.Tagline as LemmyapiDatatypesTagline import it.vercruysse.lemmyapi.datatypes.TransferCommunity as LemmyapiDatatypesTransferCommunity import it.vercruysse.lemmyapi.datatypes.UpdateTotp as LemmyapiDatatypesUpdateTotp import it.vercruysse.lemmyapi.datatypes.UpdateTotpResponse as LemmyapiDatatypesUpdateTotpResponse +import it.vercruysse.lemmyapi.datatypes.UserBlockInstanceCommunitiesParams as LemmyapiDatatypesBlockInstance import it.vercruysse.lemmyapi.datatypes.VerifyEmail as LemmyapiDatatypesVerifyEmail import it.vercruysse.lemmyapi.datatypes.VoteView as LemmyapiDatatypesVoteView import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.AddAdmin as X11DatatypesAddAdmin @@ -333,7 +327,6 @@ import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.LinkMetadata as X11DatatypesL import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.ListCommentLikes as X11DatatypesListCommentLikes import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.ListCommentLikesResponse as X11DatatypesListCommentLikesResponse import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.ListCommentReports as X11DatatypesListCommentReports -import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.ListCommentReportsResponse as X11DatatypesListCommentReportsResponse import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.ListCommunities as X11DatatypesListCommunities import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.ListCommunitiesResponse as X11DatatypesListCommunitiesResponse import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.ListMedia as X11DatatypesListMedia @@ -341,9 +334,7 @@ import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.ListMediaResponse as X11Datat import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.ListPostLikes as X11DatatypesListPostLikes import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.ListPostLikesResponse as X11DatatypesListPostLikesResponse import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.ListPostReports as X11DatatypesListPostReports -import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.ListPostReportsResponse as X11DatatypesListPostReportsResponse import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.ListPrivateMessageReports as X11DatatypesListPrivateMessageReports -import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.ListPrivateMessageReportsResponse as X11DatatypesListPrivateMessageReportsResponse import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.ListRegistrationApplications as X11DatatypesListRegistrationApplications import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.ListRegistrationApplicationsResponse as X11DatatypesListRegistrationApplicationsResponse import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.LocalImage as X11DatatypesLocalImage @@ -1010,10 +1001,6 @@ internal class Transformer : MapperGenerator { comment_likes = d.comment_likes.map { this.toUni(d = it) }, ) - override fun toUni(d: X11DatatypesListCommentReportsResponse): LemmyapiDatatypesListCommentReportsResponse = LemmyapiDatatypesListCommentReportsResponse( - comment_reports = d.comment_reports.map { this.toUni(d = it) }, - ) - override fun toUni(d: X11DatatypesListCommunitiesResponse): LemmyapiDatatypesListCommunitiesResponse = LemmyapiDatatypesListCommunitiesResponse( communities = d.communities.map { this.toUni(d = it) }, ) @@ -1028,15 +1015,6 @@ internal class Transformer : MapperGenerator { post_likes = d.post_likes.map { this.toUni(d = it) }, ) - override fun toUni(d: X11DatatypesListPostReportsResponse): LemmyapiDatatypesListPostReportsResponse = LemmyapiDatatypesListPostReportsResponse( - post_reports = d.post_reports.map { this.toUni(d = it) }, - ) - - override fun toUni(d: X11DatatypesListPrivateMessageReportsResponse): LemmyapiDatatypesListPrivateMessageReportsResponse = - LemmyapiDatatypesListPrivateMessageReportsResponse( - private_message_reports = d.private_message_reports.map { this.toUni(d = it) }, - ) - override fun toUni(d: X11DatatypesListRegistrationApplicationsResponse): LemmyapiDatatypesListRegistrationApplicationsResponse = LemmyapiDatatypesListRegistrationApplicationsResponse( registration_applications = d.registration_applications.map { this.toUni(d = it) }, @@ -1668,7 +1646,7 @@ internal class Transformer : MapperGenerator { addAll(d.posts.map { LemmyapiDatatypesSearchCombinedView.Post(post = this@Transformer.toUni(d = it)) }) addAll(d.communities.map { LemmyapiDatatypesSearchCombinedView.Community(community = this@Transformer.toUni(d = it)) }) addAll(d.users.map { LemmyapiDatatypesSearchCombinedView.Person(person = this@Transformer.toUni(d = it)) }) - } + }, ) override fun toUni(d: X11DatatypesSite): LemmyapiDatatypesSite = LemmyapiDatatypesSite( @@ -2171,20 +2149,36 @@ internal class Transformer : MapperGenerator { hide = d.hide, ) - override fun fromUni(d: LemmyapiDatatypesListCommentLikes): X11DatatypesListCommentLikes = - X11DatatypesListCommentLikes( - comment_id = d.comment_id, + // Unified ListReports helpers (for combined ListReports support) + override fun fromUniC(d: it.vercruysse.lemmyapi.datatypes.ListReports): X11DatatypesListCommentReports = + X11DatatypesListCommentReports( page = d.page, limit = d.limit, + unresolved_only = d.unresolved_only, + community_id = d.community_id, ) - override fun fromUni(d: LemmyapiDatatypesListCommentReports): X11DatatypesListCommentReports = - X11DatatypesListCommentReports( - comment_id = d.comment_id, + override fun fromUniP(d: it.vercruysse.lemmyapi.datatypes.ListReports): X11DatatypesListPostReports = + X11DatatypesListPostReports( page = d.page, limit = d.limit, unresolved_only = d.unresolved_only, community_id = d.community_id, + post_id = d.post_id, + ) + + override fun fromUniPm(d: it.vercruysse.lemmyapi.datatypes.ListReports): X11DatatypesListPrivateMessageReports = + X11DatatypesListPrivateMessageReports( + page = d.page, + limit = d.limit, + unresolved_only = d.unresolved_only, + ) + + override fun fromUni(d: LemmyapiDatatypesListCommentLikes): X11DatatypesListCommentLikes = + X11DatatypesListCommentLikes( + comment_id = d.comment_id, + page = d.page, + limit = d.limit, ) override fun fromUni(d: LemmyapiDatatypesListCommunities): X11DatatypesListCommunities = @@ -2209,21 +2203,6 @@ internal class Transformer : MapperGenerator { limit = d.limit, ) - override fun fromUni(d: LemmyapiDatatypesListPostReports): X11DatatypesListPostReports = - X11DatatypesListPostReports( - page = d.page, - limit = d.limit, - unresolved_only = d.unresolved_only, - community_id = d.community_id, - post_id = d.post_id, - ) - - override fun fromUni(d: LemmyapiDatatypesListPrivateMessageReports): X11DatatypesListPrivateMessageReports = X11DatatypesListPrivateMessageReports( - page = d.page, - limit = d.limit, - unresolved_only = d.unresolved_only, - ) - override fun fromUni(d: LemmyapiDatatypesListRegistrationApplications): X11DatatypesListRegistrationApplications = X11DatatypesListRegistrationApplications( unread_only = d.unread_only, page = d.page, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt index db6f7ed4..7625fbb2 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt @@ -318,14 +318,79 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba api.resolvePostReport(transformer.fromUni(form)).map(transformer::toUni) /** - * List post reports. - * - * @GET("post/report/list") - */ - override suspend fun listPostReports( - form: it.vercruysse.lemmyapi.datatypes.ListPostReports, - ): Result = - api.listPostReports(transformer.fromUni(form)).map(transformer::toUni) + * List reports. + */ + override suspend fun listReports( + form: it.vercruysse.lemmyapi.datatypes.ListReports, + ): Result = + when (form.type_) { + it.vercruysse.lemmyapi.dto.ReportType.Communities -> notSupported() + it.vercruysse.lemmyapi.dto.ReportType.Posts -> { + api.listPostReports(transformer.fromUniP(form)).map { resp -> + val items = resp.post_reports.map { r -> + it.vercruysse.lemmyapi.datatypes.ReportCombinedView.Post( + transformer.toUni(r), + ) + } + it.vercruysse.lemmyapi.datatypes.ListReportsResponse(items) + } + } + it.vercruysse.lemmyapi.dto.ReportType.Comments -> { + api.listCommentReports(transformer.fromUniC(form)).map { resp -> + val items = resp.comment_reports.map { r -> + it.vercruysse.lemmyapi.datatypes.ReportCombinedView.Comment( + transformer.toUni(r), + ) + } + it.vercruysse.lemmyapi.datatypes.ListReportsResponse(items) + } + } + it.vercruysse.lemmyapi.dto.ReportType.PrivateMessages -> { + api.listPrivateMessageReports(transformer.fromUniPm(form)).map { resp -> + val items = resp.private_message_reports.map { r -> + it.vercruysse.lemmyapi.datatypes.ReportCombinedView.PrivateMessage( + transformer.toUni(r), + ) + } + it.vercruysse.lemmyapi.datatypes.ListReportsResponse(items) + } + } + it.vercruysse.lemmyapi.dto.ReportType.All -> { + runCatching { + val postsResp = api.listPostReports(transformer.fromUniP(form)).getOrThrow() + val commentsResp = api.listCommentReports(transformer.fromUniC(form)).getOrThrow() + val privateMessagesResp = api.listPrivateMessageReports(transformer.fromUniPm(form)).getOrThrow() + + val allReports = mutableListOf() + + allReports.addAll( + postsResp.post_reports.map { r -> + it.vercruysse.lemmyapi.datatypes.ReportCombinedView.Post( + transformer.toUni(r), + ) + }, + ) + + allReports.addAll( + commentsResp.comment_reports.map { r -> + it.vercruysse.lemmyapi.datatypes.ReportCombinedView.Comment( + transformer.toUni(r), + ) + }, + ) + + allReports.addAll( + privateMessagesResp.private_message_reports.map { r -> + it.vercruysse.lemmyapi.datatypes.ReportCombinedView.PrivateMessage( + transformer.toUni(r), + ) + }, + ) + + it.vercruysse.lemmyapi.datatypes.ListReportsResponse(allReports) + } + } + } /** * Fetch metadata for any given site. @@ -457,16 +522,6 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba ): Result = api.resolveCommentReport(transformer.fromUni(form)).map(transformer::toUni) - /** - * List comment reports. - * - * @GET("comment/report/list") - */ - override suspend fun listCommentReports( - form: it.vercruysse.lemmyapi.datatypes.ListCommentReports, - ): Result = - api.listCommentReports(transformer.fromUni(form)).map(transformer::toUni) - /** * Edit a private message. * @@ -537,16 +592,6 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba ): Result = api.resolvePrivateMessageReport(transformer.fromUni(form)).map(transformer::toUni) - /** - * List private message reports. - * - * @GET("private_message/report/list") - */ - override suspend fun listPrivateMessageReports( - form: it.vercruysse.lemmyapi.datatypes.ListPrivateMessageReports, - ): Result = - api.listPrivateMessageReports(transformer.fromUni(form)).map(transformer::toUni) - /** * Get the details for a person. * diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt index ad7ad0e2..7843b00b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt @@ -85,11 +85,8 @@ internal interface MapperGenerator { fun toUni(d: InstanceWithFederationState): it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState fun toUni(d: Language): it.vercruysse.lemmyapi.datatypes.Language fun toUni(d: ListCommentLikesResponse): it.vercruysse.lemmyapi.datatypes.ListCommentLikesResponse - fun toUni(d: ListCommentReportsResponse): it.vercruysse.lemmyapi.datatypes.ListCommentReportsResponse fun toUni(d: ListCommunitiesResponse): it.vercruysse.lemmyapi.datatypes.ListCommunitiesResponse fun toUni(d: ListPostLikesResponse): it.vercruysse.lemmyapi.datatypes.ListPostLikesResponse - fun toUni(d: ListPostReportsResponse): it.vercruysse.lemmyapi.datatypes.ListPostReportsResponse - fun toUni(d: ListPrivateMessageReportsResponse): it.vercruysse.lemmyapi.datatypes.ListPrivateMessageReportsResponse fun toUni(d: ListRegistrationApplicationsResponse): it.vercruysse.lemmyapi.datatypes.ListRegistrationApplicationsResponse fun toUni(d: LocalSiteRateLimit): it.vercruysse.lemmyapi.datatypes.LocalSiteRateLimit @@ -200,12 +197,12 @@ internal interface MapperGenerator { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetReportCount): GetReportCount fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetSiteMetadata): GetSiteMetadata fun fromUni(d: it.vercruysse.lemmyapi.datatypes.HideCommunity): HideCommunity + fun fromUniC(d: it.vercruysse.lemmyapi.datatypes.ListReports): ListCommentReports + fun fromUniP(d: it.vercruysse.lemmyapi.datatypes.ListReports): ListPostReports + fun fromUniPm(d: it.vercruysse.lemmyapi.datatypes.ListReports): ListPrivateMessageReports fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListCommentLikes): ListCommentLikes - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListCommentReports): ListCommentReports fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListCommunities): ListCommunities fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListPostLikes): ListPostLikes - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListPostReports): ListPostReports - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListPrivateMessageReports): ListPrivateMessageReports fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListRegistrationApplications): ListRegistrationApplications fun fromUni(d: it.vercruysse.lemmyapi.datatypes.LockPost): LockPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.Login): Login diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt index c37db835..de33d9da 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt @@ -33,7 +33,6 @@ import it.vercruysse.lemmyapi.datatypes.BanPersonResponse as LemmyapiDatatypesBa import it.vercruysse.lemmyapi.datatypes.BannedPersonsResponse as LemmyapiDatatypesBannedPersonsResponse import it.vercruysse.lemmyapi.datatypes.BlockCommunity as LemmyapiDatatypesBlockCommunity import it.vercruysse.lemmyapi.datatypes.BlockCommunityResponse as LemmyapiDatatypesBlockCommunityResponse -import it.vercruysse.lemmyapi.datatypes.UserBlockInstanceCommunitiesParams as LemmyapiDatatypesBlockInstance import it.vercruysse.lemmyapi.datatypes.BlockPerson as LemmyapiDatatypesBlockPerson import it.vercruysse.lemmyapi.datatypes.BlockPersonResponse as LemmyapiDatatypesBlockPersonResponse import it.vercruysse.lemmyapi.datatypes.CaptchaResponse as LemmyapiDatatypesCaptchaResponse @@ -117,16 +116,10 @@ import it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState as LemmyapiD import it.vercruysse.lemmyapi.datatypes.Language as LemmyapiDatatypesLanguage import it.vercruysse.lemmyapi.datatypes.ListCommentLikes as LemmyapiDatatypesListCommentLikes import it.vercruysse.lemmyapi.datatypes.ListCommentLikesResponse as LemmyapiDatatypesListCommentLikesResponse -import it.vercruysse.lemmyapi.datatypes.ListCommentReports as LemmyapiDatatypesListCommentReports -import it.vercruysse.lemmyapi.datatypes.ListCommentReportsResponse as LemmyapiDatatypesListCommentReportsResponse import it.vercruysse.lemmyapi.datatypes.ListCommunities as LemmyapiDatatypesListCommunities import it.vercruysse.lemmyapi.datatypes.ListCommunitiesResponse as LemmyapiDatatypesListCommunitiesResponse import it.vercruysse.lemmyapi.datatypes.ListPostLikes as LemmyapiDatatypesListPostLikes import it.vercruysse.lemmyapi.datatypes.ListPostLikesResponse as LemmyapiDatatypesListPostLikesResponse -import it.vercruysse.lemmyapi.datatypes.ListPostReports as LemmyapiDatatypesListPostReports -import it.vercruysse.lemmyapi.datatypes.ListPostReportsResponse as LemmyapiDatatypesListPostReportsResponse -import it.vercruysse.lemmyapi.datatypes.ListPrivateMessageReports as LemmyapiDatatypesListPrivateMessageReports -import it.vercruysse.lemmyapi.datatypes.ListPrivateMessageReportsResponse as LemmyapiDatatypesListPrivateMessageReportsResponse import it.vercruysse.lemmyapi.datatypes.ListRegistrationApplications as LemmyapiDatatypesListRegistrationApplications import it.vercruysse.lemmyapi.datatypes.ListRegistrationApplicationsResponse as LemmyapiDatatypesListRegistrationApplicationsResponse import it.vercruysse.lemmyapi.datatypes.LocalSite as LemmyapiDatatypesLocalSite @@ -206,8 +199,8 @@ import it.vercruysse.lemmyapi.datatypes.SaveComment as LemmyapiDatatypesSaveComm import it.vercruysse.lemmyapi.datatypes.SavePost as LemmyapiDatatypesSavePost import it.vercruysse.lemmyapi.datatypes.SaveUserSettings as LemmyapiDatatypesSaveUserSettings import it.vercruysse.lemmyapi.datatypes.Search as LemmyapiDatatypesSearch -import it.vercruysse.lemmyapi.datatypes.SearchResponse as LemmyapiDatatypesSearchResponse import it.vercruysse.lemmyapi.datatypes.SearchCombinedView as LemmyapiDatatypesSearchCombinedView +import it.vercruysse.lemmyapi.datatypes.SearchResponse as LemmyapiDatatypesSearchResponse import it.vercruysse.lemmyapi.datatypes.Site as LemmyapiDatatypesSite import it.vercruysse.lemmyapi.datatypes.SiteResponse as LemmyapiDatatypesSiteResponse import it.vercruysse.lemmyapi.datatypes.SiteView as LemmyapiDatatypesSiteView @@ -215,6 +208,7 @@ import it.vercruysse.lemmyapi.datatypes.Tagline as LemmyapiDatatypesTagline import it.vercruysse.lemmyapi.datatypes.TransferCommunity as LemmyapiDatatypesTransferCommunity import it.vercruysse.lemmyapi.datatypes.UpdateTotp as LemmyapiDatatypesUpdateTotp import it.vercruysse.lemmyapi.datatypes.UpdateTotpResponse as LemmyapiDatatypesUpdateTotpResponse +import it.vercruysse.lemmyapi.datatypes.UserBlockInstanceCommunitiesParams as LemmyapiDatatypesBlockInstance import it.vercruysse.lemmyapi.datatypes.VerifyEmail as LemmyapiDatatypesVerifyEmail import it.vercruysse.lemmyapi.datatypes.VoteView as LemmyapiDatatypesVoteView import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.AddAdmin as X3DatatypesAddAdmin @@ -324,15 +318,12 @@ import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.Language as X3DatatypesLanguag import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.ListCommentLikes as X3DatatypesListCommentLikes import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.ListCommentLikesResponse as X3DatatypesListCommentLikesResponse import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.ListCommentReports as X3DatatypesListCommentReports -import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.ListCommentReportsResponse as X3DatatypesListCommentReportsResponse import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.ListCommunities as X3DatatypesListCommunities import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.ListCommunitiesResponse as X3DatatypesListCommunitiesResponse import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.ListPostLikes as X3DatatypesListPostLikes import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.ListPostLikesResponse as X3DatatypesListPostLikesResponse import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.ListPostReports as X3DatatypesListPostReports -import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.ListPostReportsResponse as X3DatatypesListPostReportsResponse import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.ListPrivateMessageReports as X3DatatypesListPrivateMessageReports -import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.ListPrivateMessageReportsResponse as X3DatatypesListPrivateMessageReportsResponse import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.ListRegistrationApplications as X3DatatypesListRegistrationApplications import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.ListRegistrationApplicationsResponse as X3DatatypesListRegistrationApplicationsResponse import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.LocalSite as X3DatatypesLocalSite @@ -1081,10 +1072,6 @@ internal class Transformer : MapperGenerator { comment_likes = d.comment_likes.map { this.toUni(d = it) }, ) - override fun toUni(d: X3DatatypesListCommentReportsResponse): LemmyapiDatatypesListCommentReportsResponse = LemmyapiDatatypesListCommentReportsResponse( - comment_reports = d.comment_reports.map { this.toUni(d = it) }, - ) - override fun toUni(d: X3DatatypesListCommunitiesResponse): LemmyapiDatatypesListCommunitiesResponse = LemmyapiDatatypesListCommunitiesResponse( communities = d.communities.map { this.toUni(d = it) }, ) @@ -1094,15 +1081,6 @@ internal class Transformer : MapperGenerator { post_likes = d.post_likes.map { this.toUni(d = it) }, ) - override fun toUni(d: X3DatatypesListPostReportsResponse): LemmyapiDatatypesListPostReportsResponse = LemmyapiDatatypesListPostReportsResponse( - post_reports = d.post_reports.map { this.toUni(d = it) }, - ) - - override fun toUni(d: X3DatatypesListPrivateMessageReportsResponse): LemmyapiDatatypesListPrivateMessageReportsResponse = - LemmyapiDatatypesListPrivateMessageReportsResponse( - private_message_reports = d.private_message_reports.map { this.toUni(d = it) }, - ) - override fun toUni(d: X3DatatypesListRegistrationApplicationsResponse): LemmyapiDatatypesListRegistrationApplicationsResponse = LemmyapiDatatypesListRegistrationApplicationsResponse( registration_applications = d.registration_applications.map { this.toUni(d = it) }, @@ -1609,7 +1587,7 @@ internal class Transformer : MapperGenerator { addAll(d.posts.map { LemmyapiDatatypesSearchCombinedView.Post(post = this@Transformer.toUni(d = it)) }) addAll(d.communities.map { LemmyapiDatatypesSearchCombinedView.Community(community = this@Transformer.toUni(d = it)) }) addAll(d.users.map { LemmyapiDatatypesSearchCombinedView.Person(person = this@Transformer.toUni(d = it)) }) - } + }, ) override fun toUni(d: X3DatatypesSite): LemmyapiDatatypesSite = LemmyapiDatatypesSite( @@ -2073,21 +2051,36 @@ internal class Transformer : MapperGenerator { reason = d.reason, ) - override fun fromUni(d: LemmyapiDatatypesListCommentLikes): X3DatatypesListCommentLikes = - X3DatatypesListCommentLikes( - comment_id = d.comment_id, + override fun fromUniC(d: it.vercruysse.lemmyapi.datatypes.ListReports): X3DatatypesListCommentReports = + X3DatatypesListCommentReports( page = d.page, limit = d.limit, + unresolved_only = d.unresolved_only, + community_id = d.community_id, ) - override fun fromUni(d: LemmyapiDatatypesListCommentReports): X3DatatypesListCommentReports = - X3DatatypesListCommentReports( + override fun fromUniP(d: it.vercruysse.lemmyapi.datatypes.ListReports): X3DatatypesListPostReports = + X3DatatypesListPostReports( page = d.page, limit = d.limit, unresolved_only = d.unresolved_only, community_id = d.community_id, ) + override fun fromUniPm(d: it.vercruysse.lemmyapi.datatypes.ListReports): X3DatatypesListPrivateMessageReports = + X3DatatypesListPrivateMessageReports( + page = d.page, + limit = d.limit, + unresolved_only = d.unresolved_only, + ) + + override fun fromUni(d: LemmyapiDatatypesListCommentLikes): X3DatatypesListCommentLikes = + X3DatatypesListCommentLikes( + comment_id = d.comment_id, + page = d.page, + limit = d.limit, + ) + override fun fromUni(d: LemmyapiDatatypesListCommunities): X3DatatypesListCommunities = X3DatatypesListCommunities( type_ = d.type_, @@ -2104,20 +2097,6 @@ internal class Transformer : MapperGenerator { limit = d.limit, ) - override fun fromUni(d: LemmyapiDatatypesListPostReports): X3DatatypesListPostReports = - X3DatatypesListPostReports( - page = d.page, - limit = d.limit, - unresolved_only = d.unresolved_only, - community_id = d.community_id, - ) - - override fun fromUni(d: LemmyapiDatatypesListPrivateMessageReports): X3DatatypesListPrivateMessageReports = X3DatatypesListPrivateMessageReports( - page = d.page, - limit = d.limit, - unresolved_only = d.unresolved_only, - ) - override fun fromUni(d: LemmyapiDatatypesListRegistrationApplications): X3DatatypesListRegistrationApplications = X3DatatypesListRegistrationApplications( unread_only = d.unread_only, page = d.page, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt index 7b19a750..d331c70c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt @@ -317,14 +317,79 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba api.resolvePostReport(transformer.fromUni(form)).map(transformer::toUni) /** - * List post reports. - * - * @GET("post/report/list") - */ - override suspend fun listPostReports( - form: it.vercruysse.lemmyapi.datatypes.ListPostReports, - ): Result = - api.listPostReports(transformer.fromUni(form)).map(transformer::toUni) + * List reports. + */ + override suspend fun listReports( + form: it.vercruysse.lemmyapi.datatypes.ListReports, + ): Result = + when (form.type_) { + it.vercruysse.lemmyapi.dto.ReportType.Communities -> notSupported() + it.vercruysse.lemmyapi.dto.ReportType.Posts -> { + api.listPostReports(transformer.fromUniP(form)).map { resp -> + val items = resp.post_reports.map { r -> + it.vercruysse.lemmyapi.datatypes.ReportCombinedView.Post( + transformer.toUni(r), + ) + } + it.vercruysse.lemmyapi.datatypes.ListReportsResponse(items) + } + } + it.vercruysse.lemmyapi.dto.ReportType.Comments -> { + api.listCommentReports(transformer.fromUniC(form)).map { resp -> + val items = resp.comment_reports.map { r -> + it.vercruysse.lemmyapi.datatypes.ReportCombinedView.Comment( + transformer.toUni(r), + ) + } + it.vercruysse.lemmyapi.datatypes.ListReportsResponse(items) + } + } + it.vercruysse.lemmyapi.dto.ReportType.PrivateMessages -> { + api.listPrivateMessageReports(transformer.fromUniPm(form)).map { resp -> + val items = resp.private_message_reports.map { r -> + it.vercruysse.lemmyapi.datatypes.ReportCombinedView.PrivateMessage( + transformer.toUni(r), + ) + } + it.vercruysse.lemmyapi.datatypes.ListReportsResponse(items) + } + } + it.vercruysse.lemmyapi.dto.ReportType.All -> { + runCatching { + val postsResp = api.listPostReports(transformer.fromUniP(form)).getOrThrow() + val commentsResp = api.listCommentReports(transformer.fromUniC(form)).getOrThrow() + val privateMessagesResp = api.listPrivateMessageReports(transformer.fromUniPm(form)).getOrThrow() + + val allReports = mutableListOf() + + allReports.addAll( + postsResp.post_reports.map { r -> + it.vercruysse.lemmyapi.datatypes.ReportCombinedView.Post( + transformer.toUni(r), + ) + }, + ) + + allReports.addAll( + commentsResp.comment_reports.map { r -> + it.vercruysse.lemmyapi.datatypes.ReportCombinedView.Comment( + transformer.toUni(r), + ) + }, + ) + + allReports.addAll( + privateMessagesResp.private_message_reports.map { r -> + it.vercruysse.lemmyapi.datatypes.ReportCombinedView.PrivateMessage( + transformer.toUni(r), + ) + }, + ) + + it.vercruysse.lemmyapi.datatypes.ListReportsResponse(allReports) + } + } + } /** * Fetch metadata for any given site. @@ -456,16 +521,6 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba ): Result = api.resolveCommentReport(transformer.fromUni(form)).map(transformer::toUni) - /** - * List comment reports. - * - * @GET("comment/report/list") - */ - override suspend fun listCommentReports( - form: it.vercruysse.lemmyapi.datatypes.ListCommentReports, - ): Result = - api.listCommentReports(transformer.fromUni(form)).map(transformer::toUni) - /** * Edit a private message. * @@ -536,16 +591,6 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba ): Result = api.resolvePrivateMessageReport(transformer.fromUni(form)).map(transformer::toUni) - /** - * List private message reports. - * - * @GET("private_message/report/list") - */ - override suspend fun listPrivateMessageReports( - form: it.vercruysse.lemmyapi.datatypes.ListPrivateMessageReports, - ): Result = - api.listPrivateMessageReports(transformer.fromUni(form)).map(transformer::toUni) - /** * Get the details for a person. * diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt index 4d004175..5f516dd7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt @@ -61,12 +61,9 @@ internal interface MapperGenerator { fun toUni(d: Language): it.vercruysse.lemmyapi.datatypes.Language fun toUni(d: LinkMetadata): it.vercruysse.lemmyapi.datatypes.LinkMetadata fun toUni(d: ListCommentLikesResponse): it.vercruysse.lemmyapi.datatypes.ListCommentLikesResponse - fun toUni(d: ListCommentReportsResponse): it.vercruysse.lemmyapi.datatypes.ListCommentReportsResponse fun toUni(d: ListCommunitiesResponse): it.vercruysse.lemmyapi.datatypes.ListCommunitiesResponse fun toUni(d: ListMediaResponse): it.vercruysse.lemmyapi.datatypes.ListMediaResponse fun toUni(d: ListPostLikesResponse): it.vercruysse.lemmyapi.datatypes.ListPostLikesResponse - fun toUni(d: ListPostReportsResponse): it.vercruysse.lemmyapi.datatypes.ListPostReportsResponse - fun toUni(d: ListPrivateMessageReportsResponse): it.vercruysse.lemmyapi.datatypes.ListPrivateMessageReportsResponse fun toUni(d: ListRegistrationApplicationsResponse): it.vercruysse.lemmyapi.datatypes.ListRegistrationApplicationsResponse fun toUni(d: LocalImage): it.vercruysse.lemmyapi.datatypes.LocalImage fun toUni(d: LocalImageView): it.vercruysse.lemmyapi.datatypes.LocalImageView @@ -182,13 +179,13 @@ internal interface MapperGenerator { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetSiteMetadata): GetSiteMetadata fun fromUni(d: it.vercruysse.lemmyapi.datatypes.HideCommunity): HideCommunity fun fromUni(d: it.vercruysse.lemmyapi.datatypes.HidePost): HidePost + fun fromUniC(d: it.vercruysse.lemmyapi.datatypes.ListReports): ListCommentReports + fun fromUniP(d: it.vercruysse.lemmyapi.datatypes.ListReports): ListPostReports + fun fromUniPm(d: it.vercruysse.lemmyapi.datatypes.ListReports): ListPrivateMessageReports fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListCommentLikes): ListCommentLikes - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListCommentReports): ListCommentReports fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListCommunities): ListCommunities fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListMedia): ListMedia fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListPostLikes): ListPostLikes - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListPostReports): ListPostReports - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListPrivateMessageReports): ListPrivateMessageReports fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListRegistrationApplications): ListRegistrationApplications fun fromUni(d: it.vercruysse.lemmyapi.datatypes.LockPost): LockPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.Login): Login diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt index 24c60c42..7eada7bb 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt @@ -29,7 +29,6 @@ import it.vercruysse.lemmyapi.datatypes.BanPersonResponse as LemmyapiDatatypesBa import it.vercruysse.lemmyapi.datatypes.BannedPersonsResponse as LemmyapiDatatypesBannedPersonsResponse import it.vercruysse.lemmyapi.datatypes.BlockCommunity as LemmyapiDatatypesBlockCommunity import it.vercruysse.lemmyapi.datatypes.BlockCommunityResponse as LemmyapiDatatypesBlockCommunityResponse -import it.vercruysse.lemmyapi.datatypes.UserBlockInstanceCommunitiesParams as LemmyapiDatatypesBlockInstance import it.vercruysse.lemmyapi.datatypes.BlockPerson as LemmyapiDatatypesBlockPerson import it.vercruysse.lemmyapi.datatypes.BlockPersonResponse as LemmyapiDatatypesBlockPersonResponse import it.vercruysse.lemmyapi.datatypes.CaptchaResponse as LemmyapiDatatypesCaptchaResponse @@ -115,18 +114,12 @@ import it.vercruysse.lemmyapi.datatypes.Language as LemmyapiDatatypesLanguage import it.vercruysse.lemmyapi.datatypes.LinkMetadata as LemmyapiDatatypesLinkMetadata import it.vercruysse.lemmyapi.datatypes.ListCommentLikes as LemmyapiDatatypesListCommentLikes import it.vercruysse.lemmyapi.datatypes.ListCommentLikesResponse as LemmyapiDatatypesListCommentLikesResponse -import it.vercruysse.lemmyapi.datatypes.ListCommentReports as LemmyapiDatatypesListCommentReports -import it.vercruysse.lemmyapi.datatypes.ListCommentReportsResponse as LemmyapiDatatypesListCommentReportsResponse import it.vercruysse.lemmyapi.datatypes.ListCommunities as LemmyapiDatatypesListCommunities import it.vercruysse.lemmyapi.datatypes.ListCommunitiesResponse as LemmyapiDatatypesListCommunitiesResponse import it.vercruysse.lemmyapi.datatypes.ListMedia as LemmyapiDatatypesListMedia import it.vercruysse.lemmyapi.datatypes.ListMediaResponse as LemmyapiDatatypesListMediaResponse import it.vercruysse.lemmyapi.datatypes.ListPostLikes as LemmyapiDatatypesListPostLikes import it.vercruysse.lemmyapi.datatypes.ListPostLikesResponse as LemmyapiDatatypesListPostLikesResponse -import it.vercruysse.lemmyapi.datatypes.ListPostReports as LemmyapiDatatypesListPostReports -import it.vercruysse.lemmyapi.datatypes.ListPostReportsResponse as LemmyapiDatatypesListPostReportsResponse -import it.vercruysse.lemmyapi.datatypes.ListPrivateMessageReports as LemmyapiDatatypesListPrivateMessageReports -import it.vercruysse.lemmyapi.datatypes.ListPrivateMessageReportsResponse as LemmyapiDatatypesListPrivateMessageReportsResponse import it.vercruysse.lemmyapi.datatypes.ListRegistrationApplications as LemmyapiDatatypesListRegistrationApplications import it.vercruysse.lemmyapi.datatypes.ListRegistrationApplicationsResponse as LemmyapiDatatypesListRegistrationApplicationsResponse import it.vercruysse.lemmyapi.datatypes.LocalImage as LemmyapiDatatypesLocalImage @@ -209,8 +202,8 @@ import it.vercruysse.lemmyapi.datatypes.SaveComment as LemmyapiDatatypesSaveComm import it.vercruysse.lemmyapi.datatypes.SavePost as LemmyapiDatatypesSavePost import it.vercruysse.lemmyapi.datatypes.SaveUserSettings as LemmyapiDatatypesSaveUserSettings import it.vercruysse.lemmyapi.datatypes.Search as LemmyapiDatatypesSearch -import it.vercruysse.lemmyapi.datatypes.SearchResponse as LemmyapiDatatypesSearchResponse import it.vercruysse.lemmyapi.datatypes.SearchCombinedView as LemmyapiDatatypesSearchCombinedView +import it.vercruysse.lemmyapi.datatypes.SearchResponse as LemmyapiDatatypesSearchResponse import it.vercruysse.lemmyapi.datatypes.Site as LemmyapiDatatypesSite import it.vercruysse.lemmyapi.datatypes.SiteResponse as LemmyapiDatatypesSiteResponse import it.vercruysse.lemmyapi.datatypes.SiteView as LemmyapiDatatypesSiteView @@ -218,6 +211,7 @@ import it.vercruysse.lemmyapi.datatypes.Tagline as LemmyapiDatatypesTagline import it.vercruysse.lemmyapi.datatypes.TransferCommunity as LemmyapiDatatypesTransferCommunity import it.vercruysse.lemmyapi.datatypes.UpdateTotp as LemmyapiDatatypesUpdateTotp import it.vercruysse.lemmyapi.datatypes.UpdateTotpResponse as LemmyapiDatatypesUpdateTotpResponse +import it.vercruysse.lemmyapi.datatypes.UserBlockInstanceCommunitiesParams as LemmyapiDatatypesBlockInstance import it.vercruysse.lemmyapi.datatypes.VerifyEmail as LemmyapiDatatypesVerifyEmail import it.vercruysse.lemmyapi.datatypes.VoteView as LemmyapiDatatypesVoteView import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.AddAdmin as X4DatatypesAddAdmin @@ -329,7 +323,6 @@ import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.LinkMetadata as X4DatatypesLin import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.ListCommentLikes as X4DatatypesListCommentLikes import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.ListCommentLikesResponse as X4DatatypesListCommentLikesResponse import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.ListCommentReports as X4DatatypesListCommentReports -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.ListCommentReportsResponse as X4DatatypesListCommentReportsResponse import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.ListCommunities as X4DatatypesListCommunities import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.ListCommunitiesResponse as X4DatatypesListCommunitiesResponse import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.ListMedia as X4DatatypesListMedia @@ -337,9 +330,7 @@ import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.ListMediaResponse as X4Datatyp import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.ListPostLikes as X4DatatypesListPostLikes import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.ListPostLikesResponse as X4DatatypesListPostLikesResponse import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.ListPostReports as X4DatatypesListPostReports -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.ListPostReportsResponse as X4DatatypesListPostReportsResponse import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.ListPrivateMessageReports as X4DatatypesListPrivateMessageReports -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.ListPrivateMessageReportsResponse as X4DatatypesListPrivateMessageReportsResponse import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.ListRegistrationApplications as X4DatatypesListRegistrationApplications import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.ListRegistrationApplicationsResponse as X4DatatypesListRegistrationApplicationsResponse import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.LocalImage as X4DatatypesLocalImage @@ -1001,10 +992,6 @@ internal class Transformer : MapperGenerator { comment_likes = d.comment_likes.map { this.toUni(d = it) }, ) - override fun toUni(d: X4DatatypesListCommentReportsResponse): LemmyapiDatatypesListCommentReportsResponse = LemmyapiDatatypesListCommentReportsResponse( - comment_reports = d.comment_reports.map { this.toUni(d = it) }, - ) - override fun toUni(d: X4DatatypesListCommunitiesResponse): LemmyapiDatatypesListCommunitiesResponse = LemmyapiDatatypesListCommunitiesResponse( communities = d.communities.map { this.toUni(d = it) }, ) @@ -1019,15 +1006,6 @@ internal class Transformer : MapperGenerator { post_likes = d.post_likes.map { this.toUni(d = it) }, ) - override fun toUni(d: X4DatatypesListPostReportsResponse): LemmyapiDatatypesListPostReportsResponse = LemmyapiDatatypesListPostReportsResponse( - post_reports = d.post_reports.map { this.toUni(d = it) }, - ) - - override fun toUni(d: X4DatatypesListPrivateMessageReportsResponse): LemmyapiDatatypesListPrivateMessageReportsResponse = - LemmyapiDatatypesListPrivateMessageReportsResponse( - private_message_reports = d.private_message_reports.map { this.toUni(d = it) }, - ) - override fun toUni(d: X4DatatypesListRegistrationApplicationsResponse): LemmyapiDatatypesListRegistrationApplicationsResponse = LemmyapiDatatypesListRegistrationApplicationsResponse( registration_applications = d.registration_applications.map { this.toUni(d = it) }, @@ -1658,7 +1636,7 @@ internal class Transformer : MapperGenerator { addAll(d.posts.map { LemmyapiDatatypesSearchCombinedView.Post(post = this@Transformer.toUni(d = it)) }) addAll(d.communities.map { LemmyapiDatatypesSearchCombinedView.Community(community = this@Transformer.toUni(d = it)) }) addAll(d.users.map { LemmyapiDatatypesSearchCombinedView.Person(person = this@Transformer.toUni(d = it)) }) - } + }, ) override fun toUni(d: X4DatatypesSite): LemmyapiDatatypesSite = LemmyapiDatatypesSite( @@ -2146,6 +2124,29 @@ internal class Transformer : MapperGenerator { reason = d.reason, ) + override fun fromUniC(d: it.vercruysse.lemmyapi.datatypes.ListReports): X4DatatypesListCommentReports = + X4DatatypesListCommentReports( + page = d.page, + limit = d.limit, + unresolved_only = d.unresolved_only, + community_id = d.community_id, + ) + + override fun fromUniP(d: it.vercruysse.lemmyapi.datatypes.ListReports): X4DatatypesListPostReports = + X4DatatypesListPostReports( + page = d.page, + limit = d.limit, + unresolved_only = d.unresolved_only, + community_id = d.community_id, + ) + + override fun fromUniPm(d: it.vercruysse.lemmyapi.datatypes.ListReports): X4DatatypesListPrivateMessageReports = + X4DatatypesListPrivateMessageReports( + page = d.page, + limit = d.limit, + unresolved_only = d.unresolved_only, + ) + override fun fromUni(d: LemmyapiDatatypesHidePost): X4DatatypesHidePost = X4DatatypesHidePost( post_ids = d.post_ids, hide = d.hide, @@ -2158,15 +2159,6 @@ internal class Transformer : MapperGenerator { limit = d.limit, ) - override fun fromUni(d: LemmyapiDatatypesListCommentReports): X4DatatypesListCommentReports = - X4DatatypesListCommentReports( - comment_id = d.comment_id, - page = d.page, - limit = d.limit, - unresolved_only = d.unresolved_only, - community_id = d.community_id, - ) - override fun fromUni(d: LemmyapiDatatypesListCommunities): X4DatatypesListCommunities = X4DatatypesListCommunities( type_ = d.type_, @@ -2188,21 +2180,6 @@ internal class Transformer : MapperGenerator { limit = d.limit, ) - override fun fromUni(d: LemmyapiDatatypesListPostReports): X4DatatypesListPostReports = - X4DatatypesListPostReports( - page = d.page, - limit = d.limit, - unresolved_only = d.unresolved_only, - community_id = d.community_id, - post_id = d.post_id, - ) - - override fun fromUni(d: LemmyapiDatatypesListPrivateMessageReports): X4DatatypesListPrivateMessageReports = X4DatatypesListPrivateMessageReports( - page = d.page, - limit = d.limit, - unresolved_only = d.unresolved_only, - ) - override fun fromUni(d: LemmyapiDatatypesListRegistrationApplications): X4DatatypesListRegistrationApplications = X4DatatypesListRegistrationApplications( unread_only = d.unread_only, page = d.page, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt index ea11047b..799bb899 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt @@ -317,14 +317,79 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba api.resolvePostReport(transformer.fromUni(form)).map(transformer::toUni) /** - * List post reports. - * - * @GET("post/report/list") - */ - override suspend fun listPostReports( - form: it.vercruysse.lemmyapi.datatypes.ListPostReports, - ): Result = - api.listPostReports(transformer.fromUni(form)).map(transformer::toUni) + * List reports. + */ + override suspend fun listReports( + form: it.vercruysse.lemmyapi.datatypes.ListReports, + ): Result = + when (form.type_) { + it.vercruysse.lemmyapi.dto.ReportType.Communities -> notSupported() + it.vercruysse.lemmyapi.dto.ReportType.Posts -> { + api.listPostReports(transformer.fromUniP(form)).map { resp -> + val items = resp.post_reports.map { r -> + it.vercruysse.lemmyapi.datatypes.ReportCombinedView.Post( + transformer.toUni(r), + ) + } + it.vercruysse.lemmyapi.datatypes.ListReportsResponse(items) + } + } + it.vercruysse.lemmyapi.dto.ReportType.Comments -> { + api.listCommentReports(transformer.fromUniC(form)).map { resp -> + val items = resp.comment_reports.map { r -> + it.vercruysse.lemmyapi.datatypes.ReportCombinedView.Comment( + transformer.toUni(r), + ) + } + it.vercruysse.lemmyapi.datatypes.ListReportsResponse(items) + } + } + it.vercruysse.lemmyapi.dto.ReportType.PrivateMessages -> { + api.listPrivateMessageReports(transformer.fromUniPm(form)).map { resp -> + val items = resp.private_message_reports.map { r -> + it.vercruysse.lemmyapi.datatypes.ReportCombinedView.PrivateMessage( + transformer.toUni(r), + ) + } + it.vercruysse.lemmyapi.datatypes.ListReportsResponse(items) + } + } + it.vercruysse.lemmyapi.dto.ReportType.All -> { + runCatching { + val postsResp = api.listPostReports(transformer.fromUniP(form)).getOrThrow() + val commentsResp = api.listCommentReports(transformer.fromUniC(form)).getOrThrow() + val privateMessagesResp = api.listPrivateMessageReports(transformer.fromUniPm(form)).getOrThrow() + + val allReports = mutableListOf() + + allReports.addAll( + postsResp.post_reports.map { r -> + it.vercruysse.lemmyapi.datatypes.ReportCombinedView.Post( + transformer.toUni(r), + ) + }, + ) + + allReports.addAll( + commentsResp.comment_reports.map { r -> + it.vercruysse.lemmyapi.datatypes.ReportCombinedView.Comment( + transformer.toUni(r), + ) + }, + ) + + allReports.addAll( + privateMessagesResp.private_message_reports.map { r -> + it.vercruysse.lemmyapi.datatypes.ReportCombinedView.PrivateMessage( + transformer.toUni(r), + ) + }, + ) + + it.vercruysse.lemmyapi.datatypes.ListReportsResponse(allReports) + } + } + } /** * Fetch metadata for any given site. @@ -456,16 +521,6 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba ): Result = api.resolveCommentReport(transformer.fromUni(form)).map(transformer::toUni) - /** - * List comment reports. - * - * @GET("comment/report/list") - */ - override suspend fun listCommentReports( - form: it.vercruysse.lemmyapi.datatypes.ListCommentReports, - ): Result = - api.listCommentReports(transformer.fromUni(form)).map(transformer::toUni) - /** * Edit a private message. * @@ -536,16 +591,6 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba ): Result = api.resolvePrivateMessageReport(transformer.fromUni(form)).map(transformer::toUni) - /** - * List private message reports. - * - * @GET("private_message/report/list") - */ - override suspend fun listPrivateMessageReports( - form: it.vercruysse.lemmyapi.datatypes.ListPrivateMessageReports, - ): Result = - api.listPrivateMessageReports(transformer.fromUni(form)).map(transformer::toUni) - /** * Get the details for a person. * diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt index 06c1081b..c3f159fe 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt @@ -63,12 +63,9 @@ internal interface MapperGenerator { fun toUni(d: Language): it.vercruysse.lemmyapi.datatypes.Language fun toUni(d: LinkMetadata): it.vercruysse.lemmyapi.datatypes.LinkMetadata fun toUni(d: ListCommentLikesResponse): it.vercruysse.lemmyapi.datatypes.ListCommentLikesResponse - fun toUni(d: ListCommentReportsResponse): it.vercruysse.lemmyapi.datatypes.ListCommentReportsResponse fun toUni(d: ListCommunitiesResponse): it.vercruysse.lemmyapi.datatypes.ListCommunitiesResponse fun toUni(d: ListMediaResponse): it.vercruysse.lemmyapi.datatypes.ListMediaResponse fun toUni(d: ListPostLikesResponse): it.vercruysse.lemmyapi.datatypes.ListPostLikesResponse - fun toUni(d: ListPostReportsResponse): it.vercruysse.lemmyapi.datatypes.ListPostReportsResponse - fun toUni(d: ListPrivateMessageReportsResponse): it.vercruysse.lemmyapi.datatypes.ListPrivateMessageReportsResponse fun toUni(d: ListRegistrationApplicationsResponse): it.vercruysse.lemmyapi.datatypes.ListRegistrationApplicationsResponse fun toUni(d: LocalImage): it.vercruysse.lemmyapi.datatypes.LocalImage fun toUni(d: LocalImageView): it.vercruysse.lemmyapi.datatypes.LocalImageView @@ -185,13 +182,13 @@ internal interface MapperGenerator { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetSiteMetadata): GetSiteMetadata fun fromUni(d: it.vercruysse.lemmyapi.datatypes.HideCommunity): HideCommunity fun fromUni(d: it.vercruysse.lemmyapi.datatypes.HidePost): HidePost + fun fromUniC(d: it.vercruysse.lemmyapi.datatypes.ListReports): ListCommentReports + fun fromUniP(d: it.vercruysse.lemmyapi.datatypes.ListReports): ListPostReports + fun fromUniPm(d: it.vercruysse.lemmyapi.datatypes.ListReports): ListPrivateMessageReports fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListCommentLikes): ListCommentLikes - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListCommentReports): ListCommentReports fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListCommunities): ListCommunities fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListMedia): ListMedia fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListPostLikes): ListPostLikes - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListPostReports): ListPostReports - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListPrivateMessageReports): ListPrivateMessageReports fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListRegistrationApplications): ListRegistrationApplications fun fromUni(d: it.vercruysse.lemmyapi.datatypes.LockPost): LockPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.Login): Login diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt index 4ac5e01b..9a506529 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt @@ -29,7 +29,6 @@ import it.vercruysse.lemmyapi.datatypes.BanPersonResponse as LemmyapiDatatypesBa import it.vercruysse.lemmyapi.datatypes.BannedPersonsResponse as LemmyapiDatatypesBannedPersonsResponse import it.vercruysse.lemmyapi.datatypes.BlockCommunity as LemmyapiDatatypesBlockCommunity import it.vercruysse.lemmyapi.datatypes.BlockCommunityResponse as LemmyapiDatatypesBlockCommunityResponse -import it.vercruysse.lemmyapi.datatypes.UserBlockInstanceCommunitiesParams as LemmyapiDatatypesBlockInstance import it.vercruysse.lemmyapi.datatypes.BlockPerson as LemmyapiDatatypesBlockPerson import it.vercruysse.lemmyapi.datatypes.BlockPersonResponse as LemmyapiDatatypesBlockPersonResponse import it.vercruysse.lemmyapi.datatypes.CaptchaResponse as LemmyapiDatatypesCaptchaResponse @@ -117,18 +116,12 @@ import it.vercruysse.lemmyapi.datatypes.Language as LemmyapiDatatypesLanguage import it.vercruysse.lemmyapi.datatypes.LinkMetadata as LemmyapiDatatypesLinkMetadata import it.vercruysse.lemmyapi.datatypes.ListCommentLikes as LemmyapiDatatypesListCommentLikes import it.vercruysse.lemmyapi.datatypes.ListCommentLikesResponse as LemmyapiDatatypesListCommentLikesResponse -import it.vercruysse.lemmyapi.datatypes.ListCommentReports as LemmyapiDatatypesListCommentReports -import it.vercruysse.lemmyapi.datatypes.ListCommentReportsResponse as LemmyapiDatatypesListCommentReportsResponse import it.vercruysse.lemmyapi.datatypes.ListCommunities as LemmyapiDatatypesListCommunities import it.vercruysse.lemmyapi.datatypes.ListCommunitiesResponse as LemmyapiDatatypesListCommunitiesResponse import it.vercruysse.lemmyapi.datatypes.ListMedia as LemmyapiDatatypesListMedia import it.vercruysse.lemmyapi.datatypes.ListMediaResponse as LemmyapiDatatypesListMediaResponse import it.vercruysse.lemmyapi.datatypes.ListPostLikes as LemmyapiDatatypesListPostLikes import it.vercruysse.lemmyapi.datatypes.ListPostLikesResponse as LemmyapiDatatypesListPostLikesResponse -import it.vercruysse.lemmyapi.datatypes.ListPostReports as LemmyapiDatatypesListPostReports -import it.vercruysse.lemmyapi.datatypes.ListPostReportsResponse as LemmyapiDatatypesListPostReportsResponse -import it.vercruysse.lemmyapi.datatypes.ListPrivateMessageReports as LemmyapiDatatypesListPrivateMessageReports -import it.vercruysse.lemmyapi.datatypes.ListPrivateMessageReportsResponse as LemmyapiDatatypesListPrivateMessageReportsResponse import it.vercruysse.lemmyapi.datatypes.ListRegistrationApplications as LemmyapiDatatypesListRegistrationApplications import it.vercruysse.lemmyapi.datatypes.ListRegistrationApplicationsResponse as LemmyapiDatatypesListRegistrationApplicationsResponse import it.vercruysse.lemmyapi.datatypes.LocalImage as LemmyapiDatatypesLocalImage @@ -211,8 +204,8 @@ import it.vercruysse.lemmyapi.datatypes.SaveComment as LemmyapiDatatypesSaveComm import it.vercruysse.lemmyapi.datatypes.SavePost as LemmyapiDatatypesSavePost import it.vercruysse.lemmyapi.datatypes.SaveUserSettings as LemmyapiDatatypesSaveUserSettings import it.vercruysse.lemmyapi.datatypes.Search as LemmyapiDatatypesSearch -import it.vercruysse.lemmyapi.datatypes.SearchResponse as LemmyapiDatatypesSearchResponse import it.vercruysse.lemmyapi.datatypes.SearchCombinedView as LemmyapiDatatypesSearchCombinedView +import it.vercruysse.lemmyapi.datatypes.SearchResponse as LemmyapiDatatypesSearchResponse import it.vercruysse.lemmyapi.datatypes.Site as LemmyapiDatatypesSite import it.vercruysse.lemmyapi.datatypes.SiteResponse as LemmyapiDatatypesSiteResponse import it.vercruysse.lemmyapi.datatypes.SiteView as LemmyapiDatatypesSiteView @@ -220,6 +213,7 @@ import it.vercruysse.lemmyapi.datatypes.Tagline as LemmyapiDatatypesTagline import it.vercruysse.lemmyapi.datatypes.TransferCommunity as LemmyapiDatatypesTransferCommunity import it.vercruysse.lemmyapi.datatypes.UpdateTotp as LemmyapiDatatypesUpdateTotp import it.vercruysse.lemmyapi.datatypes.UpdateTotpResponse as LemmyapiDatatypesUpdateTotpResponse +import it.vercruysse.lemmyapi.datatypes.UserBlockInstanceCommunitiesParams as LemmyapiDatatypesBlockInstance import it.vercruysse.lemmyapi.datatypes.VerifyEmail as LemmyapiDatatypesVerifyEmail import it.vercruysse.lemmyapi.datatypes.VoteView as LemmyapiDatatypesVoteView import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.AddAdmin as X6DatatypesAddAdmin @@ -333,7 +327,6 @@ import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.LinkMetadata as X6DatatypesLin import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.ListCommentLikes as X6DatatypesListCommentLikes import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.ListCommentLikesResponse as X6DatatypesListCommentLikesResponse import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.ListCommentReports as X6DatatypesListCommentReports -import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.ListCommentReportsResponse as X6DatatypesListCommentReportsResponse import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.ListCommunities as X6DatatypesListCommunities import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.ListCommunitiesResponse as X6DatatypesListCommunitiesResponse import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.ListMedia as X6DatatypesListMedia @@ -341,9 +334,7 @@ import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.ListMediaResponse as X6Datatyp import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.ListPostLikes as X6DatatypesListPostLikes import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.ListPostLikesResponse as X6DatatypesListPostLikesResponse import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.ListPostReports as X6DatatypesListPostReports -import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.ListPostReportsResponse as X6DatatypesListPostReportsResponse import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.ListPrivateMessageReports as X6DatatypesListPrivateMessageReports -import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.ListPrivateMessageReportsResponse as X6DatatypesListPrivateMessageReportsResponse import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.ListRegistrationApplications as X6DatatypesListRegistrationApplications import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.ListRegistrationApplicationsResponse as X6DatatypesListRegistrationApplicationsResponse import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.LocalImage as X6DatatypesLocalImage @@ -1009,10 +1000,6 @@ internal class Transformer : MapperGenerator { comment_likes = d.comment_likes.map { this.toUni(d = it) }, ) - override fun toUni(d: X6DatatypesListCommentReportsResponse): LemmyapiDatatypesListCommentReportsResponse = LemmyapiDatatypesListCommentReportsResponse( - comment_reports = d.comment_reports.map { this.toUni(d = it) }, - ) - override fun toUni(d: X6DatatypesListCommunitiesResponse): LemmyapiDatatypesListCommunitiesResponse = LemmyapiDatatypesListCommunitiesResponse( communities = d.communities.map { this.toUni(d = it) }, ) @@ -1027,15 +1014,6 @@ internal class Transformer : MapperGenerator { post_likes = d.post_likes.map { this.toUni(d = it) }, ) - override fun toUni(d: X6DatatypesListPostReportsResponse): LemmyapiDatatypesListPostReportsResponse = LemmyapiDatatypesListPostReportsResponse( - post_reports = d.post_reports.map { this.toUni(d = it) }, - ) - - override fun toUni(d: X6DatatypesListPrivateMessageReportsResponse): LemmyapiDatatypesListPrivateMessageReportsResponse = - LemmyapiDatatypesListPrivateMessageReportsResponse( - private_message_reports = d.private_message_reports.map { this.toUni(d = it) }, - ) - override fun toUni(d: X6DatatypesListRegistrationApplicationsResponse): LemmyapiDatatypesListRegistrationApplicationsResponse = LemmyapiDatatypesListRegistrationApplicationsResponse( registration_applications = d.registration_applications.map { this.toUni(d = it) }, @@ -1664,7 +1642,7 @@ internal class Transformer : MapperGenerator { addAll(d.posts.map { LemmyapiDatatypesSearchCombinedView.Post(post = this@Transformer.toUni(d = it)) }) addAll(d.communities.map { LemmyapiDatatypesSearchCombinedView.Community(community = this@Transformer.toUni(d = it)) }) addAll(d.users.map { LemmyapiDatatypesSearchCombinedView.Person(person = this@Transformer.toUni(d = it)) }) - } + }, ) override fun toUni(d: X6DatatypesSite): LemmyapiDatatypesSite = LemmyapiDatatypesSite( @@ -2163,20 +2141,36 @@ internal class Transformer : MapperGenerator { hide = d.hide, ) - override fun fromUni(d: LemmyapiDatatypesListCommentLikes): X6DatatypesListCommentLikes = - X6DatatypesListCommentLikes( - comment_id = d.comment_id, + // Unified ListReports helpers (for combined ListReports support) + override fun fromUniC(d: it.vercruysse.lemmyapi.datatypes.ListReports): X6DatatypesListCommentReports = + X6DatatypesListCommentReports( page = d.page, limit = d.limit, + unresolved_only = d.unresolved_only, + community_id = d.community_id, ) - override fun fromUni(d: LemmyapiDatatypesListCommentReports): X6DatatypesListCommentReports = - X6DatatypesListCommentReports( - comment_id = d.comment_id, + override fun fromUniP(d: it.vercruysse.lemmyapi.datatypes.ListReports): X6DatatypesListPostReports = + X6DatatypesListPostReports( page = d.page, limit = d.limit, unresolved_only = d.unresolved_only, community_id = d.community_id, + post_id = d.post_id, + ) + + override fun fromUniPm(d: it.vercruysse.lemmyapi.datatypes.ListReports): X6DatatypesListPrivateMessageReports = + X6DatatypesListPrivateMessageReports( + page = d.page, + limit = d.limit, + unresolved_only = d.unresolved_only, + ) + + override fun fromUni(d: LemmyapiDatatypesListCommentLikes): X6DatatypesListCommentLikes = + X6DatatypesListCommentLikes( + comment_id = d.comment_id, + page = d.page, + limit = d.limit, ) override fun fromUni(d: LemmyapiDatatypesListCommunities): X6DatatypesListCommunities = @@ -2200,21 +2194,6 @@ internal class Transformer : MapperGenerator { limit = d.limit, ) - override fun fromUni(d: LemmyapiDatatypesListPostReports): X6DatatypesListPostReports = - X6DatatypesListPostReports( - page = d.page, - limit = d.limit, - unresolved_only = d.unresolved_only, - community_id = d.community_id, - post_id = d.post_id, - ) - - override fun fromUni(d: LemmyapiDatatypesListPrivateMessageReports): X6DatatypesListPrivateMessageReports = X6DatatypesListPrivateMessageReports( - page = d.page, - limit = d.limit, - unresolved_only = d.unresolved_only, - ) - override fun fromUni(d: LemmyapiDatatypesListRegistrationApplications): X6DatatypesListRegistrationApplications = X6DatatypesListRegistrationApplications( unread_only = d.unread_only, page = d.page, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListReports.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListReports.kt index e5126075..44fcb12f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListReports.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListReports.kt @@ -1,12 +1,12 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -import it.vercruysse.lemmyapi.dto.ListingType +import it.vercruysse.lemmyapi.dto.ReportType import kotlinx.serialization.Serializable @Serializable internal data class ListReports( val unresolved_only: Boolean? = null, - val type_: ListingType? /* "All" | "Posts" | "Comments" | "PrivateMessages" | "Communities" */ = null, + val type_: ReportType? /* "All" | "Posts" | "Comments" | "PrivateMessages" | "Communities" */ = null, val post_id: PostId? = null, val community_id: CommunityId? = null, val page_cursor: PaginationCursor? = null, From c8d2d31fa396562a510e372b32cc54790fc96d39 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Wed, 24 Sep 2025 00:22:07 +0200 Subject: [PATCH 015/110] Count fixes --- .../lemmyapi/datatypes/GetReportCountResponse.kt | 7 +------ .../lemmyapi/datatypes/GetUnreadCountResponse.kt | 6 +----- .../it/vercruysse/lemmyapi/datatypes/ListCommentLikes.kt | 7 +++++-- .../it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt | 9 ++------- .../it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt | 9 ++------- .../it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt | 9 ++------- .../it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt | 9 ++------- .../it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt | 9 ++------- .../it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt | 9 ++------- 9 files changed, 19 insertions(+), 55 deletions(-) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetReportCountResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetReportCountResponse.kt index 3a640baf..c6300f23 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetReportCountResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetReportCountResponse.kt @@ -5,13 +5,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize -// TODO: many removal - @CommonParcelize @Serializable data class GetReportCountResponse( - val community_id: CommunityId? = null, - val comment_reports: Long, - val post_reports: Long, - val private_message_reports: Long? = null, + val count: Long, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetUnreadCountResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetUnreadCountResponse.kt index 3c25b174..ae83ede0 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetUnreadCountResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetUnreadCountResponse.kt @@ -5,12 +5,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize -// TODO changes - @CommonParcelize @Serializable data class GetUnreadCountResponse( - val replies: Long, - val mentions: Long, - val private_messages: Long, + val count: Long, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommentLikes.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommentLikes.kt index fb5144ad..20ded37a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommentLikes.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommentLikes.kt @@ -5,12 +5,15 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize -// TODO: cursor changes - @CommonParcelize @Serializable data class ListCommentLikes( val comment_id: CommentId, + /** Removed in 1.0.0 */ val page: Long? = null, + /** Added in 1.0.0 */ + val page_cursor: PaginationCursor? = null, + /** Added in 1.0.0 */ + val page_back: Boolean? = null, val limit: Long? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt index 13b3133d..ae7b3f1b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt @@ -1068,10 +1068,7 @@ internal class Transformer(var auth: String) : MapperGenerator { ) override fun toUni(d: X5DatatypesGetReportCountResponse): LemmyapiDatatypesGetReportCountResponse = LemmyapiDatatypesGetReportCountResponse( - community_id = d.community_id, - comment_reports = d.comment_reports, - post_reports = d.post_reports, - private_message_reports = d.private_message_reports, + count = d.post_reports + d.comment_reports + (d.private_message_reports ?: 0), ) override fun toUni(d: X5DatatypesGetSiteMetadataResponse): LemmyapiDatatypesGetSiteMetadataResponse = LemmyapiDatatypesGetSiteMetadataResponse( @@ -1079,9 +1076,7 @@ internal class Transformer(var auth: String) : MapperGenerator { ) override fun toUni(d: X5DatatypesGetUnreadCountResponse): LemmyapiDatatypesGetUnreadCountResponse = LemmyapiDatatypesGetUnreadCountResponse( - replies = d.replies, - mentions = d.mentions, - private_messages = d.private_messages, + count = d.replies + d.mentions + d.private_messages ) override fun toUni(d: X5DatatypesGetUnreadRegistrationApplicationCountResponse): LemmyapiDatatypesGetUnreadRegistrationApplicationCountResponse = diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt index 1adf8db0..3cdb5c47 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt @@ -999,10 +999,7 @@ internal class Transformer : MapperGenerator { ) override fun toUni(d: X0DatatypesGetReportCountResponse): LemmyapiDatatypesGetReportCountResponse = LemmyapiDatatypesGetReportCountResponse( - community_id = d.community_id, - comment_reports = d.comment_reports, - post_reports = d.post_reports, - private_message_reports = d.private_message_reports, + count = d.post_reports + d.comment_reports + (d.private_message_reports ?: 0), ) override fun toUni(d: X0DatatypesGetSiteMetadataResponse): LemmyapiDatatypesGetSiteMetadataResponse = LemmyapiDatatypesGetSiteMetadataResponse( @@ -1010,9 +1007,7 @@ internal class Transformer : MapperGenerator { ) override fun toUni(d: X0DatatypesGetUnreadCountResponse): LemmyapiDatatypesGetUnreadCountResponse = LemmyapiDatatypesGetUnreadCountResponse( - replies = d.replies, - mentions = d.mentions, - private_messages = d.private_messages, + count = d.replies + d.mentions + d.private_messages ) override fun toUni(d: X0DatatypesGetUnreadRegistrationApplicationCountResponse): LemmyapiDatatypesGetUnreadRegistrationApplicationCountResponse = diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt index 2d5644d8..72b60380 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt @@ -915,10 +915,7 @@ internal class Transformer : MapperGenerator { ) override fun toUni(d: X11DatatypesGetReportCountResponse): LemmyapiDatatypesGetReportCountResponse = LemmyapiDatatypesGetReportCountResponse( - community_id = d.community_id, - comment_reports = d.comment_reports, - post_reports = d.post_reports, - private_message_reports = d.private_message_reports, + count = d.post_reports + d.comment_reports + (d.private_message_reports ?: 0), ) override fun toUni(d: X11DatatypesGetSiteMetadataResponse): LemmyapiDatatypesGetSiteMetadataResponse = LemmyapiDatatypesGetSiteMetadataResponse( @@ -943,9 +940,7 @@ internal class Transformer : MapperGenerator { ) override fun toUni(d: X11DatatypesGetUnreadCountResponse): LemmyapiDatatypesGetUnreadCountResponse = LemmyapiDatatypesGetUnreadCountResponse( - replies = d.replies, - mentions = d.mentions, - private_messages = d.private_messages, + count = d.replies + d.mentions + d.private_messages ) override fun toUni(d: X11DatatypesGetUnreadRegistrationApplicationCountResponse): LemmyapiDatatypesGetUnreadRegistrationApplicationCountResponse = diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt index de33d9da..585012c8 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt @@ -1022,10 +1022,7 @@ internal class Transformer : MapperGenerator { ) override fun toUni(d: X3DatatypesGetReportCountResponse): LemmyapiDatatypesGetReportCountResponse = LemmyapiDatatypesGetReportCountResponse( - community_id = d.community_id, - comment_reports = d.comment_reports, - post_reports = d.post_reports, - private_message_reports = d.private_message_reports, + count = d.post_reports + d.comment_reports + (d.private_message_reports ?: 0), ) override fun toUni(d: X3DatatypesGetSiteMetadataResponse): LemmyapiDatatypesGetSiteMetadataResponse = LemmyapiDatatypesGetSiteMetadataResponse( @@ -1033,9 +1030,7 @@ internal class Transformer : MapperGenerator { ) override fun toUni(d: X3DatatypesGetUnreadCountResponse): LemmyapiDatatypesGetUnreadCountResponse = LemmyapiDatatypesGetUnreadCountResponse( - replies = d.replies, - mentions = d.mentions, - private_messages = d.private_messages, + count = d.replies + d.mentions + d.private_messages ) override fun toUni(d: X3DatatypesGetUnreadRegistrationApplicationCountResponse): LemmyapiDatatypesGetUnreadRegistrationApplicationCountResponse = diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt index 7eada7bb..4aff38fc 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt @@ -915,10 +915,7 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X4DatatypesGetReportCountResponse): LemmyapiDatatypesGetReportCountResponse = LemmyapiDatatypesGetReportCountResponse( - community_id = d.community_id, - comment_reports = d.comment_reports, - post_reports = d.post_reports, - private_message_reports = d.private_message_reports, + count = d.post_reports + d.comment_reports + (d.private_message_reports ?: 0), ) override fun toUni(d: X4DatatypesGetSiteMetadataResponse): LemmyapiDatatypesGetSiteMetadataResponse = LemmyapiDatatypesGetSiteMetadataResponse( @@ -944,9 +941,7 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X4DatatypesGetUnreadCountResponse): LemmyapiDatatypesGetUnreadCountResponse = LemmyapiDatatypesGetUnreadCountResponse( - replies = d.replies, - mentions = d.mentions, - private_messages = d.private_messages, + count = d.replies + d.mentions + d.private_messages ) override fun toUni(d: X4DatatypesGetUnreadRegistrationApplicationCountResponse): LemmyapiDatatypesGetUnreadRegistrationApplicationCountResponse = diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt index 9a506529..4031bf67 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt @@ -916,10 +916,7 @@ internal class Transformer : MapperGenerator { ) override fun toUni(d: X6DatatypesGetReportCountResponse): LemmyapiDatatypesGetReportCountResponse = LemmyapiDatatypesGetReportCountResponse( - community_id = d.community_id, - comment_reports = d.comment_reports, - post_reports = d.post_reports, - private_message_reports = d.private_message_reports, + count = d.post_reports + d.comment_reports + (d.private_message_reports ?: 0), ) override fun toUni(d: X6DatatypesGetSiteMetadataResponse): LemmyapiDatatypesGetSiteMetadataResponse = LemmyapiDatatypesGetSiteMetadataResponse( @@ -944,9 +941,7 @@ internal class Transformer : MapperGenerator { ) override fun toUni(d: X6DatatypesGetUnreadCountResponse): LemmyapiDatatypesGetUnreadCountResponse = LemmyapiDatatypesGetUnreadCountResponse( - replies = d.replies, - mentions = d.mentions, - private_messages = d.private_messages, + count = d.replies + d.mentions + d.private_messages ) override fun toUni(d: X6DatatypesGetUnreadRegistrationApplicationCountResponse): LemmyapiDatatypesGetUnreadRegistrationApplicationCountResponse = From 95f474338459aa0b133a0dd10c728e2c5eb347ab Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Wed, 24 Sep 2025 00:31:51 +0200 Subject: [PATCH 016/110] Remove ModlogListParams --- .../src/main/kotlin/MapperGenerator0x18x5.kt | 1 - .../src/main/kotlin/MapperGenerator0x19x0.kt | 1 - .../src/main/kotlin/MapperGenerator0x19x11.kt | 1 - .../src/main/kotlin/MapperGenerator0x19x3.kt | 1 - .../src/main/kotlin/MapperGenerator0x19x4.kt | 1 - .../src/main/kotlin/MapperGenerator0x19x6.kt | 1 - .../lemmyapi/datatypes/ModlogListParams.kt | 21 ------------------- .../lemmyapi/v0/x18/x5/MapperGenerator.kt | 1 - .../lemmyapi/v0/x18/x5/Transformer.kt | 12 ----------- .../v0/x18/x5/datatypes/ModlogListParams.kt | 13 ------------ .../lemmyapi/v0/x19/x0/MapperGenerator.kt | 1 - .../lemmyapi/v0/x19/x0/Transformer.kt | 12 ----------- .../v0/x19/x0/datatypes/ModlogListParams.kt | 13 ------------ .../lemmyapi/v0/x19/x11/MapperGenerator.kt | 1 - .../lemmyapi/v0/x19/x11/Transformer.kt | 14 ------------- .../v0/x19/x11/datatypes/ModlogListParams.kt | 15 ------------- .../lemmyapi/v0/x19/x3/MapperGenerator.kt | 1 - .../lemmyapi/v0/x19/x3/Transformer.kt | 12 ----------- .../v0/x19/x3/datatypes/ModlogListParams.kt | 13 ------------ .../lemmyapi/v0/x19/x4/MapperGenerator.kt | 1 - .../lemmyapi/v0/x19/x4/Transformer.kt | 14 ------------- .../v0/x19/x4/datatypes/ModlogListParams.kt | 15 ------------- .../lemmyapi/v0/x19/x6/MapperGenerator.kt | 1 - .../lemmyapi/v0/x19/x6/Transformer.kt | 14 ------------- .../v0/x19/x6/datatypes/ModlogListParams.kt | 15 ------------- 25 files changed, 195 deletions(-) delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModlogListParams.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/ModlogListParams.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/ModlogListParams.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/ModlogListParams.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/ModlogListParams.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/ModlogListParams.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/ModlogListParams.kt diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x18x5.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x18x5.kt index 0bd861b8..f6cadee3 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x18x5.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x18x5.kt @@ -226,7 +226,6 @@ internal interface MapperGenerator0x18x5 { fun toUni(d: ModFeaturePostView): it.vercruysse.lemmyapi.datatypes.ModFeaturePostView fun toUni(d: ModLockPost): it.vercruysse.lemmyapi.datatypes.ModLockPost fun toUni(d: ModLockPostView): it.vercruysse.lemmyapi.datatypes.ModLockPostView - fun toUni(d: ModlogListParams): it.vercruysse.lemmyapi.datatypes.ModlogListParams fun toUni(d: ModRemoveComment): it.vercruysse.lemmyapi.datatypes.ModRemoveComment fun toUni(d: ModRemoveCommentView): it.vercruysse.lemmyapi.datatypes.ModRemoveCommentView fun toUni(d: ModRemoveCommunity): it.vercruysse.lemmyapi.datatypes.ModRemoveCommunity diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x0.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x0.kt index b44d551a..68750841 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x0.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x0.kt @@ -181,7 +181,6 @@ internal interface MapperGenerator0x19x0 { fun toUni(d: ModFeaturePostView): it.vercruysse.lemmyapi.datatypes.ModFeaturePostView fun toUni(d: ModLockPost): it.vercruysse.lemmyapi.datatypes.ModLockPost fun toUni(d: ModLockPostView): it.vercruysse.lemmyapi.datatypes.ModLockPostView - fun toUni(d: ModlogListParams): it.vercruysse.lemmyapi.datatypes.ModlogListParams fun toUni(d: ModRemoveComment): it.vercruysse.lemmyapi.datatypes.ModRemoveComment fun toUni(d: ModRemoveCommentView): it.vercruysse.lemmyapi.datatypes.ModRemoveCommentView fun toUni(d: ModRemoveCommunity): it.vercruysse.lemmyapi.datatypes.ModRemoveCommunity diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt index 63752259..19a5d378 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt @@ -93,7 +93,6 @@ internal interface MapperGenerator0x19x11 { fun toUni(d: ModFeaturePostView): it.vercruysse.lemmyapi.datatypes.ModFeaturePostView fun toUni(d: ModLockPost): it.vercruysse.lemmyapi.datatypes.ModLockPost fun toUni(d: ModLockPostView): it.vercruysse.lemmyapi.datatypes.ModLockPostView - fun toUni(d: ModlogListParams): it.vercruysse.lemmyapi.datatypes.ModlogListParams fun toUni(d: ModRemoveComment): it.vercruysse.lemmyapi.datatypes.ModRemoveComment fun toUni(d: ModRemoveCommentView): it.vercruysse.lemmyapi.datatypes.ModRemoveCommentView fun toUni(d: ModRemoveCommunity): it.vercruysse.lemmyapi.datatypes.ModRemoveCommunity diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x3.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x3.kt index fda7c047..46998639 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x3.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x3.kt @@ -183,7 +183,6 @@ internal interface MapperGenerator0x19x3 { fun toUni(d: ModFeaturePostView): it.vercruysse.lemmyapi.datatypes.ModFeaturePostView fun toUni(d: ModLockPost): it.vercruysse.lemmyapi.datatypes.ModLockPost fun toUni(d: ModLockPostView): it.vercruysse.lemmyapi.datatypes.ModLockPostView - fun toUni(d: ModlogListParams): it.vercruysse.lemmyapi.datatypes.ModlogListParams fun toUni(d: ModRemoveComment): it.vercruysse.lemmyapi.datatypes.ModRemoveComment fun toUni(d: ModRemoveCommentView): it.vercruysse.lemmyapi.datatypes.ModRemoveCommentView fun toUni(d: ModRemoveCommunity): it.vercruysse.lemmyapi.datatypes.ModRemoveCommunity diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt index 806aa4bb..1b817d87 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt @@ -92,7 +92,6 @@ internal interface MapperGenerator0x19x4 { fun toUni(d: ModFeaturePostView): it.vercruysse.lemmyapi.datatypes.ModFeaturePostView fun toUni(d: ModLockPost): it.vercruysse.lemmyapi.datatypes.ModLockPost fun toUni(d: ModLockPostView): it.vercruysse.lemmyapi.datatypes.ModLockPostView - fun toUni(d: ModlogListParams): it.vercruysse.lemmyapi.datatypes.ModlogListParams fun toUni(d: ModRemoveComment): it.vercruysse.lemmyapi.datatypes.ModRemoveComment fun toUni(d: ModRemoveCommentView): it.vercruysse.lemmyapi.datatypes.ModRemoveCommentView fun toUni(d: ModRemoveCommunity): it.vercruysse.lemmyapi.datatypes.ModRemoveCommunity diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt index 4efbe486..af1625a7 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt @@ -93,7 +93,6 @@ internal interface MapperGenerator0x19x6 { fun toUni(d: ModFeaturePostView): it.vercruysse.lemmyapi.datatypes.ModFeaturePostView fun toUni(d: ModLockPost): it.vercruysse.lemmyapi.datatypes.ModLockPost fun toUni(d: ModLockPostView): it.vercruysse.lemmyapi.datatypes.ModLockPostView - fun toUni(d: ModlogListParams): it.vercruysse.lemmyapi.datatypes.ModlogListParams fun toUni(d: ModRemoveComment): it.vercruysse.lemmyapi.datatypes.ModRemoveComment fun toUni(d: ModRemoveCommentView): it.vercruysse.lemmyapi.datatypes.ModRemoveCommentView fun toUni(d: ModRemoveCommunity): it.vercruysse.lemmyapi.datatypes.ModRemoveCommunity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModlogListParams.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModlogListParams.kt deleted file mode 100644 index f0145b55..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModlogListParams.kt +++ /dev/null @@ -1,21 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -// TODO: removed in Lemmy 1.0.0 - -@CommonParcelize -@Serializable -data class ModlogListParams( - val community_id: CommunityId? = null, - val mod_person_id: PersonId? = null, - val other_person_id: PersonId? = null, - val post_id: PostId? = null, - val comment_id: CommentId? = null, - val page: Long? = null, - val limit: Long? = null, - val hide_modlog_names: Boolean, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/MapperGenerator.kt index 8d95d28a..204eeac8 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/MapperGenerator.kt @@ -122,7 +122,6 @@ internal interface MapperGenerator { fun toUni(d: ModHideCommunityView): it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibilityView fun toUni(d: ModLockPost): it.vercruysse.lemmyapi.datatypes.ModLockPost fun toUni(d: ModLockPostView): it.vercruysse.lemmyapi.datatypes.ModLockPostView - fun toUni(d: ModlogListParams): it.vercruysse.lemmyapi.datatypes.ModlogListParams fun toUni(d: ModRemoveComment): it.vercruysse.lemmyapi.datatypes.ModRemoveComment fun toUni(d: ModRemoveCommentView): it.vercruysse.lemmyapi.datatypes.ModRemoveCommentView fun toUni(d: ModRemoveCommunity): it.vercruysse.lemmyapi.datatypes.ModRemoveCommunity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt index ae7b3f1b..0427a528 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt @@ -151,7 +151,6 @@ import it.vercruysse.lemmyapi.datatypes.ModRemovePost as LemmyapiDatatypesModRem import it.vercruysse.lemmyapi.datatypes.ModRemovePostView as LemmyapiDatatypesModRemovePostView import it.vercruysse.lemmyapi.datatypes.ModTransferCommunity as LemmyapiDatatypesModTransferCommunity import it.vercruysse.lemmyapi.datatypes.ModTransferCommunityView as LemmyapiDatatypesModTransferCommunityView -import it.vercruysse.lemmyapi.datatypes.ModlogListParams as LemmyapiDatatypesModlogListParams import it.vercruysse.lemmyapi.datatypes.MyUserInfo as LemmyapiDatatypesMyUserInfo import it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset as LemmyapiDatatypesPasswordChangeAfterReset import it.vercruysse.lemmyapi.datatypes.PasswordReset as LemmyapiDatatypesPasswordReset @@ -341,7 +340,6 @@ import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.ModRemovePost as X5DatatypesMo import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.ModRemovePostView as X5DatatypesModRemovePostView import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.ModTransferCommunity as X5DatatypesModTransferCommunity import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.ModTransferCommunityView as X5DatatypesModTransferCommunityView -import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.ModlogListParams as X5DatatypesModlogListParams import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.MyUserInfo as X5DatatypesMyUserInfo import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.PasswordChangeAfterReset as X5DatatypesPasswordChangeAfterReset import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.PasswordReset as X5DatatypesPasswordReset @@ -1248,16 +1246,6 @@ internal class Transformer(var auth: String) : MapperGenerator { community = this.toUni(d = d.community, counts = X5DatatypesCommunityAggregates(-1, -1, -1, -1, -1, "", -1, -1, -1, -1, -1)), ) - override fun toUni(d: X5DatatypesModlogListParams): LemmyapiDatatypesModlogListParams = - LemmyapiDatatypesModlogListParams( - community_id = d.community_id, - mod_person_id = d.mod_person_id, - other_person_id = d.other_person_id, - page = d.page, - limit = d.limit, - hide_modlog_names = d.hide_modlog_names, - ) - override fun toUni(d: X5DatatypesModRemoveComment): LemmyapiDatatypesModRemoveComment = LemmyapiDatatypesModRemoveComment( id = d.id, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/ModlogListParams.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/ModlogListParams.kt deleted file mode 100644 index 3b83c4b3..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/ModlogListParams.kt +++ /dev/null @@ -1,13 +0,0 @@ -package it.vercruysse.lemmyapi.v0.x18.x5.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class ModlogListParams( - val community_id: CommunityId? = null, - val mod_person_id: PersonId? = null, - val other_person_id: PersonId? = null, - val page: Long? = null, - val limit: Long? = null, - val hide_modlog_names: Boolean, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt index 8e2ed16d..80ff22e5 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt @@ -110,7 +110,6 @@ internal interface MapperGenerator { fun toUni(d: ModHideCommunityView): it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibilityView fun toUni(d: ModLockPost): it.vercruysse.lemmyapi.datatypes.ModLockPost fun toUni(d: ModLockPostView): it.vercruysse.lemmyapi.datatypes.ModLockPostView - fun toUni(d: ModlogListParams): it.vercruysse.lemmyapi.datatypes.ModlogListParams fun toUni(d: ModRemoveComment): it.vercruysse.lemmyapi.datatypes.ModRemoveComment fun toUni(d: ModRemoveCommentView): it.vercruysse.lemmyapi.datatypes.ModRemoveCommentView fun toUni(d: ModRemoveCommunity): it.vercruysse.lemmyapi.datatypes.ModRemoveCommunity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt index 3cdb5c47..dbce0156 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt @@ -150,7 +150,6 @@ import it.vercruysse.lemmyapi.datatypes.ModRemovePost as LemmyapiDatatypesModRem import it.vercruysse.lemmyapi.datatypes.ModRemovePostView as LemmyapiDatatypesModRemovePostView import it.vercruysse.lemmyapi.datatypes.ModTransferCommunity as LemmyapiDatatypesModTransferCommunity import it.vercruysse.lemmyapi.datatypes.ModTransferCommunityView as LemmyapiDatatypesModTransferCommunityView -import it.vercruysse.lemmyapi.datatypes.ModlogListParams as LemmyapiDatatypesModlogListParams import it.vercruysse.lemmyapi.datatypes.MyUserInfo as LemmyapiDatatypesMyUserInfo import it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset as LemmyapiDatatypesPasswordChangeAfterReset import it.vercruysse.lemmyapi.datatypes.PasswordReset as LemmyapiDatatypesPasswordReset @@ -349,7 +348,6 @@ import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.ModRemovePost as X0DatatypesMo import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.ModRemovePostView as X0DatatypesModRemovePostView import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.ModTransferCommunity as X0DatatypesModTransferCommunity import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.ModTransferCommunityView as X0DatatypesModTransferCommunityView -import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.ModlogListParams as X0DatatypesModlogListParams import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.MyUserInfo as X0DatatypesMyUserInfo import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.PasswordChangeAfterReset as X0DatatypesPasswordChangeAfterReset import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.PasswordReset as X0DatatypesPasswordReset @@ -1258,16 +1256,6 @@ internal class Transformer : MapperGenerator { community = this.toUni(d = d.community, counts = X0DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), ) - override fun toUni(d: X0DatatypesModlogListParams): LemmyapiDatatypesModlogListParams = - LemmyapiDatatypesModlogListParams( - community_id = d.community_id, - mod_person_id = d.mod_person_id, - other_person_id = d.other_person_id, - page = d.page, - limit = d.limit, - hide_modlog_names = d.hide_modlog_names, - ) - override fun toUni(d: X0DatatypesModRemoveComment): LemmyapiDatatypesModRemoveComment = LemmyapiDatatypesModRemoveComment( id = d.id, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/ModlogListParams.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/ModlogListParams.kt deleted file mode 100644 index 0485d210..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/ModlogListParams.kt +++ /dev/null @@ -1,13 +0,0 @@ -package it.vercruysse.lemmyapi.v0.x19.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class ModlogListParams( - val community_id: CommunityId? = null, - val mod_person_id: PersonId? = null, - val other_person_id: PersonId? = null, - val page: Long? = null, - val limit: Long? = null, - val hide_modlog_names: Boolean, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt index 694f8028..39425999 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt @@ -88,7 +88,6 @@ internal interface MapperGenerator { fun toUni(d: ModHideCommunityView): it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibilityView fun toUni(d: ModLockPost): it.vercruysse.lemmyapi.datatypes.ModLockPost fun toUni(d: ModLockPostView): it.vercruysse.lemmyapi.datatypes.ModLockPostView - fun toUni(d: ModlogListParams): it.vercruysse.lemmyapi.datatypes.ModlogListParams fun toUni(d: ModRemoveComment): it.vercruysse.lemmyapi.datatypes.ModRemoveComment fun toUni(d: ModRemoveCommentView): it.vercruysse.lemmyapi.datatypes.ModRemoveCommentView fun toUni(d: ModRemoveCommunity): it.vercruysse.lemmyapi.datatypes.ModRemoveCommunity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt index 72b60380..ca60ba42 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt @@ -161,7 +161,6 @@ import it.vercruysse.lemmyapi.datatypes.ModRemovePost as LemmyapiDatatypesModRem import it.vercruysse.lemmyapi.datatypes.ModRemovePostView as LemmyapiDatatypesModRemovePostView import it.vercruysse.lemmyapi.datatypes.ModTransferCommunity as LemmyapiDatatypesModTransferCommunity import it.vercruysse.lemmyapi.datatypes.ModTransferCommunityView as LemmyapiDatatypesModTransferCommunityView -import it.vercruysse.lemmyapi.datatypes.ModlogListParams as LemmyapiDatatypesModlogListParams import it.vercruysse.lemmyapi.datatypes.MyUserInfo as LemmyapiDatatypesMyUserInfo import it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset as LemmyapiDatatypesPasswordChangeAfterReset import it.vercruysse.lemmyapi.datatypes.PasswordReset as LemmyapiDatatypesPasswordReset @@ -375,7 +374,6 @@ import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.ModRemovePost as X11Datatypes import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.ModRemovePostView as X11DatatypesModRemovePostView import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.ModTransferCommunity as X11DatatypesModTransferCommunity import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.ModTransferCommunityView as X11DatatypesModTransferCommunityView -import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.ModlogListParams as X11DatatypesModlogListParams import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.MyUserInfo as X11DatatypesMyUserInfo import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.PasswordChangeAfterReset as X11DatatypesPasswordChangeAfterReset import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.PasswordReset as X11DatatypesPasswordReset @@ -1292,18 +1290,6 @@ internal class Transformer : MapperGenerator { community = this.toUni(d = d.community, counts = X11DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), ) - override fun toUni(d: X11DatatypesModlogListParams): LemmyapiDatatypesModlogListParams = - LemmyapiDatatypesModlogListParams( - community_id = d.community_id, - mod_person_id = d.mod_person_id, - other_person_id = d.other_person_id, - post_id = d.post_id, - comment_id = d.comment_id, - page = d.page, - limit = d.limit, - hide_modlog_names = d.hide_modlog_names, - ) - override fun toUni(d: X11DatatypesModRemoveComment): LemmyapiDatatypesModRemoveComment = LemmyapiDatatypesModRemoveComment( id = d.id, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/ModlogListParams.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/ModlogListParams.kt deleted file mode 100644 index f76a89e3..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/ModlogListParams.kt +++ /dev/null @@ -1,15 +0,0 @@ -package it.vercruysse.lemmyapi.v0.x19.x11.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class ModlogListParams( - val community_id: CommunityId? = null, - val mod_person_id: PersonId? = null, - val other_person_id: PersonId? = null, - val post_id: PostId? = null, - val comment_id: CommentId? = null, - val page: Long? = null, - val limit: Long? = null, - val hide_modlog_names: Boolean, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt index 7843b00b..84cbf390 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt @@ -108,7 +108,6 @@ internal interface MapperGenerator { fun toUni(d: ModHideCommunityView): it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibilityView fun toUni(d: ModLockPost): it.vercruysse.lemmyapi.datatypes.ModLockPost fun toUni(d: ModLockPostView): it.vercruysse.lemmyapi.datatypes.ModLockPostView - fun toUni(d: ModlogListParams): it.vercruysse.lemmyapi.datatypes.ModlogListParams fun toUni(d: ModRemoveComment): it.vercruysse.lemmyapi.datatypes.ModRemoveComment fun toUni(d: ModRemoveCommentView): it.vercruysse.lemmyapi.datatypes.ModRemoveCommentView fun toUni(d: ModRemoveCommunity): it.vercruysse.lemmyapi.datatypes.ModRemoveCommunity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt index 585012c8..68c824bb 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt @@ -156,7 +156,6 @@ import it.vercruysse.lemmyapi.datatypes.ModRemovePost as LemmyapiDatatypesModRem import it.vercruysse.lemmyapi.datatypes.ModRemovePostView as LemmyapiDatatypesModRemovePostView import it.vercruysse.lemmyapi.datatypes.ModTransferCommunity as LemmyapiDatatypesModTransferCommunity import it.vercruysse.lemmyapi.datatypes.ModTransferCommunityView as LemmyapiDatatypesModTransferCommunityView -import it.vercruysse.lemmyapi.datatypes.ModlogListParams as LemmyapiDatatypesModlogListParams import it.vercruysse.lemmyapi.datatypes.MyUserInfo as LemmyapiDatatypesMyUserInfo import it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset as LemmyapiDatatypesPasswordChangeAfterReset import it.vercruysse.lemmyapi.datatypes.PasswordReset as LemmyapiDatatypesPasswordReset @@ -360,7 +359,6 @@ import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.ModRemovePost as X3DatatypesMo import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.ModRemovePostView as X3DatatypesModRemovePostView import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.ModTransferCommunity as X3DatatypesModTransferCommunity import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.ModTransferCommunityView as X3DatatypesModTransferCommunityView -import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.ModlogListParams as X3DatatypesModlogListParams import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.MyUserInfo as X3DatatypesMyUserInfo import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.PasswordChangeAfterReset as X3DatatypesPasswordChangeAfterReset import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.PasswordReset as X3DatatypesPasswordReset @@ -1289,16 +1287,6 @@ internal class Transformer : MapperGenerator { community = this.toUni(d = d.community, counts = X3DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), ) - override fun toUni(d: X3DatatypesModlogListParams): LemmyapiDatatypesModlogListParams = - LemmyapiDatatypesModlogListParams( - community_id = d.community_id, - mod_person_id = d.mod_person_id, - other_person_id = d.other_person_id, - page = d.page, - limit = d.limit, - hide_modlog_names = d.hide_modlog_names, - ) - override fun toUni(d: X3DatatypesModRemoveComment): LemmyapiDatatypesModRemoveComment = LemmyapiDatatypesModRemoveComment( id = d.id, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/ModlogListParams.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/ModlogListParams.kt deleted file mode 100644 index b44cd8bc..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/ModlogListParams.kt +++ /dev/null @@ -1,13 +0,0 @@ -package it.vercruysse.lemmyapi.v0.x19.x3.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class ModlogListParams( - val community_id: CommunityId? = null, - val mod_person_id: PersonId? = null, - val other_person_id: PersonId? = null, - val page: Long? = null, - val limit: Long? = null, - val hide_modlog_names: Boolean, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt index 5f516dd7..2cca4cb7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt @@ -88,7 +88,6 @@ internal interface MapperGenerator { fun toUni(d: ModHideCommunityView): it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibilityView fun toUni(d: ModLockPost): it.vercruysse.lemmyapi.datatypes.ModLockPost fun toUni(d: ModLockPostView): it.vercruysse.lemmyapi.datatypes.ModLockPostView - fun toUni(d: ModlogListParams): it.vercruysse.lemmyapi.datatypes.ModlogListParams fun toUni(d: ModRemoveComment): it.vercruysse.lemmyapi.datatypes.ModRemoveComment fun toUni(d: ModRemoveCommentView): it.vercruysse.lemmyapi.datatypes.ModRemoveCommentView fun toUni(d: ModRemoveCommunity): it.vercruysse.lemmyapi.datatypes.ModRemoveCommunity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt index 4aff38fc..9f1ab5e2 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt @@ -159,7 +159,6 @@ import it.vercruysse.lemmyapi.datatypes.ModRemovePost as LemmyapiDatatypesModRem import it.vercruysse.lemmyapi.datatypes.ModRemovePostView as LemmyapiDatatypesModRemovePostView import it.vercruysse.lemmyapi.datatypes.ModTransferCommunity as LemmyapiDatatypesModTransferCommunity import it.vercruysse.lemmyapi.datatypes.ModTransferCommunityView as LemmyapiDatatypesModTransferCommunityView -import it.vercruysse.lemmyapi.datatypes.ModlogListParams as LemmyapiDatatypesModlogListParams import it.vercruysse.lemmyapi.datatypes.MyUserInfo as LemmyapiDatatypesMyUserInfo import it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset as LemmyapiDatatypesPasswordChangeAfterReset import it.vercruysse.lemmyapi.datatypes.PasswordReset as LemmyapiDatatypesPasswordReset @@ -371,7 +370,6 @@ import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.ModRemovePost as X4DatatypesMo import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.ModRemovePostView as X4DatatypesModRemovePostView import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.ModTransferCommunity as X4DatatypesModTransferCommunity import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.ModTransferCommunityView as X4DatatypesModTransferCommunityView -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.ModlogListParams as X4DatatypesModlogListParams import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.MyUserInfo as X4DatatypesMyUserInfo import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.PasswordChangeAfterReset as X4DatatypesPasswordChangeAfterReset import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.PasswordReset as X4DatatypesPasswordReset @@ -1282,18 +1280,6 @@ internal class Transformer : MapperGenerator { community = this.toUni(d = d.community, counts = X4DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), ) - override fun toUni(d: X4DatatypesModlogListParams): LemmyapiDatatypesModlogListParams = - LemmyapiDatatypesModlogListParams( - community_id = d.community_id, - mod_person_id = d.mod_person_id, - other_person_id = d.other_person_id, - post_id = d.post_id, - comment_id = d.comment_id, - page = d.page, - limit = d.limit, - hide_modlog_names = d.hide_modlog_names, - ) - override fun toUni(d: X4DatatypesModRemoveComment): LemmyapiDatatypesModRemoveComment = LemmyapiDatatypesModRemoveComment( id = d.id, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/ModlogListParams.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/ModlogListParams.kt deleted file mode 100644 index 8cb88d7f..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/ModlogListParams.kt +++ /dev/null @@ -1,15 +0,0 @@ -package it.vercruysse.lemmyapi.v0.x19.x4.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class ModlogListParams( - val community_id: CommunityId? = null, - val mod_person_id: PersonId? = null, - val other_person_id: PersonId? = null, - val post_id: PostId? = null, - val comment_id: CommentId? = null, - val page: Long? = null, - val limit: Long? = null, - val hide_modlog_names: Boolean, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt index c3f159fe..24a0c270 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt @@ -90,7 +90,6 @@ internal interface MapperGenerator { fun toUni(d: ModHideCommunityView): it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibilityView fun toUni(d: ModLockPost): it.vercruysse.lemmyapi.datatypes.ModLockPost fun toUni(d: ModLockPostView): it.vercruysse.lemmyapi.datatypes.ModLockPostView - fun toUni(d: ModlogListParams): it.vercruysse.lemmyapi.datatypes.ModlogListParams fun toUni(d: ModRemoveComment): it.vercruysse.lemmyapi.datatypes.ModRemoveComment fun toUni(d: ModRemoveCommentView): it.vercruysse.lemmyapi.datatypes.ModRemoveCommentView fun toUni(d: ModRemoveCommunity): it.vercruysse.lemmyapi.datatypes.ModRemoveCommunity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt index 4031bf67..c4046613 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt @@ -161,7 +161,6 @@ import it.vercruysse.lemmyapi.datatypes.ModRemovePost as LemmyapiDatatypesModRem import it.vercruysse.lemmyapi.datatypes.ModRemovePostView as LemmyapiDatatypesModRemovePostView import it.vercruysse.lemmyapi.datatypes.ModTransferCommunity as LemmyapiDatatypesModTransferCommunity import it.vercruysse.lemmyapi.datatypes.ModTransferCommunityView as LemmyapiDatatypesModTransferCommunityView -import it.vercruysse.lemmyapi.datatypes.ModlogListParams as LemmyapiDatatypesModlogListParams import it.vercruysse.lemmyapi.datatypes.MyUserInfo as LemmyapiDatatypesMyUserInfo import it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset as LemmyapiDatatypesPasswordChangeAfterReset import it.vercruysse.lemmyapi.datatypes.PasswordReset as LemmyapiDatatypesPasswordReset @@ -375,7 +374,6 @@ import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.ModRemovePost as X6DatatypesMo import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.ModRemovePostView as X6DatatypesModRemovePostView import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.ModTransferCommunity as X6DatatypesModTransferCommunity import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.ModTransferCommunityView as X6DatatypesModTransferCommunityView -import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.ModlogListParams as X6DatatypesModlogListParams import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.MyUserInfo as X6DatatypesMyUserInfo import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.PasswordChangeAfterReset as X6DatatypesPasswordChangeAfterReset import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.PasswordReset as X6DatatypesPasswordReset @@ -1289,18 +1287,6 @@ internal class Transformer : MapperGenerator { community = this.toUni(d = d.community, counts = X6DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), ) - override fun toUni(d: X6DatatypesModlogListParams): LemmyapiDatatypesModlogListParams = - LemmyapiDatatypesModlogListParams( - community_id = d.community_id, - mod_person_id = d.mod_person_id, - other_person_id = d.other_person_id, - post_id = d.post_id, - comment_id = d.comment_id, - page = d.page, - limit = d.limit, - hide_modlog_names = d.hide_modlog_names, - ) - override fun toUni(d: X6DatatypesModRemoveComment): LemmyapiDatatypesModRemoveComment = LemmyapiDatatypesModRemoveComment( id = d.id, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/ModlogListParams.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/ModlogListParams.kt deleted file mode 100644 index 6a53eab8..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/ModlogListParams.kt +++ /dev/null @@ -1,15 +0,0 @@ -package it.vercruysse.lemmyapi.v0.x19.x6.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class ModlogListParams( - val community_id: CommunityId? = null, - val mod_person_id: PersonId? = null, - val other_person_id: PersonId? = null, - val post_id: PostId? = null, - val comment_id: CommentId? = null, - val page: Long? = null, - val limit: Long? = null, - val hide_modlog_names: Boolean, -) From 2593c986ae6adc75fd5a9ed83eba277a39f47d1d Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Mon, 29 Sep 2025 22:29:18 +0200 Subject: [PATCH 017/110] Fix inbox endpoints --- .../src/main/kotlin/MapperGenerator0x18x5.kt | 42 --- .../src/main/kotlin/MapperGenerator0x19x0.kt | 27 -- .../src/main/kotlin/MapperGenerator0x19x11.kt | 15 -- .../src/main/kotlin/MapperGenerator0x19x3.kt | 27 -- .../src/main/kotlin/MapperGenerator0x19x4.kt | 15 -- .../src/main/kotlin/MapperGenerator0x19x6.kt | 15 -- .../lemmyapi/LemmyApiBaseController.kt | 44 +-- .../lemmyapi/datatypes/CommentReply.kt | 17 -- .../lemmyapi/datatypes/CommentReplyId.kt | 3 - .../datatypes/CommentReplyResponse.kt | 14 - .../lemmyapi/datatypes/CommentReplyView.kt | 34 --- .../lemmyapi/datatypes/GetPersonMentions.kt | 16 -- .../datatypes/GetPersonMentionsResponse.kt | 12 - .../lemmyapi/datatypes/GetPrivateMessages.kt | 15 -- .../lemmyapi/datatypes/GetReplies.kt | 16 -- .../lemmyapi/datatypes/GetRepliesResponse.kt | 12 - .../lemmyapi/datatypes/InboxCombinedView.kt | 43 --- .../lemmyapi/datatypes/ListInbox.kt | 16 -- .../lemmyapi/datatypes/ListInboxResponse.kt | 13 - .../lemmyapi/datatypes/ListNotifications.kt | 8 +- .../datatypes/MarkCommentReplyAsRead.kt | 13 - .../datatypes/MarkNotificationAsRead.kt | 3 + .../MarkPersonCommentMentionAsRead.kt | 12 - .../datatypes/MarkPersonMentionAsRead.kt | 15 -- .../datatypes/MarkPersonPostMentionAsRead.kt | 12 - .../lemmyapi/datatypes/PersonMention.kt | 19 -- .../lemmyapi/datatypes/PersonMentionId.kt | 5 - .../datatypes/PersonMentionResponse.kt | 14 - .../lemmyapi/datatypes/PersonMentionView.kt | 29 -- .../lemmyapi/datatypes/PersonPostMention.kt | 15 -- .../lemmyapi/datatypes/PersonPostMentionId.kt | 3 - .../datatypes/PersonPostMentionView.kt | 27 -- .../datatypes/PrivateMessagesResponse.kt | 14 - .../lemmyapi/dto/CustomDataTypes.kt | 19 +- .../lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt | 94 +++---- .../lemmyapi/v0/x18/x5/MapperGenerator.kt | 22 -- .../lemmyapi/v0/x18/x5/Transformer.kt | 253 +++++++++--------- .../lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt | 97 +++---- .../lemmyapi/v0/x19/x0/MapperGenerator.kt | 17 -- .../lemmyapi/v0/x19/x0/Transformer.kt | 243 +++++++++-------- .../lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt | 97 +++---- .../lemmyapi/v0/x19/x11/MapperGenerator.kt | 15 -- .../lemmyapi/v0/x19/x11/Transformer.kt | 251 ++++++++--------- .../lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt | 97 +++---- .../lemmyapi/v0/x19/x3/MapperGenerator.kt | 17 -- .../lemmyapi/v0/x19/x3/Transformer.kt | 243 +++++++++-------- .../lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt | 97 +++---- .../lemmyapi/v0/x19/x4/MapperGenerator.kt | 15 -- .../lemmyapi/v0/x19/x4/Transformer.kt | 243 +++++++++-------- .../lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt | 101 +++---- .../lemmyapi/v0/x19/x6/MapperGenerator.kt | 15 -- .../lemmyapi/v0/x19/x6/Transformer.kt | 251 ++++++++--------- .../v1/x0/x0/datatypes/ListNotifications.kt | 6 +- .../x0/datatypes/MarkPrivateMessageAsRead.kt | 9 - 54 files changed, 1032 insertions(+), 1755 deletions(-) delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReply.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReplyId.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReplyResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReplyView.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPersonMentions.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPersonMentionsResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPrivateMessages.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetReplies.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetRepliesResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/InboxCombinedView.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListInbox.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListInboxResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkCommentReplyAsRead.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkPersonCommentMentionAsRead.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkPersonMentionAsRead.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkPersonPostMentionAsRead.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonMention.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonMentionId.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonMentionResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonMentionView.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonPostMention.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonPostMentionId.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonPostMentionView.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessagesResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MarkPrivateMessageAsRead.kt diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x18x5.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x18x5.kt index f6cadee3..fe25ad0f 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x18x5.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x18x5.kt @@ -43,15 +43,6 @@ internal interface MapperGenerator0x18x5 { fun toUni(d: LocalSiteRateLimit): it.vercruysse.lemmyapi.datatypes.LocalSiteRateLimit - @Konvert( - mappings = [ - Mapping(target = "banned_from_community", constant = "false"), - Mapping(target = "creator_is_moderator", constant = "false"), - Mapping(target = "creator_is_admin", constant = "false"), - ] - ) - fun toUni(d: CommentReplyView): it.vercruysse.lemmyapi.datatypes.CommentReplyView - @Konvert( mappings = [ Mapping(target = "banned_from_community", constant = "false"), @@ -121,15 +112,6 @@ internal interface MapperGenerator0x18x5 { ) fun toUni(d: LocalSite): it.vercruysse.lemmyapi.datatypes.LocalSite - @Konvert( - mappings = [ - Mapping(target = "banned_from_community", constant = "false"), - Mapping(target = "creator_is_moderator", constant = "false"), - Mapping(target = "creator_is_admin", constant = "false"), - ] - ) - fun toUni(d: PersonMentionView): it.vercruysse.lemmyapi.datatypes.PersonMentionView - fun toUni(@Konverter.Source d: PersonView, is_admin: Boolean = false): it.vercruysse.lemmyapi.datatypes.PersonView @Konvert( @@ -174,8 +156,6 @@ internal interface MapperGenerator0x18x5 { fun toUni(d: BlockPersonResponse): it.vercruysse.lemmyapi.datatypes.BlockPersonResponse fun toUni(d: CaptchaResponse): it.vercruysse.lemmyapi.datatypes.CaptchaResponse fun toUni(d: Comment): it.vercruysse.lemmyapi.datatypes.Comment - fun toUni(d: CommentReply): it.vercruysse.lemmyapi.datatypes.CommentReply - fun toUni(d: CommentReplyResponse): it.vercruysse.lemmyapi.datatypes.CommentReplyResponse fun toUni(d: CommentReport): it.vercruysse.lemmyapi.datatypes.CommentReport fun toUni(d: CommentReportResponse): it.vercruysse.lemmyapi.datatypes.CommentReportResponse @@ -198,10 +178,8 @@ internal interface MapperGenerator0x18x5 { fun toUni(d: GetFederatedInstancesResponse): it.vercruysse.lemmyapi.datatypes.GetFederatedInstancesResponse fun toUni(d: GetModlogResponse): it.vercruysse.lemmyapi.datatypes.GetModlogResponse fun toUni(d: GetPersonDetailsResponse): it.vercruysse.lemmyapi.datatypes.GetPersonDetailsResponse - fun toUni(d: GetPersonMentionsResponse): it.vercruysse.lemmyapi.datatypes.GetPersonMentionsResponse fun toUni(d: GetPostResponse): it.vercruysse.lemmyapi.datatypes.GetPostResponse fun toUni(d: GetPostsResponse): it.vercruysse.lemmyapi.datatypes.GetPostsResponse - fun toUni(d: GetRepliesResponse): it.vercruysse.lemmyapi.datatypes.GetRepliesResponse fun toUni(d: GetReportCountResponse): it.vercruysse.lemmyapi.datatypes.GetReportCountResponse fun toUni(d: GetSiteMetadataResponse): it.vercruysse.lemmyapi.datatypes.GetSiteMetadataResponse @@ -235,8 +213,6 @@ internal interface MapperGenerator0x18x5 { fun toUni(d: ModTransferCommunity): it.vercruysse.lemmyapi.datatypes.ModTransferCommunity fun toUni(d: ModTransferCommunityView): it.vercruysse.lemmyapi.datatypes.ModTransferCommunityView fun toUni(d: Person): it.vercruysse.lemmyapi.datatypes.Person - fun toUni(d: PersonMention): it.vercruysse.lemmyapi.datatypes.PersonMention - fun toUni(d: PersonMentionResponse): it.vercruysse.lemmyapi.datatypes.PersonMentionResponse fun toUni(d: Post): it.vercruysse.lemmyapi.datatypes.Post @@ -250,7 +226,6 @@ internal interface MapperGenerator0x18x5 { fun toUni(d: PrivateMessageReportResponse): it.vercruysse.lemmyapi.datatypes.PrivateMessageReportResponse fun toUni(d: PrivateMessageReportView): it.vercruysse.lemmyapi.datatypes.PrivateMessageReportView fun toUni(d: PrivateMessageResponse): it.vercruysse.lemmyapi.datatypes.PrivateMessageResponse - fun toUni(d: PrivateMessagesResponse): it.vercruysse.lemmyapi.datatypes.PrivateMessagesResponse fun toUni(d: PrivateMessageView): it.vercruysse.lemmyapi.datatypes.PrivateMessageView fun toUni(d: RegistrationApplication): it.vercruysse.lemmyapi.datatypes.RegistrationApplication fun toUni(d: RegistrationApplicationResponse): it.vercruysse.lemmyapi.datatypes.RegistrationApplicationResponse @@ -380,21 +355,12 @@ internal interface MapperGenerator0x18x5 { @Konvert(mappings = [Mapping(target = "auth", constant = "auth")]) fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPersonDetails): GetPersonDetails - @Konvert(mappings = [Mapping(target = "auth", constant = "auth")]) - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPersonMentions): GetPersonMentions - @Konvert(mappings = [Mapping(target = "auth", constant = "auth")]) fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPost): GetPost @Konvert(mappings = [Mapping(target = "auth", constant = "auth")]) fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPosts): GetPosts - @Konvert(mappings = [Mapping(target = "auth", constant = "auth")]) - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPrivateMessages): GetPrivateMessages - - @Konvert(mappings = [Mapping(target = "auth", constant = "auth")]) - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetReplies): GetReplies - @Konvert(mappings = [Mapping(target = "auth", constant = "auth")]) fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetReportCount): GetReportCount fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetSiteMetadata): GetSiteMetadata @@ -412,14 +378,6 @@ internal interface MapperGenerator0x18x5 { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.LockPost): LockPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.Login): Login - @Konvert(mappings = [Mapping(target = "auth", constant = "auth")]) - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkCommentReplyAsRead): MarkCommentReplyAsRead - - @Konvert(mappings = [Mapping(target = "auth", constant = "auth")]) - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkPersonMentionAsRead): MarkPersonMentionAsRead - - @Konvert(mappings = [Mapping(target = "auth", constant = "auth")]) - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkPrivateMessageAsRead): MarkPrivateMessageAsRead fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset): PasswordChangeAfterReset fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordReset): PasswordReset diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x0.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x0.kt index 68750841..d73d2005 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x0.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x0.kt @@ -13,13 +13,6 @@ import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.* //) internal interface MapperGenerator0x19x0 { - @Konvert( - mappings = [ - Mapping(target = "banned_from_community", constant = "false"), - ], - ) - fun toUni(d: CommentReplyView): it.vercruysse.lemmyapi.datatypes.CommentReplyView - @Konvert( mappings = [ Mapping(target = "creator_is_moderator", constant = "false"), @@ -76,13 +69,6 @@ internal interface MapperGenerator0x19x0 { ) fun toUni(d: LocalSite): it.vercruysse.lemmyapi.datatypes.LocalSite - @Konvert( - mappings = [ - Mapping(target = "banned_from_community", constant = "false"), - ] - ) - fun toUni(d: PersonMentionView): it.vercruysse.lemmyapi.datatypes.PersonMentionView - @Konvert( mappings = [ Mapping(target = "creator_is_moderator", constant = "false"), @@ -123,8 +109,6 @@ internal interface MapperGenerator0x19x0 { fun toUni(d: BlockPersonResponse): it.vercruysse.lemmyapi.datatypes.BlockPersonResponse fun toUni(d: CaptchaResponse): it.vercruysse.lemmyapi.datatypes.CaptchaResponse fun toUni(d: Comment): it.vercruysse.lemmyapi.datatypes.Comment - fun toUni(d: CommentReply): it.vercruysse.lemmyapi.datatypes.CommentReply - fun toUni(d: CommentReplyResponse): it.vercruysse.lemmyapi.datatypes.CommentReplyResponse fun toUni(d: CommentReport): it.vercruysse.lemmyapi.datatypes.CommentReport fun toUni(d: CommentReportResponse): it.vercruysse.lemmyapi.datatypes.CommentReportResponse @@ -149,10 +133,8 @@ internal interface MapperGenerator0x19x0 { fun toUni(d: GetFederatedInstancesResponse): it.vercruysse.lemmyapi.datatypes.GetFederatedInstancesResponse fun toUni(d: GetModlogResponse): it.vercruysse.lemmyapi.datatypes.GetModlogResponse fun toUni(d: GetPersonDetailsResponse): it.vercruysse.lemmyapi.datatypes.GetPersonDetailsResponse - fun toUni(d: GetPersonMentionsResponse): it.vercruysse.lemmyapi.datatypes.GetPersonMentionsResponse fun toUni(d: GetPostResponse): it.vercruysse.lemmyapi.datatypes.GetPostResponse fun toUni(d: GetPostsResponse): it.vercruysse.lemmyapi.datatypes.GetPostsResponse - fun toUni(d: GetRepliesResponse): it.vercruysse.lemmyapi.datatypes.GetRepliesResponse fun toUni(d: GetReportCountResponse): it.vercruysse.lemmyapi.datatypes.GetReportCountResponse fun toUni(d: GetSiteMetadataResponse): it.vercruysse.lemmyapi.datatypes.GetSiteMetadataResponse @@ -191,8 +173,6 @@ internal interface MapperGenerator0x19x0 { fun toUni(d: ModTransferCommunityView): it.vercruysse.lemmyapi.datatypes.ModTransferCommunityView fun toUni(d: MyUserInfo): it.vercruysse.lemmyapi.datatypes.MyUserInfo fun toUni(d: Person): it.vercruysse.lemmyapi.datatypes.Person - fun toUni(d: PersonMention): it.vercruysse.lemmyapi.datatypes.PersonMention - fun toUni(d: PersonMentionResponse): it.vercruysse.lemmyapi.datatypes.PersonMentionResponse fun toUni(d: PersonView): it.vercruysse.lemmyapi.datatypes.PersonView fun toUni(d: Post): it.vercruysse.lemmyapi.datatypes.Post @@ -207,7 +187,6 @@ internal interface MapperGenerator0x19x0 { fun toUni(d: PrivateMessageReportResponse): it.vercruysse.lemmyapi.datatypes.PrivateMessageReportResponse fun toUni(d: PrivateMessageReportView): it.vercruysse.lemmyapi.datatypes.PrivateMessageReportView fun toUni(d: PrivateMessageResponse): it.vercruysse.lemmyapi.datatypes.PrivateMessageResponse - fun toUni(d: PrivateMessagesResponse): it.vercruysse.lemmyapi.datatypes.PrivateMessagesResponse fun toUni(d: PrivateMessageView): it.vercruysse.lemmyapi.datatypes.PrivateMessageView fun toUni(d: ReadableFederationState): it.vercruysse.lemmyapi.datatypes.ReadableFederationState fun toUni(d: RegistrationApplication): it.vercruysse.lemmyapi.datatypes.RegistrationApplication @@ -262,11 +241,8 @@ internal interface MapperGenerator0x19x0 { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetCommunity): GetCommunity fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetModlog): GetModlog fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPersonDetails): GetPersonDetails - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPersonMentions): GetPersonMentions fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPost): GetPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPosts): GetPosts - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPrivateMessages): GetPrivateMessages - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetReplies): GetReplies fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetReportCount): GetReportCount fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetSiteMetadata): GetSiteMetadata fun fromUni(d: it.vercruysse.lemmyapi.datatypes.HideCommunity): HideCommunity @@ -274,10 +250,7 @@ internal interface MapperGenerator0x19x0 { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListRegistrationApplications): ListRegistrationApplications fun fromUni(d: it.vercruysse.lemmyapi.datatypes.LockPost): LockPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.Login): Login - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkCommentReplyAsRead): MarkCommentReplyAsRead - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkPersonMentionAsRead): MarkPersonMentionAsRead fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkPostAsRead): MarkPostAsRead - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkPrivateMessageAsRead): MarkPrivateMessageAsRead fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset): PasswordChangeAfterReset fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordReset): PasswordReset fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgeComment): PurgeComment diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt index 19a5d378..c917a267 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt @@ -28,9 +28,6 @@ internal interface MapperGenerator0x19x11 { fun toUni(d: BlockPersonResponse): it.vercruysse.lemmyapi.datatypes.BlockPersonResponse fun toUni(d: CaptchaResponse): it.vercruysse.lemmyapi.datatypes.CaptchaResponse fun toUni(d: Comment): it.vercruysse.lemmyapi.datatypes.Comment - fun toUni(d: CommentReply): it.vercruysse.lemmyapi.datatypes.CommentReply - fun toUni(d: CommentReplyResponse): it.vercruysse.lemmyapi.datatypes.CommentReplyResponse - fun toUni(d: CommentReplyView): it.vercruysse.lemmyapi.datatypes.CommentReplyView fun toUni(d: CommentReport): it.vercruysse.lemmyapi.datatypes.CommentReport fun toUni(d: CommentReportResponse): it.vercruysse.lemmyapi.datatypes.CommentReportResponse fun toUni(d: CommentReportView): it.vercruysse.lemmyapi.datatypes.CommentReportView @@ -53,10 +50,8 @@ internal interface MapperGenerator0x19x11 { fun toUni(d: GetFederatedInstancesResponse): it.vercruysse.lemmyapi.datatypes.GetFederatedInstancesResponse fun toUni(d: GetModlogResponse): it.vercruysse.lemmyapi.datatypes.GetModlogResponse fun toUni(d: GetPersonDetailsResponse): it.vercruysse.lemmyapi.datatypes.GetPersonDetailsResponse - fun toUni(d: GetPersonMentionsResponse): it.vercruysse.lemmyapi.datatypes.GetPersonMentionsResponse fun toUni(d: GetPostResponse): it.vercruysse.lemmyapi.datatypes.GetPostResponse fun toUni(d: GetPostsResponse): it.vercruysse.lemmyapi.datatypes.GetPostsResponse - fun toUni(d: GetRepliesResponse): it.vercruysse.lemmyapi.datatypes.GetRepliesResponse fun toUni(d: GetReportCountResponse): it.vercruysse.lemmyapi.datatypes.GetReportCountResponse fun toUni(d: GetSiteMetadataResponse): it.vercruysse.lemmyapi.datatypes.GetSiteMetadataResponse fun toUni(d: GetSiteResponse): it.vercruysse.lemmyapi.datatypes.GetSiteResponse @@ -103,9 +98,6 @@ internal interface MapperGenerator0x19x11 { fun toUni(d: ModTransferCommunityView): it.vercruysse.lemmyapi.datatypes.ModTransferCommunityView fun toUni(d: MyUserInfo): it.vercruysse.lemmyapi.datatypes.MyUserInfo fun toUni(d: Person): it.vercruysse.lemmyapi.datatypes.Person - fun toUni(d: PersonMention): it.vercruysse.lemmyapi.datatypes.PersonMention - fun toUni(d: PersonMentionResponse): it.vercruysse.lemmyapi.datatypes.PersonMentionResponse - fun toUni(d: PersonMentionView): it.vercruysse.lemmyapi.datatypes.PersonMentionView fun toUni(d: PersonView): it.vercruysse.lemmyapi.datatypes.PersonView fun toUni(d: Post): it.vercruysse.lemmyapi.datatypes.Post fun toUni(d: PostReport): it.vercruysse.lemmyapi.datatypes.PostReport @@ -118,7 +110,6 @@ internal interface MapperGenerator0x19x11 { fun toUni(d: PrivateMessageReportResponse): it.vercruysse.lemmyapi.datatypes.PrivateMessageReportResponse fun toUni(d: PrivateMessageReportView): it.vercruysse.lemmyapi.datatypes.PrivateMessageReportView fun toUni(d: PrivateMessageResponse): it.vercruysse.lemmyapi.datatypes.PrivateMessageResponse - fun toUni(d: PrivateMessagesResponse): it.vercruysse.lemmyapi.datatypes.PrivateMessagesResponse fun toUni(d: PrivateMessageView): it.vercruysse.lemmyapi.datatypes.PrivateMessageView fun toUni(d: ReadableFederationState): it.vercruysse.lemmyapi.datatypes.ReadableFederationState fun toUni(d: RegistrationApplication): it.vercruysse.lemmyapi.datatypes.RegistrationApplication @@ -174,12 +165,9 @@ internal interface MapperGenerator0x19x11 { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetCommunity): GetCommunity fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetModlog): GetModlog fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPersonDetails): GetPersonDetails - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPersonMentions): GetPersonMentions fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPost): GetPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPosts): GetPosts - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPrivateMessages): GetPrivateMessages fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetRegistrationApplication): GetRegistrationApplication - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetReplies): GetReplies fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetReportCount): GetReportCount fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetSiteMetadata): GetSiteMetadata fun fromUni(d: it.vercruysse.lemmyapi.datatypes.HideCommunity): HideCommunity @@ -191,10 +179,7 @@ internal interface MapperGenerator0x19x11 { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListRegistrationApplications): ListRegistrationApplications fun fromUni(d: it.vercruysse.lemmyapi.datatypes.LockPost): LockPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.Login): Login - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkCommentReplyAsRead): MarkCommentReplyAsRead - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkPersonMentionAsRead): MarkPersonMentionAsRead fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkPostAsRead): MarkPostAsRead - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkPrivateMessageAsRead): MarkPrivateMessageAsRead fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset): PasswordChangeAfterReset fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordReset): PasswordReset fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgeComment): PurgeComment diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x3.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x3.kt index 46998639..2cca5686 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x3.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x3.kt @@ -13,13 +13,6 @@ import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.* //) internal interface MapperGenerator0x19x3 { - @Konvert( - mappings = [ - Mapping(target = "banned_from_community", constant = "false"), - ], - ) - fun toUni(d: CommentReplyView): it.vercruysse.lemmyapi.datatypes.CommentReplyView - @Konvert( mappings = [ Mapping(target = "creator_is_moderator", constant = "false"), @@ -69,13 +62,6 @@ internal interface MapperGenerator0x19x3 { ) fun toUni(d: LocalSite): it.vercruysse.lemmyapi.datatypes.LocalSite - @Konvert( - mappings = [ - Mapping(target = "banned_from_community", constant = "false"), - ] - ) - fun toUni(d: PersonMentionView): it.vercruysse.lemmyapi.datatypes.PersonMentionView - @Konvert( mappings = [ Mapping(target = "creator_is_moderator", constant = "false"), @@ -123,8 +109,6 @@ internal interface MapperGenerator0x19x3 { fun toUni(d: BlockPersonResponse): it.vercruysse.lemmyapi.datatypes.BlockPersonResponse fun toUni(d: CaptchaResponse): it.vercruysse.lemmyapi.datatypes.CaptchaResponse fun toUni(d: Comment): it.vercruysse.lemmyapi.datatypes.Comment - fun toUni(d: CommentReply): it.vercruysse.lemmyapi.datatypes.CommentReply - fun toUni(d: CommentReplyResponse): it.vercruysse.lemmyapi.datatypes.CommentReplyResponse fun toUni(d: CommentReport): it.vercruysse.lemmyapi.datatypes.CommentReport fun toUni(d: CommentReportResponse): it.vercruysse.lemmyapi.datatypes.CommentReportResponse @@ -149,10 +133,8 @@ internal interface MapperGenerator0x19x3 { fun toUni(d: GetFederatedInstancesResponse): it.vercruysse.lemmyapi.datatypes.GetFederatedInstancesResponse fun toUni(d: GetModlogResponse): it.vercruysse.lemmyapi.datatypes.GetModlogResponse fun toUni(d: GetPersonDetailsResponse): it.vercruysse.lemmyapi.datatypes.GetPersonDetailsResponse - fun toUni(d: GetPersonMentionsResponse): it.vercruysse.lemmyapi.datatypes.GetPersonMentionsResponse fun toUni(d: GetPostResponse): it.vercruysse.lemmyapi.datatypes.GetPostResponse fun toUni(d: GetPostsResponse): it.vercruysse.lemmyapi.datatypes.GetPostsResponse - fun toUni(d: GetRepliesResponse): it.vercruysse.lemmyapi.datatypes.GetRepliesResponse fun toUni(d: GetReportCountResponse): it.vercruysse.lemmyapi.datatypes.GetReportCountResponse fun toUni(d: GetSiteMetadataResponse): it.vercruysse.lemmyapi.datatypes.GetSiteMetadataResponse @@ -193,8 +175,6 @@ internal interface MapperGenerator0x19x3 { fun toUni(d: ModTransferCommunityView): it.vercruysse.lemmyapi.datatypes.ModTransferCommunityView fun toUni(d: MyUserInfo): it.vercruysse.lemmyapi.datatypes.MyUserInfo fun toUni(d: Person): it.vercruysse.lemmyapi.datatypes.Person - fun toUni(d: PersonMention): it.vercruysse.lemmyapi.datatypes.PersonMention - fun toUni(d: PersonMentionResponse): it.vercruysse.lemmyapi.datatypes.PersonMentionResponse fun toUni(d: PersonView): it.vercruysse.lemmyapi.datatypes.PersonView fun toUni(d: Post): it.vercruysse.lemmyapi.datatypes.Post @@ -208,7 +188,6 @@ internal interface MapperGenerator0x19x3 { fun toUni(d: PrivateMessageReportResponse): it.vercruysse.lemmyapi.datatypes.PrivateMessageReportResponse fun toUni(d: PrivateMessageReportView): it.vercruysse.lemmyapi.datatypes.PrivateMessageReportView fun toUni(d: PrivateMessageResponse): it.vercruysse.lemmyapi.datatypes.PrivateMessageResponse - fun toUni(d: PrivateMessagesResponse): it.vercruysse.lemmyapi.datatypes.PrivateMessagesResponse fun toUni(d: PrivateMessageView): it.vercruysse.lemmyapi.datatypes.PrivateMessageView fun toUni(d: ReadableFederationState): it.vercruysse.lemmyapi.datatypes.ReadableFederationState fun toUni(d: RegistrationApplication): it.vercruysse.lemmyapi.datatypes.RegistrationApplication @@ -263,11 +242,8 @@ internal interface MapperGenerator0x19x3 { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetCommunity): GetCommunity fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetModlog): GetModlog fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPersonDetails): GetPersonDetails - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPersonMentions): GetPersonMentions fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPost): GetPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPosts): GetPosts - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPrivateMessages): GetPrivateMessages - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetReplies): GetReplies fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetReportCount): GetReportCount fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetSiteMetadata): GetSiteMetadata fun fromUni(d: it.vercruysse.lemmyapi.datatypes.HideCommunity): HideCommunity @@ -277,10 +253,7 @@ internal interface MapperGenerator0x19x3 { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListRegistrationApplications): ListRegistrationApplications fun fromUni(d: it.vercruysse.lemmyapi.datatypes.LockPost): LockPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.Login): Login - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkCommentReplyAsRead): MarkCommentReplyAsRead - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkPersonMentionAsRead): MarkPersonMentionAsRead fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkPostAsRead): MarkPostAsRead - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkPrivateMessageAsRead): MarkPrivateMessageAsRead fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset): PasswordChangeAfterReset fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordReset): PasswordReset fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgeComment): PurgeComment diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt index 1b817d87..b1b0c820 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt @@ -28,9 +28,6 @@ internal interface MapperGenerator0x19x4 { fun toUni(d: BlockPersonResponse): it.vercruysse.lemmyapi.datatypes.BlockPersonResponse fun toUni(d: CaptchaResponse): it.vercruysse.lemmyapi.datatypes.CaptchaResponse fun toUni(d: Comment): it.vercruysse.lemmyapi.datatypes.Comment - fun toUni(d: CommentReply): it.vercruysse.lemmyapi.datatypes.CommentReply - fun toUni(d: CommentReplyResponse): it.vercruysse.lemmyapi.datatypes.CommentReplyResponse - fun toUni(d: CommentReplyView): it.vercruysse.lemmyapi.datatypes.CommentReplyView fun toUni(d: CommentReport): it.vercruysse.lemmyapi.datatypes.CommentReport fun toUni(d: CommentReportResponse): it.vercruysse.lemmyapi.datatypes.CommentReportResponse fun toUni(d: CommentReportView): it.vercruysse.lemmyapi.datatypes.CommentReportView @@ -53,10 +50,8 @@ internal interface MapperGenerator0x19x4 { fun toUni(d: GetFederatedInstancesResponse): it.vercruysse.lemmyapi.datatypes.GetFederatedInstancesResponse fun toUni(d: GetModlogResponse): it.vercruysse.lemmyapi.datatypes.GetModlogResponse fun toUni(d: GetPersonDetailsResponse): it.vercruysse.lemmyapi.datatypes.GetPersonDetailsResponse - fun toUni(d: GetPersonMentionsResponse): it.vercruysse.lemmyapi.datatypes.GetPersonMentionsResponse fun toUni(d: GetPostResponse): it.vercruysse.lemmyapi.datatypes.GetPostResponse fun toUni(d: GetPostsResponse): it.vercruysse.lemmyapi.datatypes.GetPostsResponse - fun toUni(d: GetRepliesResponse): it.vercruysse.lemmyapi.datatypes.GetRepliesResponse fun toUni(d: GetReportCountResponse): it.vercruysse.lemmyapi.datatypes.GetReportCountResponse fun toUni(d: GetSiteMetadataResponse): it.vercruysse.lemmyapi.datatypes.GetSiteMetadataResponse fun toUni(d: GetSiteResponse): it.vercruysse.lemmyapi.datatypes.GetSiteResponse @@ -102,9 +97,6 @@ internal interface MapperGenerator0x19x4 { fun toUni(d: ModTransferCommunityView): it.vercruysse.lemmyapi.datatypes.ModTransferCommunityView fun toUni(d: MyUserInfo): it.vercruysse.lemmyapi.datatypes.MyUserInfo fun toUni(d: Person): it.vercruysse.lemmyapi.datatypes.Person - fun toUni(d: PersonMention): it.vercruysse.lemmyapi.datatypes.PersonMention - fun toUni(d: PersonMentionResponse): it.vercruysse.lemmyapi.datatypes.PersonMentionResponse - fun toUni(d: PersonMentionView): it.vercruysse.lemmyapi.datatypes.PersonMentionView fun toUni(d: PersonView): it.vercruysse.lemmyapi.datatypes.PersonView fun toUni(d: Post): it.vercruysse.lemmyapi.datatypes.Post fun toUni(d: PostReport): it.vercruysse.lemmyapi.datatypes.PostReport @@ -117,7 +109,6 @@ internal interface MapperGenerator0x19x4 { fun toUni(d: PrivateMessageReportResponse): it.vercruysse.lemmyapi.datatypes.PrivateMessageReportResponse fun toUni(d: PrivateMessageReportView): it.vercruysse.lemmyapi.datatypes.PrivateMessageReportView fun toUni(d: PrivateMessageResponse): it.vercruysse.lemmyapi.datatypes.PrivateMessageResponse - fun toUni(d: PrivateMessagesResponse): it.vercruysse.lemmyapi.datatypes.PrivateMessagesResponse fun toUni(d: PrivateMessageView): it.vercruysse.lemmyapi.datatypes.PrivateMessageView fun toUni(d: ReadableFederationState): it.vercruysse.lemmyapi.datatypes.ReadableFederationState fun toUni(d: RegistrationApplication): it.vercruysse.lemmyapi.datatypes.RegistrationApplication @@ -173,11 +164,8 @@ internal interface MapperGenerator0x19x4 { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetCommunity): GetCommunity fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetModlog): GetModlog fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPersonDetails): GetPersonDetails - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPersonMentions): GetPersonMentions fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPost): GetPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPosts): GetPosts - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPrivateMessages): GetPrivateMessages - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetReplies): GetReplies fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetReportCount): GetReportCount fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetSiteMetadata): GetSiteMetadata fun fromUni(d: it.vercruysse.lemmyapi.datatypes.HideCommunity): HideCommunity @@ -189,10 +177,7 @@ internal interface MapperGenerator0x19x4 { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListRegistrationApplications): ListRegistrationApplications fun fromUni(d: it.vercruysse.lemmyapi.datatypes.LockPost): LockPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.Login): Login - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkCommentReplyAsRead): MarkCommentReplyAsRead - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkPersonMentionAsRead): MarkPersonMentionAsRead fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkPostAsRead): MarkPostAsRead - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkPrivateMessageAsRead): MarkPrivateMessageAsRead fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset): PasswordChangeAfterReset fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordReset): PasswordReset fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgeComment): PurgeComment diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt index af1625a7..1f5e3f95 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt @@ -28,9 +28,6 @@ internal interface MapperGenerator0x19x6 { fun toUni(d: BlockPersonResponse): it.vercruysse.lemmyapi.datatypes.BlockPersonResponse fun toUni(d: CaptchaResponse): it.vercruysse.lemmyapi.datatypes.CaptchaResponse fun toUni(d: Comment): it.vercruysse.lemmyapi.datatypes.Comment - fun toUni(d: CommentReply): it.vercruysse.lemmyapi.datatypes.CommentReply - fun toUni(d: CommentReplyResponse): it.vercruysse.lemmyapi.datatypes.CommentReplyResponse - fun toUni(d: CommentReplyView): it.vercruysse.lemmyapi.datatypes.CommentReplyView fun toUni(d: CommentReport): it.vercruysse.lemmyapi.datatypes.CommentReport fun toUni(d: CommentReportResponse): it.vercruysse.lemmyapi.datatypes.CommentReportResponse fun toUni(d: CommentReportView): it.vercruysse.lemmyapi.datatypes.CommentReportView @@ -53,10 +50,8 @@ internal interface MapperGenerator0x19x6 { fun toUni(d: GetFederatedInstancesResponse): it.vercruysse.lemmyapi.datatypes.GetFederatedInstancesResponse fun toUni(d: GetModlogResponse): it.vercruysse.lemmyapi.datatypes.GetModlogResponse fun toUni(d: GetPersonDetailsResponse): it.vercruysse.lemmyapi.datatypes.GetPersonDetailsResponse - fun toUni(d: GetPersonMentionsResponse): it.vercruysse.lemmyapi.datatypes.GetPersonMentionsResponse fun toUni(d: GetPostResponse): it.vercruysse.lemmyapi.datatypes.GetPostResponse fun toUni(d: GetPostsResponse): it.vercruysse.lemmyapi.datatypes.GetPostsResponse - fun toUni(d: GetRepliesResponse): it.vercruysse.lemmyapi.datatypes.GetRepliesResponse fun toUni(d: GetReportCountResponse): it.vercruysse.lemmyapi.datatypes.GetReportCountResponse fun toUni(d: GetSiteMetadataResponse): it.vercruysse.lemmyapi.datatypes.GetSiteMetadataResponse fun toUni(d: GetSiteResponse): it.vercruysse.lemmyapi.datatypes.GetSiteResponse @@ -103,9 +98,6 @@ internal interface MapperGenerator0x19x6 { fun toUni(d: ModTransferCommunityView): it.vercruysse.lemmyapi.datatypes.ModTransferCommunityView fun toUni(d: MyUserInfo): it.vercruysse.lemmyapi.datatypes.MyUserInfo fun toUni(d: Person): it.vercruysse.lemmyapi.datatypes.Person - fun toUni(d: PersonMention): it.vercruysse.lemmyapi.datatypes.PersonMention - fun toUni(d: PersonMentionResponse): it.vercruysse.lemmyapi.datatypes.PersonMentionResponse - fun toUni(d: PersonMentionView): it.vercruysse.lemmyapi.datatypes.PersonMentionView fun toUni(d: PersonView): it.vercruysse.lemmyapi.datatypes.PersonView fun toUni(d: Post): it.vercruysse.lemmyapi.datatypes.Post fun toUni(d: PostReport): it.vercruysse.lemmyapi.datatypes.PostReport @@ -118,7 +110,6 @@ internal interface MapperGenerator0x19x6 { fun toUni(d: PrivateMessageReportResponse): it.vercruysse.lemmyapi.datatypes.PrivateMessageReportResponse fun toUni(d: PrivateMessageReportView): it.vercruysse.lemmyapi.datatypes.PrivateMessageReportView fun toUni(d: PrivateMessageResponse): it.vercruysse.lemmyapi.datatypes.PrivateMessageResponse - fun toUni(d: PrivateMessagesResponse): it.vercruysse.lemmyapi.datatypes.PrivateMessagesResponse fun toUni(d: PrivateMessageView): it.vercruysse.lemmyapi.datatypes.PrivateMessageView fun toUni(d: ReadableFederationState): it.vercruysse.lemmyapi.datatypes.ReadableFederationState fun toUni(d: RegistrationApplication): it.vercruysse.lemmyapi.datatypes.RegistrationApplication @@ -174,12 +165,9 @@ internal interface MapperGenerator0x19x6 { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetCommunity): GetCommunity fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetModlog): GetModlog fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPersonDetails): GetPersonDetails - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPersonMentions): GetPersonMentions fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPost): GetPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPosts): GetPosts - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPrivateMessages): GetPrivateMessages fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetRegistrationApplication): GetRegistrationApplication - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetReplies): GetReplies fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetReportCount): GetReportCount fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetSiteMetadata): GetSiteMetadata fun fromUni(d: it.vercruysse.lemmyapi.datatypes.HideCommunity): HideCommunity @@ -191,10 +179,7 @@ internal interface MapperGenerator0x19x6 { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListRegistrationApplications): ListRegistrationApplications fun fromUni(d: it.vercruysse.lemmyapi.datatypes.LockPost): LockPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.Login): Login - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkCommentReplyAsRead): MarkCommentReplyAsRead - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkPersonMentionAsRead): MarkPersonMentionAsRead fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkPostAsRead): MarkPostAsRead - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkPrivateMessageAsRead): MarkPrivateMessageAsRead fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset): PasswordChangeAfterReset fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordReset): PasswordReset fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgeComment): PurgeComment diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt index e1c2b87e..52895910 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt @@ -291,13 +291,6 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version */ abstract suspend fun removeComment(form: RemoveComment): Result - /** - * Mark a comment as read. - * - * @POST("comment/mark_as_read") - */ - abstract suspend fun markCommentReplyAsRead(form: MarkCommentReplyAsRead): Result - /** * Distinguishes a comment (speak as moderator) * @@ -347,13 +340,6 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version */ abstract suspend fun createPrivateMessage(form: CreatePrivateMessage): Result - /** - * Get / fetch private messages. - * - * @GET("private_message/list") - */ - abstract suspend fun getPrivateMessages(form: GetPrivateMessages): Result - /** * Delete a private message. * @@ -361,13 +347,6 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version */ abstract suspend fun deletePrivateMessage(form: DeletePrivateMessage): Result - /** - * Mark a private message as read. - * - * @POST("private_message/mark_as_read") - */ - abstract suspend fun markPrivateMessageAsRead(form: MarkPrivateMessageAsRead): Result - /** * Create a report for a private message. * @@ -404,25 +383,14 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version abstract suspend fun getCaptcha(): Result /** - * Get mentions for your user. - * - * @GET("user/mention") + * Mark a notification as read */ - abstract suspend fun getPersonMentions(form: GetPersonMentions): Result + abstract suspend fun markNotificationAsRead(form: MarkNotificationAsRead): Result /** - * Mark a person mention as read. - * - * @POST("user/mention/mark_as_read") - */ - abstract suspend fun markPersonMentionAsRead(form: MarkPersonMentionAsRead): Result - - /** - * Get comment replies. - * - * @GET("user/replies") + * List notifications. */ - abstract suspend fun getReplies(form: GetReplies): Result + abstract suspend fun listNotifications(form: ListNotifications): Result /** * Ban a person from your site. @@ -474,11 +442,11 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version abstract suspend fun changePasswordAfterReset(form: PasswordChangeAfterReset): Result /** - * Mark all replies as read. + * Mark all notifications as read. * * @POST("user/mark_all_as_read") */ - abstract suspend fun markAllAsRead(): Result + abstract suspend fun markAllNotificationsAsRead(): Result /** * Save your user settings. diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReply.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReply.kt deleted file mode 100644 index c52c983a..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReply.kt +++ /dev/null @@ -1,17 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.Identity -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -@CommonParcelize -@Serializable -data class CommentReply( - override val id: CommentReplyId, - val recipient_id: PersonId, - val comment_id: CommentId, - val read: Boolean, - val published: String, -) : DatatypeRoot, Identity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReplyId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReplyId.kt deleted file mode 100644 index 1cc6243f..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReplyId.kt +++ /dev/null @@ -1,3 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -typealias CommentReplyId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReplyResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReplyResponse.kt deleted file mode 100644 index 55d80a5b..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReplyResponse.kt +++ /dev/null @@ -1,14 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -// TODO: Inbox endpoints merged - -@CommonParcelize -@Serializable -data class CommentReplyResponse( - val comment_reply_view: CommentReplyView, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReplyView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReplyView.kt deleted file mode 100644 index 82e2ebb1..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReplyView.kt +++ /dev/null @@ -1,34 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.Identity -import it.vercruysse.lemmyapi.dto.SubscribedType -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -// TODO: changed look into it -// IS REMOVED - -@CommonParcelize -@Serializable -data class CommentReplyView( - val comment_reply: CommentReply, - val comment: Comment, - val creator: Person, - val post: Post, - val community: Community, - val recipient: Person, -// val counts: CommentAggregates, - val creator_banned_from_community: Boolean, - val banned_from_community: Boolean, - val creator_is_moderator: Boolean, - val creator_is_admin: Boolean, - val subscribed: SubscribedType /* "Subscribed" | "NotSubscribed" | "Pending" */, - val saved: Boolean, - val creator_blocked: Boolean, - val my_vote: Int = 0, -) : DatatypeRoot, Identity { - override val id: Long - get() = comment_reply.id -} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPersonMentions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPersonMentions.kt deleted file mode 100644 index a4088f20..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPersonMentions.kt +++ /dev/null @@ -1,16 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.dto.CommentSortType -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -@CommonParcelize -@Serializable -data class GetPersonMentions( - val sort: CommentSortType? /* "Hot" | "Top" | "New" | "Old" | "Controversial" */ = null, - val page: Long? = null, - val limit: Long? = null, - val unread_only: Boolean? = null, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPersonMentionsResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPersonMentionsResponse.kt deleted file mode 100644 index 66ebc947..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPersonMentionsResponse.kt +++ /dev/null @@ -1,12 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -@CommonParcelize -@Serializable -data class GetPersonMentionsResponse( - val mentions: List, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPrivateMessages.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPrivateMessages.kt deleted file mode 100644 index 9a5e3fab..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPrivateMessages.kt +++ /dev/null @@ -1,15 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -@CommonParcelize -@Serializable -data class GetPrivateMessages( - val unread_only: Boolean? = null, - val page: Long? = null, - val limit: Long? = null, - val creator_id: PersonId? = null, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetReplies.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetReplies.kt deleted file mode 100644 index 378da15c..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetReplies.kt +++ /dev/null @@ -1,16 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.dto.CommentSortType -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -@CommonParcelize -@Serializable -data class GetReplies( - val sort: CommentSortType? /* "Hot" | "Top" | "New" | "Old" | "Controversial" */ = null, - val page: Long? = null, - val limit: Long? = null, - val unread_only: Boolean? = null, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetRepliesResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetRepliesResponse.kt deleted file mode 100644 index cf6ab149..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetRepliesResponse.kt +++ /dev/null @@ -1,12 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -@CommonParcelize -@Serializable -data class GetRepliesResponse( - val replies: List, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/InboxCombinedView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/InboxCombinedView.kt deleted file mode 100644 index d275f64e..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/InboxCombinedView.kt +++ /dev/null @@ -1,43 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.CommonParcelize -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.ExperimentalSerializationApi -import kotlinx.serialization.SerialName -import kotlinx.serialization.json.JsonClassDiscriminator -import kotlinx.serialization.Serializable - - -@CommonParcelize -@Serializable -@OptIn(ExperimentalSerializationApi::class) -@JsonClassDiscriminator("type_") -sealed class InboxCombinedView: DatatypeRoot { - @CommonParcelize - @Serializable - @SerialName("CommentReply") - data class CommentReply( - val comment_reply: CommentReplyView - ) : InboxCombinedView() - - @CommonParcelize - @Serializable - @SerialName("CommentMention") - data class CommentMention( - val comment_mention: PersonCommentMentionView - ) : InboxCombinedView() - - @CommonParcelize - @Serializable - @SerialName("PostMention") - data class PostMention( - val post_mention: PersonPostMentionView - ) : InboxCombinedView() - - @CommonParcelize - @Serializable - @SerialName("PrivateMessage") - data class PrivateMessage( - val private_message: PrivateMessageView - ) : InboxCombinedView() -} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListInbox.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListInbox.kt deleted file mode 100644 index dd8e5959..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListInbox.kt +++ /dev/null @@ -1,16 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.CommonParcelize -import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.dto.ListingType -import kotlinx.serialization.Serializable - -@CommonParcelize -@Serializable -data class ListInbox( - val type_: ListingType? /* "All" | "CommentReply" | "CommentMention" | "PostMention" | "PrivateMessage" */ = null, - val unread_only: Boolean? = null, - val page_cursor: PaginationCursor? = null, - val page_back: Boolean? = null, - val limit: Long? = null, -): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListInboxResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListInboxResponse.kt deleted file mode 100644 index 1838ae43..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListInboxResponse.kt +++ /dev/null @@ -1,13 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.CommonParcelize -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -@CommonParcelize -@Serializable -data class ListInboxResponse( - val inbox: List, - val next_page: PaginationCursor? = null, - val prev_page: PaginationCursor? = null, -): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListNotifications.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListNotifications.kt index 6c5692c3..2bb2f167 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListNotifications.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListNotifications.kt @@ -2,15 +2,19 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.dto.ListingType +import it.vercruysse.lemmyapi.dto.NotificationDataType import kotlinx.serialization.Serializable @CommonParcelize @Serializable data class ListNotifications( - val type_: ListingType? /* "All" | "Reply" | "Mention" | "PrivateMessage" | "Subscribed" */ = null, + val type_: NotificationDataType /* "All" | "Reply" | "Mention" | "PrivateMessage" | "Subscribed" */, val unread_only: Boolean? = null, + /** Removed in 1.0.0 */ + val page: Long? = null, + /** Added 1.0.0 */ val page_cursor: PaginationCursor? = null, + /** Added 1.0.0 */ val page_back: Boolean? = null, val limit: Long? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkCommentReplyAsRead.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkCommentReplyAsRead.kt deleted file mode 100644 index f4503900..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkCommentReplyAsRead.kt +++ /dev/null @@ -1,13 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -@CommonParcelize -@Serializable -data class MarkCommentReplyAsRead( - val comment_reply_id: CommentReplyId, - val read: Boolean, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkNotificationAsRead.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkNotificationAsRead.kt index 92c68626..55654f9f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkNotificationAsRead.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkNotificationAsRead.kt @@ -2,6 +2,7 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot +import it.vercruysse.lemmyapi.dto.NotificationType import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.NotificationId import kotlinx.serialization.Serializable @@ -10,4 +11,6 @@ import kotlinx.serialization.Serializable data class MarkNotificationAsRead( val notification_id: NotificationId, val read: Boolean, + /** Doesn't exist but needed for compatability with before 1.0.0 */ + val _kind: NotificationType? = null ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkPersonCommentMentionAsRead.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkPersonCommentMentionAsRead.kt deleted file mode 100644 index fd0dc059..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkPersonCommentMentionAsRead.kt +++ /dev/null @@ -1,12 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.CommonParcelize -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -@CommonParcelize -@Serializable -data class MarkPersonCommentMentionAsRead( - val person_comment_mention_id: PersonCommentMentionId, - val read: Boolean, -): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkPersonMentionAsRead.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkPersonMentionAsRead.kt deleted file mode 100644 index 43f6533e..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkPersonMentionAsRead.kt +++ /dev/null @@ -1,15 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -// TODO: removed, possibly renamed to MarkPersonCommentMentionAsRead - -@CommonParcelize -@Serializable -data class MarkPersonMentionAsRead( - val person_mention_id: PersonMentionId, - val read: Boolean, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkPersonPostMentionAsRead.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkPersonPostMentionAsRead.kt deleted file mode 100644 index 0c6d718b..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkPersonPostMentionAsRead.kt +++ /dev/null @@ -1,12 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.CommonParcelize -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -@CommonParcelize -@Serializable -data class MarkPersonPostMentionAsRead( - val person_post_mention_id: PersonPostMentionId, - val read: Boolean, -): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonMention.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonMention.kt deleted file mode 100644 index 24fecc9d..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonMention.kt +++ /dev/null @@ -1,19 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.Identity -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -// TODO: removed - -@CommonParcelize -@Serializable -data class PersonMention( - override val id: PersonMentionId, - val recipient_id: PersonId, - val comment_id: CommentId, - val read: Boolean, - val published: String, -) : DatatypeRoot, Identity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonMentionId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonMentionId.kt deleted file mode 100644 index b11c93e2..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonMentionId.kt +++ /dev/null @@ -1,5 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -// TODO: removed - -typealias PersonMentionId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonMentionResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonMentionResponse.kt deleted file mode 100644 index ab827b8b..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonMentionResponse.kt +++ /dev/null @@ -1,14 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -// TODO: removed - -@CommonParcelize -@Serializable -data class PersonMentionResponse( - val person_mention_view: PersonMentionView, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonMentionView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonMentionView.kt deleted file mode 100644 index d25ad957..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonMentionView.kt +++ /dev/null @@ -1,29 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.dto.SubscribedType -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -// TODO: removed - -@CommonParcelize -@Serializable -data class PersonMentionView( - val person_mention: PersonMention, - val comment: Comment, - val creator: Person, - val post: Post, - val community: Community, - val recipient: Person, -// val counts: CommentAggregates, - val creator_banned_from_community: Boolean, - val banned_from_community: Boolean, - val creator_is_moderator: Boolean, - val creator_is_admin: Boolean, - val subscribed: SubscribedType /* "Subscribed" | "NotSubscribed" | "Pending" */, - val saved: Boolean, - val creator_blocked: Boolean, - val my_vote: Int = 0, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonPostMention.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonPostMention.kt deleted file mode 100644 index fb311a32..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonPostMention.kt +++ /dev/null @@ -1,15 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.CommonParcelize -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -@CommonParcelize -@Serializable -data class PersonPostMention( - val id: PersonPostMentionId, - val recipient_id: PersonId, - val post_id: PostId, - val read: Boolean, - val published: String, -): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonPostMentionId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonPostMentionId.kt deleted file mode 100644 index b669fd23..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonPostMentionId.kt +++ /dev/null @@ -1,3 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -typealias PersonPostMentionId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonPostMentionView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonPostMentionView.kt deleted file mode 100644 index 79c28a55..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonPostMentionView.kt +++ /dev/null @@ -1,27 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.CommonParcelize -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -@CommonParcelize -@Serializable -data class PersonPostMentionView( - val person_post_mention: PersonPostMention, - val recipient: Person, - val post: Post, - val creator: Person, - val community: Community, - val image_details: ImageDetails? = null, - val community_actions: CommunityActions? = null, - val person_actions: PersonActions? = null, - val post_actions: PostActions? = null, - val instance_actions: InstanceActions? = null, - val creator_home_instance_actions: InstanceActions? = null, - val creator_local_instance_actions: InstanceActions? = null, - val creator_community_actions: CommunityActions? = null, - val post_tags: TagsView, - val creator_is_admin: Boolean, - val can_mod: Boolean, - val creator_banned: Boolean, -): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessagesResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessagesResponse.kt deleted file mode 100644 index 27ca4d11..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessagesResponse.kt +++ /dev/null @@ -1,14 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -// TODO: removed - -@CommonParcelize -@Serializable -data class PrivateMessagesResponse( - val private_messages: List, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/dto/CustomDataTypes.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/dto/CustomDataTypes.kt index d2b6211f..a04d4958 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/dto/CustomDataTypes.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/dto/CustomDataTypes.kt @@ -5,11 +5,7 @@ package it.vercruysse.lemmyapi.dto import io.github.z4kn4fein.semver.Version import io.github.z4kn4fein.semver.toVersion import io.github.z4kn4fein.semver.withoutSuffixes -import it.vercruysse.lemmyapi.MINIMUM_API_VERSION -import it.vercruysse.lemmyapi.V0_18_0 -import it.vercruysse.lemmyapi.V0_19_0 -import it.vercruysse.lemmyapi.V0_19_4 -import it.vercruysse.lemmyapi.V1_0_0 +import it.vercruysse.lemmyapi.* import it.vercruysse.lemmyapi.utils.isBetweenVersions import kotlinx.serialization.Serializable @@ -199,11 +195,11 @@ enum class FederationMode(override val minimumVersion: Version = V1_0_0, overrid } @Serializable -enum class NotificationType(override val minimumVersion: Version = V1_0_0, override val maximumVersion: Version? = null) : VersionTracker { +enum class NotificationType(override val minimumVersion: Version = MINIMUM_API_VERSION, override val maximumVersion: Version? = null) : VersionTracker { Mention, Reply, - Subscribed, PrivateMessage, + Subscribed(V1_0_0), } @Serializable @@ -216,6 +212,15 @@ enum class ReportType(override val minimumVersion: Version = V1_0_0, override va Communities, } +@Serializable +enum class NotificationDataType(override val minimumVersion: Version = V1_0_0, override val maximumVersion: Version? = null) : VersionTracker { + All, + Reply, + Mention, + PrivateMessage, + Subscribed, +} + /** * Tracks the version of the supported entries from this enum * Use this in conjunction with [getSupportedEntries] diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt index a923b00d..4dac6e76 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt @@ -3,8 +3,13 @@ package it.vercruysse.lemmyapi.v0.x18.x5 import io.github.z4kn4fein.semver.Version import io.ktor.client.HttpClient import it.vercruysse.lemmyapi.LemmyApiBaseController +import it.vercruysse.lemmyapi.datatypes.ListNotifications +import it.vercruysse.lemmyapi.datatypes.ListNotificationsResponse +import it.vercruysse.lemmyapi.datatypes.MarkNotificationAsRead import it.vercruysse.lemmyapi.dto.ExportUserSettingsResponse import it.vercruysse.lemmyapi.dto.ImportUserSettings +import it.vercruysse.lemmyapi.dto.NotificationDataType +import it.vercruysse.lemmyapi.dto.NotificationType import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.GetCaptcha import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.GetUnreadCount import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.MarkPostAsRead @@ -475,16 +480,6 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba ): Result = apiV18.removeComment(transformer.fromUni(form)).map(transformer::toUni) - /** - * Mark a comment as read. - * - * @POST("comment/mark_as_read") - */ - override suspend fun markCommentReplyAsRead( - form: it.vercruysse.lemmyapi.datatypes.MarkCommentReplyAsRead, - ): Result = - apiV18.markCommentReplyAsRead(transformer.fromUni(form)).map(transformer::toUni) - /** * Distinguishes a comment (speak as moderator) * @@ -555,16 +550,6 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba ): Result = apiV18.createPrivateMessage(transformer.fromUni(form)).map(transformer::toUni) - /** - * Get / fetch private messages. - * - * @GET("private_message/list") - */ - override suspend fun getPrivateMessages( - form: it.vercruysse.lemmyapi.datatypes.GetPrivateMessages, - ): Result = - apiV18.getPrivateMessages(transformer.fromUni(form)).map(transformer::toUni) - /** * Delete a private message. * @@ -575,16 +560,6 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba ): Result = apiV18.deletePrivateMessage(transformer.fromUni(form)).map(transformer::toUni) - /** - * Mark a private message as read. - * - * @POST("private_message/mark_as_read") - */ - override suspend fun markPrivateMessageAsRead( - form: it.vercruysse.lemmyapi.datatypes.MarkPrivateMessageAsRead, - ): Result = - apiV18.markPrivateMessageAsRead(transformer.fromUni(form)).map(transformer::toUni) - /** * Create a report for a private message. * @@ -632,34 +607,43 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba apiV18.getCaptcha(GetCaptcha(auth)).map(transformer::toUni) /** - * Get mentions for your user. - * - * @GET("user/mention") + * Mark a notification as read */ - override suspend fun getPersonMentions( - form: it.vercruysse.lemmyapi.datatypes.GetPersonMentions, - ): Result = - apiV18.getPersonMentions(transformer.fromUni(form)).map(transformer::toUni) + override suspend fun markNotificationAsRead(form: MarkNotificationAsRead): Result = + when (form._kind) { + NotificationType.Mention -> apiV18.markPersonMentionAsRead(transformer.fromUniM(form)).map { } + NotificationType.Reply -> apiV18.markCommentReplyAsRead(transformer.fromUniR(form)).map { } + NotificationType.PrivateMessage -> apiV18.markPrivateMessageAsRead(transformer.fromUniP(form)).map { } + NotificationType.Subscribed -> notSupported() + null -> notSupported() + } /** - * Mark a person mention as read. - * - * @POST("user/mention/mark_as_read") + * List notifications. */ - override suspend fun markPersonMentionAsRead( - form: it.vercruysse.lemmyapi.datatypes.MarkPersonMentionAsRead, - ): Result = - apiV18.markPersonMentionAsRead(transformer.fromUni(form)).map(transformer::toUni) + override suspend fun listNotifications(form: ListNotifications): Result = when (form.type_) { + NotificationDataType.All -> + runCatching { + val resReplies = apiV18.getReplies(transformer.fromUniR(form)).map(transformer::toUni).getOrThrow() + val mentionReplies = apiV18.getPersonMentions(transformer.fromUniM(form)).map(transformer::toUni).getOrThrow() + val privateMessages = apiV18.getPrivateMessages(transformer.fromUniP(form)).map(transformer::toUni).getOrThrow() - /** - * Get comment replies. - * - * @GET("user/replies") - */ - override suspend fun getReplies( - form: it.vercruysse.lemmyapi.datatypes.GetReplies, - ): Result = - apiV18.getReplies(transformer.fromUni(form)).map(transformer::toUni) + ListNotificationsResponse( + buildList { + addAll(resReplies.notifications) + addAll(mentionReplies.notifications) + addAll(privateMessages.notifications) + }, + ) + } + NotificationDataType.Reply -> + apiV18.getReplies(transformer.fromUniR(form)).map(transformer::toUni) + NotificationDataType.Mention -> + apiV18.getPersonMentions(transformer.fromUniM(form)).map(transformer::toUni) + NotificationDataType.PrivateMessage -> + apiV18.getPrivateMessages(transformer.fromUniP(form)).map(transformer::toUni) + NotificationDataType.Subscribed -> Result.success(ListNotificationsResponse(emptyList())) + } /** * Ban a person from your site. @@ -726,8 +710,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @POST("user/mark_all_as_read") */ - override suspend fun markAllAsRead(): Result = - apiV18.markAllAsRead(it.vercruysse.lemmyapi.v0.x18.x5.datatypes.MarkAllAsRead(auth ?: "")).map(transformer::toUni) + override suspend fun markAllNotificationsAsRead(): Result = + apiV18.markAllAsRead(it.vercruysse.lemmyapi.v0.x18.x5.datatypes.MarkAllAsRead(auth ?: "")).map {} /** * Save your user settings. diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/MapperGenerator.kt index 204eeac8..401ed547 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/MapperGenerator.kt @@ -9,8 +9,6 @@ internal interface MapperGenerator { fun toUni(d: LocalSiteRateLimit): it.vercruysse.lemmyapi.datatypes.LocalSiteRateLimit - fun toUni(d: CommentReplyView): it.vercruysse.lemmyapi.datatypes.CommentReplyView - fun toUni(d: CommentReportView): it.vercruysse.lemmyapi.datatypes.CommentReportView fun toUni(d: CommentView): it.vercruysse.lemmyapi.datatypes.CommentView @@ -41,8 +39,6 @@ internal interface MapperGenerator { fun toUni(d: LocalSite, counts: SiteAggregates): it.vercruysse.lemmyapi.datatypes.LocalSite - fun toUni(d: PersonMentionView): it.vercruysse.lemmyapi.datatypes.PersonMentionView - fun toUni(d: PersonView, is_admin: Boolean = false): it.vercruysse.lemmyapi.datatypes.PersonView fun toUni(d: PostReportView): it.vercruysse.lemmyapi.datatypes.PostReportView @@ -67,8 +63,6 @@ internal interface MapperGenerator { fun toUni(d: BlockPersonResponse): it.vercruysse.lemmyapi.datatypes.BlockPersonResponse fun toUni(d: CaptchaResponse): it.vercruysse.lemmyapi.datatypes.CaptchaResponse fun toUni(d: Comment, counts: CommentAggregates): it.vercruysse.lemmyapi.datatypes.Comment - fun toUni(d: CommentReply): it.vercruysse.lemmyapi.datatypes.CommentReply - fun toUni(d: CommentReplyResponse): it.vercruysse.lemmyapi.datatypes.CommentReplyResponse fun toUni(d: CommentReport): it.vercruysse.lemmyapi.datatypes.CommentReport fun toUni(d: CommentReportResponse): it.vercruysse.lemmyapi.datatypes.CommentReportResponse @@ -90,10 +84,8 @@ internal interface MapperGenerator { fun toUni(d: GetFederatedInstancesResponse): it.vercruysse.lemmyapi.datatypes.GetFederatedInstancesResponse fun toUni(d: GetModlogResponse): it.vercruysse.lemmyapi.datatypes.GetModlogResponse fun toUni(d: GetPersonDetailsResponse): it.vercruysse.lemmyapi.datatypes.GetPersonDetailsResponse - fun toUni(d: GetPersonMentionsResponse): it.vercruysse.lemmyapi.datatypes.GetPersonMentionsResponse fun toUni(d: GetPostResponse): it.vercruysse.lemmyapi.datatypes.GetPostResponse fun toUni(d: GetPostsResponse): it.vercruysse.lemmyapi.datatypes.GetPostsResponse - fun toUni(d: GetRepliesResponse): it.vercruysse.lemmyapi.datatypes.GetRepliesResponse fun toUni(d: GetReportCountResponse): it.vercruysse.lemmyapi.datatypes.GetReportCountResponse fun toUni(d: GetSiteMetadataResponse): it.vercruysse.lemmyapi.datatypes.GetSiteMetadataResponse @@ -131,8 +123,6 @@ internal interface MapperGenerator { fun toUni(d: ModTransferCommunity): it.vercruysse.lemmyapi.datatypes.ModTransferCommunity fun toUni(d: ModTransferCommunityView): it.vercruysse.lemmyapi.datatypes.ModTransferCommunityView fun toUni(d: Person, counts: PersonAggregates): it.vercruysse.lemmyapi.datatypes.Person - fun toUni(d: PersonMention): it.vercruysse.lemmyapi.datatypes.PersonMention - fun toUni(d: PersonMentionResponse): it.vercruysse.lemmyapi.datatypes.PersonMentionResponse fun toUni(d: Post, counts: PostAggregates): it.vercruysse.lemmyapi.datatypes.Post fun toUni(d: PostReport): it.vercruysse.lemmyapi.datatypes.PostReport @@ -145,7 +135,6 @@ internal interface MapperGenerator { fun toUni(d: PrivateMessageReportResponse): it.vercruysse.lemmyapi.datatypes.PrivateMessageReportResponse fun toUni(d: PrivateMessageReportView): it.vercruysse.lemmyapi.datatypes.PrivateMessageReportView fun toUni(d: PrivateMessageResponse): it.vercruysse.lemmyapi.datatypes.PrivateMessageResponse - fun toUni(d: PrivateMessagesResponse): it.vercruysse.lemmyapi.datatypes.PrivateMessagesResponse fun toUni(d: PrivateMessageView): it.vercruysse.lemmyapi.datatypes.PrivateMessageView fun toUni(d: RegistrationApplication): it.vercruysse.lemmyapi.datatypes.RegistrationApplication fun toUni(d: RegistrationApplicationResponse): it.vercruysse.lemmyapi.datatypes.RegistrationApplicationResponse @@ -237,16 +226,10 @@ internal interface MapperGenerator { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPersonDetails): GetPersonDetails - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPersonMentions): GetPersonMentions - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPost): GetPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPosts): GetPosts - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPrivateMessages): GetPrivateMessages - - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetReplies): GetReplies - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetReportCount): GetReportCount fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetSiteMetadata): GetSiteMetadata @@ -265,11 +248,6 @@ internal interface MapperGenerator { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.LockPost): LockPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.Login): Login - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkCommentReplyAsRead): MarkCommentReplyAsRead - - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkPersonMentionAsRead): MarkPersonMentionAsRead - - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkPrivateMessageAsRead): MarkPrivateMessageAsRead fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset): PasswordChangeAfterReset fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordReset): PasswordReset diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt index 0427a528..2ed784b1 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt @@ -4,12 +4,19 @@ import it.vercruysse.lemmyapi.datatypes.CommentActions import it.vercruysse.lemmyapi.datatypes.CommunityActions import it.vercruysse.lemmyapi.datatypes.GetModlogResponse import it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState +import it.vercruysse.lemmyapi.datatypes.ListNotificationsResponse +import it.vercruysse.lemmyapi.datatypes.MarkNotificationAsRead import it.vercruysse.lemmyapi.datatypes.ModlogCombinedView +import it.vercruysse.lemmyapi.datatypes.Notification +import it.vercruysse.lemmyapi.datatypes.NotificationData +import it.vercruysse.lemmyapi.datatypes.NotificationView import it.vercruysse.lemmyapi.datatypes.PersonActions import it.vercruysse.lemmyapi.datatypes.PostActions +import it.vercruysse.lemmyapi.dto.CommentSortType import it.vercruysse.lemmyapi.dto.CommunityFollowerState import it.vercruysse.lemmyapi.dto.CommunityVisibility import it.vercruysse.lemmyapi.dto.FederationMode +import it.vercruysse.lemmyapi.dto.NotificationType import it.vercruysse.lemmyapi.dto.PostListingMode import it.vercruysse.lemmyapi.dto.SortType import it.vercruysse.lemmyapi.dto.VoteShow @@ -40,9 +47,6 @@ import it.vercruysse.lemmyapi.datatypes.BlockPersonResponse as LemmyapiDatatypes import it.vercruysse.lemmyapi.datatypes.CaptchaResponse as LemmyapiDatatypesCaptchaResponse import it.vercruysse.lemmyapi.datatypes.ChangePassword as LemmyapiDatatypesChangePassword import it.vercruysse.lemmyapi.datatypes.Comment as LemmyapiDatatypesComment -import it.vercruysse.lemmyapi.datatypes.CommentReply as LemmyapiDatatypesCommentReply -import it.vercruysse.lemmyapi.datatypes.CommentReplyResponse as LemmyapiDatatypesCommentReplyResponse -import it.vercruysse.lemmyapi.datatypes.CommentReplyView as LemmyapiDatatypesCommentReplyView import it.vercruysse.lemmyapi.datatypes.CommentReport as LemmyapiDatatypesCommentReport import it.vercruysse.lemmyapi.datatypes.CommentReportResponse as LemmyapiDatatypesCommentReportResponse import it.vercruysse.lemmyapi.datatypes.CommentReportView as LemmyapiDatatypesCommentReportView @@ -95,15 +99,10 @@ import it.vercruysse.lemmyapi.datatypes.GetModlog as LemmyapiDatatypesGetModlog import it.vercruysse.lemmyapi.datatypes.GetModlogResponse as LemmyapiDatatypesGetModlogResponse import it.vercruysse.lemmyapi.datatypes.GetPersonDetails as LemmyapiDatatypesGetPersonDetails import it.vercruysse.lemmyapi.datatypes.GetPersonDetailsResponse as LemmyapiDatatypesGetPersonDetailsResponse -import it.vercruysse.lemmyapi.datatypes.GetPersonMentions as LemmyapiDatatypesGetPersonMentions -import it.vercruysse.lemmyapi.datatypes.GetPersonMentionsResponse as LemmyapiDatatypesGetPersonMentionsResponse import it.vercruysse.lemmyapi.datatypes.GetPost as LemmyapiDatatypesGetPost import it.vercruysse.lemmyapi.datatypes.GetPostResponse as LemmyapiDatatypesGetPostResponse import it.vercruysse.lemmyapi.datatypes.GetPosts as LemmyapiDatatypesGetPosts import it.vercruysse.lemmyapi.datatypes.GetPostsResponse as LemmyapiDatatypesGetPostsResponse -import it.vercruysse.lemmyapi.datatypes.GetPrivateMessages as LemmyapiDatatypesGetPrivateMessages -import it.vercruysse.lemmyapi.datatypes.GetReplies as LemmyapiDatatypesGetReplies -import it.vercruysse.lemmyapi.datatypes.GetRepliesResponse as LemmyapiDatatypesGetRepliesResponse import it.vercruysse.lemmyapi.datatypes.GetReportCount as LemmyapiDatatypesGetReportCount import it.vercruysse.lemmyapi.datatypes.GetReportCountResponse as LemmyapiDatatypesGetReportCountResponse import it.vercruysse.lemmyapi.datatypes.GetSiteMetadata as LemmyapiDatatypesGetSiteMetadata @@ -116,6 +115,8 @@ import it.vercruysse.lemmyapi.datatypes.Instance as LemmyapiDatatypesInstance import it.vercruysse.lemmyapi.datatypes.Language as LemmyapiDatatypesLanguage import it.vercruysse.lemmyapi.datatypes.ListCommunities as LemmyapiDatatypesListCommunities import it.vercruysse.lemmyapi.datatypes.ListCommunitiesResponse as LemmyapiDatatypesListCommunitiesResponse +import it.vercruysse.lemmyapi.datatypes.ListNotifications as LemmyapiDatatypesListNotifications +import it.vercruysse.lemmyapi.datatypes.ListNotificationsResponse as LemmyapiDatatypesListNotificationsResponse import it.vercruysse.lemmyapi.datatypes.ListRegistrationApplications as LemmyapiDatatypesListRegistrationApplications import it.vercruysse.lemmyapi.datatypes.ListRegistrationApplicationsResponse as LemmyapiDatatypesListRegistrationApplicationsResponse import it.vercruysse.lemmyapi.datatypes.ListReports as LemmyapiDatatypesListReports @@ -126,9 +127,6 @@ import it.vercruysse.lemmyapi.datatypes.LocalUserView as LemmyapiDatatypesLocalU import it.vercruysse.lemmyapi.datatypes.LockPost as LemmyapiDatatypesLockPost import it.vercruysse.lemmyapi.datatypes.Login as LemmyapiDatatypesLogin import it.vercruysse.lemmyapi.datatypes.LoginResponse as LemmyapiDatatypesLoginResponse -import it.vercruysse.lemmyapi.datatypes.MarkCommentReplyAsRead as LemmyapiDatatypesMarkCommentReplyAsRead -import it.vercruysse.lemmyapi.datatypes.MarkPersonMentionAsRead as LemmyapiDatatypesMarkPersonMentionAsRead -import it.vercruysse.lemmyapi.datatypes.MarkPrivateMessageAsRead as LemmyapiDatatypesMarkPrivateMessageAsRead import it.vercruysse.lemmyapi.datatypes.ModAdd as LemmyapiDatatypesModAdd import it.vercruysse.lemmyapi.datatypes.ModAddCommunity as LemmyapiDatatypesModAddCommunity import it.vercruysse.lemmyapi.datatypes.ModAddCommunityView as LemmyapiDatatypesModAddCommunityView @@ -155,9 +153,6 @@ import it.vercruysse.lemmyapi.datatypes.MyUserInfo as LemmyapiDatatypesMyUserInf import it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset as LemmyapiDatatypesPasswordChangeAfterReset import it.vercruysse.lemmyapi.datatypes.PasswordReset as LemmyapiDatatypesPasswordReset import it.vercruysse.lemmyapi.datatypes.Person as LemmyapiDatatypesPerson -import it.vercruysse.lemmyapi.datatypes.PersonMention as LemmyapiDatatypesPersonMention -import it.vercruysse.lemmyapi.datatypes.PersonMentionResponse as LemmyapiDatatypesPersonMentionResponse -import it.vercruysse.lemmyapi.datatypes.PersonMentionView as LemmyapiDatatypesPersonMentionView import it.vercruysse.lemmyapi.datatypes.PersonView as LemmyapiDatatypesPersonView import it.vercruysse.lemmyapi.datatypes.Post as LemmyapiDatatypesPost import it.vercruysse.lemmyapi.datatypes.PostReport as LemmyapiDatatypesPostReport @@ -171,7 +166,6 @@ import it.vercruysse.lemmyapi.datatypes.PrivateMessageReportResponse as Lemmyapi import it.vercruysse.lemmyapi.datatypes.PrivateMessageReportView as LemmyapiDatatypesPrivateMessageReportView import it.vercruysse.lemmyapi.datatypes.PrivateMessageResponse as LemmyapiDatatypesPrivateMessageResponse import it.vercruysse.lemmyapi.datatypes.PrivateMessageView as LemmyapiDatatypesPrivateMessageView -import it.vercruysse.lemmyapi.datatypes.PrivateMessagesResponse as LemmyapiDatatypesPrivateMessagesResponse import it.vercruysse.lemmyapi.datatypes.PurgeComment as LemmyapiDatatypesPurgeComment import it.vercruysse.lemmyapi.datatypes.PurgeCommunity as LemmyapiDatatypesPurgeCommunity import it.vercruysse.lemmyapi.datatypes.PurgePerson as LemmyapiDatatypesPurgePerson @@ -226,8 +220,6 @@ import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.CaptchaResponse as X5Datatypes import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.ChangePassword as X5DatatypesChangePassword import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.Comment as X5DatatypesComment import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.CommentAggregates as X5DatatypesCommentAggregates -import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.CommentReply as X5DatatypesCommentReply -import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.CommentReplyResponse as X5DatatypesCommentReplyResponse import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.CommentReplyView as X5DatatypesCommentReplyView import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.CommentReport as X5DatatypesCommentReport import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.CommentReportResponse as X5DatatypesCommentReportResponse @@ -345,8 +337,6 @@ import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.PasswordChangeAfterReset as X5 import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.PasswordReset as X5DatatypesPasswordReset import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.Person as X5DatatypesPerson import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.PersonAggregates as X5DatatypesPersonAggregates -import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.PersonMention as X5DatatypesPersonMention -import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.PersonMentionResponse as X5DatatypesPersonMentionResponse import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.PersonMentionView as X5DatatypesPersonMentionView import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.PersonView as X5DatatypesPersonView import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.Post as X5DatatypesPost @@ -472,24 +462,6 @@ internal class Transformer(var auth: String) : MapperGenerator { import_user_settings_interval_seconds = -1, ) - override fun toUni(d: X5DatatypesCommentReplyView): LemmyapiDatatypesCommentReplyView = - LemmyapiDatatypesCommentReplyView( - comment_reply = this.toUni(d = d.comment_reply), - comment = this.toUni(d = d.comment, d.counts), - creator = this.toUni(d = d.creator), - post = this.toUni(d = d.post, counts = X5DatatypesPostAggregates(-1, -1, -1, -1, -1, -1, "", "", "", false, false, -1, -1)), - community = this.toUni(d = d.community, counts = X5DatatypesCommunityAggregates(-1, -1, -1, -1, -1, "", -1, -1, -1, -1, -1)), - recipient = this.toUni(d = d.recipient), - creator_banned_from_community = d.creator_banned_from_community, - banned_from_community = false, - creator_is_moderator = false, - creator_is_admin = false, - subscribed = d.subscribed, - saved = d.saved, - creator_blocked = d.creator_blocked, - my_vote = d.my_vote, - ) - override fun toUni(d: X5DatatypesCommentReportView): LemmyapiDatatypesCommentReportView = LemmyapiDatatypesCommentReportView( comment_report = this.toUni(d = d.comment_report), @@ -625,24 +597,6 @@ internal class Transformer(var auth: String) : MapperGenerator { users_active_half_year = counts.users_active_half_year, ) - override fun toUni(d: X5DatatypesPersonMentionView): LemmyapiDatatypesPersonMentionView = - LemmyapiDatatypesPersonMentionView( - person_mention = this.toUni(d = d.person_mention), - comment = this.toUni(d = d.comment, d.counts), - creator = this.toUni(d = d.creator), - post = this.toUni(d = d.post, counts = X5DatatypesPostAggregates(-1, -1, -1, -1, -1, -1, "", "", "", false, false, -1, -1)), - community = this.toUni(d = d.community, counts = X5DatatypesCommunityAggregates(-1, -1, -1, -1, -1, "", -1, -1, -1, -1, -1)), - recipient = this.toUni(d = d.recipient), - creator_banned_from_community = d.creator_banned_from_community, - banned_from_community = false, - creator_is_moderator = false, - creator_is_admin = false, - subscribed = d.subscribed, - saved = d.saved, - creator_blocked = d.creator_blocked, - my_vote = d.my_vote, - ) - override fun toUni(d: X5DatatypesPersonView, is_admin: Boolean): LemmyapiDatatypesPersonView = LemmyapiDatatypesPersonView( person = this.toUni(d = d.person, d.counts), @@ -808,20 +762,6 @@ internal class Transformer(var auth: String) : MapperGenerator { federation_pending = false, ) - override fun toUni(d: X5DatatypesCommentReply): LemmyapiDatatypesCommentReply = - LemmyapiDatatypesCommentReply( - id = d.id, - recipient_id = d.recipient_id, - comment_id = d.comment_id, - read = d.read, - published = d.published, - ) - - override fun toUni(d: X5DatatypesCommentReplyResponse): LemmyapiDatatypesCommentReplyResponse = - LemmyapiDatatypesCommentReplyResponse( - comment_reply_view = this.toUni(d = d.comment_reply_view), - ) - override fun toUni(d: X5DatatypesCommentReport): LemmyapiDatatypesCommentReport = LemmyapiDatatypesCommentReport( id = d.id, @@ -924,105 +864,90 @@ internal class Transformer(var auth: String) : MapperGenerator { override fun toUni(d: X5DatatypesGetModlogResponse): LemmyapiDatatypesGetModlogResponse { val modlogList = mutableListOf() - // Add ModRemovePost entries modlogList.addAll( d.removed_posts.map { view -> ModlogCombinedView.ModRemovePost(mod_remove_post = this.toUni(d = view)) }, ) - // Add ModLockPost entries modlogList.addAll( d.locked_posts.map { view -> ModlogCombinedView.ModLockPost(mod_lock_post = this.toUni(d = view)) }, ) - // Add ModFeaturePost entries modlogList.addAll( d.featured_posts.map { view -> ModlogCombinedView.ModFeaturePost(mod_feature_post = this.toUni(d = view)) }, ) - // Add ModRemoveComment entries modlogList.addAll( d.removed_comments.map { view -> ModlogCombinedView.ModRemoveComment(mod_remove_comment = this.toUni(d = view)) }, ) - // Add ModRemoveCommunity entries modlogList.addAll( d.removed_communities.map { view -> ModlogCombinedView.ModRemoveCommunity(mod_remove_community = this.toUni(d = view)) }, ) - // Add ModBanFromCommunity entries modlogList.addAll( d.banned_from_community.map { view -> ModlogCombinedView.ModBanFromCommunity(mod_ban_from_community = this.toUni(d = view)) }, ) - // Add ModBan entries modlogList.addAll( d.banned.map { view -> ModlogCombinedView.ModBan(mod_ban = this.toUni(d = view)) }, ) - // Add ModAddCommunity entries modlogList.addAll( d.added_to_community.map { view -> ModlogCombinedView.ModAddCommunity(mod_add_community = this.toUni(d = view)) }, ) - // Add ModTransferCommunity entries modlogList.addAll( d.transferred_to_community.map { view -> ModlogCombinedView.ModTransferCommunity(mod_transfer_community = this.toUni(d = view)) }, ) - // Add ModAdd entries modlogList.addAll( d.added.map { view -> ModlogCombinedView.ModAdd(mod_add = this.toUni(d = view)) }, ) - // Add AdminPurgePerson entries modlogList.addAll( d.admin_purged_persons.map { view -> ModlogCombinedView.AdminPurgePerson(admin_purge_person = this.toUni(d = view)) }, ) - // Add AdminPurgeCommunity entries modlogList.addAll( d.admin_purged_communities.map { view -> ModlogCombinedView.AdminPurgeCommunity(admin_purge_community = this.toUni(d = view)) }, ) - // Add AdminPurgePost entries modlogList.addAll( d.admin_purged_posts.map { view -> ModlogCombinedView.AdminPurgePost(admin_purge_post = this.toUni(d = view)) }, ) - // Add AdminPurgeComment entries modlogList.addAll( d.admin_purged_comments.map { view -> ModlogCombinedView.AdminPurgeComment(admin_purge_comment = this.toUni(d = view)) }, ) - // Add ModHideCommunity entries (mapped to ModChangeCommunityVisibility) modlogList.addAll( d.hidden_communities.map { view -> ModlogCombinedView.ModChangeCommunityVisibility(mod_change_community_visibility = this.toUni(d = view)) @@ -1043,10 +968,6 @@ internal class Transformer(var auth: String) : MapperGenerator { moderates = d.moderates.map { this.toUni(d = it) }, ) - override fun toUni(d: X5DatatypesGetPersonMentionsResponse): LemmyapiDatatypesGetPersonMentionsResponse = LemmyapiDatatypesGetPersonMentionsResponse( - mentions = d.mentions.map { this.toUni(d = it) }, - ) - override fun toUni(d: X5DatatypesGetPostResponse): LemmyapiDatatypesGetPostResponse = LemmyapiDatatypesGetPostResponse( post_view = this.toUni(d = d.post_view), @@ -1060,9 +981,99 @@ internal class Transformer(var auth: String) : MapperGenerator { posts = d.posts.map { this.toUni(d = it) }, ) - override fun toUni(d: X5DatatypesGetRepliesResponse): LemmyapiDatatypesGetRepliesResponse = - LemmyapiDatatypesGetRepliesResponse( - replies = d.replies.map { this.toUni(d = it) }, + fun toUni(d: X5DatatypesGetRepliesResponse): LemmyapiDatatypesListNotificationsResponse = + ListNotificationsResponse( + notifications = d.replies.map { this.toUni(d = it) }, + ) + + fun toUni(d: X5DatatypesCommentReplyView): NotificationView = + NotificationView( + notification = Notification( + id = d.comment_reply.id, + recipient_id = d.comment_reply.recipient_id, + comment_id = d.comment_reply.comment_id, + read = d.comment_reply.read, + published_at = addTimezoneOffset(d.comment_reply.published), + kind = NotificationType.Reply, + post_id = d.post.id, + ), + data = NotificationData.Comment( + comment = this.toUniCV(d), + ), + ) + + fun toUniCV(d: X5DatatypesCommentReplyView): LemmyapiDatatypesCommentView = + LemmyapiDatatypesCommentView( + comment = this.toUni(d = d.comment, d.counts), + creator = this.toUni(d = d.creator), + post = this.toUni(d = d.post, counts = X5DatatypesPostAggregates(-1, -1, -1, -1, -1, -1, "", "", "", false, false, -1, -1)), + community = this.toUni(d = d.community, counts = X5DatatypesCommunityAggregates(-1, -1, -1, -1, -1, "", -1, -1, -1, -1, -1)), + creator_banned_from_community = d.creator_banned_from_community, + creator_is_moderator = false, + creator_is_admin = false, + post_tags = emptyList(), + creator_banned = d.creator.banned, + can_mod = false, + person_actions = PersonActions(if (d.creator_blocked) "" else null), + comment_actions = CommentActions(d.my_vote, null, if (d.saved) "" else null), + community_actions = CommunityActions(null, CommunityFollowerState.from(d.subscribed)), + ) + + fun toUni(d: X5DatatypesGetPersonMentionsResponse): LemmyapiDatatypesListNotificationsResponse = + LemmyapiDatatypesListNotificationsResponse( + notifications = d.mentions.map { this.toUni(d = it) }, + ) + + fun toUni(d: X5DatatypesPersonMentionView): NotificationView = + NotificationView( + notification = Notification( + id = d.person_mention.id, + recipient_id = d.person_mention.recipient_id, + comment_id = d.person_mention.comment_id, + read = d.person_mention.read, + published_at = addTimezoneOffset(d.person_mention.published), + kind = NotificationType.Mention, + post_id = d.post.id, + ), + data = NotificationData.Comment( + comment = this.toUniPV(d), + ), + ) + + fun toUniPV(d: X5DatatypesPersonMentionView): LemmyapiDatatypesCommentView = + LemmyapiDatatypesCommentView( + comment = this.toUni(d = d.comment, d.counts), + creator = this.toUni(d = d.creator), + post = this.toUni(d = d.post, counts = X5DatatypesPostAggregates(-1, -1, -1, -1, -1, -1, "", "", "", false, false, -1, -1)), + community = this.toUni(d = d.community, counts = X5DatatypesCommunityAggregates(-1, -1, -1, -1, -1, "", -1, -1, -1, -1, -1)), + creator_banned_from_community = d.creator_banned_from_community, + creator_is_moderator = false, + creator_is_admin = false, + post_tags = emptyList(), + creator_banned = d.creator.banned, + can_mod = false, + person_actions = PersonActions(if (d.creator_blocked) "" else null), + comment_actions = CommentActions(d.my_vote, null, if (d.saved) "" else null), + community_actions = CommunityActions(null, CommunityFollowerState.from(d.subscribed)), + ) + + fun toUni(d: X5DatatypesPrivateMessagesResponse): LemmyapiDatatypesListNotificationsResponse = + LemmyapiDatatypesListNotificationsResponse( + notifications = d.private_messages.map { this.toUniPMV(d = it) }, + ) + + fun toUniPMV(d: X5DatatypesPrivateMessageView): NotificationView = + NotificationView( + notification = Notification( + id = d.private_message.id, + recipient_id = d.private_message.recipient_id, + read = d.private_message.read, + published_at = addTimezoneOffset(d.private_message.published), + kind = NotificationType.PrivateMessage, + ), + data = NotificationData.PrivateMessage( + private_message = this.toUni(d), + ), ) override fun toUni(d: X5DatatypesGetReportCountResponse): LemmyapiDatatypesGetReportCountResponse = LemmyapiDatatypesGetReportCountResponse( @@ -1074,7 +1085,7 @@ internal class Transformer(var auth: String) : MapperGenerator { ) override fun toUni(d: X5DatatypesGetUnreadCountResponse): LemmyapiDatatypesGetUnreadCountResponse = LemmyapiDatatypesGetUnreadCountResponse( - count = d.replies + d.mentions + d.private_messages + count = d.replies + d.mentions + d.private_messages, ) override fun toUni(d: X5DatatypesGetUnreadRegistrationApplicationCountResponse): LemmyapiDatatypesGetUnreadRegistrationApplicationCountResponse = @@ -1338,20 +1349,6 @@ internal class Transformer(var auth: String) : MapperGenerator { comment_count = counts.comment_count, ) - override fun toUni(d: X5DatatypesPersonMention): LemmyapiDatatypesPersonMention = - LemmyapiDatatypesPersonMention( - id = d.id, - recipient_id = d.recipient_id, - comment_id = d.comment_id, - read = d.read, - published = d.published, - ) - - override fun toUni(d: X5DatatypesPersonMentionResponse): LemmyapiDatatypesPersonMentionResponse = - LemmyapiDatatypesPersonMentionResponse( - person_mention_view = this.toUni(d = d.person_mention_view), - ) - override fun toUni(d: X5DatatypesPost, counts: X5DatatypesPostAggregates): LemmyapiDatatypesPost = LemmyapiDatatypesPost( id = d.id, name = d.name, @@ -1454,10 +1451,6 @@ internal class Transformer(var auth: String) : MapperGenerator { private_message_view = this.toUni(d = d.private_message_view), ) - override fun toUni(d: X5DatatypesPrivateMessagesResponse): LemmyapiDatatypesPrivateMessagesResponse = LemmyapiDatatypesPrivateMessagesResponse( - private_messages = d.private_messages.map { this.toUni(d = it) }, - ) - override fun toUni(d: X5DatatypesPrivateMessageView): LemmyapiDatatypesPrivateMessageView = LemmyapiDatatypesPrivateMessageView( private_message = this.toUni(d = d.private_message), @@ -1936,15 +1929,6 @@ internal class Transformer(var auth: String) : MapperGenerator { auth = auth, ) - override fun fromUni(d: LemmyapiDatatypesGetPersonMentions): X5DatatypesGetPersonMentions = - X5DatatypesGetPersonMentions( - sort = d.sort, - page = d.page, - limit = d.limit, - unread_only = d.unread_only, - auth = auth, - ) - override fun fromUni(d: LemmyapiDatatypesGetPost): X5DatatypesGetPost = X5DatatypesGetPost( id = d.id, comment_id = d.comment_id, @@ -1961,17 +1945,26 @@ internal class Transformer(var auth: String) : MapperGenerator { auth = auth, ) - override fun fromUni(d: LemmyapiDatatypesGetPrivateMessages): X5DatatypesGetPrivateMessages = - X5DatatypesGetPrivateMessages( + fun fromUniR(d: LemmyapiDatatypesListNotifications): X5DatatypesGetReplies = + X5DatatypesGetReplies( + sort = CommentSortType.New, + page = d.page, + limit = d.limit, unread_only = d.unread_only, + auth = auth, + ) + + fun fromUniM(d: LemmyapiDatatypesListNotifications): X5DatatypesGetPersonMentions = + X5DatatypesGetPersonMentions( + sort = CommentSortType.New, page = d.page, limit = d.limit, + unread_only = d.unread_only, auth = auth, ) - override fun fromUni(d: LemmyapiDatatypesGetReplies): X5DatatypesGetReplies = - X5DatatypesGetReplies( - sort = d.sort, + fun fromUniP(d: LemmyapiDatatypesListNotifications): X5DatatypesGetPrivateMessages = + X5DatatypesGetPrivateMessages( page = d.page, limit = d.limit, unread_only = d.unread_only, @@ -2051,20 +2044,20 @@ internal class Transformer(var auth: String) : MapperGenerator { totp_2fa_token = d.totp_2fa_token, ) - override fun fromUni(d: LemmyapiDatatypesMarkCommentReplyAsRead): X5DatatypesMarkCommentReplyAsRead = X5DatatypesMarkCommentReplyAsRead( - comment_reply_id = d.comment_reply_id, + fun fromUniR(d: MarkNotificationAsRead): X5DatatypesMarkCommentReplyAsRead = X5DatatypesMarkCommentReplyAsRead( + comment_reply_id = d.notification_id, read = d.read, auth = auth, ) - override fun fromUni(d: LemmyapiDatatypesMarkPersonMentionAsRead): X5DatatypesMarkPersonMentionAsRead = X5DatatypesMarkPersonMentionAsRead( - person_mention_id = d.person_mention_id, + fun fromUniM(d: MarkNotificationAsRead): X5DatatypesMarkPersonMentionAsRead = X5DatatypesMarkPersonMentionAsRead( + person_mention_id = d.notification_id, read = d.read, auth = auth, ) - override fun fromUni(d: LemmyapiDatatypesMarkPrivateMessageAsRead): X5DatatypesMarkPrivateMessageAsRead = X5DatatypesMarkPrivateMessageAsRead( - private_message_id = d.private_message_id, + fun fromUniP(d: MarkNotificationAsRead): X5DatatypesMarkPrivateMessageAsRead = X5DatatypesMarkPrivateMessageAsRead( + private_message_id = d.notification_id, read = d.read, auth = auth, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt index 08ff074a..db608f23 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt @@ -3,8 +3,13 @@ package it.vercruysse.lemmyapi.v0.x19.x0 import io.github.z4kn4fein.semver.Version import io.ktor.client.HttpClient import it.vercruysse.lemmyapi.LemmyApiBaseController +import it.vercruysse.lemmyapi.datatypes.ListNotifications +import it.vercruysse.lemmyapi.datatypes.ListNotificationsResponse +import it.vercruysse.lemmyapi.datatypes.MarkNotificationAsRead import it.vercruysse.lemmyapi.dto.ExportUserSettingsResponse import it.vercruysse.lemmyapi.dto.ImportUserSettings +import it.vercruysse.lemmyapi.dto.NotificationDataType +import it.vercruysse.lemmyapi.dto.NotificationType internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, baseUrl: String, auth: String?) : LemmyApiBaseController(client, actualVersion, baseUrl, auth) { @@ -461,16 +466,6 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba ): Result = api.removeComment(transformer.fromUni(form)).map(transformer::toUni) - /** - * Mark a comment as read. - * - * @POST("comment/mark_as_read") - */ - override suspend fun markCommentReplyAsRead( - form: it.vercruysse.lemmyapi.datatypes.MarkCommentReplyAsRead, - ): Result = - api.markCommentReplyAsRead(transformer.fromUni(form)).map(transformer::toUni) - /** * Distinguishes a comment (speak as moderator) * @@ -541,16 +536,6 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba ): Result = api.createPrivateMessage(transformer.fromUni(form)).map(transformer::toUni) - /** - * Get / fetch private messages. - * - * @GET("private_message/list") - */ - override suspend fun getPrivateMessages( - form: it.vercruysse.lemmyapi.datatypes.GetPrivateMessages, - ): Result = - api.getPrivateMessages(transformer.fromUni(form)).map(transformer::toUni) - /** * Delete a private message. * @@ -561,16 +546,6 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba ): Result = api.deletePrivateMessage(transformer.fromUni(form)).map(transformer::toUni) - /** - * Mark a private message as read. - * - * @POST("private_message/mark_as_read") - */ - override suspend fun markPrivateMessageAsRead( - form: it.vercruysse.lemmyapi.datatypes.MarkPrivateMessageAsRead, - ): Result = - api.markPrivateMessageAsRead(transformer.fromUni(form)).map(transformer::toUni) - /** * Create a report for a private message. * @@ -618,34 +593,44 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba api.getCaptcha().map(transformer::toUni) /** - * Get mentions for your user. - * - * @GET("user/mention") + * Mark a notification as read */ - override suspend fun getPersonMentions( - form: it.vercruysse.lemmyapi.datatypes.GetPersonMentions, - ): Result = - api.getPersonMentions(transformer.fromUni(form)).map(transformer::toUni) - - /** - * Mark a person mention as read. - * - * @POST("user/mention/mark_as_read") - */ - override suspend fun markPersonMentionAsRead( - form: it.vercruysse.lemmyapi.datatypes.MarkPersonMentionAsRead, - ): Result = - api.markPersonMentionAsRead(transformer.fromUni(form)).map(transformer::toUni) + override suspend fun markNotificationAsRead(form: MarkNotificationAsRead): Result = + when (form._kind) { + NotificationType.Mention -> api.markPersonMentionAsRead(transformer.fromUniM(form)).map { } + NotificationType.Reply -> api.markCommentReplyAsRead(transformer.fromUniR(form)).map { } + NotificationType.PrivateMessage -> api.markPrivateMessageAsRead(transformer.fromUniP(form)).map { } + NotificationType.Subscribed -> notSupported() + null -> notSupported() + } /** - * Get comment replies. - * - * @GET("user/replies") + * List notifications. */ - override suspend fun getReplies( - form: it.vercruysse.lemmyapi.datatypes.GetReplies, - ): Result = - api.getReplies(transformer.fromUni(form)).map(transformer::toUni) + override suspend fun listNotifications(form: ListNotifications): Result = + when (form.type_) { + NotificationDataType.All -> + runCatching { + val resReplies = api.getReplies(transformer.fromUniR(form)).map(transformer::toUni).getOrThrow() + val mentionReplies = api.getPersonMentions(transformer.fromUniM(form)).map(transformer::toUni).getOrThrow() + val privateMessages = api.getPrivateMessages(transformer.fromUniP(form)).map(transformer::toUni).getOrThrow() + + ListNotificationsResponse( + buildList { + addAll(resReplies.notifications) + addAll(mentionReplies.notifications) + addAll(privateMessages.notifications) + }, + ) + } + NotificationDataType.Reply -> + api.getReplies(transformer.fromUniR(form)).map(transformer::toUni) + NotificationDataType.Mention -> + api.getPersonMentions(transformer.fromUniM(form)).map(transformer::toUni) + NotificationDataType.PrivateMessage -> + api.getPrivateMessages(transformer.fromUniP(form)).map(transformer::toUni) + NotificationDataType.Subscribed -> Result.success(ListNotificationsResponse(emptyList())) + } /** * Ban a person from your site. @@ -712,8 +697,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @POST("user/mark_all_as_read") */ - override suspend fun markAllAsRead(): Result = - api.markAllAsRead().map(transformer::toUni) + override suspend fun markAllNotificationsAsRead(): Result = + api.markAllAsRead().map {} /** * Save your user settings. diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt index 80ff22e5..2f052fc8 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt @@ -4,8 +4,6 @@ import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.* internal interface MapperGenerator { - fun toUni(d: CommentReplyView): it.vercruysse.lemmyapi.datatypes.CommentReplyView - fun toUni(d: CommentReportView): it.vercruysse.lemmyapi.datatypes.CommentReportView fun toUni(d: CommentView): it.vercruysse.lemmyapi.datatypes.CommentView @@ -26,8 +24,6 @@ internal interface MapperGenerator { fun toUni(d: LocalSite, counts: SiteAggregates): it.vercruysse.lemmyapi.datatypes.LocalSite - fun toUni(d: PersonMentionView): it.vercruysse.lemmyapi.datatypes.PersonMentionView - fun toUni(d: PostReportView): it.vercruysse.lemmyapi.datatypes.PostReportView fun toUni(d: PostView): it.vercruysse.lemmyapi.datatypes.PostView @@ -50,8 +46,6 @@ internal interface MapperGenerator { fun toUni(d: BlockPersonResponse): it.vercruysse.lemmyapi.datatypes.BlockPersonResponse fun toUni(d: CaptchaResponse): it.vercruysse.lemmyapi.datatypes.CaptchaResponse fun toUni(d: Comment, counts: CommentAggregates): it.vercruysse.lemmyapi.datatypes.Comment - fun toUni(d: CommentReply): it.vercruysse.lemmyapi.datatypes.CommentReply - fun toUni(d: CommentReplyResponse): it.vercruysse.lemmyapi.datatypes.CommentReplyResponse fun toUni(d: CommentReport): it.vercruysse.lemmyapi.datatypes.CommentReport fun toUni(d: CommentReportResponse): it.vercruysse.lemmyapi.datatypes.CommentReportResponse @@ -74,10 +68,8 @@ internal interface MapperGenerator { fun toUni(d: GetFederatedInstancesResponse): it.vercruysse.lemmyapi.datatypes.GetFederatedInstancesResponse fun toUni(d: GetModlogResponse): it.vercruysse.lemmyapi.datatypes.GetModlogResponse fun toUni(d: GetPersonDetailsResponse): it.vercruysse.lemmyapi.datatypes.GetPersonDetailsResponse - fun toUni(d: GetPersonMentionsResponse): it.vercruysse.lemmyapi.datatypes.GetPersonMentionsResponse fun toUni(d: GetPostResponse): it.vercruysse.lemmyapi.datatypes.GetPostResponse fun toUni(d: GetPostsResponse): it.vercruysse.lemmyapi.datatypes.GetPostsResponse - fun toUni(d: GetRepliesResponse): it.vercruysse.lemmyapi.datatypes.GetRepliesResponse fun toUni(d: GetReportCountResponse): it.vercruysse.lemmyapi.datatypes.GetReportCountResponse fun toUni(d: GetSiteMetadataResponse): it.vercruysse.lemmyapi.datatypes.GetSiteMetadataResponse @@ -120,8 +112,6 @@ internal interface MapperGenerator { fun toUni(d: ModTransferCommunityView): it.vercruysse.lemmyapi.datatypes.ModTransferCommunityView fun toUni(d: MyUserInfo): it.vercruysse.lemmyapi.datatypes.MyUserInfo fun toUni(d: Person, counts: PersonAggregates): it.vercruysse.lemmyapi.datatypes.Person - fun toUni(d: PersonMention): it.vercruysse.lemmyapi.datatypes.PersonMention - fun toUni(d: PersonMentionResponse): it.vercruysse.lemmyapi.datatypes.PersonMentionResponse fun toUni(d: PersonView): it.vercruysse.lemmyapi.datatypes.PersonView fun toUni(d: Post, counts: PostAggregates): it.vercruysse.lemmyapi.datatypes.Post @@ -136,7 +126,6 @@ internal interface MapperGenerator { fun toUni(d: PrivateMessageReportResponse): it.vercruysse.lemmyapi.datatypes.PrivateMessageReportResponse fun toUni(d: PrivateMessageReportView): it.vercruysse.lemmyapi.datatypes.PrivateMessageReportView fun toUni(d: PrivateMessageResponse): it.vercruysse.lemmyapi.datatypes.PrivateMessageResponse - fun toUni(d: PrivateMessagesResponse): it.vercruysse.lemmyapi.datatypes.PrivateMessagesResponse fun toUni(d: PrivateMessageView): it.vercruysse.lemmyapi.datatypes.PrivateMessageView fun toUni(d: ReadableFederationState): it.vercruysse.lemmyapi.datatypes.ReadableFederationState fun toUni(d: RegistrationApplication): it.vercruysse.lemmyapi.datatypes.RegistrationApplication @@ -191,11 +180,8 @@ internal interface MapperGenerator { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetCommunity): GetCommunity fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetModlog): GetModlog fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPersonDetails): GetPersonDetails - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPersonMentions): GetPersonMentions fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPost): GetPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPosts): GetPosts - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPrivateMessages): GetPrivateMessages - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetReplies): GetReplies fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetReportCount): GetReportCount fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetSiteMetadata): GetSiteMetadata fun fromUni(d: it.vercruysse.lemmyapi.datatypes.HideCommunity): HideCommunity @@ -208,10 +194,7 @@ internal interface MapperGenerator { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListRegistrationApplications): ListRegistrationApplications fun fromUni(d: it.vercruysse.lemmyapi.datatypes.LockPost): LockPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.Login): Login - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkCommentReplyAsRead): MarkCommentReplyAsRead - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkPersonMentionAsRead): MarkPersonMentionAsRead fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkPostAsRead): MarkPostAsRead - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkPrivateMessageAsRead): MarkPrivateMessageAsRead fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset): PasswordChangeAfterReset fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordReset): PasswordReset fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgeComment): PurgeComment diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt index dbce0156..e6aa2be9 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt @@ -2,11 +2,18 @@ package it.vercruysse.lemmyapi.v0.x19.x0 import it.vercruysse.lemmyapi.datatypes.CommentActions import it.vercruysse.lemmyapi.datatypes.CommunityActions +import it.vercruysse.lemmyapi.datatypes.ListNotificationsResponse +import it.vercruysse.lemmyapi.datatypes.MarkNotificationAsRead +import it.vercruysse.lemmyapi.datatypes.Notification +import it.vercruysse.lemmyapi.datatypes.NotificationData +import it.vercruysse.lemmyapi.datatypes.NotificationView import it.vercruysse.lemmyapi.datatypes.PersonActions import it.vercruysse.lemmyapi.datatypes.PostActions +import it.vercruysse.lemmyapi.dto.CommentSortType import it.vercruysse.lemmyapi.dto.CommunityFollowerState import it.vercruysse.lemmyapi.dto.CommunityVisibility import it.vercruysse.lemmyapi.dto.FederationMode +import it.vercruysse.lemmyapi.dto.NotificationType import it.vercruysse.lemmyapi.dto.PostListingMode import it.vercruysse.lemmyapi.dto.SortType import it.vercruysse.lemmyapi.dto.VoteShow @@ -36,9 +43,6 @@ import it.vercruysse.lemmyapi.datatypes.BlockPersonResponse as LemmyapiDatatypes import it.vercruysse.lemmyapi.datatypes.CaptchaResponse as LemmyapiDatatypesCaptchaResponse import it.vercruysse.lemmyapi.datatypes.ChangePassword as LemmyapiDatatypesChangePassword import it.vercruysse.lemmyapi.datatypes.Comment as LemmyapiDatatypesComment -import it.vercruysse.lemmyapi.datatypes.CommentReply as LemmyapiDatatypesCommentReply -import it.vercruysse.lemmyapi.datatypes.CommentReplyResponse as LemmyapiDatatypesCommentReplyResponse -import it.vercruysse.lemmyapi.datatypes.CommentReplyView as LemmyapiDatatypesCommentReplyView import it.vercruysse.lemmyapi.datatypes.CommentReport as LemmyapiDatatypesCommentReport import it.vercruysse.lemmyapi.datatypes.CommentReportResponse as LemmyapiDatatypesCommentReportResponse import it.vercruysse.lemmyapi.datatypes.CommentReportView as LemmyapiDatatypesCommentReportView @@ -92,15 +96,10 @@ import it.vercruysse.lemmyapi.datatypes.GetModlog as LemmyapiDatatypesGetModlog import it.vercruysse.lemmyapi.datatypes.GetModlogResponse as LemmyapiDatatypesGetModlogResponse import it.vercruysse.lemmyapi.datatypes.GetPersonDetails as LemmyapiDatatypesGetPersonDetails import it.vercruysse.lemmyapi.datatypes.GetPersonDetailsResponse as LemmyapiDatatypesGetPersonDetailsResponse -import it.vercruysse.lemmyapi.datatypes.GetPersonMentions as LemmyapiDatatypesGetPersonMentions -import it.vercruysse.lemmyapi.datatypes.GetPersonMentionsResponse as LemmyapiDatatypesGetPersonMentionsResponse import it.vercruysse.lemmyapi.datatypes.GetPost as LemmyapiDatatypesGetPost import it.vercruysse.lemmyapi.datatypes.GetPostResponse as LemmyapiDatatypesGetPostResponse import it.vercruysse.lemmyapi.datatypes.GetPosts as LemmyapiDatatypesGetPosts import it.vercruysse.lemmyapi.datatypes.GetPostsResponse as LemmyapiDatatypesGetPostsResponse -import it.vercruysse.lemmyapi.datatypes.GetPrivateMessages as LemmyapiDatatypesGetPrivateMessages -import it.vercruysse.lemmyapi.datatypes.GetReplies as LemmyapiDatatypesGetReplies -import it.vercruysse.lemmyapi.datatypes.GetRepliesResponse as LemmyapiDatatypesGetRepliesResponse import it.vercruysse.lemmyapi.datatypes.GetReportCount as LemmyapiDatatypesGetReportCount import it.vercruysse.lemmyapi.datatypes.GetReportCountResponse as LemmyapiDatatypesGetReportCountResponse import it.vercruysse.lemmyapi.datatypes.GetSiteMetadata as LemmyapiDatatypesGetSiteMetadata @@ -114,6 +113,8 @@ import it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState as LemmyapiD import it.vercruysse.lemmyapi.datatypes.Language as LemmyapiDatatypesLanguage import it.vercruysse.lemmyapi.datatypes.ListCommunities as LemmyapiDatatypesListCommunities import it.vercruysse.lemmyapi.datatypes.ListCommunitiesResponse as LemmyapiDatatypesListCommunitiesResponse +import it.vercruysse.lemmyapi.datatypes.ListNotifications as LemmyapiDatatypesListNotifications +import it.vercruysse.lemmyapi.datatypes.ListNotificationsResponse as LemmyapiDatatypesListNotificationsResponse import it.vercruysse.lemmyapi.datatypes.ListRegistrationApplications as LemmyapiDatatypesListRegistrationApplications import it.vercruysse.lemmyapi.datatypes.ListRegistrationApplicationsResponse as LemmyapiDatatypesListRegistrationApplicationsResponse import it.vercruysse.lemmyapi.datatypes.LocalSite as LemmyapiDatatypesLocalSite @@ -124,10 +125,7 @@ import it.vercruysse.lemmyapi.datatypes.LockPost as LemmyapiDatatypesLockPost import it.vercruysse.lemmyapi.datatypes.Login as LemmyapiDatatypesLogin import it.vercruysse.lemmyapi.datatypes.LoginResponse as LemmyapiDatatypesLoginResponse import it.vercruysse.lemmyapi.datatypes.LoginToken as LemmyapiDatatypesLoginToken -import it.vercruysse.lemmyapi.datatypes.MarkCommentReplyAsRead as LemmyapiDatatypesMarkCommentReplyAsRead -import it.vercruysse.lemmyapi.datatypes.MarkPersonMentionAsRead as LemmyapiDatatypesMarkPersonMentionAsRead import it.vercruysse.lemmyapi.datatypes.MarkPostAsRead as LemmyapiDatatypesMarkPostAsRead -import it.vercruysse.lemmyapi.datatypes.MarkPrivateMessageAsRead as LemmyapiDatatypesMarkPrivateMessageAsRead import it.vercruysse.lemmyapi.datatypes.ModAdd as LemmyapiDatatypesModAdd import it.vercruysse.lemmyapi.datatypes.ModAddCommunity as LemmyapiDatatypesModAddCommunity import it.vercruysse.lemmyapi.datatypes.ModAddCommunityView as LemmyapiDatatypesModAddCommunityView @@ -154,9 +152,6 @@ import it.vercruysse.lemmyapi.datatypes.MyUserInfo as LemmyapiDatatypesMyUserInf import it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset as LemmyapiDatatypesPasswordChangeAfterReset import it.vercruysse.lemmyapi.datatypes.PasswordReset as LemmyapiDatatypesPasswordReset import it.vercruysse.lemmyapi.datatypes.Person as LemmyapiDatatypesPerson -import it.vercruysse.lemmyapi.datatypes.PersonMention as LemmyapiDatatypesPersonMention -import it.vercruysse.lemmyapi.datatypes.PersonMentionResponse as LemmyapiDatatypesPersonMentionResponse -import it.vercruysse.lemmyapi.datatypes.PersonMentionView as LemmyapiDatatypesPersonMentionView import it.vercruysse.lemmyapi.datatypes.PersonView as LemmyapiDatatypesPersonView import it.vercruysse.lemmyapi.datatypes.Post as LemmyapiDatatypesPost import it.vercruysse.lemmyapi.datatypes.PostReport as LemmyapiDatatypesPostReport @@ -170,7 +165,6 @@ import it.vercruysse.lemmyapi.datatypes.PrivateMessageReportResponse as Lemmyapi import it.vercruysse.lemmyapi.datatypes.PrivateMessageReportView as LemmyapiDatatypesPrivateMessageReportView import it.vercruysse.lemmyapi.datatypes.PrivateMessageResponse as LemmyapiDatatypesPrivateMessageResponse import it.vercruysse.lemmyapi.datatypes.PrivateMessageView as LemmyapiDatatypesPrivateMessageView -import it.vercruysse.lemmyapi.datatypes.PrivateMessagesResponse as LemmyapiDatatypesPrivateMessagesResponse import it.vercruysse.lemmyapi.datatypes.PurgeComment as LemmyapiDatatypesPurgeComment import it.vercruysse.lemmyapi.datatypes.PurgeCommunity as LemmyapiDatatypesPurgeCommunity import it.vercruysse.lemmyapi.datatypes.PurgePerson as LemmyapiDatatypesPurgePerson @@ -230,8 +224,6 @@ import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.CaptchaResponse as X0Datatypes import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.ChangePassword as X0DatatypesChangePassword import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.Comment as X0DatatypesComment import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.CommentAggregates as X0DatatypesCommentAggregates -import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.CommentReply as X0DatatypesCommentReply -import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.CommentReplyResponse as X0DatatypesCommentReplyResponse import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.CommentReplyView as X0DatatypesCommentReplyView import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.CommentReport as X0DatatypesCommentReport import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.CommentReportResponse as X0DatatypesCommentReportResponse @@ -353,8 +345,6 @@ import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.PasswordChangeAfterReset as X0 import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.PasswordReset as X0DatatypesPasswordReset import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.Person as X0DatatypesPerson import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.PersonAggregates as X0DatatypesPersonAggregates -import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.PersonMention as X0DatatypesPersonMention -import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.PersonMentionResponse as X0DatatypesPersonMentionResponse import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.PersonMentionView as X0DatatypesPersonMentionView import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.PersonView as X0DatatypesPersonView import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.Post as X0DatatypesPost @@ -405,24 +395,6 @@ import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.VerifyEmail as X0DatatypesVeri // Based on tags/0.19.0 internal class Transformer : MapperGenerator { - override fun toUni(d: X0DatatypesCommentReplyView): LemmyapiDatatypesCommentReplyView = - LemmyapiDatatypesCommentReplyView( - comment_reply = this.toUni(d = d.comment_reply), - comment = this.toUni(d = d.comment, d.counts), - creator = this.toUni(d = d.creator), - post = this.toUni(d = d.post, counts = X0DatatypesPostAggregates(-1, -1, -1, -1, -1, "")), - community = this.toUni(d = d.community, counts = X0DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), - recipient = this.toUni(d = d.recipient), - creator_banned_from_community = d.creator_banned_from_community, - banned_from_community = false, - creator_is_moderator = d.creator_is_moderator, - creator_is_admin = d.creator_is_admin, - subscribed = d.subscribed, - saved = d.saved, - creator_blocked = d.creator_blocked, - my_vote = d.my_vote, - ) - override fun toUni(d: X0DatatypesCommentReportView): LemmyapiDatatypesCommentReportView = LemmyapiDatatypesCommentReportView( comment_report = this.toUni(d = d.comment_report), @@ -558,24 +530,6 @@ internal class Transformer : MapperGenerator { users_active_half_year = counts.users_active_half_year, ) - override fun toUni(d: X0DatatypesPersonMentionView): LemmyapiDatatypesPersonMentionView = - LemmyapiDatatypesPersonMentionView( - person_mention = this.toUni(d = d.person_mention), - comment = this.toUni(d = d.comment, d.counts), - creator = this.toUni(d = d.creator), - post = this.toUni(d = d.post, counts = X0DatatypesPostAggregates(-1, -1, -1, -1, -1, "")), - community = this.toUni(d = d.community, counts = X0DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), - recipient = this.toUni(d = d.recipient), - creator_banned_from_community = d.creator_banned_from_community, - banned_from_community = false, - creator_is_moderator = d.creator_is_moderator, - creator_is_admin = d.creator_is_admin, - subscribed = d.subscribed, - saved = d.saved, - creator_blocked = d.creator_blocked, - my_vote = d.my_vote, - ) - override fun toUni(d: X0DatatypesPostReportView): LemmyapiDatatypesPostReportView = LemmyapiDatatypesPostReportView( post_report = this.toUni(d = d.post_report), @@ -734,20 +688,6 @@ internal class Transformer : MapperGenerator { federation_pending = false, ) - override fun toUni(d: X0DatatypesCommentReply): LemmyapiDatatypesCommentReply = - LemmyapiDatatypesCommentReply( - id = d.id, - recipient_id = d.recipient_id, - comment_id = d.comment_id, - read = d.read, - published = d.published, - ) - - override fun toUni(d: X0DatatypesCommentReplyResponse): LemmyapiDatatypesCommentReplyResponse = - LemmyapiDatatypesCommentReplyResponse( - comment_reply_view = this.toUni(d = d.comment_reply_view), - ) - override fun toUni(d: X0DatatypesCommentReport): LemmyapiDatatypesCommentReport = LemmyapiDatatypesCommentReport( id = d.id, @@ -973,10 +913,6 @@ internal class Transformer : MapperGenerator { moderates = d.moderates.map { this.toUni(d = it) }, ) - override fun toUni(d: X0DatatypesGetPersonMentionsResponse): LemmyapiDatatypesGetPersonMentionsResponse = LemmyapiDatatypesGetPersonMentionsResponse( - mentions = d.mentions.map { this.toUni(d = it) }, - ) - override fun toUni(d: X0DatatypesGetPostResponse): LemmyapiDatatypesGetPostResponse = LemmyapiDatatypesGetPostResponse( post_view = this.toUni(d = d.post_view), @@ -991,9 +927,99 @@ internal class Transformer : MapperGenerator { next_page = d.next_page, ) - override fun toUni(d: X0DatatypesGetRepliesResponse): LemmyapiDatatypesGetRepliesResponse = - LemmyapiDatatypesGetRepliesResponse( - replies = d.replies.map { this.toUni(d = it) }, + fun toUni(d: X0DatatypesGetRepliesResponse): LemmyapiDatatypesListNotificationsResponse = + ListNotificationsResponse( + notifications = d.replies.map { this.toUni(d = it) }, + ) + + fun toUni(d: X0DatatypesCommentReplyView): NotificationView = + NotificationView( + notification = Notification( + id = d.comment_reply.id, + recipient_id = d.comment_reply.recipient_id, + comment_id = d.comment_reply.comment_id, + read = d.comment_reply.read, + published_at = d.comment_reply.published, + kind = NotificationType.Reply, + post_id = d.post.id, + ), + data = NotificationData.Comment( + comment = this.toUniCV(d), + ), + ) + + fun toUniCV(d: X0DatatypesCommentReplyView): LemmyapiDatatypesCommentView = + LemmyapiDatatypesCommentView( + comment = this.toUni(d = d.comment, d.counts), + creator = this.toUni(d = d.creator), + post = this.toUni(d = d.post, counts = X0DatatypesPostAggregates(-1, -1, -1, -1, -1, "")), + community = this.toUni(d = d.community, counts = X0DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), + creator_banned_from_community = d.creator_banned_from_community, + creator_is_moderator = false, + creator_is_admin = false, + post_tags = emptyList(), + creator_banned = d.creator.banned, + can_mod = false, + person_actions = PersonActions(if (d.creator_blocked) "" else null), + comment_actions = CommentActions(d.my_vote, null, if (d.saved) "" else null), + community_actions = CommunityActions(null, CommunityFollowerState.from(d.subscribed)), + ) + + fun toUni(d: X0DatatypesGetPersonMentionsResponse): LemmyapiDatatypesListNotificationsResponse = + LemmyapiDatatypesListNotificationsResponse( + notifications = d.mentions.map { this.toUni(d = it) }, + ) + + fun toUni(d: X0DatatypesPersonMentionView): NotificationView = + NotificationView( + notification = Notification( + id = d.person_mention.id, + recipient_id = d.person_mention.recipient_id, + comment_id = d.person_mention.comment_id, + read = d.person_mention.read, + published_at = d.person_mention.published, + kind = NotificationType.Mention, + post_id = d.post.id, + ), + data = NotificationData.Comment( + comment = this.toUniPV(d), + ), + ) + + fun toUniPV(d: X0DatatypesPersonMentionView): LemmyapiDatatypesCommentView = + LemmyapiDatatypesCommentView( + comment = this.toUni(d = d.comment, d.counts), + creator = this.toUni(d = d.creator), + post = this.toUni(d = d.post, counts = X0DatatypesPostAggregates(-1, -1, -1, -1, -1, "")), + community = this.toUni(d = d.community, counts = X0DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), + creator_banned_from_community = d.creator_banned_from_community, + creator_is_moderator = false, + creator_is_admin = false, + post_tags = emptyList(), + creator_banned = d.creator.banned, + can_mod = false, + person_actions = PersonActions(if (d.creator_blocked) "" else null), + comment_actions = CommentActions(d.my_vote, null, if (d.saved) "" else null), + community_actions = CommunityActions(null, CommunityFollowerState.from(d.subscribed)), + ) + + fun toUni(d: X0DatatypesPrivateMessagesResponse): LemmyapiDatatypesListNotificationsResponse = + LemmyapiDatatypesListNotificationsResponse( + notifications = d.private_messages.map { this.toUniPMV(d = it) }, + ) + + fun toUniPMV(d: X0DatatypesPrivateMessageView): NotificationView = + NotificationView( + notification = Notification( + id = d.private_message.id, + recipient_id = d.private_message.recipient_id, + read = d.private_message.read, + published_at = d.private_message.published, + kind = NotificationType.PrivateMessage, + ), + data = NotificationData.PrivateMessage( + private_message = this.toUni(d), + ), ) override fun toUni(d: X0DatatypesGetReportCountResponse): LemmyapiDatatypesGetReportCountResponse = LemmyapiDatatypesGetReportCountResponse( @@ -1005,7 +1031,7 @@ internal class Transformer : MapperGenerator { ) override fun toUni(d: X0DatatypesGetUnreadCountResponse): LemmyapiDatatypesGetUnreadCountResponse = LemmyapiDatatypesGetUnreadCountResponse( - count = d.replies + d.mentions + d.private_messages + count = d.replies + d.mentions + d.private_messages, ) override fun toUni(d: X0DatatypesGetUnreadRegistrationApplicationCountResponse): LemmyapiDatatypesGetUnreadRegistrationApplicationCountResponse = @@ -1360,20 +1386,6 @@ internal class Transformer : MapperGenerator { post_count = counts.post_count, ) - override fun toUni(d: X0DatatypesPersonMention): LemmyapiDatatypesPersonMention = - LemmyapiDatatypesPersonMention( - id = d.id, - recipient_id = d.recipient_id, - comment_id = d.comment_id, - read = d.read, - published = d.published, - ) - - override fun toUni(d: X0DatatypesPersonMentionResponse): LemmyapiDatatypesPersonMentionResponse = - LemmyapiDatatypesPersonMentionResponse( - person_mention_view = this.toUni(d = d.person_mention_view), - ) - override fun toUni(d: X0DatatypesPersonView): LemmyapiDatatypesPersonView = LemmyapiDatatypesPersonView( person = this.toUni(d = d.person, d.counts), @@ -1484,10 +1496,6 @@ internal class Transformer : MapperGenerator { private_message_view = this.toUni(d = d.private_message_view), ) - override fun toUni(d: X0DatatypesPrivateMessagesResponse): LemmyapiDatatypesPrivateMessagesResponse = LemmyapiDatatypesPrivateMessagesResponse( - private_messages = d.private_messages.map { this.toUni(d = it) }, - ) - override fun toUni(d: X0DatatypesPrivateMessageView): LemmyapiDatatypesPrivateMessageView = LemmyapiDatatypesPrivateMessageView( private_message = this.toUni(d = d.private_message), @@ -1948,14 +1956,6 @@ internal class Transformer : MapperGenerator { saved_only = d.saved_only, ) - override fun fromUni(d: LemmyapiDatatypesGetPersonMentions): X0DatatypesGetPersonMentions = - X0DatatypesGetPersonMentions( - sort = d.sort, - page = d.page, - limit = d.limit, - unread_only = d.unread_only, - ) - override fun fromUni(d: LemmyapiDatatypesGetPost): X0DatatypesGetPost = X0DatatypesGetPost( id = d.id, comment_id = d.comment_id, @@ -1971,17 +1971,24 @@ internal class Transformer : MapperGenerator { page_cursor = d.page_cursor, ) - override fun fromUni(d: LemmyapiDatatypesGetPrivateMessages): X0DatatypesGetPrivateMessages = - X0DatatypesGetPrivateMessages( + fun fromUniR(d: LemmyapiDatatypesListNotifications): X0DatatypesGetReplies = + X0DatatypesGetReplies( + sort = CommentSortType.New, + page = d.page, + limit = d.limit, unread_only = d.unread_only, + ) + + fun fromUniM(d: LemmyapiDatatypesListNotifications): X0DatatypesGetPersonMentions = + X0DatatypesGetPersonMentions( + sort = CommentSortType.New, page = d.page, limit = d.limit, - creator_id = d.creator_id, + unread_only = d.unread_only, ) - override fun fromUni(d: LemmyapiDatatypesGetReplies): X0DatatypesGetReplies = - X0DatatypesGetReplies( - sort = d.sort, + fun fromUniP(d: LemmyapiDatatypesListNotifications): X0DatatypesGetPrivateMessages = + X0DatatypesGetPrivateMessages( page = d.page, limit = d.limit, unread_only = d.unread_only, @@ -2053,13 +2060,18 @@ internal class Transformer : MapperGenerator { totp_2fa_token = d.totp_2fa_token, ) - override fun fromUni(d: LemmyapiDatatypesMarkCommentReplyAsRead): X0DatatypesMarkCommentReplyAsRead = X0DatatypesMarkCommentReplyAsRead( - comment_reply_id = d.comment_reply_id, + fun fromUniR(d: MarkNotificationAsRead): X0DatatypesMarkCommentReplyAsRead = X0DatatypesMarkCommentReplyAsRead( + comment_reply_id = d.notification_id, read = d.read, ) - override fun fromUni(d: LemmyapiDatatypesMarkPersonMentionAsRead): X0DatatypesMarkPersonMentionAsRead = X0DatatypesMarkPersonMentionAsRead( - person_mention_id = d.person_mention_id, + fun fromUniM(d: MarkNotificationAsRead): X0DatatypesMarkPersonMentionAsRead = X0DatatypesMarkPersonMentionAsRead( + person_mention_id = d.notification_id, + read = d.read, + ) + + fun fromUniP(d: MarkNotificationAsRead): X0DatatypesMarkPrivateMessageAsRead = X0DatatypesMarkPrivateMessageAsRead( + private_message_id = d.notification_id, read = d.read, ) @@ -2069,11 +2081,6 @@ internal class Transformer : MapperGenerator { read = d.read, ) - override fun fromUni(d: LemmyapiDatatypesMarkPrivateMessageAsRead): X0DatatypesMarkPrivateMessageAsRead = X0DatatypesMarkPrivateMessageAsRead( - private_message_id = d.private_message_id, - read = d.read, - ) - override fun fromUni(d: LemmyapiDatatypesPasswordChangeAfterReset): X0DatatypesPasswordChangeAfterReset = X0DatatypesPasswordChangeAfterReset( token = d.token, password = d.password, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt index 439d64d7..e17dbcab 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt @@ -3,8 +3,13 @@ package it.vercruysse.lemmyapi.v0.x19.x11 import io.github.z4kn4fein.semver.Version import io.ktor.client.HttpClient import it.vercruysse.lemmyapi.LemmyApiBaseController +import it.vercruysse.lemmyapi.datatypes.ListNotifications +import it.vercruysse.lemmyapi.datatypes.ListNotificationsResponse +import it.vercruysse.lemmyapi.datatypes.MarkNotificationAsRead import it.vercruysse.lemmyapi.dto.ExportUserSettingsResponse import it.vercruysse.lemmyapi.dto.ImportUserSettings +import it.vercruysse.lemmyapi.dto.NotificationDataType +import it.vercruysse.lemmyapi.dto.NotificationType internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, baseUrl: String, auth: String?) : LemmyApiBaseController(client, actualVersion, baseUrl, auth) { @@ -461,16 +466,6 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba ): Result = api.removeComment(transformer.fromUni(form)).map(transformer::toUni) - /** - * Mark a comment as read. - * - * @POST("comment/mark_as_read") - */ - override suspend fun markCommentReplyAsRead( - form: it.vercruysse.lemmyapi.datatypes.MarkCommentReplyAsRead, - ): Result = - api.markCommentReplyAsRead(transformer.fromUni(form)).map(transformer::toUni) - /** * Distinguishes a comment (speak as moderator) * @@ -541,16 +536,6 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba ): Result = api.createPrivateMessage(transformer.fromUni(form)).map(transformer::toUni) - /** - * Get / fetch private messages. - * - * @GET("private_message/list") - */ - override suspend fun getPrivateMessages( - form: it.vercruysse.lemmyapi.datatypes.GetPrivateMessages, - ): Result = - api.getPrivateMessages(transformer.fromUni(form)).map(transformer::toUni) - /** * Delete a private message. * @@ -561,16 +546,6 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba ): Result = api.deletePrivateMessage(transformer.fromUni(form)).map(transformer::toUni) - /** - * Mark a private message as read. - * - * @POST("private_message/mark_as_read") - */ - override suspend fun markPrivateMessageAsRead( - form: it.vercruysse.lemmyapi.datatypes.MarkPrivateMessageAsRead, - ): Result = - api.markPrivateMessageAsRead(transformer.fromUni(form)).map(transformer::toUni) - /** * Create a report for a private message. * @@ -618,34 +593,44 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba api.getCaptcha().map(transformer::toUni) /** - * Get mentions for your user. - * - * @GET("user/mention") + * Mark a notification as read */ - override suspend fun getPersonMentions( - form: it.vercruysse.lemmyapi.datatypes.GetPersonMentions, - ): Result = - api.getPersonMentions(transformer.fromUni(form)).map(transformer::toUni) - - /** - * Mark a person mention as read. - * - * @POST("user/mention/mark_as_read") - */ - override suspend fun markPersonMentionAsRead( - form: it.vercruysse.lemmyapi.datatypes.MarkPersonMentionAsRead, - ): Result = - api.markPersonMentionAsRead(transformer.fromUni(form)).map(transformer::toUni) + override suspend fun markNotificationAsRead(form: MarkNotificationAsRead): Result = + when (form._kind) { + NotificationType.Mention -> api.markPersonMentionAsRead(transformer.fromUniM(form)).map { } + NotificationType.Reply -> api.markCommentReplyAsRead(transformer.fromUniR(form)).map { } + NotificationType.PrivateMessage -> api.markPrivateMessageAsRead(transformer.fromUniP(form)).map { } + NotificationType.Subscribed -> notSupported() + null -> notSupported() + } /** - * Get comment replies. - * - * @GET("user/replies") + * List notifications. */ - override suspend fun getReplies( - form: it.vercruysse.lemmyapi.datatypes.GetReplies, - ): Result = - api.getReplies(transformer.fromUni(form)).map(transformer::toUni) + override suspend fun listNotifications(form: ListNotifications): Result = + when (form.type_) { + NotificationDataType.All -> + runCatching { + val resReplies = api.getReplies(transformer.fromUniR(form)).map(transformer::toUni).getOrThrow() + val mentionReplies = api.getPersonMentions(transformer.fromUniM(form)).map(transformer::toUni).getOrThrow() + val privateMessages = api.getPrivateMessages(transformer.fromUniP(form)).map(transformer::toUni).getOrThrow() + + ListNotificationsResponse( + buildList { + addAll(resReplies.notifications) + addAll(mentionReplies.notifications) + addAll(privateMessages.notifications) + }, + ) + } + NotificationDataType.Reply -> + api.getReplies(transformer.fromUniR(form)).map(transformer::toUni) + NotificationDataType.Mention -> + api.getPersonMentions(transformer.fromUniM(form)).map(transformer::toUni) + NotificationDataType.PrivateMessage -> + api.getPrivateMessages(transformer.fromUniP(form)).map(transformer::toUni) + NotificationDataType.Subscribed -> Result.success(ListNotificationsResponse(emptyList())) + } /** * Ban a person from your site. @@ -712,8 +697,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @POST("user/mark_all_as_read") */ - override suspend fun markAllAsRead(): Result = - api.markAllAsRead().map(transformer::toUni) + override suspend fun markAllNotificationsAsRead(): Result = + api.markAllAsRead().map {} /** * Save your user settings. diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt index 39425999..0f221e99 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt @@ -21,9 +21,6 @@ internal interface MapperGenerator { fun toUni(d: BlockPersonResponse): it.vercruysse.lemmyapi.datatypes.BlockPersonResponse fun toUni(d: CaptchaResponse): it.vercruysse.lemmyapi.datatypes.CaptchaResponse fun toUni(d: Comment, counts: CommentAggregates): it.vercruysse.lemmyapi.datatypes.Comment - fun toUni(d: CommentReply): it.vercruysse.lemmyapi.datatypes.CommentReply - fun toUni(d: CommentReplyResponse): it.vercruysse.lemmyapi.datatypes.CommentReplyResponse - fun toUni(d: CommentReplyView): it.vercruysse.lemmyapi.datatypes.CommentReplyView fun toUni(d: CommentReport): it.vercruysse.lemmyapi.datatypes.CommentReport fun toUni(d: CommentReportResponse): it.vercruysse.lemmyapi.datatypes.CommentReportResponse fun toUni(d: CommentReportView): it.vercruysse.lemmyapi.datatypes.CommentReportView @@ -46,10 +43,8 @@ internal interface MapperGenerator { fun toUni(d: GetFederatedInstancesResponse): it.vercruysse.lemmyapi.datatypes.GetFederatedInstancesResponse fun toUni(d: GetModlogResponse): it.vercruysse.lemmyapi.datatypes.GetModlogResponse fun toUni(d: GetPersonDetailsResponse): it.vercruysse.lemmyapi.datatypes.GetPersonDetailsResponse - fun toUni(d: GetPersonMentionsResponse): it.vercruysse.lemmyapi.datatypes.GetPersonMentionsResponse fun toUni(d: GetPostResponse): it.vercruysse.lemmyapi.datatypes.GetPostResponse fun toUni(d: GetPostsResponse): it.vercruysse.lemmyapi.datatypes.GetPostsResponse - fun toUni(d: GetRepliesResponse): it.vercruysse.lemmyapi.datatypes.GetRepliesResponse fun toUni(d: GetReportCountResponse): it.vercruysse.lemmyapi.datatypes.GetReportCountResponse fun toUni(d: GetSiteMetadataResponse): it.vercruysse.lemmyapi.datatypes.GetSiteMetadataResponse fun toUni(d: GetSiteResponse): it.vercruysse.lemmyapi.datatypes.GetSiteResponse @@ -98,9 +93,6 @@ internal interface MapperGenerator { fun toUni(d: ModTransferCommunityView): it.vercruysse.lemmyapi.datatypes.ModTransferCommunityView fun toUni(d: MyUserInfo): it.vercruysse.lemmyapi.datatypes.MyUserInfo fun toUni(d: Person, counts: PersonAggregates): it.vercruysse.lemmyapi.datatypes.Person - fun toUni(d: PersonMention): it.vercruysse.lemmyapi.datatypes.PersonMention - fun toUni(d: PersonMentionResponse): it.vercruysse.lemmyapi.datatypes.PersonMentionResponse - fun toUni(d: PersonMentionView): it.vercruysse.lemmyapi.datatypes.PersonMentionView fun toUni(d: PersonView): it.vercruysse.lemmyapi.datatypes.PersonView fun toUni(d: Post, counts: PostAggregates): it.vercruysse.lemmyapi.datatypes.Post fun toUni(d: PostReport): it.vercruysse.lemmyapi.datatypes.PostReport @@ -113,7 +105,6 @@ internal interface MapperGenerator { fun toUni(d: PrivateMessageReportResponse): it.vercruysse.lemmyapi.datatypes.PrivateMessageReportResponse fun toUni(d: PrivateMessageReportView): it.vercruysse.lemmyapi.datatypes.PrivateMessageReportView fun toUni(d: PrivateMessageResponse): it.vercruysse.lemmyapi.datatypes.PrivateMessageResponse - fun toUni(d: PrivateMessagesResponse): it.vercruysse.lemmyapi.datatypes.PrivateMessagesResponse fun toUni(d: PrivateMessageView): it.vercruysse.lemmyapi.datatypes.PrivateMessageView fun toUni(d: ReadableFederationState): it.vercruysse.lemmyapi.datatypes.ReadableFederationState fun toUni(d: RegistrationApplication): it.vercruysse.lemmyapi.datatypes.RegistrationApplication @@ -169,12 +160,9 @@ internal interface MapperGenerator { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetCommunity): GetCommunity fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetModlog): GetModlog fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPersonDetails): GetPersonDetails - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPersonMentions): GetPersonMentions fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPost): GetPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPosts): GetPosts - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPrivateMessages): GetPrivateMessages fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetRegistrationApplication): GetRegistrationApplication - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetReplies): GetReplies fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetReportCount): GetReportCount fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetSiteMetadata): GetSiteMetadata fun fromUni(d: it.vercruysse.lemmyapi.datatypes.HideCommunity): HideCommunity @@ -189,10 +177,7 @@ internal interface MapperGenerator { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListRegistrationApplications): ListRegistrationApplications fun fromUni(d: it.vercruysse.lemmyapi.datatypes.LockPost): LockPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.Login): Login - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkCommentReplyAsRead): MarkCommentReplyAsRead - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkPersonMentionAsRead): MarkPersonMentionAsRead fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkPostAsRead): MarkPostAsRead - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkPrivateMessageAsRead): MarkPrivateMessageAsRead fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset): PasswordChangeAfterReset fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordReset): PasswordReset fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgeComment): PurgeComment diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt index ca60ba42..7d9222da 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt @@ -2,10 +2,17 @@ package it.vercruysse.lemmyapi.v0.x19.x11 import it.vercruysse.lemmyapi.datatypes.CommentActions import it.vercruysse.lemmyapi.datatypes.CommunityActions +import it.vercruysse.lemmyapi.datatypes.ListNotificationsResponse +import it.vercruysse.lemmyapi.datatypes.MarkNotificationAsRead +import it.vercruysse.lemmyapi.datatypes.Notification +import it.vercruysse.lemmyapi.datatypes.NotificationData +import it.vercruysse.lemmyapi.datatypes.NotificationView import it.vercruysse.lemmyapi.datatypes.PersonActions import it.vercruysse.lemmyapi.datatypes.PostActions +import it.vercruysse.lemmyapi.dto.CommentSortType import it.vercruysse.lemmyapi.dto.CommunityFollowerState import it.vercruysse.lemmyapi.dto.FederationMode +import it.vercruysse.lemmyapi.dto.NotificationType import it.vercruysse.lemmyapi.dto.SortType import it.vercruysse.lemmyapi.dto.VoteShow import it.vercruysse.lemmyapi.utils.toAt @@ -34,9 +41,6 @@ import it.vercruysse.lemmyapi.datatypes.BlockPersonResponse as LemmyapiDatatypes import it.vercruysse.lemmyapi.datatypes.CaptchaResponse as LemmyapiDatatypesCaptchaResponse import it.vercruysse.lemmyapi.datatypes.ChangePassword as LemmyapiDatatypesChangePassword import it.vercruysse.lemmyapi.datatypes.Comment as LemmyapiDatatypesComment -import it.vercruysse.lemmyapi.datatypes.CommentReply as LemmyapiDatatypesCommentReply -import it.vercruysse.lemmyapi.datatypes.CommentReplyResponse as LemmyapiDatatypesCommentReplyResponse -import it.vercruysse.lemmyapi.datatypes.CommentReplyView as LemmyapiDatatypesCommentReplyView import it.vercruysse.lemmyapi.datatypes.CommentReport as LemmyapiDatatypesCommentReport import it.vercruysse.lemmyapi.datatypes.CommentReportResponse as LemmyapiDatatypesCommentReportResponse import it.vercruysse.lemmyapi.datatypes.CommentReportView as LemmyapiDatatypesCommentReportView @@ -90,16 +94,11 @@ import it.vercruysse.lemmyapi.datatypes.GetModlog as LemmyapiDatatypesGetModlog import it.vercruysse.lemmyapi.datatypes.GetModlogResponse as LemmyapiDatatypesGetModlogResponse import it.vercruysse.lemmyapi.datatypes.GetPersonDetails as LemmyapiDatatypesGetPersonDetails import it.vercruysse.lemmyapi.datatypes.GetPersonDetailsResponse as LemmyapiDatatypesGetPersonDetailsResponse -import it.vercruysse.lemmyapi.datatypes.GetPersonMentions as LemmyapiDatatypesGetPersonMentions -import it.vercruysse.lemmyapi.datatypes.GetPersonMentionsResponse as LemmyapiDatatypesGetPersonMentionsResponse import it.vercruysse.lemmyapi.datatypes.GetPost as LemmyapiDatatypesGetPost import it.vercruysse.lemmyapi.datatypes.GetPostResponse as LemmyapiDatatypesGetPostResponse import it.vercruysse.lemmyapi.datatypes.GetPosts as LemmyapiDatatypesGetPosts import it.vercruysse.lemmyapi.datatypes.GetPostsResponse as LemmyapiDatatypesGetPostsResponse -import it.vercruysse.lemmyapi.datatypes.GetPrivateMessages as LemmyapiDatatypesGetPrivateMessages import it.vercruysse.lemmyapi.datatypes.GetRegistrationApplication as LemmyapiDatatypesGetRegistrationApplication -import it.vercruysse.lemmyapi.datatypes.GetReplies as LemmyapiDatatypesGetReplies -import it.vercruysse.lemmyapi.datatypes.GetRepliesResponse as LemmyapiDatatypesGetRepliesResponse import it.vercruysse.lemmyapi.datatypes.GetReportCount as LemmyapiDatatypesGetReportCount import it.vercruysse.lemmyapi.datatypes.GetReportCountResponse as LemmyapiDatatypesGetReportCountResponse import it.vercruysse.lemmyapi.datatypes.GetSiteMetadata as LemmyapiDatatypesGetSiteMetadata @@ -120,6 +119,8 @@ import it.vercruysse.lemmyapi.datatypes.ListCommunities as LemmyapiDatatypesList import it.vercruysse.lemmyapi.datatypes.ListCommunitiesResponse as LemmyapiDatatypesListCommunitiesResponse import it.vercruysse.lemmyapi.datatypes.ListMedia as LemmyapiDatatypesListMedia import it.vercruysse.lemmyapi.datatypes.ListMediaResponse as LemmyapiDatatypesListMediaResponse +import it.vercruysse.lemmyapi.datatypes.ListNotifications as LemmyapiDatatypesListNotifications +import it.vercruysse.lemmyapi.datatypes.ListNotificationsResponse as LemmyapiDatatypesListNotificationsResponse import it.vercruysse.lemmyapi.datatypes.ListPostLikes as LemmyapiDatatypesListPostLikes import it.vercruysse.lemmyapi.datatypes.ListPostLikesResponse as LemmyapiDatatypesListPostLikesResponse import it.vercruysse.lemmyapi.datatypes.ListRegistrationApplications as LemmyapiDatatypesListRegistrationApplications @@ -135,10 +136,7 @@ import it.vercruysse.lemmyapi.datatypes.LockPost as LemmyapiDatatypesLockPost import it.vercruysse.lemmyapi.datatypes.Login as LemmyapiDatatypesLogin import it.vercruysse.lemmyapi.datatypes.LoginResponse as LemmyapiDatatypesLoginResponse import it.vercruysse.lemmyapi.datatypes.LoginToken as LemmyapiDatatypesLoginToken -import it.vercruysse.lemmyapi.datatypes.MarkCommentReplyAsRead as LemmyapiDatatypesMarkCommentReplyAsRead -import it.vercruysse.lemmyapi.datatypes.MarkPersonMentionAsRead as LemmyapiDatatypesMarkPersonMentionAsRead import it.vercruysse.lemmyapi.datatypes.MarkPostAsRead as LemmyapiDatatypesMarkPostAsRead -import it.vercruysse.lemmyapi.datatypes.MarkPrivateMessageAsRead as LemmyapiDatatypesMarkPrivateMessageAsRead import it.vercruysse.lemmyapi.datatypes.ModAdd as LemmyapiDatatypesModAdd import it.vercruysse.lemmyapi.datatypes.ModAddCommunity as LemmyapiDatatypesModAddCommunity import it.vercruysse.lemmyapi.datatypes.ModAddCommunityView as LemmyapiDatatypesModAddCommunityView @@ -165,9 +163,6 @@ import it.vercruysse.lemmyapi.datatypes.MyUserInfo as LemmyapiDatatypesMyUserInf import it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset as LemmyapiDatatypesPasswordChangeAfterReset import it.vercruysse.lemmyapi.datatypes.PasswordReset as LemmyapiDatatypesPasswordReset import it.vercruysse.lemmyapi.datatypes.Person as LemmyapiDatatypesPerson -import it.vercruysse.lemmyapi.datatypes.PersonMention as LemmyapiDatatypesPersonMention -import it.vercruysse.lemmyapi.datatypes.PersonMentionResponse as LemmyapiDatatypesPersonMentionResponse -import it.vercruysse.lemmyapi.datatypes.PersonMentionView as LemmyapiDatatypesPersonMentionView import it.vercruysse.lemmyapi.datatypes.PersonView as LemmyapiDatatypesPersonView import it.vercruysse.lemmyapi.datatypes.Post as LemmyapiDatatypesPost import it.vercruysse.lemmyapi.datatypes.PostReport as LemmyapiDatatypesPostReport @@ -181,7 +176,6 @@ import it.vercruysse.lemmyapi.datatypes.PrivateMessageReportResponse as Lemmyapi import it.vercruysse.lemmyapi.datatypes.PrivateMessageReportView as LemmyapiDatatypesPrivateMessageReportView import it.vercruysse.lemmyapi.datatypes.PrivateMessageResponse as LemmyapiDatatypesPrivateMessageResponse import it.vercruysse.lemmyapi.datatypes.PrivateMessageView as LemmyapiDatatypesPrivateMessageView -import it.vercruysse.lemmyapi.datatypes.PrivateMessagesResponse as LemmyapiDatatypesPrivateMessagesResponse import it.vercruysse.lemmyapi.datatypes.PurgeComment as LemmyapiDatatypesPurgeComment import it.vercruysse.lemmyapi.datatypes.PurgeCommunity as LemmyapiDatatypesPurgeCommunity import it.vercruysse.lemmyapi.datatypes.PurgePerson as LemmyapiDatatypesPurgePerson @@ -242,8 +236,6 @@ import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.CaptchaResponse as X11Datatyp import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.ChangePassword as X11DatatypesChangePassword import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.Comment as X11DatatypesComment import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.CommentAggregates as X11DatatypesCommentAggregates -import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.CommentReply as X11DatatypesCommentReply -import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.CommentReplyResponse as X11DatatypesCommentReplyResponse import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.CommentReplyView as X11DatatypesCommentReplyView import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.CommentReport as X11DatatypesCommentReport import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.CommentReportResponse as X11DatatypesCommentReportResponse @@ -379,8 +371,6 @@ import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.PasswordChangeAfterReset as X import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.PasswordReset as X11DatatypesPasswordReset import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.Person as X11DatatypesPerson import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.PersonAggregates as X11DatatypesPersonAggregates -import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.PersonMention as X11DatatypesPersonMention -import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.PersonMentionResponse as X11DatatypesPersonMentionResponse import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.PersonMentionView as X11DatatypesPersonMentionView import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.PersonView as X11DatatypesPersonView import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.Post as X11DatatypesPost @@ -557,38 +547,6 @@ internal class Transformer : MapperGenerator { federation_pending = false, ) - override fun toUni(d: X11DatatypesCommentReply): LemmyapiDatatypesCommentReply = - LemmyapiDatatypesCommentReply( - id = d.id, - recipient_id = d.recipient_id, - comment_id = d.comment_id, - read = d.read, - published = d.published, - ) - - override fun toUni(d: X11DatatypesCommentReplyResponse): LemmyapiDatatypesCommentReplyResponse = - LemmyapiDatatypesCommentReplyResponse( - comment_reply_view = this.toUni(d = d.comment_reply_view), - ) - - override fun toUni(d: X11DatatypesCommentReplyView): LemmyapiDatatypesCommentReplyView = - LemmyapiDatatypesCommentReplyView( - comment_reply = this.toUni(d = d.comment_reply), - comment = this.toUni(d = d.comment, d.counts), - creator = this.toUni(d = d.creator), - post = this.toUni(d = d.post, counts = X11DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), - community = this.toUni(d = d.community, counts = X11DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), - recipient = this.toUni(d = d.recipient), - creator_banned_from_community = d.creator_banned_from_community, - banned_from_community = d.banned_from_community, - creator_is_moderator = d.creator_is_moderator, - creator_is_admin = d.creator_is_admin, - subscribed = d.subscribed, - saved = d.saved, - creator_blocked = d.creator_blocked, - my_vote = d.my_vote, - ) - override fun toUni(d: X11DatatypesCommentReport): LemmyapiDatatypesCommentReport = LemmyapiDatatypesCommentReport( id = d.id, @@ -889,10 +847,6 @@ internal class Transformer : MapperGenerator { moderates = d.moderates.map { this.toUni(d = it) }, ) - override fun toUni(d: X11DatatypesGetPersonMentionsResponse): LemmyapiDatatypesGetPersonMentionsResponse = LemmyapiDatatypesGetPersonMentionsResponse( - mentions = d.mentions.map { this.toUni(d = it) }, - ) - override fun toUni(d: X11DatatypesGetPostResponse): LemmyapiDatatypesGetPostResponse = LemmyapiDatatypesGetPostResponse( post_view = this.toUni(d = d.post_view), @@ -907,9 +861,99 @@ internal class Transformer : MapperGenerator { next_page = d.next_page, ) - override fun toUni(d: X11DatatypesGetRepliesResponse): LemmyapiDatatypesGetRepliesResponse = - LemmyapiDatatypesGetRepliesResponse( - replies = d.replies.map { this.toUni(d = it) }, + fun toUni(d: X11DatatypesGetRepliesResponse): LemmyapiDatatypesListNotificationsResponse = + ListNotificationsResponse( + notifications = d.replies.map { this.toUni(d = it) }, + ) + + fun toUni(d: X11DatatypesCommentReplyView): NotificationView = + NotificationView( + notification = Notification( + id = d.comment_reply.id, + recipient_id = d.comment_reply.recipient_id, + comment_id = d.comment_reply.comment_id, + read = d.comment_reply.read, + published_at = d.comment_reply.published, + kind = NotificationType.Reply, + post_id = d.post.id, + ), + data = NotificationData.Comment( + comment = this.toUniCV(d), + ), + ) + + fun toUniCV(d: X11DatatypesCommentReplyView): LemmyapiDatatypesCommentView = + LemmyapiDatatypesCommentView( + comment = this.toUni(d = d.comment, d.counts), + creator = this.toUni(d = d.creator), + post = this.toUni(d = d.post, counts = X11DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), + community = this.toUni(d = d.community, counts = X11DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), + creator_banned_from_community = d.creator_banned_from_community, + creator_is_moderator = d.creator_is_moderator, + creator_is_admin = d.creator_is_admin, + post_tags = emptyList(), + creator_banned = d.creator.banned, + can_mod = false, + person_actions = PersonActions(if (d.creator_blocked) "" else null), + comment_actions = CommentActions(d.my_vote, null, if (d.saved) "" else null), + community_actions = CommunityActions(null, CommunityFollowerState.from(d.subscribed)), + ) + + fun toUni(d: X11DatatypesGetPersonMentionsResponse): LemmyapiDatatypesListNotificationsResponse = + LemmyapiDatatypesListNotificationsResponse( + notifications = d.mentions.map { this.toUni(d = it) }, + ) + + fun toUni(d: X11DatatypesPersonMentionView): NotificationView = + NotificationView( + notification = Notification( + id = d.person_mention.id, + recipient_id = d.person_mention.recipient_id, + comment_id = d.person_mention.comment_id, + read = d.person_mention.read, + published_at = d.person_mention.published, + kind = NotificationType.Mention, + post_id = d.post.id, + ), + data = NotificationData.Comment( + comment = this.toUniPV(d), + ), + ) + + fun toUniPV(d: X11DatatypesPersonMentionView): LemmyapiDatatypesCommentView = + LemmyapiDatatypesCommentView( + comment = this.toUni(d = d.comment, d.counts), + creator = this.toUni(d = d.creator), + post = this.toUni(d = d.post, counts = X11DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), + community = this.toUni(d = d.community, counts = X11DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), + creator_banned_from_community = d.creator_banned_from_community, + creator_is_moderator = d.creator_is_moderator, + creator_is_admin = d.creator_is_admin, + post_tags = emptyList(), + creator_banned = d.creator.banned, + can_mod = false, + person_actions = PersonActions(if (d.creator_blocked) "" else null), + comment_actions = CommentActions(d.my_vote, null, if (d.saved) "" else null), + community_actions = CommunityActions(null, CommunityFollowerState.from(d.subscribed)), + ) + + fun toUni(d: X11DatatypesPrivateMessagesResponse): LemmyapiDatatypesListNotificationsResponse = + LemmyapiDatatypesListNotificationsResponse( + notifications = d.private_messages.map { this.toUniPMV(d = it) }, + ) + + fun toUniPMV(d: X11DatatypesPrivateMessageView): NotificationView = + NotificationView( + notification = Notification( + id = d.private_message.id, + recipient_id = d.private_message.recipient_id, + read = d.private_message.read, + published_at = d.private_message.published, + kind = NotificationType.PrivateMessage, + ), + data = NotificationData.PrivateMessage( + private_message = this.toUni(d), + ), ) override fun toUni(d: X11DatatypesGetReportCountResponse): LemmyapiDatatypesGetReportCountResponse = LemmyapiDatatypesGetReportCountResponse( @@ -938,7 +982,7 @@ internal class Transformer : MapperGenerator { ) override fun toUni(d: X11DatatypesGetUnreadCountResponse): LemmyapiDatatypesGetUnreadCountResponse = LemmyapiDatatypesGetUnreadCountResponse( - count = d.replies + d.mentions + d.private_messages + count = d.replies + d.mentions + d.private_messages, ) override fun toUni(d: X11DatatypesGetUnreadRegistrationApplicationCountResponse): LemmyapiDatatypesGetUnreadRegistrationApplicationCountResponse = @@ -1393,38 +1437,6 @@ internal class Transformer : MapperGenerator { comment_count = counts.comment_count, ) - override fun toUni(d: X11DatatypesPersonMention): LemmyapiDatatypesPersonMention = - LemmyapiDatatypesPersonMention( - id = d.id, - recipient_id = d.recipient_id, - comment_id = d.comment_id, - read = d.read, - published = d.published, - ) - - override fun toUni(d: X11DatatypesPersonMentionResponse): LemmyapiDatatypesPersonMentionResponse = - LemmyapiDatatypesPersonMentionResponse( - person_mention_view = this.toUni(d = d.person_mention_view), - ) - - override fun toUni(d: X11DatatypesPersonMentionView): LemmyapiDatatypesPersonMentionView = - LemmyapiDatatypesPersonMentionView( - person_mention = this.toUni(d = d.person_mention), - comment = this.toUni(d = d.comment, d.counts), - creator = this.toUni(d = d.creator), - post = this.toUni(d = d.post, counts = X11DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), - community = this.toUni(d = d.community, counts = X11DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), - recipient = this.toUni(d = d.recipient), - creator_banned_from_community = d.creator_banned_from_community, - banned_from_community = d.banned_from_community, - creator_is_moderator = d.creator_is_moderator, - creator_is_admin = d.creator_is_admin, - subscribed = d.subscribed, - saved = d.saved, - creator_blocked = d.creator_blocked, - my_vote = d.my_vote, - ) - override fun toUni(d: X11DatatypesPersonView): LemmyapiDatatypesPersonView = LemmyapiDatatypesPersonView( person = this.toUni(d = d.person, d.counts), @@ -1571,10 +1583,6 @@ internal class Transformer : MapperGenerator { private_message_view = this.toUni(d = d.private_message_view), ) - override fun toUni(d: X11DatatypesPrivateMessagesResponse): LemmyapiDatatypesPrivateMessagesResponse = LemmyapiDatatypesPrivateMessagesResponse( - private_messages = d.private_messages.map { this.toUni(d = it) }, - ) - override fun toUni(d: X11DatatypesPrivateMessageView): LemmyapiDatatypesPrivateMessageView = LemmyapiDatatypesPrivateMessageView( private_message = this.toUni(d = d.private_message), @@ -2062,14 +2070,6 @@ internal class Transformer : MapperGenerator { saved_only = d.saved_only, ) - override fun fromUni(d: LemmyapiDatatypesGetPersonMentions): X11DatatypesGetPersonMentions = - X11DatatypesGetPersonMentions( - sort = d.sort, - page = d.page, - limit = d.limit, - unread_only = d.unread_only, - ) - override fun fromUni(d: LemmyapiDatatypesGetPost): X11DatatypesGetPost = X11DatatypesGetPost( id = d.id, comment_id = d.comment_id, @@ -2088,26 +2088,33 @@ internal class Transformer : MapperGenerator { page_cursor = d.page_cursor, ) - override fun fromUni(d: LemmyapiDatatypesGetPrivateMessages): X11DatatypesGetPrivateMessages = - X11DatatypesGetPrivateMessages( - unread_only = d.unread_only, + fun fromUniR(d: LemmyapiDatatypesListNotifications): X11DatatypesGetReplies = + X11DatatypesGetReplies( + sort = CommentSortType.New, page = d.page, limit = d.limit, - creator_id = d.creator_id, + unread_only = d.unread_only, ) - override fun fromUni(d: LemmyapiDatatypesGetRegistrationApplication): X11DatatypesGetRegistrationApplication = X11DatatypesGetRegistrationApplication( - person_id = d.person_id, - ) + fun fromUniM(d: LemmyapiDatatypesListNotifications): X11DatatypesGetPersonMentions = + X11DatatypesGetPersonMentions( + sort = CommentSortType.New, + page = d.page, + limit = d.limit, + unread_only = d.unread_only, + ) - override fun fromUni(d: LemmyapiDatatypesGetReplies): X11DatatypesGetReplies = - X11DatatypesGetReplies( - sort = d.sort, + fun fromUniP(d: LemmyapiDatatypesListNotifications): X11DatatypesGetPrivateMessages = + X11DatatypesGetPrivateMessages( page = d.page, limit = d.limit, unread_only = d.unread_only, ) + override fun fromUni(d: LemmyapiDatatypesGetRegistrationApplication): X11DatatypesGetRegistrationApplication = X11DatatypesGetRegistrationApplication( + person_id = d.person_id, + ) + override fun fromUni(d: LemmyapiDatatypesGetReportCount): X11DatatypesGetReportCount = X11DatatypesGetReportCount( community_id = d.community_id, @@ -2201,13 +2208,18 @@ internal class Transformer : MapperGenerator { totp_2fa_token = d.totp_2fa_token, ) - override fun fromUni(d: LemmyapiDatatypesMarkCommentReplyAsRead): X11DatatypesMarkCommentReplyAsRead = X11DatatypesMarkCommentReplyAsRead( - comment_reply_id = d.comment_reply_id, + fun fromUniR(d: MarkNotificationAsRead): X11DatatypesMarkCommentReplyAsRead = X11DatatypesMarkCommentReplyAsRead( + comment_reply_id = d.notification_id, read = d.read, ) - override fun fromUni(d: LemmyapiDatatypesMarkPersonMentionAsRead): X11DatatypesMarkPersonMentionAsRead = X11DatatypesMarkPersonMentionAsRead( - person_mention_id = d.person_mention_id, + fun fromUniM(d: MarkNotificationAsRead): X11DatatypesMarkPersonMentionAsRead = X11DatatypesMarkPersonMentionAsRead( + person_mention_id = d.notification_id, + read = d.read, + ) + + fun fromUniP(d: MarkNotificationAsRead): X11DatatypesMarkPrivateMessageAsRead = X11DatatypesMarkPrivateMessageAsRead( + private_message_id = d.notification_id, read = d.read, ) @@ -2217,11 +2229,6 @@ internal class Transformer : MapperGenerator { read = d.read, ) - override fun fromUni(d: LemmyapiDatatypesMarkPrivateMessageAsRead): X11DatatypesMarkPrivateMessageAsRead = X11DatatypesMarkPrivateMessageAsRead( - private_message_id = d.private_message_id, - read = d.read, - ) - override fun fromUni(d: LemmyapiDatatypesPasswordChangeAfterReset): X11DatatypesPasswordChangeAfterReset = X11DatatypesPasswordChangeAfterReset( token = d.token, password = d.password, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt index 7625fbb2..57a9e47f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt @@ -3,8 +3,13 @@ package it.vercruysse.lemmyapi.v0.x19.x3 import io.github.z4kn4fein.semver.Version import io.ktor.client.HttpClient import it.vercruysse.lemmyapi.LemmyApiBaseController +import it.vercruysse.lemmyapi.datatypes.ListNotifications +import it.vercruysse.lemmyapi.datatypes.ListNotificationsResponse +import it.vercruysse.lemmyapi.datatypes.MarkNotificationAsRead import it.vercruysse.lemmyapi.dto.ExportUserSettingsResponse import it.vercruysse.lemmyapi.dto.ImportUserSettings +import it.vercruysse.lemmyapi.dto.NotificationDataType +import it.vercruysse.lemmyapi.dto.NotificationType // Based on tags/0.19.3-alpha.6 internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, baseUrl: String, auth: String?) : @@ -462,16 +467,6 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba ): Result = api.removeComment(transformer.fromUni(form)).map(transformer::toUni) - /** - * Mark a comment as read. - * - * @POST("comment/mark_as_read") - */ - override suspend fun markCommentReplyAsRead( - form: it.vercruysse.lemmyapi.datatypes.MarkCommentReplyAsRead, - ): Result = - api.markCommentReplyAsRead(transformer.fromUni(form)).map(transformer::toUni) - /** * Distinguishes a comment (speak as moderator) * @@ -542,16 +537,6 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba ): Result = api.createPrivateMessage(transformer.fromUni(form)).map(transformer::toUni) - /** - * Get / fetch private messages. - * - * @GET("private_message/list") - */ - override suspend fun getPrivateMessages( - form: it.vercruysse.lemmyapi.datatypes.GetPrivateMessages, - ): Result = - api.getPrivateMessages(transformer.fromUni(form)).map(transformer::toUni) - /** * Delete a private message. * @@ -562,16 +547,6 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba ): Result = api.deletePrivateMessage(transformer.fromUni(form)).map(transformer::toUni) - /** - * Mark a private message as read. - * - * @POST("private_message/mark_as_read") - */ - override suspend fun markPrivateMessageAsRead( - form: it.vercruysse.lemmyapi.datatypes.MarkPrivateMessageAsRead, - ): Result = - api.markPrivateMessageAsRead(transformer.fromUni(form)).map(transformer::toUni) - /** * Create a report for a private message. * @@ -619,34 +594,44 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba api.getCaptcha().map(transformer::toUni) /** - * Get mentions for your user. - * - * @GET("user/mention") + * Mark a notification as read */ - override suspend fun getPersonMentions( - form: it.vercruysse.lemmyapi.datatypes.GetPersonMentions, - ): Result = - api.getPersonMentions(transformer.fromUni(form)).map(transformer::toUni) - - /** - * Mark a person mention as read. - * - * @POST("user/mention/mark_as_read") - */ - override suspend fun markPersonMentionAsRead( - form: it.vercruysse.lemmyapi.datatypes.MarkPersonMentionAsRead, - ): Result = - api.markPersonMentionAsRead(transformer.fromUni(form)).map(transformer::toUni) + override suspend fun markNotificationAsRead(form: MarkNotificationAsRead): Result = + when (form._kind) { + NotificationType.Mention -> api.markPersonMentionAsRead(transformer.fromUniM(form)).map { } + NotificationType.Reply -> api.markCommentReplyAsRead(transformer.fromUniR(form)).map { } + NotificationType.PrivateMessage -> api.markPrivateMessageAsRead(transformer.fromUniP(form)).map { } + NotificationType.Subscribed -> notSupported() + null -> notSupported() + } /** - * Get comment replies. - * - * @GET("user/replies") + * List notifications. */ - override suspend fun getReplies( - form: it.vercruysse.lemmyapi.datatypes.GetReplies, - ): Result = - api.getReplies(transformer.fromUni(form)).map(transformer::toUni) + override suspend fun listNotifications(form: ListNotifications): Result = + when (form.type_) { + NotificationDataType.All -> + runCatching { + val resReplies = api.getReplies(transformer.fromUniR(form)).map(transformer::toUni).getOrThrow() + val mentionReplies = api.getPersonMentions(transformer.fromUniM(form)).map(transformer::toUni).getOrThrow() + val privateMessages = api.getPrivateMessages(transformer.fromUniP(form)).map(transformer::toUni).getOrThrow() + + ListNotificationsResponse( + buildList { + addAll(resReplies.notifications) + addAll(mentionReplies.notifications) + addAll(privateMessages.notifications) + }, + ) + } + NotificationDataType.Reply -> + api.getReplies(transformer.fromUniR(form)).map(transformer::toUni) + NotificationDataType.Mention -> + api.getPersonMentions(transformer.fromUniM(form)).map(transformer::toUni) + NotificationDataType.PrivateMessage -> + api.getPrivateMessages(transformer.fromUniP(form)).map(transformer::toUni) + NotificationDataType.Subscribed -> Result.success(ListNotificationsResponse(emptyList())) + } /** * Ban a person from your site. @@ -713,8 +698,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @POST("user/mark_all_as_read") */ - override suspend fun markAllAsRead(): Result = - api.markAllAsRead().map(transformer::toUni) + override suspend fun markAllNotificationsAsRead(): Result = + api.markAllAsRead().map {} /** * Save your user settings. diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt index 84cbf390..ab9c47cf 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt @@ -4,8 +4,6 @@ import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.* internal interface MapperGenerator { - fun toUni(d: CommentReplyView): it.vercruysse.lemmyapi.datatypes.CommentReplyView - fun toUni(d: CommentReportView): it.vercruysse.lemmyapi.datatypes.CommentReportView fun toUni(d: CommentView): it.vercruysse.lemmyapi.datatypes.CommentView @@ -20,8 +18,6 @@ internal interface MapperGenerator { fun toUni(d: LocalSite, counts: SiteAggregates): it.vercruysse.lemmyapi.datatypes.LocalSite - fun toUni(d: PersonMentionView): it.vercruysse.lemmyapi.datatypes.PersonMentionView - fun toUni(d: PostReportView): it.vercruysse.lemmyapi.datatypes.PostReportView fun toUni(d: PostView): it.vercruysse.lemmyapi.datatypes.PostView @@ -46,8 +42,6 @@ internal interface MapperGenerator { fun toUni(d: BlockPersonResponse): it.vercruysse.lemmyapi.datatypes.BlockPersonResponse fun toUni(d: CaptchaResponse): it.vercruysse.lemmyapi.datatypes.CaptchaResponse fun toUni(d: Comment, counts: CommentAggregates): it.vercruysse.lemmyapi.datatypes.Comment - fun toUni(d: CommentReply): it.vercruysse.lemmyapi.datatypes.CommentReply - fun toUni(d: CommentReplyResponse): it.vercruysse.lemmyapi.datatypes.CommentReplyResponse fun toUni(d: CommentReport): it.vercruysse.lemmyapi.datatypes.CommentReport fun toUni(d: CommentReportResponse): it.vercruysse.lemmyapi.datatypes.CommentReportResponse @@ -70,10 +64,8 @@ internal interface MapperGenerator { fun toUni(d: GetFederatedInstancesResponse): it.vercruysse.lemmyapi.datatypes.GetFederatedInstancesResponse fun toUni(d: GetModlogResponse): it.vercruysse.lemmyapi.datatypes.GetModlogResponse fun toUni(d: GetPersonDetailsResponse): it.vercruysse.lemmyapi.datatypes.GetPersonDetailsResponse - fun toUni(d: GetPersonMentionsResponse): it.vercruysse.lemmyapi.datatypes.GetPersonMentionsResponse fun toUni(d: GetPostResponse): it.vercruysse.lemmyapi.datatypes.GetPostResponse fun toUni(d: GetPostsResponse): it.vercruysse.lemmyapi.datatypes.GetPostsResponse - fun toUni(d: GetRepliesResponse): it.vercruysse.lemmyapi.datatypes.GetRepliesResponse fun toUni(d: GetReportCountResponse): it.vercruysse.lemmyapi.datatypes.GetReportCountResponse fun toUni(d: GetSiteMetadataResponse): it.vercruysse.lemmyapi.datatypes.GetSiteMetadataResponse @@ -118,8 +110,6 @@ internal interface MapperGenerator { fun toUni(d: ModTransferCommunityView): it.vercruysse.lemmyapi.datatypes.ModTransferCommunityView fun toUni(d: MyUserInfo): it.vercruysse.lemmyapi.datatypes.MyUserInfo fun toUni(d: Person, counts: PersonAggregates): it.vercruysse.lemmyapi.datatypes.Person - fun toUni(d: PersonMention): it.vercruysse.lemmyapi.datatypes.PersonMention - fun toUni(d: PersonMentionResponse): it.vercruysse.lemmyapi.datatypes.PersonMentionResponse fun toUni(d: PersonView): it.vercruysse.lemmyapi.datatypes.PersonView fun toUni(d: Post, counts: PostAggregates): it.vercruysse.lemmyapi.datatypes.Post @@ -133,7 +123,6 @@ internal interface MapperGenerator { fun toUni(d: PrivateMessageReportResponse): it.vercruysse.lemmyapi.datatypes.PrivateMessageReportResponse fun toUni(d: PrivateMessageReportView): it.vercruysse.lemmyapi.datatypes.PrivateMessageReportView fun toUni(d: PrivateMessageResponse): it.vercruysse.lemmyapi.datatypes.PrivateMessageResponse - fun toUni(d: PrivateMessagesResponse): it.vercruysse.lemmyapi.datatypes.PrivateMessagesResponse fun toUni(d: PrivateMessageView): it.vercruysse.lemmyapi.datatypes.PrivateMessageView fun toUni(d: ReadableFederationState): it.vercruysse.lemmyapi.datatypes.ReadableFederationState fun toUni(d: RegistrationApplication): it.vercruysse.lemmyapi.datatypes.RegistrationApplication @@ -188,11 +177,8 @@ internal interface MapperGenerator { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetCommunity): GetCommunity fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetModlog): GetModlog fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPersonDetails): GetPersonDetails - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPersonMentions): GetPersonMentions fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPost): GetPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPosts): GetPosts - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPrivateMessages): GetPrivateMessages - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetReplies): GetReplies fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetReportCount): GetReportCount fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetSiteMetadata): GetSiteMetadata fun fromUni(d: it.vercruysse.lemmyapi.datatypes.HideCommunity): HideCommunity @@ -205,10 +191,7 @@ internal interface MapperGenerator { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListRegistrationApplications): ListRegistrationApplications fun fromUni(d: it.vercruysse.lemmyapi.datatypes.LockPost): LockPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.Login): Login - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkCommentReplyAsRead): MarkCommentReplyAsRead - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkPersonMentionAsRead): MarkPersonMentionAsRead fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkPostAsRead): MarkPostAsRead - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkPrivateMessageAsRead): MarkPrivateMessageAsRead fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset): PasswordChangeAfterReset fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordReset): PasswordReset fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgeComment): PurgeComment diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt index 68c824bb..5810d303 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt @@ -3,11 +3,18 @@ package it.vercruysse.lemmyapi.v0.x19.x3 import it.vercruysse.lemmyapi.datatypes.CommentActions import it.vercruysse.lemmyapi.datatypes.CommunityActions import it.vercruysse.lemmyapi.datatypes.LinkMetadata +import it.vercruysse.lemmyapi.datatypes.ListNotificationsResponse +import it.vercruysse.lemmyapi.datatypes.MarkNotificationAsRead +import it.vercruysse.lemmyapi.datatypes.Notification +import it.vercruysse.lemmyapi.datatypes.NotificationData +import it.vercruysse.lemmyapi.datatypes.NotificationView import it.vercruysse.lemmyapi.datatypes.PersonActions import it.vercruysse.lemmyapi.datatypes.PostActions +import it.vercruysse.lemmyapi.dto.CommentSortType import it.vercruysse.lemmyapi.dto.CommunityFollowerState import it.vercruysse.lemmyapi.dto.CommunityVisibility import it.vercruysse.lemmyapi.dto.FederationMode +import it.vercruysse.lemmyapi.dto.NotificationType import it.vercruysse.lemmyapi.dto.PostListingMode import it.vercruysse.lemmyapi.dto.SortType import it.vercruysse.lemmyapi.dto.VoteShow @@ -38,9 +45,6 @@ import it.vercruysse.lemmyapi.datatypes.BlockPersonResponse as LemmyapiDatatypes import it.vercruysse.lemmyapi.datatypes.CaptchaResponse as LemmyapiDatatypesCaptchaResponse import it.vercruysse.lemmyapi.datatypes.ChangePassword as LemmyapiDatatypesChangePassword import it.vercruysse.lemmyapi.datatypes.Comment as LemmyapiDatatypesComment -import it.vercruysse.lemmyapi.datatypes.CommentReply as LemmyapiDatatypesCommentReply -import it.vercruysse.lemmyapi.datatypes.CommentReplyResponse as LemmyapiDatatypesCommentReplyResponse -import it.vercruysse.lemmyapi.datatypes.CommentReplyView as LemmyapiDatatypesCommentReplyView import it.vercruysse.lemmyapi.datatypes.CommentReport as LemmyapiDatatypesCommentReport import it.vercruysse.lemmyapi.datatypes.CommentReportResponse as LemmyapiDatatypesCommentReportResponse import it.vercruysse.lemmyapi.datatypes.CommentReportView as LemmyapiDatatypesCommentReportView @@ -94,15 +98,10 @@ import it.vercruysse.lemmyapi.datatypes.GetModlog as LemmyapiDatatypesGetModlog import it.vercruysse.lemmyapi.datatypes.GetModlogResponse as LemmyapiDatatypesGetModlogResponse import it.vercruysse.lemmyapi.datatypes.GetPersonDetails as LemmyapiDatatypesGetPersonDetails import it.vercruysse.lemmyapi.datatypes.GetPersonDetailsResponse as LemmyapiDatatypesGetPersonDetailsResponse -import it.vercruysse.lemmyapi.datatypes.GetPersonMentions as LemmyapiDatatypesGetPersonMentions -import it.vercruysse.lemmyapi.datatypes.GetPersonMentionsResponse as LemmyapiDatatypesGetPersonMentionsResponse import it.vercruysse.lemmyapi.datatypes.GetPost as LemmyapiDatatypesGetPost import it.vercruysse.lemmyapi.datatypes.GetPostResponse as LemmyapiDatatypesGetPostResponse import it.vercruysse.lemmyapi.datatypes.GetPosts as LemmyapiDatatypesGetPosts import it.vercruysse.lemmyapi.datatypes.GetPostsResponse as LemmyapiDatatypesGetPostsResponse -import it.vercruysse.lemmyapi.datatypes.GetPrivateMessages as LemmyapiDatatypesGetPrivateMessages -import it.vercruysse.lemmyapi.datatypes.GetReplies as LemmyapiDatatypesGetReplies -import it.vercruysse.lemmyapi.datatypes.GetRepliesResponse as LemmyapiDatatypesGetRepliesResponse import it.vercruysse.lemmyapi.datatypes.GetReportCount as LemmyapiDatatypesGetReportCount import it.vercruysse.lemmyapi.datatypes.GetReportCountResponse as LemmyapiDatatypesGetReportCountResponse import it.vercruysse.lemmyapi.datatypes.GetSiteMetadata as LemmyapiDatatypesGetSiteMetadata @@ -118,6 +117,8 @@ import it.vercruysse.lemmyapi.datatypes.ListCommentLikes as LemmyapiDatatypesLis import it.vercruysse.lemmyapi.datatypes.ListCommentLikesResponse as LemmyapiDatatypesListCommentLikesResponse import it.vercruysse.lemmyapi.datatypes.ListCommunities as LemmyapiDatatypesListCommunities import it.vercruysse.lemmyapi.datatypes.ListCommunitiesResponse as LemmyapiDatatypesListCommunitiesResponse +import it.vercruysse.lemmyapi.datatypes.ListNotifications as LemmyapiDatatypesListNotifications +import it.vercruysse.lemmyapi.datatypes.ListNotificationsResponse as LemmyapiDatatypesListNotificationsResponse import it.vercruysse.lemmyapi.datatypes.ListPostLikes as LemmyapiDatatypesListPostLikes import it.vercruysse.lemmyapi.datatypes.ListPostLikesResponse as LemmyapiDatatypesListPostLikesResponse import it.vercruysse.lemmyapi.datatypes.ListRegistrationApplications as LemmyapiDatatypesListRegistrationApplications @@ -130,10 +131,7 @@ import it.vercruysse.lemmyapi.datatypes.LockPost as LemmyapiDatatypesLockPost import it.vercruysse.lemmyapi.datatypes.Login as LemmyapiDatatypesLogin import it.vercruysse.lemmyapi.datatypes.LoginResponse as LemmyapiDatatypesLoginResponse import it.vercruysse.lemmyapi.datatypes.LoginToken as LemmyapiDatatypesLoginToken -import it.vercruysse.lemmyapi.datatypes.MarkCommentReplyAsRead as LemmyapiDatatypesMarkCommentReplyAsRead -import it.vercruysse.lemmyapi.datatypes.MarkPersonMentionAsRead as LemmyapiDatatypesMarkPersonMentionAsRead import it.vercruysse.lemmyapi.datatypes.MarkPostAsRead as LemmyapiDatatypesMarkPostAsRead -import it.vercruysse.lemmyapi.datatypes.MarkPrivateMessageAsRead as LemmyapiDatatypesMarkPrivateMessageAsRead import it.vercruysse.lemmyapi.datatypes.ModAdd as LemmyapiDatatypesModAdd import it.vercruysse.lemmyapi.datatypes.ModAddCommunity as LemmyapiDatatypesModAddCommunity import it.vercruysse.lemmyapi.datatypes.ModAddCommunityView as LemmyapiDatatypesModAddCommunityView @@ -160,9 +158,6 @@ import it.vercruysse.lemmyapi.datatypes.MyUserInfo as LemmyapiDatatypesMyUserInf import it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset as LemmyapiDatatypesPasswordChangeAfterReset import it.vercruysse.lemmyapi.datatypes.PasswordReset as LemmyapiDatatypesPasswordReset import it.vercruysse.lemmyapi.datatypes.Person as LemmyapiDatatypesPerson -import it.vercruysse.lemmyapi.datatypes.PersonMention as LemmyapiDatatypesPersonMention -import it.vercruysse.lemmyapi.datatypes.PersonMentionResponse as LemmyapiDatatypesPersonMentionResponse -import it.vercruysse.lemmyapi.datatypes.PersonMentionView as LemmyapiDatatypesPersonMentionView import it.vercruysse.lemmyapi.datatypes.PersonView as LemmyapiDatatypesPersonView import it.vercruysse.lemmyapi.datatypes.Post as LemmyapiDatatypesPost import it.vercruysse.lemmyapi.datatypes.PostReport as LemmyapiDatatypesPostReport @@ -176,7 +171,6 @@ import it.vercruysse.lemmyapi.datatypes.PrivateMessageReportResponse as Lemmyapi import it.vercruysse.lemmyapi.datatypes.PrivateMessageReportView as LemmyapiDatatypesPrivateMessageReportView import it.vercruysse.lemmyapi.datatypes.PrivateMessageResponse as LemmyapiDatatypesPrivateMessageResponse import it.vercruysse.lemmyapi.datatypes.PrivateMessageView as LemmyapiDatatypesPrivateMessageView -import it.vercruysse.lemmyapi.datatypes.PrivateMessagesResponse as LemmyapiDatatypesPrivateMessagesResponse import it.vercruysse.lemmyapi.datatypes.PurgeComment as LemmyapiDatatypesPurgeComment import it.vercruysse.lemmyapi.datatypes.PurgeCommunity as LemmyapiDatatypesPurgeCommunity import it.vercruysse.lemmyapi.datatypes.PurgePerson as LemmyapiDatatypesPurgePerson @@ -237,8 +231,6 @@ import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.CaptchaResponse as X3Datatypes import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.ChangePassword as X3DatatypesChangePassword import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.Comment as X3DatatypesComment import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.CommentAggregates as X3DatatypesCommentAggregates -import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.CommentReply as X3DatatypesCommentReply -import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.CommentReplyResponse as X3DatatypesCommentReplyResponse import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.CommentReplyView as X3DatatypesCommentReplyView import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.CommentReport as X3DatatypesCommentReport import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.CommentReportResponse as X3DatatypesCommentReportResponse @@ -364,8 +356,6 @@ import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.PasswordChangeAfterReset as X3 import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.PasswordReset as X3DatatypesPasswordReset import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.Person as X3DatatypesPerson import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.PersonAggregates as X3DatatypesPersonAggregates -import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.PersonMention as X3DatatypesPersonMention -import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.PersonMentionResponse as X3DatatypesPersonMentionResponse import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.PersonMentionView as X3DatatypesPersonMentionView import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.PersonView as X3DatatypesPersonView import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.Post as X3DatatypesPost @@ -416,24 +406,6 @@ import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.VerifyEmail as X3DatatypesVeri import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.VoteView as X3DatatypesVoteView internal class Transformer : MapperGenerator { - override fun toUni(d: X3DatatypesCommentReplyView): LemmyapiDatatypesCommentReplyView = - LemmyapiDatatypesCommentReplyView( - comment_reply = this.toUni(d = d.comment_reply), - comment = this.toUni(d = d.comment, d.counts), - creator = this.toUni(d = d.creator), - post = this.toUni(d = d.post, counts = X3DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), - community = this.toUni(d = d.community, counts = X3DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), - recipient = this.toUni(d = d.recipient), - creator_banned_from_community = d.creator_banned_from_community, - banned_from_community = false, - creator_is_moderator = d.creator_is_moderator, - creator_is_admin = d.creator_is_admin, - subscribed = d.subscribed, - saved = d.saved, - creator_blocked = d.creator_blocked, - my_vote = d.my_vote, - ) - override fun toUni(d: X3DatatypesCommentReportView): LemmyapiDatatypesCommentReportView = LemmyapiDatatypesCommentReportView( comment_report = this.toUni(d = d.comment_report), @@ -576,24 +548,6 @@ internal class Transformer : MapperGenerator { users_active_half_year = counts.users_active_half_year, ) - override fun toUni(d: X3DatatypesPersonMentionView): LemmyapiDatatypesPersonMentionView = - LemmyapiDatatypesPersonMentionView( - person_mention = this.toUni(d = d.person_mention), - comment = this.toUni(d = d.comment, d.counts), - creator = this.toUni(d = d.creator), - post = this.toUni(d = d.post, counts = X3DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), - community = this.toUni(d = d.community, counts = X3DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), - recipient = this.toUni(d = d.recipient), - creator_banned_from_community = d.creator_banned_from_community, - banned_from_community = false, - creator_is_moderator = d.creator_is_moderator, - creator_is_admin = d.creator_is_admin, - subscribed = d.subscribed, - saved = d.saved, - creator_blocked = d.creator_blocked, - my_vote = d.my_vote, - ) - override fun toUni(d: X3DatatypesPostReportView): LemmyapiDatatypesPostReportView = LemmyapiDatatypesPostReportView( post_report = this.toUni(d = d.post_report), @@ -756,20 +710,6 @@ internal class Transformer : MapperGenerator { federation_pending = false, ) - override fun toUni(d: X3DatatypesCommentReply): LemmyapiDatatypesCommentReply = - LemmyapiDatatypesCommentReply( - id = d.id, - recipient_id = d.recipient_id, - comment_id = d.comment_id, - read = d.read, - published = d.published, - ) - - override fun toUni(d: X3DatatypesCommentReplyResponse): LemmyapiDatatypesCommentReplyResponse = - LemmyapiDatatypesCommentReplyResponse( - comment_reply_view = this.toUni(d = d.comment_reply_view), - ) - override fun toUni(d: X3DatatypesCommentReport): LemmyapiDatatypesCommentReport = LemmyapiDatatypesCommentReport( id = d.id, @@ -996,10 +936,6 @@ internal class Transformer : MapperGenerator { moderates = d.moderates.map { this.toUni(d = it) }, ) - override fun toUni(d: X3DatatypesGetPersonMentionsResponse): LemmyapiDatatypesGetPersonMentionsResponse = LemmyapiDatatypesGetPersonMentionsResponse( - mentions = d.mentions.map { this.toUni(d = it) }, - ) - override fun toUni(d: X3DatatypesGetPostResponse): LemmyapiDatatypesGetPostResponse = LemmyapiDatatypesGetPostResponse( post_view = this.toUni(d = d.post_view), @@ -1014,9 +950,99 @@ internal class Transformer : MapperGenerator { next_page = d.next_page, ) - override fun toUni(d: X3DatatypesGetRepliesResponse): LemmyapiDatatypesGetRepliesResponse = - LemmyapiDatatypesGetRepliesResponse( - replies = d.replies.map { this.toUni(d = it) }, + fun toUni(d: X3DatatypesGetRepliesResponse): LemmyapiDatatypesListNotificationsResponse = + ListNotificationsResponse( + notifications = d.replies.map { this.toUni(d = it) }, + ) + + fun toUni(d: X3DatatypesCommentReplyView): NotificationView = + NotificationView( + notification = Notification( + id = d.comment_reply.id, + recipient_id = d.comment_reply.recipient_id, + comment_id = d.comment_reply.comment_id, + read = d.comment_reply.read, + published_at = d.comment_reply.published, + kind = NotificationType.Reply, + post_id = d.post.id, + ), + data = NotificationData.Comment( + comment = this.toUniCV(d), + ), + ) + + fun toUniCV(d: X3DatatypesCommentReplyView): LemmyapiDatatypesCommentView = + LemmyapiDatatypesCommentView( + comment = this.toUni(d = d.comment, d.counts), + creator = this.toUni(d = d.creator), + post = this.toUni(d = d.post, counts = X3DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), + community = this.toUni(d = d.community, counts = X3DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), + creator_banned_from_community = d.creator_banned_from_community, + creator_is_moderator = d.creator_is_moderator, + creator_is_admin = d.creator_is_admin, + post_tags = emptyList(), + creator_banned = d.creator.banned, + can_mod = false, + person_actions = PersonActions(if (d.creator_blocked) "" else null), + comment_actions = CommentActions(d.my_vote, null, if (d.saved) "" else null), + community_actions = CommunityActions(null, CommunityFollowerState.from(d.subscribed)), + ) + + fun toUni(d: X3DatatypesGetPersonMentionsResponse): LemmyapiDatatypesListNotificationsResponse = + LemmyapiDatatypesListNotificationsResponse( + notifications = d.mentions.map { this.toUni(d = it) }, + ) + + fun toUni(d: X3DatatypesPersonMentionView): NotificationView = + NotificationView( + notification = Notification( + id = d.person_mention.id, + recipient_id = d.person_mention.recipient_id, + comment_id = d.person_mention.comment_id, + read = d.person_mention.read, + published_at = d.person_mention.published, + kind = NotificationType.Mention, + post_id = d.post.id, + ), + data = NotificationData.Comment( + comment = this.toUniPV(d), + ), + ) + + fun toUniPV(d: X3DatatypesPersonMentionView): LemmyapiDatatypesCommentView = + LemmyapiDatatypesCommentView( + comment = this.toUni(d = d.comment, d.counts), + creator = this.toUni(d = d.creator), + post = this.toUni(d = d.post, counts = X3DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), + community = this.toUni(d = d.community, counts = X3DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), + creator_banned_from_community = d.creator_banned_from_community, + creator_is_moderator = d.creator_is_moderator, + creator_is_admin = d.creator_is_admin, + post_tags = emptyList(), + creator_banned = d.creator.banned, + can_mod = false, + person_actions = PersonActions(if (d.creator_blocked) "" else null), + comment_actions = CommentActions(d.my_vote, null, if (d.saved) "" else null), + community_actions = CommunityActions(null, CommunityFollowerState.from(d.subscribed)), + ) + + fun toUni(d: X3DatatypesPrivateMessagesResponse): LemmyapiDatatypesListNotificationsResponse = + LemmyapiDatatypesListNotificationsResponse( + notifications = d.private_messages.map { this.toUniPMV(d = it) }, + ) + + fun toUniPMV(d: X3DatatypesPrivateMessageView): NotificationView = + NotificationView( + notification = Notification( + id = d.private_message.id, + recipient_id = d.private_message.recipient_id, + read = d.private_message.read, + published_at = d.private_message.published, + kind = NotificationType.PrivateMessage, + ), + data = NotificationData.PrivateMessage( + private_message = this.toUni(d), + ), ) override fun toUni(d: X3DatatypesGetReportCountResponse): LemmyapiDatatypesGetReportCountResponse = LemmyapiDatatypesGetReportCountResponse( @@ -1028,7 +1054,7 @@ internal class Transformer : MapperGenerator { ) override fun toUni(d: X3DatatypesGetUnreadCountResponse): LemmyapiDatatypesGetUnreadCountResponse = LemmyapiDatatypesGetUnreadCountResponse( - count = d.replies + d.mentions + d.private_messages + count = d.replies + d.mentions + d.private_messages, ) override fun toUni(d: X3DatatypesGetUnreadRegistrationApplicationCountResponse): LemmyapiDatatypesGetUnreadRegistrationApplicationCountResponse = @@ -1390,20 +1416,6 @@ internal class Transformer : MapperGenerator { comment_count = counts.comment_count, ) - override fun toUni(d: X3DatatypesPersonMention): LemmyapiDatatypesPersonMention = - LemmyapiDatatypesPersonMention( - id = d.id, - recipient_id = d.recipient_id, - comment_id = d.comment_id, - read = d.read, - published = d.published, - ) - - override fun toUni(d: X3DatatypesPersonMentionResponse): LemmyapiDatatypesPersonMentionResponse = - LemmyapiDatatypesPersonMentionResponse( - person_mention_view = this.toUni(d = d.person_mention_view), - ) - override fun toUni(d: X3DatatypesPersonView): LemmyapiDatatypesPersonView = LemmyapiDatatypesPersonView( person = this.toUni(d = d.person, d.counts), @@ -1514,10 +1526,6 @@ internal class Transformer : MapperGenerator { private_message_view = this.toUni(d = d.private_message_view), ) - override fun toUni(d: X3DatatypesPrivateMessagesResponse): LemmyapiDatatypesPrivateMessagesResponse = LemmyapiDatatypesPrivateMessagesResponse( - private_messages = d.private_messages.map { this.toUni(d = it) }, - ) - override fun toUni(d: X3DatatypesPrivateMessageView): LemmyapiDatatypesPrivateMessageView = LemmyapiDatatypesPrivateMessageView( private_message = this.toUni(d = d.private_message), @@ -1978,14 +1986,6 @@ internal class Transformer : MapperGenerator { saved_only = d.saved_only, ) - override fun fromUni(d: LemmyapiDatatypesGetPersonMentions): X3DatatypesGetPersonMentions = - X3DatatypesGetPersonMentions( - sort = d.sort, - page = d.page, - limit = d.limit, - unread_only = d.unread_only, - ) - override fun fromUni(d: LemmyapiDatatypesGetPost): X3DatatypesGetPost = X3DatatypesGetPost( id = d.id, comment_id = d.comment_id, @@ -2001,17 +2001,24 @@ internal class Transformer : MapperGenerator { page_cursor = d.page_cursor, ) - override fun fromUni(d: LemmyapiDatatypesGetPrivateMessages): X3DatatypesGetPrivateMessages = - X3DatatypesGetPrivateMessages( + fun fromUniR(d: LemmyapiDatatypesListNotifications): X3DatatypesGetReplies = + X3DatatypesGetReplies( + sort = CommentSortType.New, + page = d.page, + limit = d.limit, unread_only = d.unread_only, + ) + + fun fromUniM(d: LemmyapiDatatypesListNotifications): X3DatatypesGetPersonMentions = + X3DatatypesGetPersonMentions( + sort = CommentSortType.New, page = d.page, limit = d.limit, - creator_id = d.creator_id, + unread_only = d.unread_only, ) - override fun fromUni(d: LemmyapiDatatypesGetReplies): X3DatatypesGetReplies = - X3DatatypesGetReplies( - sort = d.sort, + fun fromUniP(d: LemmyapiDatatypesListNotifications): X3DatatypesGetPrivateMessages = + X3DatatypesGetPrivateMessages( page = d.page, limit = d.limit, unread_only = d.unread_only, @@ -2097,13 +2104,18 @@ internal class Transformer : MapperGenerator { totp_2fa_token = d.totp_2fa_token, ) - override fun fromUni(d: LemmyapiDatatypesMarkCommentReplyAsRead): X3DatatypesMarkCommentReplyAsRead = X3DatatypesMarkCommentReplyAsRead( - comment_reply_id = d.comment_reply_id, + fun fromUniR(d: MarkNotificationAsRead): X3DatatypesMarkCommentReplyAsRead = X3DatatypesMarkCommentReplyAsRead( + comment_reply_id = d.notification_id, read = d.read, ) - override fun fromUni(d: LemmyapiDatatypesMarkPersonMentionAsRead): X3DatatypesMarkPersonMentionAsRead = X3DatatypesMarkPersonMentionAsRead( - person_mention_id = d.person_mention_id, + fun fromUniM(d: MarkNotificationAsRead): X3DatatypesMarkPersonMentionAsRead = X3DatatypesMarkPersonMentionAsRead( + person_mention_id = d.notification_id, + read = d.read, + ) + + fun fromUniP(d: MarkNotificationAsRead): X3DatatypesMarkPrivateMessageAsRead = X3DatatypesMarkPrivateMessageAsRead( + private_message_id = d.notification_id, read = d.read, ) @@ -2113,11 +2125,6 @@ internal class Transformer : MapperGenerator { read = d.read, ) - override fun fromUni(d: LemmyapiDatatypesMarkPrivateMessageAsRead): X3DatatypesMarkPrivateMessageAsRead = X3DatatypesMarkPrivateMessageAsRead( - private_message_id = d.private_message_id, - read = d.read, - ) - override fun fromUni(d: LemmyapiDatatypesPasswordChangeAfterReset): X3DatatypesPasswordChangeAfterReset = X3DatatypesPasswordChangeAfterReset( token = d.token, password = d.password, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt index d331c70c..a45e8923 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt @@ -3,8 +3,13 @@ package it.vercruysse.lemmyapi.v0.x19.x4 import io.github.z4kn4fein.semver.Version import io.ktor.client.HttpClient import it.vercruysse.lemmyapi.LemmyApiBaseController +import it.vercruysse.lemmyapi.datatypes.ListNotifications +import it.vercruysse.lemmyapi.datatypes.ListNotificationsResponse +import it.vercruysse.lemmyapi.datatypes.MarkNotificationAsRead import it.vercruysse.lemmyapi.dto.ExportUserSettingsResponse import it.vercruysse.lemmyapi.dto.ImportUserSettings +import it.vercruysse.lemmyapi.dto.NotificationDataType +import it.vercruysse.lemmyapi.dto.NotificationType internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, baseUrl: String, auth: String?) : LemmyApiBaseController(client, actualVersion, baseUrl, auth) { @@ -461,16 +466,6 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba ): Result = api.removeComment(transformer.fromUni(form)).map(transformer::toUni) - /** - * Mark a comment as read. - * - * @POST("comment/mark_as_read") - */ - override suspend fun markCommentReplyAsRead( - form: it.vercruysse.lemmyapi.datatypes.MarkCommentReplyAsRead, - ): Result = - api.markCommentReplyAsRead(transformer.fromUni(form)).map(transformer::toUni) - /** * Distinguishes a comment (speak as moderator) * @@ -541,16 +536,6 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba ): Result = api.createPrivateMessage(transformer.fromUni(form)).map(transformer::toUni) - /** - * Get / fetch private messages. - * - * @GET("private_message/list") - */ - override suspend fun getPrivateMessages( - form: it.vercruysse.lemmyapi.datatypes.GetPrivateMessages, - ): Result = - api.getPrivateMessages(transformer.fromUni(form)).map(transformer::toUni) - /** * Delete a private message. * @@ -561,16 +546,6 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba ): Result = api.deletePrivateMessage(transformer.fromUni(form)).map(transformer::toUni) - /** - * Mark a private message as read. - * - * @POST("private_message/mark_as_read") - */ - override suspend fun markPrivateMessageAsRead( - form: it.vercruysse.lemmyapi.datatypes.MarkPrivateMessageAsRead, - ): Result = - api.markPrivateMessageAsRead(transformer.fromUni(form)).map(transformer::toUni) - /** * Create a report for a private message. * @@ -618,34 +593,44 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba api.getCaptcha().map(transformer::toUni) /** - * Get mentions for your user. - * - * @GET("user/mention") + * Mark a notification as read */ - override suspend fun getPersonMentions( - form: it.vercruysse.lemmyapi.datatypes.GetPersonMentions, - ): Result = - api.getPersonMentions(transformer.fromUni(form)).map(transformer::toUni) - - /** - * Mark a person mention as read. - * - * @POST("user/mention/mark_as_read") - */ - override suspend fun markPersonMentionAsRead( - form: it.vercruysse.lemmyapi.datatypes.MarkPersonMentionAsRead, - ): Result = - api.markPersonMentionAsRead(transformer.fromUni(form)).map(transformer::toUni) + override suspend fun markNotificationAsRead(form: MarkNotificationAsRead): Result = + when (form._kind) { + NotificationType.Mention -> api.markPersonMentionAsRead(transformer.fromUniM(form)).map { } + NotificationType.Reply -> api.markCommentReplyAsRead(transformer.fromUniR(form)).map { } + NotificationType.PrivateMessage -> api.markPrivateMessageAsRead(transformer.fromUniP(form)).map { } + NotificationType.Subscribed -> notSupported() + null -> notSupported() + } /** - * Get comment replies. - * - * @GET("user/replies") + * List notifications. */ - override suspend fun getReplies( - form: it.vercruysse.lemmyapi.datatypes.GetReplies, - ): Result = - api.getReplies(transformer.fromUni(form)).map(transformer::toUni) + override suspend fun listNotifications(form: ListNotifications): Result = + when (form.type_) { + NotificationDataType.All -> + runCatching { + val resReplies = api.getReplies(transformer.fromUniR(form)).map(transformer::toUni).getOrThrow() + val mentionReplies = api.getPersonMentions(transformer.fromUniM(form)).map(transformer::toUni).getOrThrow() + val privateMessages = api.getPrivateMessages(transformer.fromUniP(form)).map(transformer::toUni).getOrThrow() + + ListNotificationsResponse( + buildList { + addAll(resReplies.notifications) + addAll(mentionReplies.notifications) + addAll(privateMessages.notifications) + }, + ) + } + NotificationDataType.Reply -> + api.getReplies(transformer.fromUniR(form)).map(transformer::toUni) + NotificationDataType.Mention -> + api.getPersonMentions(transformer.fromUniM(form)).map(transformer::toUni) + NotificationDataType.PrivateMessage -> + api.getPrivateMessages(transformer.fromUniP(form)).map(transformer::toUni) + NotificationDataType.Subscribed -> Result.success(ListNotificationsResponse(emptyList())) + } /** * Ban a person from your site. @@ -712,8 +697,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @POST("user/mark_all_as_read") */ - override suspend fun markAllAsRead(): Result = - api.markAllAsRead().map(transformer::toUni) + override suspend fun markAllNotificationsAsRead(): Result = + api.markAllAsRead().map {} /** * Save your user settings. diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt index 2cca4cb7..cfab456e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt @@ -20,9 +20,6 @@ internal interface MapperGenerator { fun toUni(d: BlockPersonResponse): it.vercruysse.lemmyapi.datatypes.BlockPersonResponse fun toUni(d: CaptchaResponse): it.vercruysse.lemmyapi.datatypes.CaptchaResponse fun toUni(d: Comment, counts: CommentAggregates): it.vercruysse.lemmyapi.datatypes.Comment - fun toUni(d: CommentReply): it.vercruysse.lemmyapi.datatypes.CommentReply - fun toUni(d: CommentReplyResponse): it.vercruysse.lemmyapi.datatypes.CommentReplyResponse - fun toUni(d: CommentReplyView): it.vercruysse.lemmyapi.datatypes.CommentReplyView fun toUni(d: CommentReport): it.vercruysse.lemmyapi.datatypes.CommentReport fun toUni(d: CommentReportResponse): it.vercruysse.lemmyapi.datatypes.CommentReportResponse fun toUni(d: CommentReportView): it.vercruysse.lemmyapi.datatypes.CommentReportView @@ -45,10 +42,8 @@ internal interface MapperGenerator { fun toUni(d: GetFederatedInstancesResponse): it.vercruysse.lemmyapi.datatypes.GetFederatedInstancesResponse fun toUni(d: GetModlogResponse): it.vercruysse.lemmyapi.datatypes.GetModlogResponse fun toUni(d: GetPersonDetailsResponse): it.vercruysse.lemmyapi.datatypes.GetPersonDetailsResponse - fun toUni(d: GetPersonMentionsResponse): it.vercruysse.lemmyapi.datatypes.GetPersonMentionsResponse fun toUni(d: GetPostResponse): it.vercruysse.lemmyapi.datatypes.GetPostResponse fun toUni(d: GetPostsResponse): it.vercruysse.lemmyapi.datatypes.GetPostsResponse - fun toUni(d: GetRepliesResponse): it.vercruysse.lemmyapi.datatypes.GetRepliesResponse fun toUni(d: GetReportCountResponse): it.vercruysse.lemmyapi.datatypes.GetReportCountResponse fun toUni(d: GetSiteMetadataResponse): it.vercruysse.lemmyapi.datatypes.GetSiteMetadataResponse fun toUni(d: GetSiteResponse): it.vercruysse.lemmyapi.datatypes.GetSiteResponse @@ -98,9 +93,6 @@ internal interface MapperGenerator { fun toUni(d: ModTransferCommunityView): it.vercruysse.lemmyapi.datatypes.ModTransferCommunityView fun toUni(d: MyUserInfo): it.vercruysse.lemmyapi.datatypes.MyUserInfo fun toUni(d: Person, counts: PersonAggregates): it.vercruysse.lemmyapi.datatypes.Person - fun toUni(d: PersonMention): it.vercruysse.lemmyapi.datatypes.PersonMention - fun toUni(d: PersonMentionResponse): it.vercruysse.lemmyapi.datatypes.PersonMentionResponse - fun toUni(d: PersonMentionView): it.vercruysse.lemmyapi.datatypes.PersonMentionView fun toUni(d: PersonView): it.vercruysse.lemmyapi.datatypes.PersonView fun toUni(d: Post, counts: PostAggregates): it.vercruysse.lemmyapi.datatypes.Post fun toUni(d: PostReport): it.vercruysse.lemmyapi.datatypes.PostReport @@ -113,7 +105,6 @@ internal interface MapperGenerator { fun toUni(d: PrivateMessageReportResponse): it.vercruysse.lemmyapi.datatypes.PrivateMessageReportResponse fun toUni(d: PrivateMessageReportView): it.vercruysse.lemmyapi.datatypes.PrivateMessageReportView fun toUni(d: PrivateMessageResponse): it.vercruysse.lemmyapi.datatypes.PrivateMessageResponse - fun toUni(d: PrivateMessagesResponse): it.vercruysse.lemmyapi.datatypes.PrivateMessagesResponse fun toUni(d: PrivateMessageView): it.vercruysse.lemmyapi.datatypes.PrivateMessageView fun toUni(d: ReadableFederationState): it.vercruysse.lemmyapi.datatypes.ReadableFederationState fun toUni(d: RegistrationApplication): it.vercruysse.lemmyapi.datatypes.RegistrationApplication @@ -169,11 +160,8 @@ internal interface MapperGenerator { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetCommunity): GetCommunity fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetModlog): GetModlog fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPersonDetails): GetPersonDetails - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPersonMentions): GetPersonMentions fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPost): GetPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPosts): GetPosts - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPrivateMessages): GetPrivateMessages - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetReplies): GetReplies fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetReportCount): GetReportCount fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetSiteMetadata): GetSiteMetadata fun fromUni(d: it.vercruysse.lemmyapi.datatypes.HideCommunity): HideCommunity @@ -188,10 +176,7 @@ internal interface MapperGenerator { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListRegistrationApplications): ListRegistrationApplications fun fromUni(d: it.vercruysse.lemmyapi.datatypes.LockPost): LockPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.Login): Login - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkCommentReplyAsRead): MarkCommentReplyAsRead - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkPersonMentionAsRead): MarkPersonMentionAsRead fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkPostAsRead): MarkPostAsRead - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkPrivateMessageAsRead): MarkPrivateMessageAsRead fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset): PasswordChangeAfterReset fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordReset): PasswordReset fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgeComment): PurgeComment diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt index 9f1ab5e2..cf9edfbe 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt @@ -2,10 +2,17 @@ package it.vercruysse.lemmyapi.v0.x19.x4 import it.vercruysse.lemmyapi.datatypes.CommentActions import it.vercruysse.lemmyapi.datatypes.CommunityActions +import it.vercruysse.lemmyapi.datatypes.ListNotificationsResponse +import it.vercruysse.lemmyapi.datatypes.MarkNotificationAsRead +import it.vercruysse.lemmyapi.datatypes.Notification +import it.vercruysse.lemmyapi.datatypes.NotificationData +import it.vercruysse.lemmyapi.datatypes.NotificationView import it.vercruysse.lemmyapi.datatypes.PersonActions import it.vercruysse.lemmyapi.datatypes.PostActions +import it.vercruysse.lemmyapi.dto.CommentSortType import it.vercruysse.lemmyapi.dto.CommunityFollowerState import it.vercruysse.lemmyapi.dto.FederationMode +import it.vercruysse.lemmyapi.dto.NotificationType import it.vercruysse.lemmyapi.dto.SortType import it.vercruysse.lemmyapi.dto.VoteShow import it.vercruysse.lemmyapi.utils.toAt @@ -34,9 +41,6 @@ import it.vercruysse.lemmyapi.datatypes.BlockPersonResponse as LemmyapiDatatypes import it.vercruysse.lemmyapi.datatypes.CaptchaResponse as LemmyapiDatatypesCaptchaResponse import it.vercruysse.lemmyapi.datatypes.ChangePassword as LemmyapiDatatypesChangePassword import it.vercruysse.lemmyapi.datatypes.Comment as LemmyapiDatatypesComment -import it.vercruysse.lemmyapi.datatypes.CommentReply as LemmyapiDatatypesCommentReply -import it.vercruysse.lemmyapi.datatypes.CommentReplyResponse as LemmyapiDatatypesCommentReplyResponse -import it.vercruysse.lemmyapi.datatypes.CommentReplyView as LemmyapiDatatypesCommentReplyView import it.vercruysse.lemmyapi.datatypes.CommentReport as LemmyapiDatatypesCommentReport import it.vercruysse.lemmyapi.datatypes.CommentReportResponse as LemmyapiDatatypesCommentReportResponse import it.vercruysse.lemmyapi.datatypes.CommentReportView as LemmyapiDatatypesCommentReportView @@ -90,15 +94,10 @@ import it.vercruysse.lemmyapi.datatypes.GetModlog as LemmyapiDatatypesGetModlog import it.vercruysse.lemmyapi.datatypes.GetModlogResponse as LemmyapiDatatypesGetModlogResponse import it.vercruysse.lemmyapi.datatypes.GetPersonDetails as LemmyapiDatatypesGetPersonDetails import it.vercruysse.lemmyapi.datatypes.GetPersonDetailsResponse as LemmyapiDatatypesGetPersonDetailsResponse -import it.vercruysse.lemmyapi.datatypes.GetPersonMentions as LemmyapiDatatypesGetPersonMentions -import it.vercruysse.lemmyapi.datatypes.GetPersonMentionsResponse as LemmyapiDatatypesGetPersonMentionsResponse import it.vercruysse.lemmyapi.datatypes.GetPost as LemmyapiDatatypesGetPost import it.vercruysse.lemmyapi.datatypes.GetPostResponse as LemmyapiDatatypesGetPostResponse import it.vercruysse.lemmyapi.datatypes.GetPosts as LemmyapiDatatypesGetPosts import it.vercruysse.lemmyapi.datatypes.GetPostsResponse as LemmyapiDatatypesGetPostsResponse -import it.vercruysse.lemmyapi.datatypes.GetPrivateMessages as LemmyapiDatatypesGetPrivateMessages -import it.vercruysse.lemmyapi.datatypes.GetReplies as LemmyapiDatatypesGetReplies -import it.vercruysse.lemmyapi.datatypes.GetRepliesResponse as LemmyapiDatatypesGetRepliesResponse import it.vercruysse.lemmyapi.datatypes.GetReportCount as LemmyapiDatatypesGetReportCount import it.vercruysse.lemmyapi.datatypes.GetReportCountResponse as LemmyapiDatatypesGetReportCountResponse import it.vercruysse.lemmyapi.datatypes.GetSiteMetadata as LemmyapiDatatypesGetSiteMetadata @@ -118,6 +117,8 @@ import it.vercruysse.lemmyapi.datatypes.ListCommunities as LemmyapiDatatypesList import it.vercruysse.lemmyapi.datatypes.ListCommunitiesResponse as LemmyapiDatatypesListCommunitiesResponse import it.vercruysse.lemmyapi.datatypes.ListMedia as LemmyapiDatatypesListMedia import it.vercruysse.lemmyapi.datatypes.ListMediaResponse as LemmyapiDatatypesListMediaResponse +import it.vercruysse.lemmyapi.datatypes.ListNotifications as LemmyapiDatatypesListNotifications +import it.vercruysse.lemmyapi.datatypes.ListNotificationsResponse as LemmyapiDatatypesListNotificationsResponse import it.vercruysse.lemmyapi.datatypes.ListPostLikes as LemmyapiDatatypesListPostLikes import it.vercruysse.lemmyapi.datatypes.ListPostLikesResponse as LemmyapiDatatypesListPostLikesResponse import it.vercruysse.lemmyapi.datatypes.ListRegistrationApplications as LemmyapiDatatypesListRegistrationApplications @@ -133,10 +134,7 @@ import it.vercruysse.lemmyapi.datatypes.LockPost as LemmyapiDatatypesLockPost import it.vercruysse.lemmyapi.datatypes.Login as LemmyapiDatatypesLogin import it.vercruysse.lemmyapi.datatypes.LoginResponse as LemmyapiDatatypesLoginResponse import it.vercruysse.lemmyapi.datatypes.LoginToken as LemmyapiDatatypesLoginToken -import it.vercruysse.lemmyapi.datatypes.MarkCommentReplyAsRead as LemmyapiDatatypesMarkCommentReplyAsRead -import it.vercruysse.lemmyapi.datatypes.MarkPersonMentionAsRead as LemmyapiDatatypesMarkPersonMentionAsRead import it.vercruysse.lemmyapi.datatypes.MarkPostAsRead as LemmyapiDatatypesMarkPostAsRead -import it.vercruysse.lemmyapi.datatypes.MarkPrivateMessageAsRead as LemmyapiDatatypesMarkPrivateMessageAsRead import it.vercruysse.lemmyapi.datatypes.ModAdd as LemmyapiDatatypesModAdd import it.vercruysse.lemmyapi.datatypes.ModAddCommunity as LemmyapiDatatypesModAddCommunity import it.vercruysse.lemmyapi.datatypes.ModAddCommunityView as LemmyapiDatatypesModAddCommunityView @@ -163,9 +161,6 @@ import it.vercruysse.lemmyapi.datatypes.MyUserInfo as LemmyapiDatatypesMyUserInf import it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset as LemmyapiDatatypesPasswordChangeAfterReset import it.vercruysse.lemmyapi.datatypes.PasswordReset as LemmyapiDatatypesPasswordReset import it.vercruysse.lemmyapi.datatypes.Person as LemmyapiDatatypesPerson -import it.vercruysse.lemmyapi.datatypes.PersonMention as LemmyapiDatatypesPersonMention -import it.vercruysse.lemmyapi.datatypes.PersonMentionResponse as LemmyapiDatatypesPersonMentionResponse -import it.vercruysse.lemmyapi.datatypes.PersonMentionView as LemmyapiDatatypesPersonMentionView import it.vercruysse.lemmyapi.datatypes.PersonView as LemmyapiDatatypesPersonView import it.vercruysse.lemmyapi.datatypes.Post as LemmyapiDatatypesPost import it.vercruysse.lemmyapi.datatypes.PostReport as LemmyapiDatatypesPostReport @@ -179,7 +174,6 @@ import it.vercruysse.lemmyapi.datatypes.PrivateMessageReportResponse as Lemmyapi import it.vercruysse.lemmyapi.datatypes.PrivateMessageReportView as LemmyapiDatatypesPrivateMessageReportView import it.vercruysse.lemmyapi.datatypes.PrivateMessageResponse as LemmyapiDatatypesPrivateMessageResponse import it.vercruysse.lemmyapi.datatypes.PrivateMessageView as LemmyapiDatatypesPrivateMessageView -import it.vercruysse.lemmyapi.datatypes.PrivateMessagesResponse as LemmyapiDatatypesPrivateMessagesResponse import it.vercruysse.lemmyapi.datatypes.PurgeComment as LemmyapiDatatypesPurgeComment import it.vercruysse.lemmyapi.datatypes.PurgeCommunity as LemmyapiDatatypesPurgeCommunity import it.vercruysse.lemmyapi.datatypes.PurgePerson as LemmyapiDatatypesPurgePerson @@ -240,8 +234,6 @@ import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.CaptchaResponse as X4Datatypes import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.ChangePassword as X4DatatypesChangePassword import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.Comment as X4DatatypesComment import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.CommentAggregates as X4DatatypesCommentAggregates -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.CommentReply as X4DatatypesCommentReply -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.CommentReplyResponse as X4DatatypesCommentReplyResponse import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.CommentReplyView as X4DatatypesCommentReplyView import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.CommentReport as X4DatatypesCommentReport import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.CommentReportResponse as X4DatatypesCommentReportResponse @@ -375,8 +367,6 @@ import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.PasswordChangeAfterReset as X4 import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.PasswordReset as X4DatatypesPasswordReset import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.Person as X4DatatypesPerson import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.PersonAggregates as X4DatatypesPersonAggregates -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.PersonMention as X4DatatypesPersonMention -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.PersonMentionResponse as X4DatatypesPersonMentionResponse import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.PersonMentionView as X4DatatypesPersonMentionView import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.PersonView as X4DatatypesPersonView import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.Post as X4DatatypesPost @@ -554,38 +544,6 @@ internal class Transformer : MapperGenerator { federation_pending = false, ) - override fun toUni(d: X4DatatypesCommentReply): LemmyapiDatatypesCommentReply = - LemmyapiDatatypesCommentReply( - id = d.id, - recipient_id = d.recipient_id, - comment_id = d.comment_id, - read = d.read, - published = d.published, - ) - - override fun toUni(d: X4DatatypesCommentReplyResponse): LemmyapiDatatypesCommentReplyResponse = - LemmyapiDatatypesCommentReplyResponse( - comment_reply_view = this.toUni(d = d.comment_reply_view), - ) - - override fun toUni(d: X4DatatypesCommentReplyView): LemmyapiDatatypesCommentReplyView = - LemmyapiDatatypesCommentReplyView( - comment_reply = this.toUni(d = d.comment_reply), - comment = this.toUni(d = d.comment, d.counts), - creator = this.toUni(d = d.creator), - post = this.toUni(d = d.post, counts = X4DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), - community = this.toUni(d = d.community, counts = X4DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), - recipient = this.toUni(d = d.recipient), - creator_banned_from_community = d.creator_banned_from_community, - banned_from_community = d.banned_from_community, - creator_is_moderator = d.creator_is_moderator, - creator_is_admin = d.creator_is_admin, - subscribed = d.subscribed, - saved = d.saved, - creator_blocked = d.creator_blocked, - my_vote = d.my_vote, - ) - override fun toUni(d: X4DatatypesCommentReport): LemmyapiDatatypesCommentReport = LemmyapiDatatypesCommentReport( id = d.id, @@ -888,10 +846,6 @@ internal class Transformer : MapperGenerator { moderates = d.moderates.map { this.toUni(d = it) }, ) - override fun toUni(d: X4DatatypesGetPersonMentionsResponse): LemmyapiDatatypesGetPersonMentionsResponse = LemmyapiDatatypesGetPersonMentionsResponse( - mentions = d.mentions.map { this.toUni(d = it) }, - ) - override fun toUni(d: X4DatatypesGetPostResponse): LemmyapiDatatypesGetPostResponse = LemmyapiDatatypesGetPostResponse( post_view = this.toUni(d = d.post_view), @@ -906,9 +860,99 @@ internal class Transformer : MapperGenerator { next_page = d.next_page, ) - override fun toUni(d: X4DatatypesGetRepliesResponse): LemmyapiDatatypesGetRepliesResponse = - LemmyapiDatatypesGetRepliesResponse( - replies = d.replies.map { this.toUni(d = it) }, + fun toUni(d: X4DatatypesGetRepliesResponse): LemmyapiDatatypesListNotificationsResponse = + ListNotificationsResponse( + notifications = d.replies.map { this.toUni(d = it) }, + ) + + fun toUni(d: X4DatatypesCommentReplyView): NotificationView = + NotificationView( + notification = Notification( + id = d.comment_reply.id, + recipient_id = d.comment_reply.recipient_id, + comment_id = d.comment_reply.comment_id, + read = d.comment_reply.read, + published_at = d.comment_reply.published, + kind = NotificationType.Reply, + post_id = d.post.id, + ), + data = NotificationData.Comment( + comment = this.toUniCV(d), + ), + ) + + fun toUniCV(d: X4DatatypesCommentReplyView): LemmyapiDatatypesCommentView = + LemmyapiDatatypesCommentView( + comment = this.toUni(d = d.comment, d.counts), + creator = this.toUni(d = d.creator), + post = this.toUni(d = d.post, counts = X4DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), + community = this.toUni(d = d.community, counts = X4DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), + creator_banned_from_community = d.creator_banned_from_community, + creator_is_moderator = d.creator_is_moderator, + creator_is_admin = d.creator_is_admin, + post_tags = emptyList(), + creator_banned = d.creator.banned, + can_mod = false, + person_actions = PersonActions(if (d.creator_blocked) "" else null), + comment_actions = CommentActions(d.my_vote, null, if (d.saved) "" else null), + community_actions = CommunityActions(null, CommunityFollowerState.from(d.subscribed)), + ) + + fun toUni(d: X4DatatypesGetPersonMentionsResponse): LemmyapiDatatypesListNotificationsResponse = + LemmyapiDatatypesListNotificationsResponse( + notifications = d.mentions.map { this.toUni(d = it) }, + ) + + fun toUni(d: X4DatatypesPersonMentionView): NotificationView = + NotificationView( + notification = Notification( + id = d.person_mention.id, + recipient_id = d.person_mention.recipient_id, + comment_id = d.person_mention.comment_id, + read = d.person_mention.read, + published_at = d.person_mention.published, + kind = NotificationType.Mention, + post_id = d.post.id, + ), + data = NotificationData.Comment( + comment = this.toUniPV(d), + ), + ) + + fun toUniPV(d: X4DatatypesPersonMentionView): LemmyapiDatatypesCommentView = + LemmyapiDatatypesCommentView( + comment = this.toUni(d = d.comment, d.counts), + creator = this.toUni(d = d.creator), + post = this.toUni(d = d.post, counts = X4DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), + community = this.toUni(d = d.community, counts = X4DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), + creator_banned_from_community = d.creator_banned_from_community, + creator_is_moderator = d.creator_is_moderator, + creator_is_admin = d.creator_is_admin, + post_tags = emptyList(), + creator_banned = d.creator.banned, + can_mod = false, + person_actions = PersonActions(if (d.creator_blocked) "" else null), + comment_actions = CommentActions(d.my_vote, null, if (d.saved) "" else null), + community_actions = CommunityActions(null, CommunityFollowerState.from(d.subscribed)), + ) + + fun toUni(d: X4DatatypesPrivateMessagesResponse): LemmyapiDatatypesListNotificationsResponse = + LemmyapiDatatypesListNotificationsResponse( + notifications = d.private_messages.map { this.toUniPMV(d = it) }, + ) + + fun toUniPMV(d: X4DatatypesPrivateMessageView): NotificationView = + NotificationView( + notification = Notification( + id = d.private_message.id, + recipient_id = d.private_message.recipient_id, + read = d.private_message.read, + published_at = d.private_message.published, + kind = NotificationType.PrivateMessage, + ), + data = NotificationData.PrivateMessage( + private_message = this.toUni(d), + ), ) override fun toUni(d: X4DatatypesGetReportCountResponse): LemmyapiDatatypesGetReportCountResponse = @@ -939,7 +983,7 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X4DatatypesGetUnreadCountResponse): LemmyapiDatatypesGetUnreadCountResponse = LemmyapiDatatypesGetUnreadCountResponse( - count = d.replies + d.mentions + d.private_messages + count = d.replies + d.mentions + d.private_messages, ) override fun toUni(d: X4DatatypesGetUnreadRegistrationApplicationCountResponse): LemmyapiDatatypesGetUnreadRegistrationApplicationCountResponse = @@ -1384,38 +1428,6 @@ internal class Transformer : MapperGenerator { comment_count = counts.comment_count, ) - override fun toUni(d: X4DatatypesPersonMention): LemmyapiDatatypesPersonMention = - LemmyapiDatatypesPersonMention( - id = d.id, - recipient_id = d.recipient_id, - comment_id = d.comment_id, - read = d.read, - published = d.published, - ) - - override fun toUni(d: X4DatatypesPersonMentionResponse): LemmyapiDatatypesPersonMentionResponse = - LemmyapiDatatypesPersonMentionResponse( - person_mention_view = this.toUni(d = d.person_mention_view), - ) - - override fun toUni(d: X4DatatypesPersonMentionView): LemmyapiDatatypesPersonMentionView = - LemmyapiDatatypesPersonMentionView( - person_mention = this.toUni(d = d.person_mention), - comment = this.toUni(d = d.comment, d.counts), - creator = this.toUni(d = d.creator), - post = this.toUni(d = d.post, counts = X4DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), - community = this.toUni(d = d.community, counts = X4DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), - recipient = this.toUni(d = d.recipient), - creator_banned_from_community = d.creator_banned_from_community, - banned_from_community = d.banned_from_community, - creator_is_moderator = d.creator_is_moderator, - creator_is_admin = d.creator_is_admin, - subscribed = d.subscribed, - saved = d.saved, - creator_blocked = d.creator_blocked, - my_vote = d.my_vote, - ) - override fun toUni(d: X4DatatypesPersonView): LemmyapiDatatypesPersonView = LemmyapiDatatypesPersonView( person = this.toUni(d = d.person, d.counts), @@ -1561,10 +1573,6 @@ internal class Transformer : MapperGenerator { private_message_view = this.toUni(d = d.private_message_view), ) - override fun toUni(d: X4DatatypesPrivateMessagesResponse): LemmyapiDatatypesPrivateMessagesResponse = LemmyapiDatatypesPrivateMessagesResponse( - private_messages = d.private_messages.map { this.toUni(d = it) }, - ) - override fun toUni(d: X4DatatypesPrivateMessageView): LemmyapiDatatypesPrivateMessageView = LemmyapiDatatypesPrivateMessageView( private_message = this.toUni(d = d.private_message), @@ -2048,14 +2056,6 @@ internal class Transformer : MapperGenerator { saved_only = d.saved_only, ) - override fun fromUni(d: LemmyapiDatatypesGetPersonMentions): X4DatatypesGetPersonMentions = - X4DatatypesGetPersonMentions( - sort = d.sort, - page = d.page, - limit = d.limit, - unread_only = d.unread_only, - ) - override fun fromUni(d: LemmyapiDatatypesGetPost): X4DatatypesGetPost = X4DatatypesGetPost( id = d.id, comment_id = d.comment_id, @@ -2072,17 +2072,24 @@ internal class Transformer : MapperGenerator { page_cursor = d.page_cursor, ) - override fun fromUni(d: LemmyapiDatatypesGetPrivateMessages): X4DatatypesGetPrivateMessages = - X4DatatypesGetPrivateMessages( + fun fromUniR(d: LemmyapiDatatypesListNotifications): X4DatatypesGetReplies = + X4DatatypesGetReplies( + sort = CommentSortType.New, + page = d.page, + limit = d.limit, unread_only = d.unread_only, + ) + + fun fromUniM(d: LemmyapiDatatypesListNotifications): X4DatatypesGetPersonMentions = + X4DatatypesGetPersonMentions( + sort = CommentSortType.New, page = d.page, limit = d.limit, - creator_id = d.creator_id, + unread_only = d.unread_only, ) - override fun fromUni(d: LemmyapiDatatypesGetReplies): X4DatatypesGetReplies = - X4DatatypesGetReplies( - sort = d.sort, + fun fromUniP(d: LemmyapiDatatypesListNotifications): X4DatatypesGetPrivateMessages = + X4DatatypesGetPrivateMessages( page = d.page, limit = d.limit, unread_only = d.unread_only, @@ -2178,13 +2185,18 @@ internal class Transformer : MapperGenerator { totp_2fa_token = d.totp_2fa_token, ) - override fun fromUni(d: LemmyapiDatatypesMarkCommentReplyAsRead): X4DatatypesMarkCommentReplyAsRead = X4DatatypesMarkCommentReplyAsRead( - comment_reply_id = d.comment_reply_id, + fun fromUniR(d: MarkNotificationAsRead): X4DatatypesMarkCommentReplyAsRead = X4DatatypesMarkCommentReplyAsRead( + comment_reply_id = d.notification_id, read = d.read, ) - override fun fromUni(d: LemmyapiDatatypesMarkPersonMentionAsRead): X4DatatypesMarkPersonMentionAsRead = X4DatatypesMarkPersonMentionAsRead( - person_mention_id = d.person_mention_id, + fun fromUniM(d: MarkNotificationAsRead): X4DatatypesMarkPersonMentionAsRead = X4DatatypesMarkPersonMentionAsRead( + person_mention_id = d.notification_id, + read = d.read, + ) + + fun fromUniP(d: MarkNotificationAsRead): X4DatatypesMarkPrivateMessageAsRead = X4DatatypesMarkPrivateMessageAsRead( + private_message_id = d.notification_id, read = d.read, ) @@ -2194,11 +2206,6 @@ internal class Transformer : MapperGenerator { read = d.read, ) - override fun fromUni(d: LemmyapiDatatypesMarkPrivateMessageAsRead): X4DatatypesMarkPrivateMessageAsRead = X4DatatypesMarkPrivateMessageAsRead( - private_message_id = d.private_message_id, - read = d.read, - ) - override fun fromUni(d: LemmyapiDatatypesPasswordChangeAfterReset): X4DatatypesPasswordChangeAfterReset = X4DatatypesPasswordChangeAfterReset( token = d.token, password = d.password, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt index 799bb899..de3c580e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt @@ -3,8 +3,13 @@ package it.vercruysse.lemmyapi.v0.x19.x6 import io.github.z4kn4fein.semver.Version import io.ktor.client.HttpClient import it.vercruysse.lemmyapi.LemmyApiBaseController +import it.vercruysse.lemmyapi.datatypes.ListNotifications +import it.vercruysse.lemmyapi.datatypes.ListNotificationsResponse +import it.vercruysse.lemmyapi.datatypes.MarkNotificationAsRead import it.vercruysse.lemmyapi.dto.ExportUserSettingsResponse import it.vercruysse.lemmyapi.dto.ImportUserSettings +import it.vercruysse.lemmyapi.dto.NotificationDataType +import it.vercruysse.lemmyapi.dto.NotificationType internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, baseUrl: String, auth: String?) : LemmyApiBaseController(client, actualVersion, baseUrl, auth) { @@ -461,16 +466,6 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba ): Result = api.removeComment(transformer.fromUni(form)).map(transformer::toUni) - /** - * Mark a comment as read. - * - * @POST("comment/mark_as_read") - */ - override suspend fun markCommentReplyAsRead( - form: it.vercruysse.lemmyapi.datatypes.MarkCommentReplyAsRead, - ): Result = - api.markCommentReplyAsRead(transformer.fromUni(form)).map(transformer::toUni) - /** * Distinguishes a comment (speak as moderator) * @@ -541,16 +536,6 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba ): Result = api.createPrivateMessage(transformer.fromUni(form)).map(transformer::toUni) - /** - * Get / fetch private messages. - * - * @GET("private_message/list") - */ - override suspend fun getPrivateMessages( - form: it.vercruysse.lemmyapi.datatypes.GetPrivateMessages, - ): Result = - api.getPrivateMessages(transformer.fromUni(form)).map(transformer::toUni) - /** * Delete a private message. * @@ -561,16 +546,6 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba ): Result = api.deletePrivateMessage(transformer.fromUni(form)).map(transformer::toUni) - /** - * Mark a private message as read. - * - * @POST("private_message/mark_as_read") - */ - override suspend fun markPrivateMessageAsRead( - form: it.vercruysse.lemmyapi.datatypes.MarkPrivateMessageAsRead, - ): Result = - api.markPrivateMessageAsRead(transformer.fromUni(form)).map(transformer::toUni) - /** * Create a report for a private message. * @@ -618,34 +593,44 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba api.getCaptcha().map(transformer::toUni) /** - * Get mentions for your user. - * - * @GET("user/mention") + * Mark a notification as read */ - override suspend fun getPersonMentions( - form: it.vercruysse.lemmyapi.datatypes.GetPersonMentions, - ): Result = - api.getPersonMentions(transformer.fromUni(form)).map(transformer::toUni) - - /** - * Mark a person mention as read. - * - * @POST("user/mention/mark_as_read") - */ - override suspend fun markPersonMentionAsRead( - form: it.vercruysse.lemmyapi.datatypes.MarkPersonMentionAsRead, - ): Result = - api.markPersonMentionAsRead(transformer.fromUni(form)).map(transformer::toUni) + override suspend fun markNotificationAsRead(form: MarkNotificationAsRead): Result = + when (form._kind) { + NotificationType.Mention -> api.markPersonMentionAsRead(transformer.fromUniM(form)).map { } + NotificationType.Reply -> api.markCommentReplyAsRead(transformer.fromUniR(form)).map { } + NotificationType.PrivateMessage -> api.markPrivateMessageAsRead(transformer.fromUniP(form)).map { } + NotificationType.Subscribed -> notSupported() + null -> notSupported() + } /** - * Get comment replies. - * - * @GET("user/replies") + * List notifications. */ - override suspend fun getReplies( - form: it.vercruysse.lemmyapi.datatypes.GetReplies, - ): Result = - api.getReplies(transformer.fromUni(form)).map(transformer::toUni) + override suspend fun listNotifications(form: ListNotifications): Result = + when (form.type_) { + NotificationDataType.All -> + runCatching { + val resReplies = api.getReplies(transformer.fromUniR(form)).map(transformer::toUni).getOrThrow() + val mentionReplies = api.getPersonMentions(transformer.fromUniM(form)).map(transformer::toUni).getOrThrow() + val privateMessages = api.getPrivateMessages(transformer.fromUniP(form)).map(transformer::toUni).getOrThrow() + + ListNotificationsResponse( + buildList { + addAll(resReplies.notifications) + addAll(mentionReplies.notifications) + addAll(privateMessages.notifications) + }, + ) + } + NotificationDataType.Reply -> + api.getReplies(transformer.fromUniR(form)).map(transformer::toUni) + NotificationDataType.Mention -> + api.getPersonMentions(transformer.fromUniM(form)).map(transformer::toUni) + NotificationDataType.PrivateMessage -> + api.getPrivateMessages(transformer.fromUniP(form)).map(transformer::toUni) + NotificationDataType.Subscribed -> Result.success(ListNotificationsResponse(emptyList())) + } /** * Ban a person from your site. @@ -708,12 +693,10 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba api.changePasswordAfterReset(transformer.fromUni(form)) /** - * Mark all replies as read. - * - * @POST("user/mark_all_as_read") + * Mark all Notifications as read. */ - override suspend fun markAllAsRead(): Result = - api.markAllAsRead().map(transformer::toUni) + override suspend fun markAllNotificationsAsRead(): Result = + api.markAllAsRead().map {} /** * Save your user settings. diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt index 24a0c270..e80e2519 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt @@ -21,9 +21,6 @@ internal interface MapperGenerator { fun toUni(d: BlockPersonResponse): it.vercruysse.lemmyapi.datatypes.BlockPersonResponse fun toUni(d: CaptchaResponse): it.vercruysse.lemmyapi.datatypes.CaptchaResponse fun toUni(d: Comment, counts: CommentAggregates): it.vercruysse.lemmyapi.datatypes.Comment - fun toUni(d: CommentReply): it.vercruysse.lemmyapi.datatypes.CommentReply - fun toUni(d: CommentReplyResponse): it.vercruysse.lemmyapi.datatypes.CommentReplyResponse - fun toUni(d: CommentReplyView): it.vercruysse.lemmyapi.datatypes.CommentReplyView fun toUni(d: CommentReport): it.vercruysse.lemmyapi.datatypes.CommentReport fun toUni(d: CommentReportResponse): it.vercruysse.lemmyapi.datatypes.CommentReportResponse fun toUni(d: CommentReportView): it.vercruysse.lemmyapi.datatypes.CommentReportView @@ -46,10 +43,8 @@ internal interface MapperGenerator { fun toUni(d: GetFederatedInstancesResponse): it.vercruysse.lemmyapi.datatypes.GetFederatedInstancesResponse fun toUni(d: GetModlogResponse): it.vercruysse.lemmyapi.datatypes.GetModlogResponse fun toUni(d: GetPersonDetailsResponse): it.vercruysse.lemmyapi.datatypes.GetPersonDetailsResponse - fun toUni(d: GetPersonMentionsResponse): it.vercruysse.lemmyapi.datatypes.GetPersonMentionsResponse fun toUni(d: GetPostResponse): it.vercruysse.lemmyapi.datatypes.GetPostResponse fun toUni(d: GetPostsResponse): it.vercruysse.lemmyapi.datatypes.GetPostsResponse - fun toUni(d: GetRepliesResponse): it.vercruysse.lemmyapi.datatypes.GetRepliesResponse fun toUni(d: GetReportCountResponse): it.vercruysse.lemmyapi.datatypes.GetReportCountResponse fun toUni(d: GetSiteMetadataResponse): it.vercruysse.lemmyapi.datatypes.GetSiteMetadataResponse fun toUni(d: GetSiteResponse): it.vercruysse.lemmyapi.datatypes.GetSiteResponse @@ -100,9 +95,6 @@ internal interface MapperGenerator { fun toUni(d: ModTransferCommunityView): it.vercruysse.lemmyapi.datatypes.ModTransferCommunityView fun toUni(d: MyUserInfo): it.vercruysse.lemmyapi.datatypes.MyUserInfo fun toUni(d: Person, counts: PersonAggregates): it.vercruysse.lemmyapi.datatypes.Person - fun toUni(d: PersonMention): it.vercruysse.lemmyapi.datatypes.PersonMention - fun toUni(d: PersonMentionResponse): it.vercruysse.lemmyapi.datatypes.PersonMentionResponse - fun toUni(d: PersonMentionView): it.vercruysse.lemmyapi.datatypes.PersonMentionView fun toUni(d: PersonView): it.vercruysse.lemmyapi.datatypes.PersonView fun toUni(d: Post, counts: PostAggregates): it.vercruysse.lemmyapi.datatypes.Post fun toUni(d: PostReport): it.vercruysse.lemmyapi.datatypes.PostReport @@ -115,7 +107,6 @@ internal interface MapperGenerator { fun toUni(d: PrivateMessageReportResponse): it.vercruysse.lemmyapi.datatypes.PrivateMessageReportResponse fun toUni(d: PrivateMessageReportView): it.vercruysse.lemmyapi.datatypes.PrivateMessageReportView fun toUni(d: PrivateMessageResponse): it.vercruysse.lemmyapi.datatypes.PrivateMessageResponse - fun toUni(d: PrivateMessagesResponse): it.vercruysse.lemmyapi.datatypes.PrivateMessagesResponse fun toUni(d: PrivateMessageView): it.vercruysse.lemmyapi.datatypes.PrivateMessageView fun toUni(d: ReadableFederationState): it.vercruysse.lemmyapi.datatypes.ReadableFederationState fun toUni(d: RegistrationApplication): it.vercruysse.lemmyapi.datatypes.RegistrationApplication @@ -171,12 +162,9 @@ internal interface MapperGenerator { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetCommunity): GetCommunity fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetModlog): GetModlog fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPersonDetails): GetPersonDetails - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPersonMentions): GetPersonMentions fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPost): GetPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPosts): GetPosts - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPrivateMessages): GetPrivateMessages fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetRegistrationApplication): GetRegistrationApplication - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetReplies): GetReplies fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetReportCount): GetReportCount fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetSiteMetadata): GetSiteMetadata fun fromUni(d: it.vercruysse.lemmyapi.datatypes.HideCommunity): HideCommunity @@ -191,10 +179,7 @@ internal interface MapperGenerator { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListRegistrationApplications): ListRegistrationApplications fun fromUni(d: it.vercruysse.lemmyapi.datatypes.LockPost): LockPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.Login): Login - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkCommentReplyAsRead): MarkCommentReplyAsRead - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkPersonMentionAsRead): MarkPersonMentionAsRead fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkPostAsRead): MarkPostAsRead - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkPrivateMessageAsRead): MarkPrivateMessageAsRead fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset): PasswordChangeAfterReset fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordReset): PasswordReset fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgeComment): PurgeComment diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt index c4046613..2391b375 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt @@ -2,10 +2,17 @@ package it.vercruysse.lemmyapi.v0.x19.x6 import it.vercruysse.lemmyapi.datatypes.CommentActions import it.vercruysse.lemmyapi.datatypes.CommunityActions +import it.vercruysse.lemmyapi.datatypes.ListNotificationsResponse +import it.vercruysse.lemmyapi.datatypes.MarkNotificationAsRead +import it.vercruysse.lemmyapi.datatypes.Notification +import it.vercruysse.lemmyapi.datatypes.NotificationData +import it.vercruysse.lemmyapi.datatypes.NotificationView import it.vercruysse.lemmyapi.datatypes.PersonActions import it.vercruysse.lemmyapi.datatypes.PostActions +import it.vercruysse.lemmyapi.dto.CommentSortType import it.vercruysse.lemmyapi.dto.CommunityFollowerState import it.vercruysse.lemmyapi.dto.FederationMode +import it.vercruysse.lemmyapi.dto.NotificationType import it.vercruysse.lemmyapi.dto.SortType import it.vercruysse.lemmyapi.dto.VoteShow import it.vercruysse.lemmyapi.utils.toAt @@ -34,9 +41,6 @@ import it.vercruysse.lemmyapi.datatypes.BlockPersonResponse as LemmyapiDatatypes import it.vercruysse.lemmyapi.datatypes.CaptchaResponse as LemmyapiDatatypesCaptchaResponse import it.vercruysse.lemmyapi.datatypes.ChangePassword as LemmyapiDatatypesChangePassword import it.vercruysse.lemmyapi.datatypes.Comment as LemmyapiDatatypesComment -import it.vercruysse.lemmyapi.datatypes.CommentReply as LemmyapiDatatypesCommentReply -import it.vercruysse.lemmyapi.datatypes.CommentReplyResponse as LemmyapiDatatypesCommentReplyResponse -import it.vercruysse.lemmyapi.datatypes.CommentReplyView as LemmyapiDatatypesCommentReplyView import it.vercruysse.lemmyapi.datatypes.CommentReport as LemmyapiDatatypesCommentReport import it.vercruysse.lemmyapi.datatypes.CommentReportResponse as LemmyapiDatatypesCommentReportResponse import it.vercruysse.lemmyapi.datatypes.CommentReportView as LemmyapiDatatypesCommentReportView @@ -90,16 +94,11 @@ import it.vercruysse.lemmyapi.datatypes.GetModlog as LemmyapiDatatypesGetModlog import it.vercruysse.lemmyapi.datatypes.GetModlogResponse as LemmyapiDatatypesGetModlogResponse import it.vercruysse.lemmyapi.datatypes.GetPersonDetails as LemmyapiDatatypesGetPersonDetails import it.vercruysse.lemmyapi.datatypes.GetPersonDetailsResponse as LemmyapiDatatypesGetPersonDetailsResponse -import it.vercruysse.lemmyapi.datatypes.GetPersonMentions as LemmyapiDatatypesGetPersonMentions -import it.vercruysse.lemmyapi.datatypes.GetPersonMentionsResponse as LemmyapiDatatypesGetPersonMentionsResponse import it.vercruysse.lemmyapi.datatypes.GetPost as LemmyapiDatatypesGetPost import it.vercruysse.lemmyapi.datatypes.GetPostResponse as LemmyapiDatatypesGetPostResponse import it.vercruysse.lemmyapi.datatypes.GetPosts as LemmyapiDatatypesGetPosts import it.vercruysse.lemmyapi.datatypes.GetPostsResponse as LemmyapiDatatypesGetPostsResponse -import it.vercruysse.lemmyapi.datatypes.GetPrivateMessages as LemmyapiDatatypesGetPrivateMessages import it.vercruysse.lemmyapi.datatypes.GetRegistrationApplication as LemmyapiDatatypesGetRegistrationApplication -import it.vercruysse.lemmyapi.datatypes.GetReplies as LemmyapiDatatypesGetReplies -import it.vercruysse.lemmyapi.datatypes.GetRepliesResponse as LemmyapiDatatypesGetRepliesResponse import it.vercruysse.lemmyapi.datatypes.GetReportCount as LemmyapiDatatypesGetReportCount import it.vercruysse.lemmyapi.datatypes.GetReportCountResponse as LemmyapiDatatypesGetReportCountResponse import it.vercruysse.lemmyapi.datatypes.GetSiteMetadata as LemmyapiDatatypesGetSiteMetadata @@ -120,6 +119,8 @@ import it.vercruysse.lemmyapi.datatypes.ListCommunities as LemmyapiDatatypesList import it.vercruysse.lemmyapi.datatypes.ListCommunitiesResponse as LemmyapiDatatypesListCommunitiesResponse import it.vercruysse.lemmyapi.datatypes.ListMedia as LemmyapiDatatypesListMedia import it.vercruysse.lemmyapi.datatypes.ListMediaResponse as LemmyapiDatatypesListMediaResponse +import it.vercruysse.lemmyapi.datatypes.ListNotifications as LemmyapiDatatypesListNotifications +import it.vercruysse.lemmyapi.datatypes.ListNotificationsResponse as LemmyapiDatatypesListNotificationsResponse import it.vercruysse.lemmyapi.datatypes.ListPostLikes as LemmyapiDatatypesListPostLikes import it.vercruysse.lemmyapi.datatypes.ListPostLikesResponse as LemmyapiDatatypesListPostLikesResponse import it.vercruysse.lemmyapi.datatypes.ListRegistrationApplications as LemmyapiDatatypesListRegistrationApplications @@ -135,10 +136,7 @@ import it.vercruysse.lemmyapi.datatypes.LockPost as LemmyapiDatatypesLockPost import it.vercruysse.lemmyapi.datatypes.Login as LemmyapiDatatypesLogin import it.vercruysse.lemmyapi.datatypes.LoginResponse as LemmyapiDatatypesLoginResponse import it.vercruysse.lemmyapi.datatypes.LoginToken as LemmyapiDatatypesLoginToken -import it.vercruysse.lemmyapi.datatypes.MarkCommentReplyAsRead as LemmyapiDatatypesMarkCommentReplyAsRead -import it.vercruysse.lemmyapi.datatypes.MarkPersonMentionAsRead as LemmyapiDatatypesMarkPersonMentionAsRead import it.vercruysse.lemmyapi.datatypes.MarkPostAsRead as LemmyapiDatatypesMarkPostAsRead -import it.vercruysse.lemmyapi.datatypes.MarkPrivateMessageAsRead as LemmyapiDatatypesMarkPrivateMessageAsRead import it.vercruysse.lemmyapi.datatypes.ModAdd as LemmyapiDatatypesModAdd import it.vercruysse.lemmyapi.datatypes.ModAddCommunity as LemmyapiDatatypesModAddCommunity import it.vercruysse.lemmyapi.datatypes.ModAddCommunityView as LemmyapiDatatypesModAddCommunityView @@ -165,9 +163,6 @@ import it.vercruysse.lemmyapi.datatypes.MyUserInfo as LemmyapiDatatypesMyUserInf import it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset as LemmyapiDatatypesPasswordChangeAfterReset import it.vercruysse.lemmyapi.datatypes.PasswordReset as LemmyapiDatatypesPasswordReset import it.vercruysse.lemmyapi.datatypes.Person as LemmyapiDatatypesPerson -import it.vercruysse.lemmyapi.datatypes.PersonMention as LemmyapiDatatypesPersonMention -import it.vercruysse.lemmyapi.datatypes.PersonMentionResponse as LemmyapiDatatypesPersonMentionResponse -import it.vercruysse.lemmyapi.datatypes.PersonMentionView as LemmyapiDatatypesPersonMentionView import it.vercruysse.lemmyapi.datatypes.PersonView as LemmyapiDatatypesPersonView import it.vercruysse.lemmyapi.datatypes.Post as LemmyapiDatatypesPost import it.vercruysse.lemmyapi.datatypes.PostReport as LemmyapiDatatypesPostReport @@ -181,7 +176,6 @@ import it.vercruysse.lemmyapi.datatypes.PrivateMessageReportResponse as Lemmyapi import it.vercruysse.lemmyapi.datatypes.PrivateMessageReportView as LemmyapiDatatypesPrivateMessageReportView import it.vercruysse.lemmyapi.datatypes.PrivateMessageResponse as LemmyapiDatatypesPrivateMessageResponse import it.vercruysse.lemmyapi.datatypes.PrivateMessageView as LemmyapiDatatypesPrivateMessageView -import it.vercruysse.lemmyapi.datatypes.PrivateMessagesResponse as LemmyapiDatatypesPrivateMessagesResponse import it.vercruysse.lemmyapi.datatypes.PurgeComment as LemmyapiDatatypesPurgeComment import it.vercruysse.lemmyapi.datatypes.PurgeCommunity as LemmyapiDatatypesPurgeCommunity import it.vercruysse.lemmyapi.datatypes.PurgePerson as LemmyapiDatatypesPurgePerson @@ -242,8 +236,6 @@ import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.CaptchaResponse as X6Datatypes import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.ChangePassword as X6DatatypesChangePassword import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.Comment as X6DatatypesComment import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.CommentAggregates as X6DatatypesCommentAggregates -import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.CommentReply as X6DatatypesCommentReply -import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.CommentReplyResponse as X6DatatypesCommentReplyResponse import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.CommentReplyView as X6DatatypesCommentReplyView import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.CommentReport as X6DatatypesCommentReport import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.CommentReportResponse as X6DatatypesCommentReportResponse @@ -379,8 +371,6 @@ import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.PasswordChangeAfterReset as X6 import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.PasswordReset as X6DatatypesPasswordReset import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.Person as X6DatatypesPerson import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.PersonAggregates as X6DatatypesPersonAggregates -import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.PersonMention as X6DatatypesPersonMention -import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.PersonMentionResponse as X6DatatypesPersonMentionResponse import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.PersonMentionView as X6DatatypesPersonMentionView import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.PersonView as X6DatatypesPersonView import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.Post as X6DatatypesPost @@ -557,38 +547,6 @@ internal class Transformer : MapperGenerator { federation_pending = false, ) - override fun toUni(d: X6DatatypesCommentReply): LemmyapiDatatypesCommentReply = - LemmyapiDatatypesCommentReply( - id = d.id, - recipient_id = d.recipient_id, - comment_id = d.comment_id, - read = d.read, - published = d.published, - ) - - override fun toUni(d: X6DatatypesCommentReplyResponse): LemmyapiDatatypesCommentReplyResponse = - LemmyapiDatatypesCommentReplyResponse( - comment_reply_view = this.toUni(d = d.comment_reply_view), - ) - - override fun toUni(d: X6DatatypesCommentReplyView): LemmyapiDatatypesCommentReplyView = - LemmyapiDatatypesCommentReplyView( - comment_reply = this.toUni(d = d.comment_reply), - comment = this.toUni(d = d.comment, d.counts), - creator = this.toUni(d = d.creator), - post = this.toUni(d = d.post, counts = X6DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), - community = this.toUni(d = d.community, counts = X6DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), - recipient = this.toUni(d = d.recipient), - creator_banned_from_community = d.creator_banned_from_community, - banned_from_community = d.banned_from_community, - creator_is_moderator = d.creator_is_moderator, - creator_is_admin = d.creator_is_admin, - subscribed = d.subscribed, - saved = d.saved, - creator_blocked = d.creator_blocked, - my_vote = d.my_vote, - ) - override fun toUni(d: X6DatatypesCommentReport): LemmyapiDatatypesCommentReport = LemmyapiDatatypesCommentReport( id = d.id, @@ -890,10 +848,6 @@ internal class Transformer : MapperGenerator { moderates = d.moderates.map { this.toUni(d = it) }, ) - override fun toUni(d: X6DatatypesGetPersonMentionsResponse): LemmyapiDatatypesGetPersonMentionsResponse = LemmyapiDatatypesGetPersonMentionsResponse( - mentions = d.mentions.map { this.toUni(d = it) }, - ) - override fun toUni(d: X6DatatypesGetPostResponse): LemmyapiDatatypesGetPostResponse = LemmyapiDatatypesGetPostResponse( post_view = this.toUni(d = d.post_view), @@ -908,9 +862,99 @@ internal class Transformer : MapperGenerator { next_page = d.next_page, ) - override fun toUni(d: X6DatatypesGetRepliesResponse): LemmyapiDatatypesGetRepliesResponse = - LemmyapiDatatypesGetRepliesResponse( - replies = d.replies.map { this.toUni(d = it) }, + fun toUni(d: X6DatatypesGetRepliesResponse): LemmyapiDatatypesListNotificationsResponse = + ListNotificationsResponse( + notifications = d.replies.map { this.toUni(d = it) }, + ) + + fun toUni(d: X6DatatypesCommentReplyView): NotificationView = + NotificationView( + notification = Notification( + id = d.comment_reply.id, + recipient_id = d.comment_reply.recipient_id, + comment_id = d.comment_reply.comment_id, + read = d.comment_reply.read, + published_at = d.comment_reply.published, + kind = NotificationType.Reply, + post_id = d.post.id, + ), + data = NotificationData.Comment( + comment = this.toUniCV(d), + ), + ) + + fun toUniCV(d: X6DatatypesCommentReplyView): LemmyapiDatatypesCommentView = + LemmyapiDatatypesCommentView( + comment = this.toUni(d = d.comment, d.counts), + creator = this.toUni(d = d.creator), + post = this.toUni(d = d.post, counts = X6DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), + community = this.toUni(d = d.community, counts = X6DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), + creator_banned_from_community = d.creator_banned_from_community, + creator_is_moderator = d.creator_is_moderator, + creator_is_admin = d.creator_is_admin, + post_tags = emptyList(), + creator_banned = d.creator.banned, + can_mod = false, + person_actions = PersonActions(if (d.creator_blocked) "" else null), + comment_actions = CommentActions(d.my_vote, null, if (d.saved) "" else null), + community_actions = CommunityActions(null, CommunityFollowerState.from(d.subscribed)), + ) + + fun toUni(d: X6DatatypesGetPersonMentionsResponse): LemmyapiDatatypesListNotificationsResponse = + LemmyapiDatatypesListNotificationsResponse( + notifications = d.mentions.map { this.toUni(d = it) }, + ) + + fun toUni(d: X6DatatypesPersonMentionView): NotificationView = + NotificationView( + notification = Notification( + id = d.person_mention.id, + recipient_id = d.person_mention.recipient_id, + comment_id = d.person_mention.comment_id, + read = d.person_mention.read, + published_at = d.person_mention.published, + kind = NotificationType.Mention, + post_id = d.post.id, + ), + data = NotificationData.Comment( + comment = this.toUniPV(d), + ), + ) + + fun toUniPV(d: X6DatatypesPersonMentionView): LemmyapiDatatypesCommentView = + LemmyapiDatatypesCommentView( + comment = this.toUni(d = d.comment, d.counts), + creator = this.toUni(d = d.creator), + post = this.toUni(d = d.post, counts = X6DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), + community = this.toUni(d = d.community, counts = X6DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), + creator_banned_from_community = d.creator_banned_from_community, + creator_is_moderator = d.creator_is_moderator, + creator_is_admin = d.creator_is_admin, + post_tags = emptyList(), + creator_banned = d.creator.banned, + can_mod = false, + person_actions = PersonActions(if (d.creator_blocked) "" else null), + comment_actions = CommentActions(d.my_vote, null, if (d.saved) "" else null), + community_actions = CommunityActions(null, CommunityFollowerState.from(d.subscribed)), + ) + + fun toUni(d: X6DatatypesPrivateMessagesResponse): LemmyapiDatatypesListNotificationsResponse = + LemmyapiDatatypesListNotificationsResponse( + notifications = d.private_messages.map { this.toUniPMV(d = it) }, + ) + + fun toUniPMV(d: X6DatatypesPrivateMessageView): NotificationView = + NotificationView( + notification = Notification( + id = d.private_message.id, + recipient_id = d.private_message.recipient_id, + read = d.private_message.read, + published_at = d.private_message.published, + kind = NotificationType.PrivateMessage, + ), + data = NotificationData.PrivateMessage( + private_message = this.toUni(d), + ), ) override fun toUni(d: X6DatatypesGetReportCountResponse): LemmyapiDatatypesGetReportCountResponse = LemmyapiDatatypesGetReportCountResponse( @@ -939,7 +983,7 @@ internal class Transformer : MapperGenerator { ) override fun toUni(d: X6DatatypesGetUnreadCountResponse): LemmyapiDatatypesGetUnreadCountResponse = LemmyapiDatatypesGetUnreadCountResponse( - count = d.replies + d.mentions + d.private_messages + count = d.replies + d.mentions + d.private_messages, ) override fun toUni(d: X6DatatypesGetUnreadRegistrationApplicationCountResponse): LemmyapiDatatypesGetUnreadRegistrationApplicationCountResponse = @@ -1390,38 +1434,6 @@ internal class Transformer : MapperGenerator { post_count = counts.post_count, ) - override fun toUni(d: X6DatatypesPersonMention): LemmyapiDatatypesPersonMention = - LemmyapiDatatypesPersonMention( - id = d.id, - recipient_id = d.recipient_id, - comment_id = d.comment_id, - read = d.read, - published = d.published, - ) - - override fun toUni(d: X6DatatypesPersonMentionResponse): LemmyapiDatatypesPersonMentionResponse = - LemmyapiDatatypesPersonMentionResponse( - person_mention_view = this.toUni(d = d.person_mention_view), - ) - - override fun toUni(d: X6DatatypesPersonMentionView): LemmyapiDatatypesPersonMentionView = - LemmyapiDatatypesPersonMentionView( - person_mention = this.toUni(d = d.person_mention), - comment = this.toUni(d = d.comment, d.counts), - creator = this.toUni(d = d.creator), - post = this.toUni(d = d.post, counts = X6DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), - community = this.toUni(d = d.community, counts = X6DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), - recipient = this.toUni(d = d.recipient), - creator_banned_from_community = d.creator_banned_from_community, - banned_from_community = d.banned_from_community, - creator_is_moderator = d.creator_is_moderator, - creator_is_admin = d.creator_is_admin, - subscribed = d.subscribed, - saved = d.saved, - creator_blocked = d.creator_blocked, - my_vote = d.my_vote, - ) - override fun toUni(d: X6DatatypesPersonView): LemmyapiDatatypesPersonView = LemmyapiDatatypesPersonView( person = this.toUni(d = d.person, d.counts), @@ -1567,10 +1579,6 @@ internal class Transformer : MapperGenerator { private_message_view = this.toUni(d = d.private_message_view), ) - override fun toUni(d: X6DatatypesPrivateMessagesResponse): LemmyapiDatatypesPrivateMessagesResponse = LemmyapiDatatypesPrivateMessagesResponse( - private_messages = d.private_messages.map { this.toUni(d = it) }, - ) - override fun toUni(d: X6DatatypesPrivateMessageView): LemmyapiDatatypesPrivateMessageView = LemmyapiDatatypesPrivateMessageView( private_message = this.toUni(d = d.private_message), @@ -2054,14 +2062,6 @@ internal class Transformer : MapperGenerator { saved_only = d.saved_only, ) - override fun fromUni(d: LemmyapiDatatypesGetPersonMentions): X6DatatypesGetPersonMentions = - X6DatatypesGetPersonMentions( - sort = d.sort, - page = d.page, - limit = d.limit, - unread_only = d.unread_only, - ) - override fun fromUni(d: LemmyapiDatatypesGetPost): X6DatatypesGetPost = X6DatatypesGetPost( id = d.id, comment_id = d.comment_id, @@ -2080,26 +2080,33 @@ internal class Transformer : MapperGenerator { page_cursor = d.page_cursor, ) - override fun fromUni(d: LemmyapiDatatypesGetPrivateMessages): X6DatatypesGetPrivateMessages = - X6DatatypesGetPrivateMessages( - unread_only = d.unread_only, + fun fromUniR(d: LemmyapiDatatypesListNotifications): X6DatatypesGetReplies = + X6DatatypesGetReplies( + sort = CommentSortType.New, page = d.page, limit = d.limit, - creator_id = d.creator_id, + unread_only = d.unread_only, ) - override fun fromUni(d: LemmyapiDatatypesGetRegistrationApplication): X6DatatypesGetRegistrationApplication = X6DatatypesGetRegistrationApplication( - person_id = d.person_id, - ) + fun fromUniM(d: LemmyapiDatatypesListNotifications): X6DatatypesGetPersonMentions = + X6DatatypesGetPersonMentions( + sort = CommentSortType.New, + page = d.page, + limit = d.limit, + unread_only = d.unread_only, + ) - override fun fromUni(d: LemmyapiDatatypesGetReplies): X6DatatypesGetReplies = - X6DatatypesGetReplies( - sort = d.sort, + fun fromUniP(d: LemmyapiDatatypesListNotifications): X6DatatypesGetPrivateMessages = + X6DatatypesGetPrivateMessages( page = d.page, limit = d.limit, unread_only = d.unread_only, ) + override fun fromUni(d: LemmyapiDatatypesGetRegistrationApplication): X6DatatypesGetRegistrationApplication = X6DatatypesGetRegistrationApplication( + person_id = d.person_id, + ) + override fun fromUni(d: LemmyapiDatatypesGetReportCount): X6DatatypesGetReportCount = X6DatatypesGetReportCount( community_id = d.community_id, @@ -2192,13 +2199,18 @@ internal class Transformer : MapperGenerator { totp_2fa_token = d.totp_2fa_token, ) - override fun fromUni(d: LemmyapiDatatypesMarkCommentReplyAsRead): X6DatatypesMarkCommentReplyAsRead = X6DatatypesMarkCommentReplyAsRead( - comment_reply_id = d.comment_reply_id, + fun fromUniR(d: MarkNotificationAsRead): X6DatatypesMarkCommentReplyAsRead = X6DatatypesMarkCommentReplyAsRead( + comment_reply_id = d.notification_id, read = d.read, ) - override fun fromUni(d: LemmyapiDatatypesMarkPersonMentionAsRead): X6DatatypesMarkPersonMentionAsRead = X6DatatypesMarkPersonMentionAsRead( - person_mention_id = d.person_mention_id, + fun fromUniM(d: MarkNotificationAsRead): X6DatatypesMarkPersonMentionAsRead = X6DatatypesMarkPersonMentionAsRead( + person_mention_id = d.notification_id, + read = d.read, + ) + + fun fromUniP(d: MarkNotificationAsRead): X6DatatypesMarkPrivateMessageAsRead = X6DatatypesMarkPrivateMessageAsRead( + private_message_id = d.notification_id, read = d.read, ) @@ -2208,11 +2220,6 @@ internal class Transformer : MapperGenerator { read = d.read, ) - override fun fromUni(d: LemmyapiDatatypesMarkPrivateMessageAsRead): X6DatatypesMarkPrivateMessageAsRead = X6DatatypesMarkPrivateMessageAsRead( - private_message_id = d.private_message_id, - read = d.read, - ) - override fun fromUni(d: LemmyapiDatatypesPasswordChangeAfterReset): X6DatatypesPasswordChangeAfterReset = X6DatatypesPasswordChangeAfterReset( token = d.token, password = d.password, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListNotifications.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListNotifications.kt index 40810c40..7deda5b0 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListNotifications.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListNotifications.kt @@ -1,11 +1,13 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -import it.vercruysse.lemmyapi.dto.ListingType +import it.vercruysse.lemmyapi.dto.NotificationDataType import kotlinx.serialization.Serializable + + @Serializable internal data class ListNotifications( - val type_: ListingType? /* "All" | "Reply" | "Mention" | "PrivateMessage" | "Subscribed" */ = null, + val type_: NotificationDataType? /* "All" | "Reply" | "Mention" | "PrivateMessage" | "Subscribed" */ = null, val unread_only: Boolean? = null, val page_cursor: PaginationCursor? = null, val page_back: Boolean? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MarkPrivateMessageAsRead.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MarkPrivateMessageAsRead.kt deleted file mode 100644 index 374a3484..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MarkPrivateMessageAsRead.kt +++ /dev/null @@ -1,9 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class MarkPrivateMessageAsRead( - val private_message_id: PrivateMessageId, - val read: Boolean, -) From d3e3f85bf0b78671616f4a18feeb87dfecb231e5 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Tue, 30 Sep 2025 20:57:17 +0200 Subject: [PATCH 018/110] Remove wrong deps --- .../kotlin/it/vercruysse/lemmyapi/datatypes/CommunityIdQuery.kt | 1 - .../kotlin/it/vercruysse/lemmyapi/datatypes/CreateSite.kt | 1 - .../kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt | 1 - .../kotlin/it/vercruysse/lemmyapi/datatypes/GetModlog.kt | 1 - .../kotlin/it/vercruysse/lemmyapi/datatypes/ListCommunities.kt | 1 - .../kotlin/it/vercruysse/lemmyapi/datatypes/ListMedia.kt | 1 - .../kotlin/it/vercruysse/lemmyapi/datatypes/LocalImage.kt | 1 - .../it/vercruysse/lemmyapi/datatypes/MarkNotificationAsRead.kt | 1 - .../kotlin/it/vercruysse/lemmyapi/datatypes/ModEditPost.kt | 2 -- .../kotlin/it/vercruysse/lemmyapi/datatypes/Search.kt | 1 - 10 files changed, 11 deletions(-) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityIdQuery.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityIdQuery.kt index c1e86e52..84e84d3c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityIdQuery.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityIdQuery.kt @@ -2,7 +2,6 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CommunityId import kotlinx.serialization.Serializable @CommonParcelize diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateSite.kt index 6670e416..fb27bc6b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateSite.kt @@ -8,7 +8,6 @@ import it.vercruysse.lemmyapi.dto.ListingType import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize -import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.MultiCommunityId // TODO: has changed diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt index 8197209c..31af8d88 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt @@ -8,7 +8,6 @@ import it.vercruysse.lemmyapi.dto.ListingType import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize -import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.MultiCommunityId // TODO: many changes diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetModlog.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetModlog.kt index 2ae1e069..492d0ffc 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetModlog.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetModlog.kt @@ -6,7 +6,6 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.dto.ListingType -import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PaginationCursor @CommonParcelize @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommunities.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommunities.kt index 4674865f..3a027649 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommunities.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommunities.kt @@ -6,7 +6,6 @@ import it.vercruysse.lemmyapi.dto.ListingType import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize -import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PaginationCursor @CommonParcelize @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListMedia.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListMedia.kt index 718e0a1e..ef94e1dc 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListMedia.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListMedia.kt @@ -4,7 +4,6 @@ import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize -import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PaginationCursor @CommonParcelize @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalImage.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalImage.kt index a2839890..e9fac1b6 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalImage.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalImage.kt @@ -4,7 +4,6 @@ import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize -import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PostId @CommonParcelize @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkNotificationAsRead.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkNotificationAsRead.kt index 55654f9f..7531987c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkNotificationAsRead.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkNotificationAsRead.kt @@ -3,7 +3,6 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import it.vercruysse.lemmyapi.dto.NotificationType -import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.NotificationId import kotlinx.serialization.Serializable @CommonParcelize diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModEditPost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModEditPost.kt index 7f9f9f9e..9d7d0771 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModEditPost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModEditPost.kt @@ -2,8 +2,6 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PostId -import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.TagId import kotlinx.serialization.Serializable @CommonParcelize diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Search.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Search.kt index 4f2bcd9e..06020221 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Search.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Search.kt @@ -7,7 +7,6 @@ import it.vercruysse.lemmyapi.dto.SearchType import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize -import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PaginationCursor @CommonParcelize @Serializable From 81a67d0a21ece1afd107cb2577914199716eeb9a Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Tue, 30 Sep 2025 21:19:42 +0200 Subject: [PATCH 019/110] Update non null reason --- .../it/vercruysse/lemmyapi/datatypes/AdminAllowInstance.kt | 2 +- .../it/vercruysse/lemmyapi/datatypes/AdminBlockInstance.kt | 2 +- .../lemmyapi/datatypes/AdminBlockInstanceParams.kt | 2 +- .../it/vercruysse/lemmyapi/datatypes/AdminPurgeComment.kt | 2 +- .../it/vercruysse/lemmyapi/datatypes/AdminPurgeCommunity.kt | 2 +- .../it/vercruysse/lemmyapi/datatypes/AdminPurgePerson.kt | 2 +- .../it/vercruysse/lemmyapi/datatypes/AdminPurgePost.kt | 2 +- .../it/vercruysse/lemmyapi/datatypes/BanFromCommunity.kt | 2 +- .../kotlin/it/vercruysse/lemmyapi/datatypes/BanPerson.kt | 2 +- .../kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt | 6 +++--- .../it/vercruysse/lemmyapi/datatypes/HideCommunity.kt | 2 +- .../kotlin/it/vercruysse/lemmyapi/datatypes/LockPost.kt | 2 +- .../it/vercruysse/lemmyapi/datatypes/ModBanFromCommunity.kt | 2 +- .../kotlin/it/vercruysse/lemmyapi/datatypes/ModLockPost.kt | 2 +- .../it/vercruysse/lemmyapi/datatypes/ModRemoveComment.kt | 2 +- .../it/vercruysse/lemmyapi/datatypes/ModRemovePost.kt | 2 +- .../kotlin/it/vercruysse/lemmyapi/datatypes/PurgeComment.kt | 2 +- .../it/vercruysse/lemmyapi/datatypes/PurgeCommunity.kt | 2 +- .../kotlin/it/vercruysse/lemmyapi/datatypes/PurgePerson.kt | 2 +- .../kotlin/it/vercruysse/lemmyapi/datatypes/PurgePost.kt | 2 +- .../it/vercruysse/lemmyapi/datatypes/RemoveComment.kt | 2 +- .../it/vercruysse/lemmyapi/datatypes/RemoveCommunity.kt | 2 +- .../kotlin/it/vercruysse/lemmyapi/datatypes/RemovePost.kt | 2 +- .../lemmyapi/v1/x0/x0/datatypes/AdminAllowInstance.kt | 2 +- .../lemmyapi/v1/x0/x0/datatypes/AdminAllowInstanceParams.kt | 2 +- .../lemmyapi/v1/x0/x0/datatypes/AdminBlockInstance.kt | 2 +- .../lemmyapi/v1/x0/x0/datatypes/AdminBlockInstanceParams.kt | 2 +- .../lemmyapi/v1/x0/x0/datatypes/AdminPurgeComment.kt | 2 +- .../lemmyapi/v1/x0/x0/datatypes/AdminPurgeCommunity.kt | 2 +- .../lemmyapi/v1/x0/x0/datatypes/AdminPurgePerson.kt | 2 +- .../lemmyapi/v1/x0/x0/datatypes/AdminPurgePost.kt | 2 +- .../lemmyapi/v1/x0/x0/datatypes/BanFromCommunity.kt | 2 +- .../it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BanPerson.kt | 2 +- .../vercruysse/lemmyapi/v1/x0/x0/datatypes/HideCommunity.kt | 2 +- .../lemmyapi/v1/x0/x0/datatypes/ListNotifications.kt | 2 -- .../it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LockPost.kt | 2 +- .../lemmyapi/v1/x0/x0/datatypes/ModBanFromCommunity.kt | 2 +- .../vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockPost.kt | 2 +- .../lemmyapi/v1/x0/x0/datatypes/ModRemoveComment.kt | 2 +- .../vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemovePost.kt | 2 +- .../vercruysse/lemmyapi/v1/x0/x0/datatypes/PurgeComment.kt | 2 +- .../lemmyapi/v1/x0/x0/datatypes/PurgeCommunity.kt | 2 +- .../vercruysse/lemmyapi/v1/x0/x0/datatypes/PurgePerson.kt | 2 +- .../it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PurgePost.kt | 2 +- .../vercruysse/lemmyapi/v1/x0/x0/datatypes/RemoveComment.kt | 2 +- .../lemmyapi/v1/x0/x0/datatypes/RemoveCommunity.kt | 2 +- .../it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RemovePost.kt | 2 +- 47 files changed, 48 insertions(+), 50 deletions(-) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminAllowInstance.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminAllowInstance.kt index 310ce0ae..629789b0 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminAllowInstance.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminAllowInstance.kt @@ -11,6 +11,6 @@ data class AdminAllowInstance( val instance_id: InstanceId, val admin_person_id: PersonId, val allowed: Boolean, - val reason: String? = null, + val reason: String, val published_at: String, ): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminBlockInstance.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminBlockInstance.kt index c1b55f1b..93354a20 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminBlockInstance.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminBlockInstance.kt @@ -11,7 +11,7 @@ data class AdminBlockInstance( val instance_id: InstanceId, val admin_person_id: PersonId, val blocked: Boolean, - val reason: String? = null, + val reason: String, val expires_at: String? = null, val published_at: String, ): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminBlockInstanceParams.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminBlockInstanceParams.kt index e09057c4..61922d23 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminBlockInstanceParams.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminBlockInstanceParams.kt @@ -9,6 +9,6 @@ import kotlinx.serialization.Serializable data class AdminBlockInstanceParams( val instance: String, val block: Boolean, - val reason: String? = null, + val reason: String, val expires_at: String? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgeComment.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgeComment.kt index 64955237..1212f6a0 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgeComment.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgeComment.kt @@ -11,6 +11,6 @@ data class AdminPurgeComment( val id: AdminPurgeCommentId, val admin_person_id: PersonId, val post_id: PostId, - val reason: String? = null, + val reason: String, val published_at: String, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgeCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgeCommunity.kt index 5ee3b536..3c0c6b9f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgeCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgeCommunity.kt @@ -11,6 +11,6 @@ import it.vercruysse.lemmyapi.CommonParcelize data class AdminPurgeCommunity( override val id: AdminPurgeCommunityId, val admin_person_id: PersonId, - val reason: String? = null, + val reason: String, val published_at: String, ) : DatatypeRoot, Identity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgePerson.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgePerson.kt index 1fbf8d7d..3256656c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgePerson.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgePerson.kt @@ -11,6 +11,6 @@ import it.vercruysse.lemmyapi.CommonParcelize data class AdminPurgePerson( override val id: AdminPurgePersonId, val admin_person_id: PersonId, - val reason: String? = null, + val reason: String, val published_at: String, ) : DatatypeRoot, Identity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgePost.kt index 1d836bfa..b0a7d5e2 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgePost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgePost.kt @@ -12,6 +12,6 @@ data class AdminPurgePost( override val id: AdminPurgePostId, val admin_person_id: PersonId, val community_id: CommunityId, - val reason: String? = null, + val reason: String, val published_at: String, ) : DatatypeRoot, Identity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BanFromCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BanFromCommunity.kt index 3154bf4e..04a31d61 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BanFromCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BanFromCommunity.kt @@ -12,6 +12,6 @@ data class BanFromCommunity( val person_id: PersonId, val ban: Boolean, val remove_or_restore_data: Boolean? = null, - val reason: String? = null, + val reason: String, val expires_at: Long? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BanPerson.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BanPerson.kt index 4d8753d0..d0664bfe 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BanPerson.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BanPerson.kt @@ -11,6 +11,6 @@ data class BanPerson( val person_id: PersonId, val ban: Boolean, val remove_or_restore_data: Boolean? = null, - val reason: String? = null, + val reason: String, val expires_at: Long? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt index 31af8d88..a66b1aea 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt @@ -46,9 +46,9 @@ data class EditSite( val rate_limit_comment_interval_seconds: Long? = null, val rate_limit_search_max_requests: Long? = null, val rate_limit_search_interval_seconds: Long? = null, - /* Added in 1.0.0 */ + /** Added in 1.0.0 */ val rate_limit_import_user_settings_max_requests: Long? = null, - /* Added in 1.0.0 */ + /** Added in 1.0.0 */ val rate_limit_import_user_settings_interval_seconds: Long? = null, val federation_enabled: Boolean? = null, val federation_debug: Boolean? = null, @@ -62,6 +62,6 @@ data class EditSite( val reports_email_admins: Boolean? = null, val content_warning: String? = null, val default_post_listing_mode: PostListingMode? /* "List" | "Card" | "SmallCard" */ = null, - /* Added in 1.0.0 */ + /** Added in 1.0.0 */ val suggested_communities: MultiCommunityId? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/HideCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/HideCommunity.kt index 0b24bf3f..88f8774b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/HideCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/HideCommunity.kt @@ -10,5 +10,5 @@ import it.vercruysse.lemmyapi.CommonParcelize data class HideCommunity( val community_id: CommunityId, val hidden: Boolean, - val reason: String? = null, + val reason: String, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LockPost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LockPost.kt index 15817b5e..445da7f6 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LockPost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LockPost.kt @@ -10,5 +10,5 @@ import it.vercruysse.lemmyapi.CommonParcelize data class LockPost( val post_id: PostId, val locked: Boolean, - val reason: String? = null, + val reason: String, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModBanFromCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModBanFromCommunity.kt index 25334a28..84829ace 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModBanFromCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModBanFromCommunity.kt @@ -13,7 +13,7 @@ data class ModBanFromCommunity( val mod_person_id: PersonId, val other_person_id: PersonId, val community_id: CommunityId, - val reason: String? = null, + val reason: String, val banned: Boolean, val expires_at: String? = null, val published_at: String, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModLockPost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModLockPost.kt index 87da767f..db135a59 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModLockPost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModLockPost.kt @@ -14,5 +14,5 @@ data class ModLockPost( val locked: Boolean, val published_at: String, /** Added in 1.0.0 */ - val reason: String? = null, + val reason: String, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModRemoveComment.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModRemoveComment.kt index 8ecec02c..ce041cee 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModRemoveComment.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModRemoveComment.kt @@ -11,7 +11,7 @@ data class ModRemoveComment( val id: Long, val mod_person_id: PersonId, val comment_id: CommentId, - val reason: String? = null, + val reason: String, val removed: Boolean, val published_at: String, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModRemovePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModRemovePost.kt index bf6212fe..72e5a07b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModRemovePost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModRemovePost.kt @@ -11,7 +11,7 @@ data class ModRemovePost( val id: Long, val mod_person_id: PersonId, val post_id: PostId, - val reason: String? = null, + val reason: String, val removed: Boolean, val published_at: String, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PurgeComment.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PurgeComment.kt index f232b938..4d0e81ba 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PurgeComment.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PurgeComment.kt @@ -9,5 +9,5 @@ import it.vercruysse.lemmyapi.CommonParcelize @Serializable data class PurgeComment( val comment_id: CommentId, - val reason: String? = null, + val reason: String, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PurgeCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PurgeCommunity.kt index e056ce78..a048817a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PurgeCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PurgeCommunity.kt @@ -9,5 +9,5 @@ import it.vercruysse.lemmyapi.CommonParcelize @Serializable data class PurgeCommunity( val community_id: CommunityId, - val reason: String? = null, + val reason: String, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PurgePerson.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PurgePerson.kt index 70819179..841a464b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PurgePerson.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PurgePerson.kt @@ -9,5 +9,5 @@ import it.vercruysse.lemmyapi.CommonParcelize @Serializable data class PurgePerson( val person_id: PersonId, - val reason: String? = null, + val reason: String, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PurgePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PurgePost.kt index 6e7d14fc..3666d1d4 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PurgePost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PurgePost.kt @@ -9,5 +9,5 @@ import it.vercruysse.lemmyapi.CommonParcelize @Serializable data class PurgePost( val post_id: PostId, - val reason: String? = null, + val reason: String, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/RemoveComment.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/RemoveComment.kt index c30b21d1..24bb4113 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/RemoveComment.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/RemoveComment.kt @@ -10,5 +10,5 @@ import it.vercruysse.lemmyapi.CommonParcelize data class RemoveComment( val comment_id: CommentId, val removed: Boolean, - val reason: String? = null, + val reason: String, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/RemoveCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/RemoveCommunity.kt index 38692e2a..381228ba 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/RemoveCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/RemoveCommunity.kt @@ -10,5 +10,5 @@ import it.vercruysse.lemmyapi.CommonParcelize data class RemoveCommunity( val community_id: CommunityId, val removed: Boolean, - val reason: String? = null, + val reason: String, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/RemovePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/RemovePost.kt index 72d35a25..fcbbc51e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/RemovePost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/RemovePost.kt @@ -10,5 +10,5 @@ import it.vercruysse.lemmyapi.CommonParcelize data class RemovePost( val post_id: PostId, val removed: Boolean, - val reason: String? = null, + val reason: String, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAllowInstance.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAllowInstance.kt index e0e892ae..ab761045 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAllowInstance.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAllowInstance.kt @@ -8,6 +8,6 @@ internal data class AdminAllowInstance( val instance_id: InstanceId, val admin_person_id: PersonId, val allowed: Boolean, - val reason: String? = null, + val reason: String, val published_at: String, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAllowInstanceParams.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAllowInstanceParams.kt index a5b09041..8edc2de5 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAllowInstanceParams.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAllowInstanceParams.kt @@ -6,5 +6,5 @@ import kotlinx.serialization.Serializable internal data class AdminAllowInstanceParams( val instance: String, val allow: Boolean, - val reason: String? = null, + val reason: String, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBlockInstance.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBlockInstance.kt index ca877a41..37a60e8a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBlockInstance.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBlockInstance.kt @@ -8,7 +8,7 @@ internal data class AdminBlockInstance( val instance_id: InstanceId, val admin_person_id: PersonId, val blocked: Boolean, - val reason: String? = null, + val reason: String, val expires_at: String? = null, val published_at: String, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBlockInstanceParams.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBlockInstanceParams.kt index 7d3b25be..d32df7da 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBlockInstanceParams.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBlockInstanceParams.kt @@ -6,6 +6,6 @@ import kotlinx.serialization.Serializable internal data class AdminBlockInstanceParams( val instance: String, val block: Boolean, - val reason: String? = null, + val reason: String, val expires_at: String? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeComment.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeComment.kt index e9948446..fe94bc3d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeComment.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeComment.kt @@ -7,6 +7,6 @@ internal data class AdminPurgeComment( val id: AdminPurgeCommentId, val admin_person_id: PersonId, val post_id: PostId, - val reason: String? = null, + val reason: String, val published_at: String, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeCommunity.kt index 2fda781d..f1d9a681 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeCommunity.kt @@ -6,6 +6,6 @@ import kotlinx.serialization.Serializable internal data class AdminPurgeCommunity( val id: AdminPurgeCommunityId, val admin_person_id: PersonId, - val reason: String? = null, + val reason: String, val published_at: String, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePerson.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePerson.kt index 22141c93..42824095 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePerson.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePerson.kt @@ -6,6 +6,6 @@ import kotlinx.serialization.Serializable internal data class AdminPurgePerson( val id: AdminPurgePersonId, val admin_person_id: PersonId, - val reason: String? = null, + val reason: String, val published_at: String, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePost.kt index 52330b54..8c297e1c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePost.kt @@ -7,6 +7,6 @@ internal data class AdminPurgePost( val id: AdminPurgePostId, val admin_person_id: PersonId, val community_id: CommunityId, - val reason: String? = null, + val reason: String, val published_at: String, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BanFromCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BanFromCommunity.kt index dc0f9d1e..d8cc9f0e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BanFromCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BanFromCommunity.kt @@ -8,6 +8,6 @@ internal data class BanFromCommunity( val person_id: PersonId, val ban: Boolean, val remove_or_restore_data: Boolean? = null, - val reason: String? = null, + val reason: String, val expires_at: Long? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BanPerson.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BanPerson.kt index c85c5197..fc06c85c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BanPerson.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BanPerson.kt @@ -7,6 +7,6 @@ internal data class BanPerson( val person_id: PersonId, val ban: Boolean, val remove_or_restore_data: Boolean? = null, - val reason: String? = null, + val reason: String, val expires_at: Long? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/HideCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/HideCommunity.kt index 51049fe5..89a967c6 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/HideCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/HideCommunity.kt @@ -6,5 +6,5 @@ import kotlinx.serialization.Serializable internal data class HideCommunity( val community_id: CommunityId, val hidden: Boolean, - val reason: String? = null, + val reason: String, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListNotifications.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListNotifications.kt index 7deda5b0..9b149e79 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListNotifications.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListNotifications.kt @@ -3,8 +3,6 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes import it.vercruysse.lemmyapi.dto.NotificationDataType import kotlinx.serialization.Serializable - - @Serializable internal data class ListNotifications( val type_: NotificationDataType? /* "All" | "Reply" | "Mention" | "PrivateMessage" | "Subscribed" */ = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LockPost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LockPost.kt index 216e6a13..9541efd4 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LockPost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LockPost.kt @@ -6,5 +6,5 @@ import kotlinx.serialization.Serializable internal data class LockPost( val post_id: PostId, val locked: Boolean, - val reason: String? = null, + val reason: String, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanFromCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanFromCommunity.kt index 2863b3de..834d12f9 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanFromCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanFromCommunity.kt @@ -8,7 +8,7 @@ internal data class ModBanFromCommunity( val mod_person_id: PersonId, val other_person_id: PersonId, val community_id: CommunityId, - val reason: String? = null, + val reason: String, val banned: Boolean, val expires_at: String? = null, val published_at: String, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockPost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockPost.kt index 34b63da1..1cffab17 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockPost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockPost.kt @@ -9,5 +9,5 @@ internal data class ModLockPost( val post_id: PostId, val locked: Boolean, val published_at: String, - val reason: String? = null, + val reason: String, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveComment.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveComment.kt index db53a87b..a989830f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveComment.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveComment.kt @@ -7,7 +7,7 @@ internal data class ModRemoveComment( val id: ModRemoveCommentId, val mod_person_id: PersonId, val comment_id: CommentId, - val reason: String? = null, + val reason: String, val removed: Boolean, val published_at: String, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemovePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemovePost.kt index 1226e9db..21c814f7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemovePost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemovePost.kt @@ -7,7 +7,7 @@ internal data class ModRemovePost( val id: ModRemovePostId, val mod_person_id: PersonId, val post_id: PostId, - val reason: String? = null, + val reason: String, val removed: Boolean, val published_at: String, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PurgeComment.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PurgeComment.kt index 2aa2eb72..78241558 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PurgeComment.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PurgeComment.kt @@ -5,5 +5,5 @@ import kotlinx.serialization.Serializable @Serializable internal data class PurgeComment( val comment_id: CommentId, - val reason: String? = null, + val reason: String, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PurgeCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PurgeCommunity.kt index 469c0144..1fa7a69f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PurgeCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PurgeCommunity.kt @@ -5,5 +5,5 @@ import kotlinx.serialization.Serializable @Serializable internal data class PurgeCommunity( val community_id: CommunityId, - val reason: String? = null, + val reason: String, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PurgePerson.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PurgePerson.kt index 098f2d19..986e7794 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PurgePerson.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PurgePerson.kt @@ -5,5 +5,5 @@ import kotlinx.serialization.Serializable @Serializable internal data class PurgePerson( val person_id: PersonId, - val reason: String? = null, + val reason: String, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PurgePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PurgePost.kt index b994ada0..34839db9 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PurgePost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PurgePost.kt @@ -5,5 +5,5 @@ import kotlinx.serialization.Serializable @Serializable internal data class PurgePost( val post_id: PostId, - val reason: String? = null, + val reason: String, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RemoveComment.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RemoveComment.kt index 79aa7efa..7cb67dbb 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RemoveComment.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RemoveComment.kt @@ -6,5 +6,5 @@ import kotlinx.serialization.Serializable internal data class RemoveComment( val comment_id: CommentId, val removed: Boolean, - val reason: String? = null, + val reason: String, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RemoveCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RemoveCommunity.kt index 067e30f4..84be64af 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RemoveCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RemoveCommunity.kt @@ -6,5 +6,5 @@ import kotlinx.serialization.Serializable internal data class RemoveCommunity( val community_id: CommunityId, val removed: Boolean, - val reason: String? = null, + val reason: String, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RemovePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RemovePost.kt index af931ff5..71a2d65c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RemovePost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RemovePost.kt @@ -6,5 +6,5 @@ import kotlinx.serialization.Serializable internal data class RemovePost( val post_id: PostId, val removed: Boolean, - val reason: String? = null, + val reason: String, ) From 1c350ace1c0506da75469970130362dc69c6789f Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Tue, 30 Sep 2025 21:21:58 +0200 Subject: [PATCH 020/110] Update non null reason --- .../vercruysse/lemmyapi/datatypes/AdminAllowInstanceParams.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminAllowInstanceParams.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminAllowInstanceParams.kt index 6446e6e6..fc12c446 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminAllowInstanceParams.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminAllowInstanceParams.kt @@ -9,5 +9,5 @@ import kotlinx.serialization.Serializable data class AdminAllowInstanceParams( val instance: String, val allow: Boolean, - val reason: String? = null, + val reason: String, ): DatatypeRoot From 70e3d509ede3fd19e59364ecb85b694276826784 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Tue, 30 Sep 2025 21:23:01 +0200 Subject: [PATCH 021/110] Fix backup --- .../it/vercruysse/lemmyapi/datatypes/UserSettingsBackup.kt | 1 - .../vercruysse/lemmyapi/v1/x0/x0/datatypes/UserSettingsBackup.kt | 1 - 2 files changed, 2 deletions(-) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UserSettingsBackup.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UserSettingsBackup.kt index 4175a839..3b114009 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UserSettingsBackup.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UserSettingsBackup.kt @@ -19,7 +19,6 @@ data class UserSettingsBackup( val saved_comments: List, val blocked_communities: List, val blocked_users: List, - val blocked_instances: List, val blocked_instances_communities: List, val blocked_instances_persons: List, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UserSettingsBackup.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UserSettingsBackup.kt index 742610f8..7b57a5b7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UserSettingsBackup.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UserSettingsBackup.kt @@ -16,7 +16,6 @@ internal data class UserSettingsBackup( val saved_comments: List, val blocked_communities: List, val blocked_users: List, - val blocked_instances: List, val blocked_instances_communities: List, val blocked_instances_persons: List, ) From df7437cfea473394ea529d16f4fdd1195ef7c2ef Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Wed, 1 Oct 2025 20:21:50 +0200 Subject: [PATCH 022/110] Fix LinkMetadata.kt --- .../kotlin/it/vercruysse/lemmyapi/datatypes/LinkMetadata.kt | 6 +++++- .../vercruysse/lemmyapi/v1/x0/x0/datatypes/LinkMetadata.kt | 4 ++++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LinkMetadata.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LinkMetadata.kt index 6e57a9de..a9a9ef01 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LinkMetadata.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LinkMetadata.kt @@ -8,9 +8,13 @@ import it.vercruysse.lemmyapi.CommonParcelize @CommonParcelize @Serializable data class LinkMetadata( + val content_type: String? = null, val title: String? = null, val description: String? = null, val image: String? = null, + val image_width: Long? = null, + val image_height: Long? = null, val embed_video_url: String? = null, - val content_type: String? = null, + val video_width: Long? = null, + val video_height: Long? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LinkMetadata.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LinkMetadata.kt index 5615c38c..480f561b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LinkMetadata.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LinkMetadata.kt @@ -8,5 +8,9 @@ internal data class LinkMetadata( val title: String? = null, val description: String? = null, val image: DbUrl? = null, + val image_width: Long? = null, + val image_height: Long? = null, val embed_video_url: DbUrl? = null, + val video_width: Long? = null, + val video_height: Long? = null, ) From 98b107f77c6ee4fa337b561181214e17295472d4 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Wed, 1 Oct 2025 20:40:47 +0200 Subject: [PATCH 023/110] Fix Comment.kt --- .../it/vercruysse/lemmyapi/datatypes/Comment.kt | 2 ++ .../vercruysse/lemmyapi/v0/x18/x5/Transformer.kt | 16 +++++++++------- .../vercruysse/lemmyapi/v0/x19/x0/Transformer.kt | 16 +++++++++------- .../lemmyapi/v0/x19/x11/Transformer.kt | 16 +++++++++------- .../vercruysse/lemmyapi/v0/x19/x3/Transformer.kt | 16 +++++++++------- .../vercruysse/lemmyapi/v0/x19/x4/Transformer.kt | 16 +++++++++------- .../vercruysse/lemmyapi/v0/x19/x6/Transformer.kt | 16 +++++++++------- .../lemmyapi/v1/x0/x0/datatypes/Comment.kt | 1 + 8 files changed, 57 insertions(+), 42 deletions(-) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Comment.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Comment.kt index a8ce3e84..6d2f26ef 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Comment.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Comment.kt @@ -32,4 +32,6 @@ data class Comment( val unresolved_report_count: Long, /** Added in Lemmy 1.0.0 */ val federation_pending: Boolean, + /** Added in Lemmy 1.0.0 */ + val locked: Boolean, ) : DatatypeRoot, Identity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt index 2ed784b1..3fe77240 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt @@ -651,7 +651,7 @@ internal class Transformer(var auth: String) : MapperGenerator { id = d.id, admin_person_id = d.admin_person_id, post_id = d.post_id, - reason = d.reason, + reason = d.reason ?: "", published_at = addTimezoneOffset(d.when_), ) @@ -666,7 +666,7 @@ internal class Transformer(var auth: String) : MapperGenerator { LemmyapiDatatypesAdminPurgeCommunity( id = d.id, admin_person_id = d.admin_person_id, - reason = d.reason, + reason = d.reason ?: "", published_at = addTimezoneOffset(d.when_), ) @@ -679,7 +679,7 @@ internal class Transformer(var auth: String) : MapperGenerator { LemmyapiDatatypesAdminPurgePerson( id = d.id, admin_person_id = d.admin_person_id, - reason = d.reason, + reason = d.reason ?: "", published_at = addTimezoneOffset(d.when_), ) @@ -694,7 +694,7 @@ internal class Transformer(var auth: String) : MapperGenerator { id = d.id, admin_person_id = d.admin_person_id, community_id = d.community_id, - reason = d.reason, + reason = d.reason ?: "", published_at = addTimezoneOffset(d.when_), ) @@ -760,6 +760,7 @@ internal class Transformer(var auth: String) : MapperGenerator { report_count = -1, unresolved_report_count = -1, federation_pending = false, + locked = false, ) override fun toUni(d: X5DatatypesCommentReport): LemmyapiDatatypesCommentReport = @@ -1181,7 +1182,7 @@ internal class Transformer(var auth: String) : MapperGenerator { mod_person_id = d.mod_person_id, other_person_id = d.other_person_id, community_id = d.community_id, - reason = d.reason, + reason = d.reason ?: "", banned = d.banned, expires_at = addTimezoneOffsetNullable(d.expires), published_at = addTimezoneOffset(d.when_), @@ -1246,6 +1247,7 @@ internal class Transformer(var auth: String) : MapperGenerator { mod_person_id = d.mod_person_id, post_id = d.post_id, locked = d.locked, + reason = "", published_at = addTimezoneOffset(d.when_), ) @@ -1262,7 +1264,7 @@ internal class Transformer(var auth: String) : MapperGenerator { id = d.id, mod_person_id = d.mod_person_id, comment_id = d.comment_id, - reason = d.reason, + reason = d.reason ?: "", removed = d.removed, published_at = addTimezoneOffset(d.when_), ) @@ -1298,7 +1300,7 @@ internal class Transformer(var auth: String) : MapperGenerator { id = d.id, mod_person_id = d.mod_person_id, post_id = d.post_id, - reason = d.reason, + reason = d.reason ?: "", removed = d.removed, published_at = addTimezoneOffset(d.when_), ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt index e6aa2be9..ebd08f9d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt @@ -577,7 +577,7 @@ internal class Transformer : MapperGenerator { id = d.id, admin_person_id = d.admin_person_id, post_id = d.post_id, - reason = d.reason, + reason = d.reason ?: "", published_at = d.when_, ) @@ -592,7 +592,7 @@ internal class Transformer : MapperGenerator { LemmyapiDatatypesAdminPurgeCommunity( id = d.id, admin_person_id = d.admin_person_id, - reason = d.reason, + reason = d.reason ?: "", published_at = d.when_, ) @@ -605,7 +605,7 @@ internal class Transformer : MapperGenerator { LemmyapiDatatypesAdminPurgePerson( id = d.id, admin_person_id = d.admin_person_id, - reason = d.reason, + reason = d.reason ?: "", published_at = d.when_, ) @@ -620,7 +620,7 @@ internal class Transformer : MapperGenerator { id = d.id, admin_person_id = d.admin_person_id, community_id = d.community_id, - reason = d.reason, + reason = d.reason ?: "", published_at = d.when_, ) @@ -686,6 +686,7 @@ internal class Transformer : MapperGenerator { report_count = -1, unresolved_report_count = -1, federation_pending = false, + locked = false, ) override fun toUni(d: X0DatatypesCommentReport): LemmyapiDatatypesCommentReport = @@ -1206,7 +1207,7 @@ internal class Transformer : MapperGenerator { mod_person_id = d.mod_person_id, other_person_id = d.other_person_id, community_id = d.community_id, - reason = d.reason, + reason = d.reason ?: "", banned = d.banned, expires_at = d.expires, published_at = d.when_, @@ -1272,6 +1273,7 @@ internal class Transformer : MapperGenerator { post_id = d.post_id, locked = d.locked, published_at = d.when_, + reason = "", ) override fun toUni(d: X0DatatypesModLockPostView): LemmyapiDatatypesModLockPostView = @@ -1287,7 +1289,7 @@ internal class Transformer : MapperGenerator { id = d.id, mod_person_id = d.mod_person_id, comment_id = d.comment_id, - reason = d.reason, + reason = d.reason ?: "", removed = d.removed, published_at = d.when_, ) @@ -1323,7 +1325,7 @@ internal class Transformer : MapperGenerator { id = d.id, mod_person_id = d.mod_person_id, post_id = d.post_id, - reason = d.reason, + reason = d.reason ?: "", removed = d.removed, published_at = d.when_, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt index 7d9222da..a8cf7653 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt @@ -436,7 +436,7 @@ internal class Transformer : MapperGenerator { id = d.id, admin_person_id = d.admin_person_id, post_id = d.post_id, - reason = d.reason, + reason = d.reason ?: "", published_at = d.when_, ) @@ -451,7 +451,7 @@ internal class Transformer : MapperGenerator { LemmyapiDatatypesAdminPurgeCommunity( id = d.id, admin_person_id = d.admin_person_id, - reason = d.reason, + reason = d.reason ?: "", published_at = d.when_, ) @@ -464,7 +464,7 @@ internal class Transformer : MapperGenerator { LemmyapiDatatypesAdminPurgePerson( id = d.id, admin_person_id = d.admin_person_id, - reason = d.reason, + reason = d.reason ?: "", published_at = d.when_, ) @@ -479,7 +479,7 @@ internal class Transformer : MapperGenerator { id = d.id, admin_person_id = d.admin_person_id, community_id = d.community_id, - reason = d.reason, + reason = d.reason ?: "", published_at = d.when_, ) @@ -545,6 +545,7 @@ internal class Transformer : MapperGenerator { report_count = -1, unresolved_report_count = -1, federation_pending = false, + locked = false, ) override fun toUni(d: X11DatatypesCommentReport): LemmyapiDatatypesCommentReport = @@ -1258,7 +1259,7 @@ internal class Transformer : MapperGenerator { mod_person_id = d.mod_person_id, other_person_id = d.other_person_id, community_id = d.community_id, - reason = d.reason, + reason = d.reason ?: "", banned = d.banned, expires_at = d.expires, published_at = d.when_, @@ -1324,6 +1325,7 @@ internal class Transformer : MapperGenerator { post_id = d.post_id, locked = d.locked, published_at = d.when_, + reason = "", ) override fun toUni(d: X11DatatypesModLockPostView): LemmyapiDatatypesModLockPostView = @@ -1339,7 +1341,7 @@ internal class Transformer : MapperGenerator { id = d.id, mod_person_id = d.mod_person_id, comment_id = d.comment_id, - reason = d.reason, + reason = d.reason ?: "", removed = d.removed, published_at = d.when_, ) @@ -1375,7 +1377,7 @@ internal class Transformer : MapperGenerator { id = d.id, mod_person_id = d.mod_person_id, post_id = d.post_id, - reason = d.reason, + reason = d.reason ?: "", removed = d.removed, published_at = d.when_, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt index 5810d303..0591b573 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt @@ -599,7 +599,7 @@ internal class Transformer : MapperGenerator { id = d.id, admin_person_id = d.admin_person_id, post_id = d.post_id, - reason = d.reason, + reason = d.reason ?: "", published_at = d.when_, ) @@ -614,7 +614,7 @@ internal class Transformer : MapperGenerator { LemmyapiDatatypesAdminPurgeCommunity( id = d.id, admin_person_id = d.admin_person_id, - reason = d.reason, + reason = d.reason ?: "", published_at = d.when_, ) @@ -627,7 +627,7 @@ internal class Transformer : MapperGenerator { LemmyapiDatatypesAdminPurgePerson( id = d.id, admin_person_id = d.admin_person_id, - reason = d.reason, + reason = d.reason ?: "", published_at = d.when_, ) @@ -642,7 +642,7 @@ internal class Transformer : MapperGenerator { id = d.id, admin_person_id = d.admin_person_id, community_id = d.community_id, - reason = d.reason, + reason = d.reason ?: "", published_at = d.when_, ) @@ -708,6 +708,7 @@ internal class Transformer : MapperGenerator { report_count = -1, unresolved_report_count = -1, federation_pending = false, + locked = false, ) override fun toUni(d: X3DatatypesCommentReport): LemmyapiDatatypesCommentReport = @@ -1237,7 +1238,7 @@ internal class Transformer : MapperGenerator { mod_person_id = d.mod_person_id, other_person_id = d.other_person_id, community_id = d.community_id, - reason = d.reason, + reason = d.reason ?: "", banned = d.banned, expires_at = d.expires, published_at = d.when_, @@ -1303,6 +1304,7 @@ internal class Transformer : MapperGenerator { post_id = d.post_id, locked = d.locked, published_at = d.when_, + reason = "", ) override fun toUni(d: X3DatatypesModLockPostView): LemmyapiDatatypesModLockPostView = @@ -1318,7 +1320,7 @@ internal class Transformer : MapperGenerator { id = d.id, mod_person_id = d.mod_person_id, comment_id = d.comment_id, - reason = d.reason, + reason = d.reason ?: "", removed = d.removed, published_at = d.when_, ) @@ -1354,7 +1356,7 @@ internal class Transformer : MapperGenerator { id = d.id, mod_person_id = d.mod_person_id, post_id = d.post_id, - reason = d.reason, + reason = d.reason ?: "", removed = d.removed, published_at = d.when_, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt index cf9edfbe..581565f4 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt @@ -432,7 +432,7 @@ internal class Transformer : MapperGenerator { id = d.id, admin_person_id = d.admin_person_id, post_id = d.post_id, - reason = d.reason, + reason = d.reason ?: "", published_at = d.when_, ) @@ -447,7 +447,7 @@ internal class Transformer : MapperGenerator { LemmyapiDatatypesAdminPurgeCommunity( id = d.id, admin_person_id = d.admin_person_id, - reason = d.reason, + reason = d.reason ?: "", published_at = d.when_, ) @@ -460,7 +460,7 @@ internal class Transformer : MapperGenerator { LemmyapiDatatypesAdminPurgePerson( id = d.id, admin_person_id = d.admin_person_id, - reason = d.reason, + reason = d.reason ?: "", published_at = d.when_, ) @@ -475,7 +475,7 @@ internal class Transformer : MapperGenerator { id = d.id, admin_person_id = d.admin_person_id, community_id = d.community_id, - reason = d.reason, + reason = d.reason ?: "", published_at = d.when_, ) @@ -542,6 +542,7 @@ internal class Transformer : MapperGenerator { report_count = -1, unresolved_report_count = -1, federation_pending = false, + locked = false, ) override fun toUni(d: X4DatatypesCommentReport): LemmyapiDatatypesCommentReport = @@ -1248,7 +1249,7 @@ internal class Transformer : MapperGenerator { mod_person_id = d.mod_person_id, other_person_id = d.other_person_id, community_id = d.community_id, - reason = d.reason, + reason = d.reason ?: "", banned = d.banned, expires_at = d.expires, published_at = d.when_, @@ -1314,6 +1315,7 @@ internal class Transformer : MapperGenerator { post_id = d.post_id, locked = d.locked, published_at = d.when_, + reason = "", ) override fun toUni(d: X4DatatypesModLockPostView): LemmyapiDatatypesModLockPostView = @@ -1329,7 +1331,7 @@ internal class Transformer : MapperGenerator { id = d.id, mod_person_id = d.mod_person_id, comment_id = d.comment_id, - reason = d.reason, + reason = d.reason ?: "", removed = d.removed, published_at = d.when_, ) @@ -1366,7 +1368,7 @@ internal class Transformer : MapperGenerator { id = d.id, mod_person_id = d.mod_person_id, post_id = d.post_id, - reason = d.reason, + reason = d.reason ?: "", removed = d.removed, published_at = d.when_, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt index 2391b375..4adec60b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt @@ -436,7 +436,7 @@ internal class Transformer : MapperGenerator { id = d.id, admin_person_id = d.admin_person_id, post_id = d.post_id, - reason = d.reason, + reason = d.reason ?: "", published_at = d.when_, ) @@ -451,7 +451,7 @@ internal class Transformer : MapperGenerator { LemmyapiDatatypesAdminPurgeCommunity( id = d.id, admin_person_id = d.admin_person_id, - reason = d.reason, + reason = d.reason ?: "", published_at = d.when_, ) @@ -464,7 +464,7 @@ internal class Transformer : MapperGenerator { LemmyapiDatatypesAdminPurgePerson( id = d.id, admin_person_id = d.admin_person_id, - reason = d.reason, + reason = d.reason ?: "", published_at = d.when_, ) @@ -479,7 +479,7 @@ internal class Transformer : MapperGenerator { id = d.id, admin_person_id = d.admin_person_id, community_id = d.community_id, - reason = d.reason, + reason = d.reason ?: "", published_at = d.when_, ) @@ -545,6 +545,7 @@ internal class Transformer : MapperGenerator { report_count = -1, unresolved_report_count = -1, federation_pending = false, + locked = false, ) override fun toUni(d: X6DatatypesCommentReport): LemmyapiDatatypesCommentReport = @@ -1255,7 +1256,7 @@ internal class Transformer : MapperGenerator { mod_person_id = d.mod_person_id, other_person_id = d.other_person_id, community_id = d.community_id, - reason = d.reason, + reason = d.reason ?: "", banned = d.banned, expires_at = d.expires, published_at = d.when_, @@ -1321,6 +1322,7 @@ internal class Transformer : MapperGenerator { post_id = d.post_id, locked = d.locked, published_at = d.when_, + reason = "", ) override fun toUni(d: X6DatatypesModLockPostView): LemmyapiDatatypesModLockPostView = @@ -1336,7 +1338,7 @@ internal class Transformer : MapperGenerator { id = d.id, mod_person_id = d.mod_person_id, comment_id = d.comment_id, - reason = d.reason, + reason = d.reason ?: "", removed = d.removed, published_at = d.when_, ) @@ -1372,7 +1374,7 @@ internal class Transformer : MapperGenerator { id = d.id, mod_person_id = d.mod_person_id, post_id = d.post_id, - reason = d.reason, + reason = d.reason ?: "", removed = d.removed, published_at = d.when_, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Comment.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Comment.kt index ea5a161d..25e62f47 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Comment.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Comment.kt @@ -24,4 +24,5 @@ internal data class Comment( val report_count: Long, val unresolved_report_count: Long, val federation_pending: Boolean, + val locked: Boolean, ) From 8863bf8ccb1f4f2da376b17dc23f00d3f5215b6d Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Thu, 2 Oct 2025 20:00:40 +0200 Subject: [PATCH 024/110] Fix PersonView.kt LocalUserView.kt --- .../kotlin/it/vercruysse/lemmyapi/datatypes/LocalUserView.kt | 1 + .../kotlin/it/vercruysse/lemmyapi/datatypes/PersonView.kt | 5 +++-- .../kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt | 4 +++- .../kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt | 4 +++- .../kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt | 4 +++- .../kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt | 4 +++- .../kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt | 4 +++- .../kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt | 4 +++- .../vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUserView.kt | 1 + .../it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonView.kt | 3 ++- 10 files changed, 25 insertions(+), 9 deletions(-) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUserView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUserView.kt index 8b1f82bb..c5e6b66d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUserView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUserView.kt @@ -12,6 +12,7 @@ data class LocalUserView( val local_user: LocalUser, val person: Person, val banned: Boolean, + val ban_expires_at: String? = null, ) : DatatypeRoot, Identity { override val id: Long get() = local_user.id diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonView.kt index 0df6455d..0373c85b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonView.kt @@ -11,5 +11,6 @@ data class PersonView( val person: Person, val is_admin: Boolean, val person_actions: PersonActions? = null, - val creator_banned: Boolean, - ) : DatatypeRoot + val banned: Boolean, + val ban_expires_at: String? = null, +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt index 3fe77240..5c719fb4 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt @@ -602,7 +602,8 @@ internal class Transformer(var auth: String) : MapperGenerator { person = this.toUni(d = d.person, d.counts), is_admin = is_admin, person_actions = null, - creator_banned = d.person.banned, + banned = d.person.banned, + ban_expires_at = addTimezoneOffsetNullable(d.person.ban_expires), ) override fun toUni(d: X5DatatypesPostReportView): LemmyapiDatatypesPostReportView = @@ -1123,6 +1124,7 @@ internal class Transformer(var auth: String) : MapperGenerator { local_user = this.toUni(d = d.local_user), person = this.toUni(d = d.person, d.counts), banned = d.person.banned, + ban_expires_at = addTimezoneOffsetNullable(d.person.ban_expires), ) override fun toUni(d: X5DatatypesLoginResponse): LemmyapiDatatypesLoginResponse = diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt index ebd08f9d..3f5d5469 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt @@ -1140,6 +1140,7 @@ internal class Transformer : MapperGenerator { local_user = this.toUni(d = d.local_user), person = this.toUni(d = d.person, d.counts), banned = d.person.banned, + ban_expires_at = d.person.ban_expires, ) override fun toUni(d: X0DatatypesLoginResponse): LemmyapiDatatypesLoginResponse = @@ -1393,7 +1394,8 @@ internal class Transformer : MapperGenerator { person = this.toUni(d = d.person, d.counts), is_admin = d.is_admin, person_actions = null, - creator_banned = d.person.banned, + banned = d.person.banned, + ban_expires_at = d.person.ban_expires, ) override fun toUni(d: X0DatatypesPost, counts: X0DatatypesPostAggregates): LemmyapiDatatypesPost = LemmyapiDatatypesPost( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt index a8cf7653..f7061c6a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt @@ -1191,6 +1191,7 @@ internal class Transformer : MapperGenerator { local_user = this.toUni(d = d.local_user, e = d.local_user_vote_display_mode), person = this.toUni(d = d.person, d.counts), banned = d.person.banned, + ban_expires_at = d.person.ban_expires, ) @@ -1444,7 +1445,8 @@ internal class Transformer : MapperGenerator { person = this.toUni(d = d.person, d.counts), is_admin = d.is_admin, person_actions = null, - creator_banned = d.person.banned, + banned = d.person.banned, + ban_expires_at = d.person.ban_expires, ) override fun toUni(d: X11DatatypesPost, counts: X11DatatypesPostAggregates): LemmyapiDatatypesPost = LemmyapiDatatypesPost( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt index 0591b573..0dc5419a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt @@ -1171,6 +1171,7 @@ internal class Transformer : MapperGenerator { local_user = this.toUni(d = d.local_user), person = this.toUni(d = d.person, d.counts), banned = d.person.banned, + ban_expires_at = d.person.ban_expires, ) override fun toUni(d: X3DatatypesLoginResponse): LemmyapiDatatypesLoginResponse = @@ -1423,7 +1424,8 @@ internal class Transformer : MapperGenerator { person = this.toUni(d = d.person, d.counts), is_admin = d.is_admin, person_actions = null, - creator_banned = d.person.banned, + banned = d.person.banned, + ban_expires_at = d.person.ban_expires, ) override fun toUni(d: X3DatatypesPost, counts: X3DatatypesPostAggregates): LemmyapiDatatypesPost = LemmyapiDatatypesPost( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt index 581565f4..1dbc3824 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt @@ -1182,6 +1182,7 @@ internal class Transformer : MapperGenerator { local_user = this.toUni(d = d.local_user, d.local_user_vote_display_mode), person = this.toUni(d = d.person, d.counts), banned = d.person.banned, + ban_expires_at = d.person.ban_expires, ) override fun toUni(d: X4DatatypesLoginToken): LemmyapiDatatypesLoginToken = @@ -1435,7 +1436,8 @@ internal class Transformer : MapperGenerator { person = this.toUni(d = d.person, d.counts), is_admin = d.is_admin, person_actions = null, - creator_banned = d.person.banned, + banned = d.person.banned, + ban_expires_at = d.person.ban_expires, ) override fun toUni(d: X4DatatypesPost, counts: X4DatatypesPostAggregates): LemmyapiDatatypesPost = LemmyapiDatatypesPost( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt index 4adec60b..fb1c7d2b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt @@ -1189,6 +1189,7 @@ internal class Transformer : MapperGenerator { local_user = this.toUni(d = d.local_user, e = d.local_user_vote_display_mode), person = this.toUni(d = d.person, d.counts), banned = d.person.banned, + ban_expires_at = d.person.ban_expires, ) override fun toUni(d: X6DatatypesLoginResponse): LemmyapiDatatypesLoginResponse = @@ -1441,7 +1442,8 @@ internal class Transformer : MapperGenerator { person = this.toUni(d = d.person, d.counts), is_admin = d.is_admin, person_actions = null, - creator_banned = d.person.banned, + banned = d.person.banned, + ban_expires_at = d.person.ban_expires, ) override fun toUni(d: X6DatatypesPost, counts: X6DatatypesPostAggregates): LemmyapiDatatypesPost = LemmyapiDatatypesPost( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUserView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUserView.kt index 6f1b0dc6..6fdaf67b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUserView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUserView.kt @@ -7,4 +7,5 @@ internal data class LocalUserView( val local_user: LocalUser, val person: Person, val banned: Boolean, + val ban_expires_at: String? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonView.kt index 444bf8ae..3e2fcef2 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonView.kt @@ -7,5 +7,6 @@ internal data class PersonView( val person: Person, val is_admin: Boolean, val person_actions: PersonActions? = null, - val creator_banned: Boolean, + val banned: Boolean, + val ban_expires_at: String? = null, ) From 3b3c02de4b504de538b419fc9e8510bb11f777f1 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Mon, 6 Oct 2025 23:30:10 +0200 Subject: [PATCH 025/110] Fix Site dtos --- .../lemmyapi/datatypes/CreateSite.kt | 30 ++++++++++++------- .../vercruysse/lemmyapi/datatypes/EditSite.kt | 4 +-- .../lemmyapi/datatypes/LocalSite.kt | 2 +- .../lemmyapi/datatypes/LocalUser.kt | 2 ++ .../lemmyapi/datatypes/SaveUserSettings.kt | 29 +++++++++++++----- .../lemmyapi/dto/CustomDataTypes.kt | 6 ++-- .../lemmyapi/v0/x18/x5/Transformer.kt | 19 ++++++------ .../lemmyapi/v0/x19/x0/Transformer.kt | 21 +++++++------ .../lemmyapi/v0/x19/x11/Transformer.kt | 29 ++++++++++-------- .../lemmyapi/v0/x19/x3/Transformer.kt | 20 ++++++------- .../lemmyapi/v0/x19/x4/Transformer.kt | 28 +++++++++-------- .../lemmyapi/v0/x19/x6/Transformer.kt | 28 +++++++++-------- .../lemmyapi/v1/x0/x0/datatypes/CreateSite.kt | 1 - .../lemmyapi/v1/x0/x0/datatypes/EditSite.kt | 5 +--- .../lemmyapi/v1/x0/x0/datatypes/LocalSite.kt | 4 +-- .../lemmyapi/v1/x0/x0/datatypes/LocalUser.kt | 5 ++-- .../v1/x0/x0/datatypes/SaveUserSettings.kt | 6 ++-- 17 files changed, 135 insertions(+), 104 deletions(-) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateSite.kt index fb27bc6b..d2a4ab0a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateSite.kt @@ -8,8 +8,7 @@ import it.vercruysse.lemmyapi.dto.ListingType import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize - -// TODO: has changed +import it.vercruysse.lemmyapi.dto.FederationMode @CommonParcelize @Serializable @@ -17,23 +16,24 @@ data class CreateSite( val name: String, val sidebar: String? = null, val description: String? = null, + /** Removed in 1.0.0 */ val icon: String? = null, + /** Removed in 1.0.0 */ val banner: String? = null, - val enable_downvotes: Boolean? = null, - val enable_nsfw: Boolean? = null, val community_creation_admin_only: Boolean? = null, val require_email_verification: Boolean? = null, val application_question: String? = null, val private_instance: Boolean? = null, val default_theme: String? = null, - val default_post_listing_type: ListingType? /* "All" | "Local" | "Subscribed" | "ModeratorView" */ = null, - val default_sort_type: SortType? /* "Active" | "Hot" | "New" | "Old" | "TopDay" | "TopWeek" | "TopMonth" | "TopYear" | "TopAll" | "MostComments" | "NewComments" | "TopHour" | "TopSixHour" | "TopTwelveHour" | "TopThreeMonths" | "TopSixMonths" | "TopNineMonths" | "Controversial" | "Scaled" */ = null, + val default_post_listing_type: ListingType? /* "All" | "Local" | "Subscribed" | "ModeratorView" | "Suggested" */ = null, + val default_post_listing_mode: PostListingMode? /* "List" | "Card" | "SmallCard" */ = null, + val default_post_sort_type: SortType? /* "Active" | "Hot" | "New" | "Old" | "Top" | "MostComments" | "NewComments" | "Controversial" | "Scaled" */ = null, + val default_post_time_range_seconds: Long? = null, + val default_comment_sort_type: SortType? /* "Hot" | "Top" | "New" | "Old" | "Controversial" */ = null, val legal_information: String? = null, val application_email_admins: Boolean? = null, - val hide_modlog_mod_names: Boolean? = null, val discussion_languages: List? = null, val slur_filter_regex: String? = null, - val actor_name_max_length: Long? = null, val rate_limit_message_max_requests: Long? = null, val rate_limit_message_interval_seconds: Long? = null, val rate_limit_post_max_requests: Long? = null, @@ -49,15 +49,25 @@ data class CreateSite( val rate_limit_import_user_settings_max_requests: Long? = null, val rate_limit_import_user_settings_interval_seconds: Long? = null, val federation_enabled: Boolean? = null, - val federation_debug: Boolean? = null, val captcha_enabled: Boolean? = null, val captcha_difficulty: String? = null, + /** Removed in 1.0.0 */ val allowed_instances: List? = null, + /** Removed in 1.0.0 */ val blocked_instances: List? = null, + /** Removed in 1.0.0 */ val taglines: List? = null, val registration_mode: RegistrationMode? /* "Closed" | "RequireApplication" | "Open" */ = null, + /** Added in 1.0.0 */ + val oauth_registration: Boolean? = null, val content_warning: String? = null, - val default_post_listing_mode: PostListingMode? /* "List" | "Card" | "SmallCard" */ = null, + val post_upvotes: FederationMode? /* "All" | "Local" | "Disable" */ = null, + val post_downvotes: FederationMode? /* "All" | "Local" | "Disable" */ = null, + val comment_upvotes: FederationMode? /* "All" | "Local" | "Disable" */ = null, + val comment_downvotes: FederationMode? /* "All" | "Local" | "Disable" */ = null, + val disallow_nsfw_content: Boolean? = null, + /** Added in 1.0.0 */ + val disable_email_notifications: Boolean? = null, /** Added in 1.0.0 */ val suggested_communities: MultiCommunityId? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt index a66b1aea..c58d4f72 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt @@ -9,8 +9,6 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize -// TODO: many changes - @CommonParcelize @Serializable data class EditSite( @@ -33,7 +31,6 @@ data class EditSite( val hide_modlog_mod_names: Boolean? = null, val discussion_languages: List? = null, val slur_filter_regex: String? = null, - val actor_name_max_length: Long? = null, val rate_limit_message_max_requests: Long? = null, val rate_limit_message_interval_seconds: Long? = null, val rate_limit_post_max_requests: Long? = null, @@ -64,4 +61,5 @@ data class EditSite( val default_post_listing_mode: PostListingMode? /* "List" | "Card" | "SmallCard" */ = null, /** Added in 1.0.0 */ val suggested_communities: MultiCommunityId? = null, + val default_items_per_page: Long, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalSite.kt index d97b128f..2ca60c27 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalSite.kt @@ -26,7 +26,6 @@ data class LocalSite( val legal_information: String? = null, val application_email_admins: Boolean, val slur_filter_regex: String? = null, - val actor_name_max_length: Long, val federation_enabled: Boolean, val captcha_enabled: Boolean, val captcha_difficulty: String, @@ -55,4 +54,5 @@ data class LocalSite( val users_active_half_year: Long, val disable_email_notifications: Boolean, val suggested_communities: MultiCommunityId? = null, + val default_items_per_page: Long, ) : DatatypeRoot, Identity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUser.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUser.kt index 25421559..b8fbc716 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUser.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUser.kt @@ -58,4 +58,6 @@ data class LocalUser( val show_upvote_percentage: Boolean, /** Added in 1.0.0 */ val show_person_votes: Boolean, + /** Added in 1.0.0 */ + val default_items_per_page: Long, ) : DatatypeRoot, Identity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SaveUserSettings.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SaveUserSettings.kt index b9845048..21bcf392 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SaveUserSettings.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SaveUserSettings.kt @@ -7,20 +7,25 @@ import it.vercruysse.lemmyapi.dto.SortType import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize - -// TODO: changes +import it.vercruysse.lemmyapi.dto.VoteShow @CommonParcelize @Serializable data class SaveUserSettings( val show_nsfw: Boolean? = null, val blur_nsfw: Boolean? = null, - val auto_expand: Boolean? = null, val theme: String? = null, - val default_sort_type: SortType? /* "Active" | "Hot" | "New" | "Old" | "TopDay" | "TopWeek" | "TopMonth" | "TopYear" | "TopAll" | "MostComments" | "NewComments" | "TopHour" | "TopSixHour" | "TopTwelveHour" | "TopThreeMonths" | "TopSixMonths" | "TopNineMonths" | "Controversial" | "Scaled" */ = null, - val default_listing_type: ListingType? /* "All" | "Local" | "Subscribed" | "ModeratorView" */ = null, + val default_listing_type: ListingType? /* "All" | "Local" | "Subscribed" | "ModeratorView" | "Suggested" */ = null, + val post_listing_mode: PostListingMode? /* "List" | "Card" | "SmallCard" */ = null, + val default_post_sort_type: SortType? /* "Active" | "Hot" | "New" | "Old" | "Top" | "MostComments" | "NewComments" | "Controversial" | "Scaled" */ = null, + val default_post_time_range_seconds: Long? = null, + /** Added in 1.0.0 */ + val default_items_per_page: Long? = null, + val default_comment_sort_type: SortType? /* "Hot" | "Top" | "New" | "Old" | "Controversial" */ = null, val interface_language: String? = null, + /** Removed in 1.0.0 */ val avatar: String? = null, + /** Removed in 1.0.0 */ val banner: String? = null, val display_name: String? = null, val email: String? = null, @@ -32,14 +37,22 @@ data class SaveUserSettings( val show_bot_accounts: Boolean? = null, val show_read_posts: Boolean? = null, val discussion_languages: List? = null, + /** Added in 1.0.0 */ + val blocking_keywords: List? = null, val open_links_in_new_tab: Boolean? = null, val infinite_scroll_enabled: Boolean? = null, - val post_listing_mode: PostListingMode? /* "List" | "Card" | "SmallCard" */ = null, val enable_keyboard_navigation: Boolean? = null, val enable_animated_images: Boolean? = null, + val enable_private_messages: Boolean? = null, val collapse_bot_comments: Boolean? = null, - val show_scores: Boolean? = null, + val show_score: Boolean? = null, val show_upvotes: Boolean? = null, - val show_downvotes: Boolean? = null, + val show_downvotes: VoteShow? /* "Show" | "ShowForOthers" | "Hide" */ = null, val show_upvote_percentage: Boolean? = null, + /** Added in 1.0.0 */ + val auto_mark_fetched_posts_as_read: Boolean? = null, + /** Added in 1.0.0 */ + val hide_media: Boolean? = null, + /** Added in 1.0.0 */ + val show_person_votes: Boolean? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/dto/CustomDataTypes.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/dto/CustomDataTypes.kt index a04d4958..d2f833af 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/dto/CustomDataTypes.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/dto/CustomDataTypes.kt @@ -174,10 +174,10 @@ enum class PostNotificationsMode(override val minimumVersion: Version = V1_0_0, } @Serializable -enum class VoteShow(override val minimumVersion: Version = V1_0_0, override val maximumVersion: Version? = null) : VersionTracker { +enum class VoteShow(override val minimumVersion: Version = MINIMUM_API_VERSION, override val maximumVersion: Version? = null) : VersionTracker { Show, - ShowForOthers, - Hide, + ShowForOthers(V1_0_0), + Hide(V0_19_4), } @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt index 5c719fb4..5d1b0057 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt @@ -427,6 +427,7 @@ internal class Transformer(var auth: String) : MapperGenerator { default_comment_sort_type = SortType.Active, auto_mark_fetched_posts_as_read = false, default_post_time_range_seconds = 0, + default_items_per_page = 20, ) override fun toUni(d: X5DatatypesMyUserInfo): LemmyapiDatatypesMyUserInfo = @@ -566,7 +567,6 @@ internal class Transformer(var auth: String) : MapperGenerator { legal_information = d.legal_information, application_email_admins = d.application_email_admins, slur_filter_regex = d.slur_filter_regex, - actor_name_max_length = d.actor_name_max_length, federation_enabled = d.federation_enabled, captcha_enabled = d.captcha_enabled, captcha_difficulty = d.captcha_difficulty, @@ -595,6 +595,7 @@ internal class Transformer(var auth: String) : MapperGenerator { users_active_week = counts.users_active_week, users_active_month = counts.users_active_month, users_active_half_year = counts.users_active_half_year, + default_items_per_page = 20, ) override fun toUni(d: X5DatatypesPersonView, is_admin: Boolean): LemmyapiDatatypesPersonView = @@ -1692,8 +1693,12 @@ internal class Transformer(var auth: String) : MapperGenerator { description = d.description, icon = d.icon, banner = d.banner, - enable_downvotes = d.enable_downvotes, - enable_nsfw = d.enable_nsfw, + enable_downvotes = when(d.post_downvotes) { + FederationMode.Local, FederationMode.All -> true + FederationMode.Disable -> false + null -> null + }, + enable_nsfw = if (d.disallow_nsfw_content == null) null else !d.disallow_nsfw_content, community_creation_admin_only = d.community_creation_admin_only, require_email_verification = d.require_email_verification, application_question = d.application_question, @@ -1702,10 +1707,8 @@ internal class Transformer(var auth: String) : MapperGenerator { default_post_listing_type = d.default_post_listing_type, legal_information = d.legal_information, application_email_admins = d.application_email_admins, - hide_modlog_mod_names = d.hide_modlog_mod_names, discussion_languages = d.discussion_languages, slur_filter_regex = d.slur_filter_regex, - actor_name_max_length = d.actor_name_max_length, rate_limit_message = d.rate_limit_message_max_requests, rate_limit_message_per_second = d.rate_limit_message_interval_seconds, rate_limit_post = d.rate_limit_post_max_requests, @@ -1719,7 +1722,6 @@ internal class Transformer(var auth: String) : MapperGenerator { rate_limit_search = d.rate_limit_search_max_requests, rate_limit_search_per_second = d.rate_limit_search_interval_seconds, federation_enabled = d.federation_enabled, - federation_debug = d.federation_debug, captcha_enabled = d.captcha_enabled, captcha_difficulty = d.captcha_difficulty, allowed_instances = d.allowed_instances, @@ -1843,7 +1845,6 @@ internal class Transformer(var auth: String) : MapperGenerator { hide_modlog_mod_names = d.hide_modlog_mod_names, discussion_languages = d.discussion_languages, slur_filter_regex = d.slur_filter_regex, - actor_name_max_length = d.actor_name_max_length, rate_limit_message = d.rate_limit_message_max_requests, rate_limit_message_per_second = d.rate_limit_message_interval_seconds, rate_limit_post = d.rate_limit_post_max_requests, @@ -2182,9 +2183,9 @@ internal class Transformer(var auth: String) : MapperGenerator { override fun fromUni(d: LemmyapiDatatypesSaveUserSettings): X5DatatypesSaveUserSettings = X5DatatypesSaveUserSettings( show_nsfw = d.show_nsfw, - show_scores = d.show_scores, + show_scores = d.show_score, theme = d.theme, - default_sort_type = d.default_sort_type, + default_sort_type = d.default_post_sort_type, default_listing_type = d.default_listing_type, interface_language = d.interface_language, avatar = d.avatar, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt index 3f5d5469..42457d1b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt @@ -499,7 +499,6 @@ internal class Transformer : MapperGenerator { legal_information = d.legal_information, application_email_admins = d.application_email_admins, slur_filter_regex = d.slur_filter_regex, - actor_name_max_length = d.actor_name_max_length, federation_enabled = d.federation_enabled, captcha_enabled = d.captcha_enabled, captcha_difficulty = d.captcha_difficulty, @@ -528,6 +527,7 @@ internal class Transformer : MapperGenerator { users_active_week = counts.users_active_week, users_active_month = counts.users_active_month, users_active_half_year = counts.users_active_half_year, + default_items_per_page = 20, ) override fun toUni(d: X0DatatypesPostReportView): LemmyapiDatatypesPostReportView = @@ -1132,7 +1132,7 @@ internal class Transformer : MapperGenerator { enable_private_messages = true, auto_mark_fetched_posts_as_read = false, default_post_time_range_seconds = null, - + default_items_per_page = 20, ) override fun toUni(d: X0DatatypesLocalUserView): LemmyapiDatatypesLocalUserView = @@ -1737,8 +1737,12 @@ internal class Transformer : MapperGenerator { description = d.description, icon = d.icon, banner = d.banner, - enable_downvotes = d.enable_downvotes, - enable_nsfw = d.enable_nsfw, + enable_downvotes = when(d.post_downvotes) { + FederationMode.Local, FederationMode.All -> true + FederationMode.Disable -> false + null -> null + }, + enable_nsfw = if (d.disallow_nsfw_content == null) null else !d.disallow_nsfw_content, community_creation_admin_only = d.community_creation_admin_only, require_email_verification = d.require_email_verification, application_question = d.application_question, @@ -1747,10 +1751,8 @@ internal class Transformer : MapperGenerator { default_post_listing_type = d.default_post_listing_type, legal_information = d.legal_information, application_email_admins = d.application_email_admins, - hide_modlog_mod_names = d.hide_modlog_mod_names, discussion_languages = d.discussion_languages, slur_filter_regex = d.slur_filter_regex, - actor_name_max_length = d.actor_name_max_length, rate_limit_message = d.rate_limit_message_max_requests, rate_limit_message_per_second = d.rate_limit_message_interval_seconds, rate_limit_post = d.rate_limit_post_max_requests, @@ -1764,7 +1766,6 @@ internal class Transformer : MapperGenerator { rate_limit_search = d.rate_limit_search_max_requests, rate_limit_search_per_second = d.rate_limit_search_interval_seconds, federation_enabled = d.federation_enabled, - federation_debug = d.federation_debug, captcha_enabled = d.captcha_enabled, captcha_difficulty = d.captcha_difficulty, allowed_instances = d.allowed_instances, @@ -1876,7 +1877,6 @@ internal class Transformer : MapperGenerator { hide_modlog_mod_names = d.hide_modlog_mod_names, discussion_languages = d.discussion_languages, slur_filter_regex = d.slur_filter_regex, - actor_name_max_length = d.actor_name_max_length, rate_limit_message = d.rate_limit_message_max_requests, rate_limit_message_per_second = d.rate_limit_message_interval_seconds, rate_limit_post = d.rate_limit_post_max_requests, @@ -2189,10 +2189,9 @@ internal class Transformer : MapperGenerator { X0DatatypesSaveUserSettings( show_nsfw = d.show_nsfw, blur_nsfw = d.blur_nsfw, - auto_expand = d.auto_expand, - show_scores = d.show_scores, + show_scores = d.show_score, theme = d.theme, - default_sort_type = d.default_sort_type, + default_sort_type = d.default_post_sort_type, default_listing_type = d.default_listing_type, interface_language = d.interface_language, avatar = d.avatar, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt index f7061c6a..883be6d6 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt @@ -1086,7 +1086,6 @@ internal class Transformer : MapperGenerator { legal_information = d.legal_information, application_email_admins = d.application_email_admins, slur_filter_regex = d.slur_filter_regex, - actor_name_max_length = d.actor_name_max_length, federation_enabled = d.federation_enabled, captcha_enabled = d.captcha_enabled, captcha_difficulty = d.captcha_difficulty, @@ -1115,6 +1114,7 @@ internal class Transformer : MapperGenerator { users_active_week = counts.users_active_week, users_active_month = counts.users_active_month, users_active_half_year = counts.users_active_half_year, + default_items_per_page = 20, ) override fun toUni(d: X11DatatypesLocalSiteRateLimit): LemmyapiDatatypesLocalSiteRateLimit = @@ -1183,7 +1183,7 @@ internal class Transformer : MapperGenerator { enable_private_messages = true, hide_media = false, default_post_time_range_seconds = null, - + default_items_per_page = 20, ) override fun toUni(d: X11DatatypesLocalUserView): LemmyapiDatatypesLocalUserView = @@ -1838,21 +1838,23 @@ internal class Transformer : MapperGenerator { description = d.description, icon = d.icon, banner = d.banner, - enable_downvotes = d.enable_downvotes, - enable_nsfw = d.enable_nsfw, + enable_downvotes = when(d.post_downvotes) { + FederationMode.Local, FederationMode.All -> true + FederationMode.Disable -> false + null -> null + }, + enable_nsfw = if (d.disallow_nsfw_content == null) null else !d.disallow_nsfw_content, community_creation_admin_only = d.community_creation_admin_only, require_email_verification = d.require_email_verification, application_question = d.application_question, private_instance = d.private_instance, default_theme = d.default_theme, default_post_listing_type = d.default_post_listing_type, - default_sort_type = d.default_sort_type, + default_sort_type = d.default_post_sort_type, legal_information = d.legal_information, application_email_admins = d.application_email_admins, - hide_modlog_mod_names = d.hide_modlog_mod_names, discussion_languages = d.discussion_languages, slur_filter_regex = d.slur_filter_regex, - actor_name_max_length = d.actor_name_max_length, rate_limit_message = d.rate_limit_message_max_requests, rate_limit_message_per_second = d.rate_limit_message_interval_seconds, rate_limit_post = d.rate_limit_post_max_requests, @@ -1866,7 +1868,6 @@ internal class Transformer : MapperGenerator { rate_limit_search = d.rate_limit_search_max_requests, rate_limit_search_per_second = d.rate_limit_search_interval_seconds, federation_enabled = d.federation_enabled, - federation_debug = d.federation_debug, captcha_enabled = d.captcha_enabled, captcha_difficulty = d.captcha_difficulty, allowed_instances = d.allowed_instances, @@ -1984,7 +1985,6 @@ internal class Transformer : MapperGenerator { hide_modlog_mod_names = d.hide_modlog_mod_names, discussion_languages = d.discussion_languages, slur_filter_regex = d.slur_filter_regex, - actor_name_max_length = d.actor_name_max_length, rate_limit_message = d.rate_limit_message_max_requests, rate_limit_message_per_second = d.rate_limit_message_interval_seconds, rate_limit_post = d.rate_limit_post_max_requests, @@ -2338,9 +2338,8 @@ internal class Transformer : MapperGenerator { X11DatatypesSaveUserSettings( show_nsfw = d.show_nsfw, blur_nsfw = d.blur_nsfw, - auto_expand = d.auto_expand, theme = d.theme, - default_sort_type = d.default_sort_type, + default_sort_type = d.default_post_sort_type, default_listing_type = d.default_listing_type, interface_language = d.interface_language, avatar = d.avatar, @@ -2361,9 +2360,13 @@ internal class Transformer : MapperGenerator { enable_keyboard_navigation = d.enable_keyboard_navigation, enable_animated_images = d.enable_animated_images, collapse_bot_comments = d.collapse_bot_comments, - show_scores = d.show_scores, + show_scores = d.show_score, show_upvotes = d.show_upvotes, - show_downvotes = d.show_downvotes, + show_downvotes = when(d.show_downvotes) { + VoteShow.ShowForOthers, VoteShow.Show -> true + VoteShow.Hide -> false + null -> null + }, show_upvote_percentage = d.show_upvote_percentage, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt index 0dc5419a..c56a91d1 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt @@ -517,7 +517,6 @@ internal class Transformer : MapperGenerator { legal_information = d.legal_information, application_email_admins = d.application_email_admins, slur_filter_regex = d.slur_filter_regex, - actor_name_max_length = d.actor_name_max_length, federation_enabled = d.federation_enabled, captcha_enabled = d.captcha_enabled, captcha_difficulty = d.captcha_difficulty, @@ -546,6 +545,7 @@ internal class Transformer : MapperGenerator { users_active_week = counts.users_active_week, users_active_month = counts.users_active_month, users_active_half_year = counts.users_active_half_year, + default_items_per_page = 20, ) override fun toUni(d: X3DatatypesPostReportView): LemmyapiDatatypesPostReportView = @@ -1164,6 +1164,7 @@ internal class Transformer : MapperGenerator { default_comment_sort_type = SortType.Active, auto_mark_fetched_posts_as_read = false, default_post_time_range_seconds = null, + default_items_per_page = 20, ) override fun toUni(d: X3DatatypesLocalUserView): LemmyapiDatatypesLocalUserView = @@ -1767,8 +1768,12 @@ internal class Transformer : MapperGenerator { description = d.description, icon = d.icon, banner = d.banner, - enable_downvotes = d.enable_downvotes, - enable_nsfw = d.enable_nsfw, + enable_downvotes = when(d.post_downvotes) { + FederationMode.Local, FederationMode.All -> true + FederationMode.Disable -> false + null -> null + }, + enable_nsfw = if (d.disallow_nsfw_content == null) null else !d.disallow_nsfw_content, community_creation_admin_only = d.community_creation_admin_only, require_email_verification = d.require_email_verification, application_question = d.application_question, @@ -1777,10 +1782,8 @@ internal class Transformer : MapperGenerator { default_post_listing_type = d.default_post_listing_type, legal_information = d.legal_information, application_email_admins = d.application_email_admins, - hide_modlog_mod_names = d.hide_modlog_mod_names, discussion_languages = d.discussion_languages, slur_filter_regex = d.slur_filter_regex, - actor_name_max_length = d.actor_name_max_length, rate_limit_message = d.rate_limit_message_max_requests, rate_limit_message_per_second = d.rate_limit_message_interval_seconds, rate_limit_post = d.rate_limit_post_max_requests, @@ -1794,7 +1797,6 @@ internal class Transformer : MapperGenerator { rate_limit_search = d.rate_limit_search_max_requests, rate_limit_search_per_second = d.rate_limit_search_interval_seconds, federation_enabled = d.federation_enabled, - federation_debug = d.federation_debug, captcha_enabled = d.captcha_enabled, captcha_difficulty = d.captcha_difficulty, allowed_instances = d.allowed_instances, @@ -1906,7 +1908,6 @@ internal class Transformer : MapperGenerator { hide_modlog_mod_names = d.hide_modlog_mod_names, discussion_languages = d.discussion_languages, slur_filter_regex = d.slur_filter_regex, - actor_name_max_length = d.actor_name_max_length, rate_limit_message = d.rate_limit_message_max_requests, rate_limit_message_per_second = d.rate_limit_message_interval_seconds, rate_limit_post = d.rate_limit_post_max_requests, @@ -2233,10 +2234,9 @@ internal class Transformer : MapperGenerator { X3DatatypesSaveUserSettings( show_nsfw = d.show_nsfw, blur_nsfw = d.blur_nsfw, - auto_expand = d.auto_expand, - show_scores = d.show_scores, + show_scores = d.show_score, theme = d.theme, - default_sort_type = d.default_sort_type, + default_sort_type = d.default_post_sort_type, default_listing_type = d.default_listing_type, interface_language = d.interface_language, avatar = d.avatar, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt index 1dbc3824..4d341298 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt @@ -1077,7 +1077,6 @@ internal class Transformer : MapperGenerator { legal_information = d.legal_information, application_email_admins = d.application_email_admins, slur_filter_regex = d.slur_filter_regex, - actor_name_max_length = d.actor_name_max_length, federation_enabled = d.federation_enabled, captcha_enabled = d.captcha_enabled, captcha_difficulty = d.captcha_difficulty, @@ -1106,6 +1105,7 @@ internal class Transformer : MapperGenerator { users_active_week = counts.users_active_week, users_active_month = counts.users_active_month, users_active_half_year = counts.users_active_half_year, + default_items_per_page = 20, ) override fun toUni(d: X4DatatypesLocalSiteRateLimit): LemmyapiDatatypesLocalSiteRateLimit = @@ -1174,6 +1174,7 @@ internal class Transformer : MapperGenerator { default_comment_sort_type = SortType.Active, auto_mark_fetched_posts_as_read = false, default_post_time_range_seconds = null, + default_items_per_page = 20, ) @@ -1825,21 +1826,23 @@ internal class Transformer : MapperGenerator { description = d.description, icon = d.icon, banner = d.banner, - enable_downvotes = d.enable_downvotes, - enable_nsfw = d.enable_nsfw, + enable_downvotes = when(d.post_downvotes) { + FederationMode.Local, FederationMode.All -> true + FederationMode.Disable -> false + null -> null + }, + enable_nsfw = if (d.disallow_nsfw_content == null) null else !d.disallow_nsfw_content, community_creation_admin_only = d.community_creation_admin_only, require_email_verification = d.require_email_verification, application_question = d.application_question, private_instance = d.private_instance, default_theme = d.default_theme, default_post_listing_type = d.default_post_listing_type, - default_sort_type = d.default_sort_type, + default_sort_type = d.default_post_sort_type, legal_information = d.legal_information, application_email_admins = d.application_email_admins, - hide_modlog_mod_names = d.hide_modlog_mod_names, discussion_languages = d.discussion_languages, slur_filter_regex = d.slur_filter_regex, - actor_name_max_length = d.actor_name_max_length, rate_limit_message = d.rate_limit_message_max_requests, rate_limit_message_per_second = d.rate_limit_message_interval_seconds, rate_limit_post = d.rate_limit_post_max_requests, @@ -1853,7 +1856,6 @@ internal class Transformer : MapperGenerator { rate_limit_search = d.rate_limit_search_max_requests, rate_limit_search_per_second = d.rate_limit_search_interval_seconds, federation_enabled = d.federation_enabled, - federation_debug = d.federation_debug, captcha_enabled = d.captcha_enabled, captcha_difficulty = d.captcha_difficulty, allowed_instances = d.allowed_instances, @@ -1971,7 +1973,6 @@ internal class Transformer : MapperGenerator { hide_modlog_mod_names = d.hide_modlog_mod_names, discussion_languages = d.discussion_languages, slur_filter_regex = d.slur_filter_regex, - actor_name_max_length = d.actor_name_max_length, rate_limit_message = d.rate_limit_message_max_requests, rate_limit_message_per_second = d.rate_limit_message_interval_seconds, rate_limit_post = d.rate_limit_post_max_requests, @@ -2314,9 +2315,8 @@ internal class Transformer : MapperGenerator { X4DatatypesSaveUserSettings( show_nsfw = d.show_nsfw, blur_nsfw = d.blur_nsfw, - auto_expand = d.auto_expand, theme = d.theme, - default_sort_type = d.default_sort_type, + default_sort_type = d.default_post_sort_type, default_listing_type = d.default_listing_type, interface_language = d.interface_language, avatar = d.avatar, @@ -2337,9 +2337,13 @@ internal class Transformer : MapperGenerator { enable_keyboard_navigation = d.enable_keyboard_navigation, enable_animated_images = d.enable_animated_images, collapse_bot_comments = d.collapse_bot_comments, - show_scores = d.show_scores, + show_scores = d.show_score, show_upvotes = d.show_upvotes, - show_downvotes = d.show_downvotes, + show_downvotes = when(d.show_downvotes) { + VoteShow.ShowForOthers, VoteShow.Show -> true + VoteShow.Hide -> false + null -> null + }, show_upvote_percentage = d.show_upvote_percentage, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt index fb1c7d2b..535b3021 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt @@ -1085,7 +1085,6 @@ internal class Transformer : MapperGenerator { legal_information = d.legal_information, application_email_admins = d.application_email_admins, slur_filter_regex = d.slur_filter_regex, - actor_name_max_length = d.actor_name_max_length, federation_enabled = d.federation_enabled, captcha_enabled = d.captcha_enabled, captcha_difficulty = d.captcha_difficulty, @@ -1114,6 +1113,7 @@ internal class Transformer : MapperGenerator { users_active_week = counts.users_active_week, users_active_month = counts.users_active_month, users_active_half_year = counts.users_active_half_year, + default_items_per_page = 20, ) override fun toUni(d: X6DatatypesLocalSiteRateLimit): LemmyapiDatatypesLocalSiteRateLimit = @@ -1182,6 +1182,7 @@ internal class Transformer : MapperGenerator { default_comment_sort_type = SortType.Active, auto_mark_fetched_posts_as_read = false, default_post_time_range_seconds = null, + default_items_per_page = 20, ) override fun toUni(d: X6DatatypesLocalUserView): LemmyapiDatatypesLocalUserView = @@ -1831,21 +1832,23 @@ internal class Transformer : MapperGenerator { description = d.description, icon = d.icon, banner = d.banner, - enable_downvotes = d.enable_downvotes, - enable_nsfw = d.enable_nsfw, + enable_downvotes = when(d.post_downvotes) { + FederationMode.Local, FederationMode.All -> true + FederationMode.Disable -> false + null -> null + }, + enable_nsfw = if (d.disallow_nsfw_content == null) null else !d.disallow_nsfw_content, community_creation_admin_only = d.community_creation_admin_only, require_email_verification = d.require_email_verification, application_question = d.application_question, private_instance = d.private_instance, default_theme = d.default_theme, default_post_listing_type = d.default_post_listing_type, - default_sort_type = d.default_sort_type, + default_sort_type = d.default_post_sort_type, legal_information = d.legal_information, application_email_admins = d.application_email_admins, - hide_modlog_mod_names = d.hide_modlog_mod_names, discussion_languages = d.discussion_languages, slur_filter_regex = d.slur_filter_regex, - actor_name_max_length = d.actor_name_max_length, rate_limit_message = d.rate_limit_message_max_requests, rate_limit_message_per_second = d.rate_limit_message_interval_seconds, rate_limit_post = d.rate_limit_post_max_requests, @@ -1859,7 +1862,6 @@ internal class Transformer : MapperGenerator { rate_limit_search = d.rate_limit_search_max_requests, rate_limit_search_per_second = d.rate_limit_search_interval_seconds, federation_enabled = d.federation_enabled, - federation_debug = d.federation_debug, captcha_enabled = d.captcha_enabled, captcha_difficulty = d.captcha_difficulty, allowed_instances = d.allowed_instances, @@ -1977,7 +1979,6 @@ internal class Transformer : MapperGenerator { hide_modlog_mod_names = d.hide_modlog_mod_names, discussion_languages = d.discussion_languages, slur_filter_regex = d.slur_filter_regex, - actor_name_max_length = d.actor_name_max_length, rate_limit_message = d.rate_limit_message_max_requests, rate_limit_message_per_second = d.rate_limit_message_interval_seconds, rate_limit_post = d.rate_limit_post_max_requests, @@ -2328,9 +2329,8 @@ internal class Transformer : MapperGenerator { X6DatatypesSaveUserSettings( show_nsfw = d.show_nsfw, blur_nsfw = d.blur_nsfw, - auto_expand = d.auto_expand, theme = d.theme, - default_sort_type = d.default_sort_type, + default_sort_type = d.default_post_sort_type, default_listing_type = d.default_listing_type, interface_language = d.interface_language, avatar = d.avatar, @@ -2351,9 +2351,13 @@ internal class Transformer : MapperGenerator { enable_keyboard_navigation = d.enable_keyboard_navigation, enable_animated_images = d.enable_animated_images, collapse_bot_comments = d.collapse_bot_comments, - show_scores = d.show_scores, + show_scores = d.show_score, show_upvotes = d.show_upvotes, - show_downvotes = d.show_downvotes, + show_downvotes = when(d.show_downvotes) { + VoteShow.ShowForOthers, VoteShow.Show -> true + VoteShow.Hide -> false + null -> null + }, show_upvote_percentage = d.show_upvote_percentage, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateSite.kt index 61795ce9..2a38dd21 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateSite.kt @@ -26,7 +26,6 @@ internal data class CreateSite( val application_email_admins: Boolean? = null, val discussion_languages: List? = null, val slur_filter_regex: String? = null, - val actor_name_max_length: Long? = null, val rate_limit_message_max_requests: Long? = null, val rate_limit_message_interval_seconds: Long? = null, val rate_limit_post_max_requests: Long? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditSite.kt index 2fd081f0..8d29765f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditSite.kt @@ -21,12 +21,12 @@ internal data class EditSite( val default_post_listing_mode: PostListingMode? /* "List" | "Card" | "SmallCard" */ = null, val default_post_sort_type: SortType? /* "Active" | "Hot" | "New" | "Old" | "Top" | "MostComments" | "NewComments" | "Controversial" | "Scaled" */ = null, val default_post_time_range_seconds: Long? = null, + val default_items_per_page: Long? = null, val default_comment_sort_type: SortType? /* "Hot" | "Top" | "New" | "Old" | "Controversial" */ = null, val legal_information: String? = null, val application_email_admins: Boolean? = null, val discussion_languages: List? = null, val slur_filter_regex: String? = null, - val actor_name_max_length: Long? = null, val rate_limit_message_max_requests: Long? = null, val rate_limit_message_interval_seconds: Long? = null, val rate_limit_post_max_requests: Long? = null, @@ -39,9 +39,7 @@ internal data class EditSite( val rate_limit_comment_interval_seconds: Long? = null, val rate_limit_search_max_requests: Long? = null, val rate_limit_search_interval_seconds: Long? = null, - /** Added in 1.0.0 */ val rate_limit_import_user_settings_max_requests: Long? = null, - /** Added in 1.0.0 */ val rate_limit_import_user_settings_interval_seconds: Long? = null, val federation_enabled: Boolean? = null, val captcha_enabled: Boolean? = null, @@ -57,6 +55,5 @@ internal data class EditSite( val comment_downvotes: FederationMode? /* "All" | "Local" | "Disable" */ = null, val disallow_nsfw_content: Boolean? = null, val disable_email_notifications: Boolean? = null, - /** Added in 1.0.0 */ val suggested_communities: MultiCommunityId? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSite.kt index 179bb04b..cac0796d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSite.kt @@ -19,10 +19,8 @@ internal data class LocalSite( val default_theme: String, val default_post_listing_type: ListingType /* "All" | "Local" | "Subscribed" | "ModeratorView" | "Suggested" */, val legal_information: String? = null, - val application_email_admins: Boolean, val slur_filter_regex: String? = null, - val actor_name_max_length: Long, val federation_enabled: Boolean, val captcha_enabled: Boolean, val captcha_difficulty: String, @@ -33,7 +31,6 @@ internal data class LocalSite( val federation_signed_fetch: Boolean, val default_post_listing_mode: PostListingMode /* "List" | "Card" | "SmallCard" */, val default_post_sort_type: SortType /* "Active" | "Hot" | "New" | "Old" | "Top" | "MostComments" | "NewComments" | "Controversial" | "Scaled" */, - val default_comment_sort_type: SortType /* "Hot" | "Top" | "New" | "Old" | "Controversial" */, val oauth_registration: Boolean, val post_upvotes: FederationMode /* "All" | "Local" | "Disable" */, @@ -52,4 +49,5 @@ internal data class LocalSite( val users_active_half_year: Long, val disable_email_notifications: Boolean, val suggested_communities: MultiCommunityId? = null, + val default_items_per_page: Long, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUser.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUser.kt index a535db67..f4aeb9e1 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUser.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUser.kt @@ -29,11 +29,11 @@ internal data class LocalUser( val totp_2fa_enabled: Boolean, val enable_keyboard_navigation: Boolean, val enable_animated_images: Boolean, - val enable_private_messages: Boolean, val collapse_bot_comments: Boolean, + val last_donation_notification_at: String, + val enable_private_messages: Boolean, val default_comment_sort_type: SortType /* "Hot" | "Top" | "New" | "Old" | "Controversial" */, val auto_mark_fetched_posts_as_read: Boolean, - val last_donation_notification_at: String, val hide_media: Boolean, val default_post_time_range_seconds: Long? = null, val show_score: Boolean, @@ -41,4 +41,5 @@ internal data class LocalUser( val show_downvotes: String /* "Show" | "ShowForOthers" | "Hide" */, val show_upvote_percentage: Boolean, val show_person_votes: Boolean, + val default_items_per_page: Long, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SaveUserSettings.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SaveUserSettings.kt index c019a04f..684aaab5 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SaveUserSettings.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SaveUserSettings.kt @@ -3,6 +3,7 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes import it.vercruysse.lemmyapi.dto.SortType import it.vercruysse.lemmyapi.dto.PostListingMode import it.vercruysse.lemmyapi.dto.ListingType +import it.vercruysse.lemmyapi.dto.VoteShow import kotlinx.serialization.Serializable @Serializable @@ -14,6 +15,7 @@ internal data class SaveUserSettings( val post_listing_mode: PostListingMode? /* "List" | "Card" | "SmallCard" */ = null, val default_post_sort_type: SortType? /* "Active" | "Hot" | "New" | "Old" | "Top" | "MostComments" | "NewComments" | "Controversial" | "Scaled" */ = null, val default_post_time_range_seconds: Long? = null, + val default_items_per_page: Long? = null, val default_comment_sort_type: SortType? /* "Hot" | "Top" | "New" | "Old" | "Controversial" */ = null, val interface_language: String? = null, val display_name: String? = null, @@ -33,9 +35,9 @@ internal data class SaveUserSettings( val enable_animated_images: Boolean? = null, val enable_private_messages: Boolean? = null, val collapse_bot_comments: Boolean? = null, - val show_scores: Boolean? = null, + val show_score: Boolean? = null, val show_upvotes: Boolean? = null, - val show_downvotes: String? /* "Show" | "ShowForOthers" | "Hide" */ = null, + val show_downvotes: VoteShow? /* "Show" | "ShowForOthers" | "Hide" */ = null, val show_upvote_percentage: Boolean? = null, val auto_mark_fetched_posts_as_read: Boolean? = null, val hide_media: Boolean? = null, From 4cc16f2febbb55b27667dda29129b65342528967 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Mon, 6 Oct 2025 23:34:34 +0200 Subject: [PATCH 026/110] Fix Post --- .../commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Post.kt | 2 ++ .../kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Post.kt | 2 ++ 2 files changed, 4 insertions(+) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Post.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Post.kt index 7f9f8fc2..5fe76e84 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Post.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Post.kt @@ -41,4 +41,6 @@ data class Post( val report_count: Long, val unresolved_report_count: Long, val federation_pending: Boolean, + val embed_video_width: Long? = null, + val embed_video_height: Long? = null, ) : DatatypeRoot, Identity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Post.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Post.kt index 44fb7c8b..c112c102 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Post.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Post.kt @@ -36,4 +36,6 @@ internal data class Post( val report_count: Long, val unresolved_report_count: Long, val federation_pending: Boolean, + val embed_video_width: Long? = null, + val embed_video_height: Long? = null, ) From a3d2cb5c2c67276cf48fc01b4a09056a01963525 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Mon, 6 Oct 2025 23:45:33 +0200 Subject: [PATCH 027/110] Fix PostView --- .../kotlin/it/vercruysse/lemmyapi/datatypes/PostView.kt | 3 ++- .../kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt | 1 + .../kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt | 1 + .../kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt | 1 + .../kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt | 1 + .../kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt | 1 + .../kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt | 1 + .../it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostView.kt | 4 +++- 8 files changed, 11 insertions(+), 2 deletions(-) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostView.kt index ab782a87..dfd82223 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostView.kt @@ -21,10 +21,11 @@ data class PostView( /** Added in 1.0.0 */ val can_mod: Boolean, val creator_banned: Boolean, + val creator_ban_expires_at: String? = null, val creator_is_admin: Boolean, val creator_is_moderator: Boolean, val creator_banned_from_community: Boolean, - + val creator_community_ban_expires_at: String? = null, ) : DatatypeRoot, Identity { override val id: Long get() = post.id diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt index 5d1b0057..c7299dc3 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt @@ -634,6 +634,7 @@ internal class Transformer(var auth: String) : MapperGenerator { tags = emptyList(), can_mod = false, creator_banned = d.creator.banned, + creator_ban_expires_at = addTimezoneOffsetNullable(d.creator.ban_expires), creator_is_admin = false, creator_is_moderator = false, creator_banned_from_community = d.creator_banned_from_community, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt index 42457d1b..9058f608 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt @@ -559,6 +559,7 @@ internal class Transformer : MapperGenerator { can_mod = false, creator_banned_from_community = d.creator_banned_from_community, creator_banned = d.creator.banned, + creator_ban_expires_at = d.creator.ban_expires, creator_is_admin = d.creator_is_admin, creator_is_moderator = d.creator_is_moderator, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt index 883be6d6..e3370cb7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt @@ -1539,6 +1539,7 @@ internal class Transformer : MapperGenerator { can_mod = false, creator_banned_from_community = d.creator_banned_from_community, creator_banned = d.creator.banned, + creator_ban_expires_at = d.creator.ban_expires, creator_is_moderator = d.creator_is_moderator, creator_is_admin = d.creator_is_admin, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt index c56a91d1..3c71af4f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt @@ -574,6 +574,7 @@ internal class Transformer : MapperGenerator { tags = emptyList(), creator_banned_from_community = d.creator_banned_from_community, creator_banned = d.creator.banned, + creator_ban_expires_at = d.creator.ban_expires, creator_is_moderator = d.creator_is_moderator, creator_is_admin = d.creator_is_admin, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt index 4d341298..dfc7b8b6 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt @@ -1529,6 +1529,7 @@ internal class Transformer : MapperGenerator { can_mod = false, creator_banned_from_community = d.creator_banned_from_community, creator_banned = d.creator.banned, + creator_ban_expires_at = d.creator.ban_expires, creator_is_admin = d.creator_is_admin, creator_is_moderator = d.creator_is_moderator, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt index 535b3021..eddf307e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt @@ -1536,6 +1536,7 @@ internal class Transformer : MapperGenerator { tags = emptyList(), creator_banned_from_community = d.creator_banned_from_community, creator_banned = d.creator.banned, + creator_ban_expires_at = d.creator.ban_expires, creator_is_moderator = d.creator_is_moderator, creator_is_admin = d.creator_is_admin, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostView.kt index a8355e31..182299f4 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostView.kt @@ -11,10 +11,12 @@ internal data class PostView( val community_actions: CommunityActions? = null, val person_actions: PersonActions? = null, val post_actions: PostActions? = null, + val creator_is_admin: Boolean, val tags: TagsView, val can_mod: Boolean, val creator_banned: Boolean, - val creator_is_admin: Boolean, + val creator_ban_expires_at: String? = null, val creator_is_moderator: Boolean, val creator_banned_from_community: Boolean, + val creator_community_ban_expires_at: String? = null, ) From 40a8f38bf6470ae470b28b9fdecf5843b48c5c2e Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Tue, 7 Oct 2025 00:49:39 +0200 Subject: [PATCH 028/110] Fix CommentView --- .../kotlin/it/vercruysse/lemmyapi/datatypes/CommentView.kt | 2 ++ .../kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt | 3 +++ .../kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt | 3 +++ .../kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt | 3 +++ .../kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt | 3 +++ .../kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt | 3 +++ .../kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt | 3 +++ .../it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentView.kt | 4 +++- 8 files changed, 23 insertions(+), 1 deletion(-) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentView.kt index 0fe0ade1..10be3e78 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentView.kt @@ -19,9 +19,11 @@ data class CommentView( val post_tags: TagsView, val can_mod: Boolean, val creator_banned: Boolean, + val creator_ban_expires_at: String? = null, val creator_is_admin: Boolean, val creator_is_moderator: Boolean, val creator_banned_from_community: Boolean, + val creator_community_ban_expires_at: String? = null, ) : DatatypeRoot, Identity { override val id: Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt index c7299dc3..4ecf3408 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt @@ -490,6 +490,7 @@ internal class Transformer(var auth: String) : MapperGenerator { creator_is_admin = false, post_tags = emptyList(), creator_banned = d.creator.banned, + creator_ban_expires_at = addTimezoneOffsetNullable(d.creator.ban_expires), can_mod = false, person_actions = PersonActions(if (d.creator_blocked) "" else null), comment_actions = CommentActions(d.my_vote, null, if (d.saved) "" else null), @@ -1017,6 +1018,7 @@ internal class Transformer(var auth: String) : MapperGenerator { creator_is_admin = false, post_tags = emptyList(), creator_banned = d.creator.banned, + creator_ban_expires_at = addTimezoneOffsetNullable(d.creator.ban_expires), can_mod = false, person_actions = PersonActions(if (d.creator_blocked) "" else null), comment_actions = CommentActions(d.my_vote, null, if (d.saved) "" else null), @@ -1055,6 +1057,7 @@ internal class Transformer(var auth: String) : MapperGenerator { creator_is_admin = false, post_tags = emptyList(), creator_banned = d.creator.banned, + creator_ban_expires_at = addTimezoneOffsetNullable(d.creator.ban_expires), can_mod = false, person_actions = PersonActions(if (d.creator_blocked) "" else null), comment_actions = CommentActions(d.my_vote, null, if (d.saved) "" else null), diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt index 9058f608..0ca914b0 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt @@ -422,6 +422,7 @@ internal class Transformer : MapperGenerator { creator_is_admin = d.creator_is_admin, post_tags = emptyList(), creator_banned = d.creator.banned, + creator_ban_expires_at = d.creator.ban_expires, can_mod = false, person_actions = PersonActions(if (d.creator_blocked) "" else null), comment_actions = CommentActions(d.my_vote, null, if (d.saved) "" else null), @@ -961,6 +962,7 @@ internal class Transformer : MapperGenerator { creator_is_admin = false, post_tags = emptyList(), creator_banned = d.creator.banned, + creator_ban_expires_at = d.creator.ban_expires, can_mod = false, person_actions = PersonActions(if (d.creator_blocked) "" else null), comment_actions = CommentActions(d.my_vote, null, if (d.saved) "" else null), @@ -999,6 +1001,7 @@ internal class Transformer : MapperGenerator { creator_is_admin = false, post_tags = emptyList(), creator_banned = d.creator.banned, + creator_ban_expires_at = d.creator.ban_expires, can_mod = false, person_actions = PersonActions(if (d.creator_blocked) "" else null), comment_actions = CommentActions(d.my_vote, null, if (d.saved) "" else null), diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt index e3370cb7..e43ce5f6 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt @@ -600,6 +600,7 @@ internal class Transformer : MapperGenerator { creator_is_admin = d.creator_is_admin, post_tags = emptyList(), creator_banned = d.creator.banned, + creator_ban_expires_at = d.creator.ban_expires, can_mod = false, person_actions = PersonActions(if (d.creator_blocked) "" else null), comment_actions = CommentActions(d.my_vote, null, if (d.saved) "" else null), @@ -894,6 +895,7 @@ internal class Transformer : MapperGenerator { creator_is_admin = d.creator_is_admin, post_tags = emptyList(), creator_banned = d.creator.banned, + creator_ban_expires_at = d.creator.ban_expires, can_mod = false, person_actions = PersonActions(if (d.creator_blocked) "" else null), comment_actions = CommentActions(d.my_vote, null, if (d.saved) "" else null), @@ -932,6 +934,7 @@ internal class Transformer : MapperGenerator { creator_is_admin = d.creator_is_admin, post_tags = emptyList(), creator_banned = d.creator.banned, + creator_ban_expires_at = d.creator.ban_expires, can_mod = false, person_actions = PersonActions(if (d.creator_blocked) "" else null), comment_actions = CommentActions(d.my_vote, null, if (d.saved) "" else null), diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt index 3c71af4f..954a2168 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt @@ -433,6 +433,7 @@ internal class Transformer : MapperGenerator { creator_is_admin = d.creator_is_admin, post_tags = emptyList(), creator_banned = d.creator.banned, + creator_ban_expires_at = d.creator.ban_expires, can_mod = false, person_actions = PersonActions(if (d.creator_blocked) "" else null), comment_actions = CommentActions(d.my_vote, null, if (d.saved) "" else null), @@ -984,6 +985,7 @@ internal class Transformer : MapperGenerator { creator_is_admin = d.creator_is_admin, post_tags = emptyList(), creator_banned = d.creator.banned, + creator_ban_expires_at = d.creator.ban_expires, can_mod = false, person_actions = PersonActions(if (d.creator_blocked) "" else null), comment_actions = CommentActions(d.my_vote, null, if (d.saved) "" else null), @@ -1022,6 +1024,7 @@ internal class Transformer : MapperGenerator { creator_is_admin = d.creator_is_admin, post_tags = emptyList(), creator_banned = d.creator.banned, + creator_ban_expires_at = d.creator.ban_expires, can_mod = false, person_actions = PersonActions(if (d.creator_blocked) "" else null), comment_actions = CommentActions(d.my_vote, null, if (d.saved) "" else null), diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt index dfc7b8b6..ebc39cf7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt @@ -598,6 +598,7 @@ internal class Transformer : MapperGenerator { creator_is_admin = d.creator_is_admin, post_tags = emptyList(), creator_banned = d.creator.banned, + creator_ban_expires_at = d.creator.ban_expires, can_mod = false, person_actions = PersonActions(if (d.creator_blocked) "" else null), comment_actions = CommentActions(d.my_vote, null, if (d.saved) "" else null), @@ -893,6 +894,7 @@ internal class Transformer : MapperGenerator { creator_is_admin = d.creator_is_admin, post_tags = emptyList(), creator_banned = d.creator.banned, + creator_ban_expires_at = d.creator.ban_expires, can_mod = false, person_actions = PersonActions(if (d.creator_blocked) "" else null), comment_actions = CommentActions(d.my_vote, null, if (d.saved) "" else null), @@ -931,6 +933,7 @@ internal class Transformer : MapperGenerator { creator_is_admin = d.creator_is_admin, post_tags = emptyList(), creator_banned = d.creator.banned, + creator_ban_expires_at = d.creator.ban_expires, can_mod = false, person_actions = PersonActions(if (d.creator_blocked) "" else null), comment_actions = CommentActions(d.my_vote, null, if (d.saved) "" else null), diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt index eddf307e..e0856bb6 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt @@ -601,6 +601,7 @@ internal class Transformer : MapperGenerator { creator_is_admin = d.creator_is_admin, post_tags = emptyList(), creator_banned = d.creator.banned, + creator_ban_expires_at = d.creator.ban_expires, can_mod = false, person_actions = PersonActions(if (d.creator_blocked) "" else null), comment_actions = CommentActions(d.my_vote, null, if (d.saved) "" else null), @@ -895,6 +896,7 @@ internal class Transformer : MapperGenerator { creator_is_admin = d.creator_is_admin, post_tags = emptyList(), creator_banned = d.creator.banned, + creator_ban_expires_at = d.creator.ban_expires, can_mod = false, person_actions = PersonActions(if (d.creator_blocked) "" else null), comment_actions = CommentActions(d.my_vote, null, if (d.saved) "" else null), @@ -933,6 +935,7 @@ internal class Transformer : MapperGenerator { creator_is_admin = d.creator_is_admin, post_tags = emptyList(), creator_banned = d.creator.banned, + creator_ban_expires_at = d.creator.ban_expires, can_mod = false, person_actions = PersonActions(if (d.creator_blocked) "" else null), comment_actions = CommentActions(d.my_vote, null, if (d.saved) "" else null), diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentView.kt index 7d97eb23..565a186f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentView.kt @@ -11,10 +11,12 @@ internal data class CommentView( val community_actions: CommunityActions? = null, val comment_actions: CommentActions? = null, val person_actions: PersonActions? = null, + val creator_is_admin: Boolean, val post_tags: TagsView, val can_mod: Boolean, val creator_banned: Boolean, - val creator_is_admin: Boolean, + val creator_ban_expires_at: String? = null, val creator_is_moderator: Boolean, val creator_banned_from_community: Boolean, + val creator_community_ban_expires_at: String? = null, ) From b0cb4147b13f4e78461c1b738e8a2549489e34ed Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Tue, 7 Oct 2025 22:57:24 +0200 Subject: [PATCH 029/110] Fix ModLog renaming --- .../src/main/kotlin/MapperGenerator0x18x5.kt | 16 ++++---- .../src/main/kotlin/MapperGenerator0x19x0.kt | 16 ++++---- .../src/main/kotlin/MapperGenerator0x19x11.kt | 16 ++++---- .../src/main/kotlin/MapperGenerator0x19x3.kt | 16 ++++---- .../src/main/kotlin/MapperGenerator0x19x4.kt | 16 ++++---- .../src/main/kotlin/MapperGenerator0x19x6.kt | 16 ++++---- .../main/kotlin/autogenscripts/GenTypes.kt | 4 +- .../datatypes/{ModAdd.kt => AdminAdd.kt} | 2 +- .../{ModAddView.kt => AdminAddView.kt} | 4 +- .../datatypes/{ModBan.kt => AdminBan.kt} | 2 +- .../{ModBanView.kt => AdminBanView.kt} | 6 +-- ...veCommunity.kt => AdminRemoveCommunity.kt} | 2 +- ...ityView.kt => AdminRemoveCommunityView.kt} | 4 +- .../lemmyapi/datatypes/GetModlog.kt | 2 +- .../lemmyapi/datatypes/LockComment.kt | 13 +++++++ ...odAddCommunity.kt => ModAddToCommunity.kt} | 2 +- ...munityView.kt => ModAddToCommunityView.kt} | 4 +- .../lemmyapi/datatypes/ModLockComment.kt | 16 ++++++++ .../lemmyapi/datatypes/ModLockCommentView.kt | 16 ++++++++ .../lemmyapi/datatypes/ModlogCombinedView.kt | 31 +++++++++------ .../lemmyapi/dto/CustomDataTypes.kt | 21 ++++++++-- .../lemmyapi/v0/x18/x5/MapperGenerator.kt | 16 ++++---- .../lemmyapi/v0/x18/x5/Transformer.kt | 34 ++++++++-------- .../lemmyapi/v0/x19/x0/MapperGenerator.kt | 16 ++++---- .../lemmyapi/v0/x19/x0/Transformer.kt | 34 ++++++++-------- .../lemmyapi/v0/x19/x11/MapperGenerator.kt | 16 ++++---- .../lemmyapi/v0/x19/x11/Transformer.kt | 36 ++++++++--------- .../lemmyapi/v0/x19/x3/MapperGenerator.kt | 16 ++++---- .../lemmyapi/v0/x19/x3/Transformer.kt | 34 ++++++++-------- .../lemmyapi/v0/x19/x4/MapperGenerator.kt | 16 ++++---- .../lemmyapi/v0/x19/x4/Transformer.kt | 36 ++++++++--------- .../lemmyapi/v0/x19/x6/MapperGenerator.kt | 16 ++++---- .../lemmyapi/v0/x19/x6/Transformer.kt | 36 ++++++++--------- .../x0/x0/combinedtypes/ModlogCombinedView.kt | 39 +++++++++++-------- .../x0/datatypes/{ModAdd.kt => AdminAdd.kt} | 4 +- .../datatypes/{ModAddId.kt => AdminAddId.kt} | 2 +- .../{ModAddView.kt => AdminAddView.kt} | 4 +- .../x0/datatypes/{ModBan.kt => AdminBan.kt} | 6 +-- .../datatypes/{ModBanId.kt => AdminBanId.kt} | 2 +- .../{ModBanView.kt => AdminBanView.kt} | 4 +- ...veCommunity.kt => AdminRemoveCommunity.kt} | 6 +-- .../x0/x0/datatypes/AdminRemoveCommunityId.kt | 3 ++ ...ityView.kt => AdminRemoveCommunityView.kt} | 4 +- .../lemmyapi/v1/x0/x0/datatypes/GetModlog.kt | 2 +- .../v1/x0/x0/datatypes/LockComment.kt | 10 +++++ ...odAddCommunity.kt => ModAddToCommunity.kt} | 4 +- ...eCommunityId.kt => ModAddToCommunityId.kt} | 2 +- ...munityView.kt => ModAddToCommunityView.kt} | 4 +- .../v1/x0/x0/datatypes/ModLockComment.kt | 13 +++++++ ...dAddCommunityId.kt => ModLockCommentId.kt} | 2 +- .../v1/x0/x0/datatypes/ModLockCommentView.kt | 13 +++++++ 51 files changed, 382 insertions(+), 273 deletions(-) rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/{ModAdd.kt => AdminAdd.kt} (94%) rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/{ModAddView.kt => AdminAddView.kt} (84%) rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/{ModBan.kt => AdminBan.kt} (96%) rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/{ModBanView.kt => AdminBanView.kt} (81%) rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/{ModRemoveCommunity.kt => AdminRemoveCommunity.kt} (92%) rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/{ModRemoveCommunityView.kt => AdminRemoveCommunityView.kt} (75%) create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LockComment.kt rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/{ModAddCommunity.kt => ModAddToCommunity.kt} (93%) rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/{ModAddCommunityView.kt => ModAddToCommunityView.kt} (79%) create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModLockComment.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModLockCommentView.kt rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/{ModAdd.kt => AdminAdd.kt} (81%) rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/{ModAddId.kt => AdminAddId.kt} (57%) rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/{ModAddView.kt => AdminAddView.kt} (73%) rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/{ModBan.kt => AdminBan.kt} (78%) rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/{ModBanId.kt => AdminBanId.kt} (57%) rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/{ModBanView.kt => AdminBanView.kt} (73%) rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/{ModRemoveCommunity.kt => AdminRemoveCommunity.kt} (68%) create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminRemoveCommunityId.kt rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/{ModRemoveCommunityView.kt => AdminRemoveCommunityView.kt} (63%) create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LockComment.kt rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/{ModAddCommunity.kt => ModAddToCommunity.kt} (78%) rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/{ModRemoveCommunityId.kt => ModAddToCommunityId.kt} (52%) rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/{ModAddCommunityView.kt => ModAddToCommunityView.kt} (69%) create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockComment.kt rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/{ModAddCommunityId.kt => ModLockCommentId.kt} (53%) create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockCommentView.kt diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x18x5.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x18x5.kt index fe25ad0f..39c71fbd 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x18x5.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x18x5.kt @@ -192,22 +192,22 @@ internal interface MapperGenerator0x18x5 { fun toUni(d: LocalUserView): it.vercruysse.lemmyapi.datatypes.LocalUserView fun toUni(d: LoginResponse): it.vercruysse.lemmyapi.datatypes.LoginResponse - fun toUni(d: ModAdd): it.vercruysse.lemmyapi.datatypes.ModAdd - fun toUni(d: ModAddCommunity): it.vercruysse.lemmyapi.datatypes.ModAddCommunity - fun toUni(d: ModAddCommunityView): it.vercruysse.lemmyapi.datatypes.ModAddCommunityView - fun toUni(d: ModAddView): it.vercruysse.lemmyapi.datatypes.ModAddView - fun toUni(d: ModBan): it.vercruysse.lemmyapi.datatypes.ModBan + fun toUni(d: ModAdd): it.vercruysse.lemmyapi.datatypes.AdminAdd + fun toUni(d: ModAddCommunity): it.vercruysse.lemmyapi.datatypes.ModAddToCommunity + fun toUni(d: ModAddCommunityView): it.vercruysse.lemmyapi.datatypes.ModAddToCommunityView + fun toUni(d: ModAddView): it.vercruysse.lemmyapi.datatypes.AdminAddView + fun toUni(d: ModBan): it.vercruysse.lemmyapi.datatypes.AdminBan fun toUni(d: ModBanFromCommunity): it.vercruysse.lemmyapi.datatypes.ModBanFromCommunity fun toUni(d: ModBanFromCommunityView): it.vercruysse.lemmyapi.datatypes.ModBanFromCommunityView - fun toUni(d: ModBanView): it.vercruysse.lemmyapi.datatypes.ModBanView + fun toUni(d: ModBanView): it.vercruysse.lemmyapi.datatypes.AdminBanView fun toUni(d: ModFeaturePost): it.vercruysse.lemmyapi.datatypes.ModFeaturePost fun toUni(d: ModFeaturePostView): it.vercruysse.lemmyapi.datatypes.ModFeaturePostView fun toUni(d: ModLockPost): it.vercruysse.lemmyapi.datatypes.ModLockPost fun toUni(d: ModLockPostView): it.vercruysse.lemmyapi.datatypes.ModLockPostView fun toUni(d: ModRemoveComment): it.vercruysse.lemmyapi.datatypes.ModRemoveComment fun toUni(d: ModRemoveCommentView): it.vercruysse.lemmyapi.datatypes.ModRemoveCommentView - fun toUni(d: ModRemoveCommunity): it.vercruysse.lemmyapi.datatypes.ModRemoveCommunity - fun toUni(d: ModRemoveCommunityView): it.vercruysse.lemmyapi.datatypes.ModRemoveCommunityView + fun toUni(d: ModRemoveCommunity): it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunity + fun toUni(d: ModRemoveCommunityView): it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunityView fun toUni(d: ModRemovePost): it.vercruysse.lemmyapi.datatypes.ModRemovePost fun toUni(d: ModRemovePostView): it.vercruysse.lemmyapi.datatypes.ModRemovePostView fun toUni(d: ModTransferCommunity): it.vercruysse.lemmyapi.datatypes.ModTransferCommunity diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x0.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x0.kt index d73d2005..d51a0c56 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x0.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x0.kt @@ -151,22 +151,22 @@ internal interface MapperGenerator0x19x0 { fun toUni(d: LocalUserView): it.vercruysse.lemmyapi.datatypes.LocalUserView fun toUni(d: LoginResponse): it.vercruysse.lemmyapi.datatypes.LoginResponse fun toUni(d: LoginToken): it.vercruysse.lemmyapi.datatypes.LoginToken - fun toUni(d: ModAdd): it.vercruysse.lemmyapi.datatypes.ModAdd - fun toUni(d: ModAddCommunity): it.vercruysse.lemmyapi.datatypes.ModAddCommunity - fun toUni(d: ModAddCommunityView): it.vercruysse.lemmyapi.datatypes.ModAddCommunityView - fun toUni(d: ModAddView): it.vercruysse.lemmyapi.datatypes.ModAddView - fun toUni(d: ModBan): it.vercruysse.lemmyapi.datatypes.ModBan + fun toUni(d: ModAdd): it.vercruysse.lemmyapi.datatypes.AdminAdd + fun toUni(d: ModAddCommunity): it.vercruysse.lemmyapi.datatypes.ModAddToCommunity + fun toUni(d: ModAddCommunityView): it.vercruysse.lemmyapi.datatypes.ModAddToCommunityView + fun toUni(d: ModAddView): it.vercruysse.lemmyapi.datatypes.AdminAddView + fun toUni(d: ModBan): it.vercruysse.lemmyapi.datatypes.AdminBan fun toUni(d: ModBanFromCommunity): it.vercruysse.lemmyapi.datatypes.ModBanFromCommunity fun toUni(d: ModBanFromCommunityView): it.vercruysse.lemmyapi.datatypes.ModBanFromCommunityView - fun toUni(d: ModBanView): it.vercruysse.lemmyapi.datatypes.ModBanView + fun toUni(d: ModBanView): it.vercruysse.lemmyapi.datatypes.AdminBanView fun toUni(d: ModFeaturePost): it.vercruysse.lemmyapi.datatypes.ModFeaturePost fun toUni(d: ModFeaturePostView): it.vercruysse.lemmyapi.datatypes.ModFeaturePostView fun toUni(d: ModLockPost): it.vercruysse.lemmyapi.datatypes.ModLockPost fun toUni(d: ModLockPostView): it.vercruysse.lemmyapi.datatypes.ModLockPostView fun toUni(d: ModRemoveComment): it.vercruysse.lemmyapi.datatypes.ModRemoveComment fun toUni(d: ModRemoveCommentView): it.vercruysse.lemmyapi.datatypes.ModRemoveCommentView - fun toUni(d: ModRemoveCommunity): it.vercruysse.lemmyapi.datatypes.ModRemoveCommunity - fun toUni(d: ModRemoveCommunityView): it.vercruysse.lemmyapi.datatypes.ModRemoveCommunityView + fun toUni(d: ModRemoveCommunity): it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunity + fun toUni(d: ModRemoveCommunityView): it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunityView fun toUni(d: ModRemovePost): it.vercruysse.lemmyapi.datatypes.ModRemovePost fun toUni(d: ModRemovePostView): it.vercruysse.lemmyapi.datatypes.ModRemovePostView fun toUni(d: ModTransferCommunity): it.vercruysse.lemmyapi.datatypes.ModTransferCommunity diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt index c917a267..8d523bfe 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt @@ -76,22 +76,22 @@ internal interface MapperGenerator0x19x11 { fun toUni(d: LocalUserView): it.vercruysse.lemmyapi.datatypes.LocalUserView fun toUni(d: LoginResponse): it.vercruysse.lemmyapi.datatypes.LoginResponse fun toUni(d: LoginToken): it.vercruysse.lemmyapi.datatypes.LoginToken - fun toUni(d: ModAdd): it.vercruysse.lemmyapi.datatypes.ModAdd - fun toUni(d: ModAddCommunity): it.vercruysse.lemmyapi.datatypes.ModAddCommunity - fun toUni(d: ModAddCommunityView): it.vercruysse.lemmyapi.datatypes.ModAddCommunityView - fun toUni(d: ModAddView): it.vercruysse.lemmyapi.datatypes.ModAddView - fun toUni(d: ModBan): it.vercruysse.lemmyapi.datatypes.ModBan + fun toUni(d: ModAdd): it.vercruysse.lemmyapi.datatypes.AdminAdd + fun toUni(d: ModAddCommunity): it.vercruysse.lemmyapi.datatypes.ModAddToCommunity + fun toUni(d: ModAddCommunityView): it.vercruysse.lemmyapi.datatypes.ModAddToCommunityView + fun toUni(d: ModAddView): it.vercruysse.lemmyapi.datatypes.AdminAddView + fun toUni(d: ModBan): it.vercruysse.lemmyapi.datatypes.AdminBan fun toUni(d: ModBanFromCommunity): it.vercruysse.lemmyapi.datatypes.ModBanFromCommunity fun toUni(d: ModBanFromCommunityView): it.vercruysse.lemmyapi.datatypes.ModBanFromCommunityView - fun toUni(d: ModBanView): it.vercruysse.lemmyapi.datatypes.ModBanView + fun toUni(d: ModBanView): it.vercruysse.lemmyapi.datatypes.AdminBanView fun toUni(d: ModFeaturePost): it.vercruysse.lemmyapi.datatypes.ModFeaturePost fun toUni(d: ModFeaturePostView): it.vercruysse.lemmyapi.datatypes.ModFeaturePostView fun toUni(d: ModLockPost): it.vercruysse.lemmyapi.datatypes.ModLockPost fun toUni(d: ModLockPostView): it.vercruysse.lemmyapi.datatypes.ModLockPostView fun toUni(d: ModRemoveComment): it.vercruysse.lemmyapi.datatypes.ModRemoveComment fun toUni(d: ModRemoveCommentView): it.vercruysse.lemmyapi.datatypes.ModRemoveCommentView - fun toUni(d: ModRemoveCommunity): it.vercruysse.lemmyapi.datatypes.ModRemoveCommunity - fun toUni(d: ModRemoveCommunityView): it.vercruysse.lemmyapi.datatypes.ModRemoveCommunityView + fun toUni(d: ModRemoveCommunity): it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunity + fun toUni(d: ModRemoveCommunityView): it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunityView fun toUni(d: ModRemovePost): it.vercruysse.lemmyapi.datatypes.ModRemovePost fun toUni(d: ModRemovePostView): it.vercruysse.lemmyapi.datatypes.ModRemovePostView fun toUni(d: ModTransferCommunity): it.vercruysse.lemmyapi.datatypes.ModTransferCommunity diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x3.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x3.kt index 2cca5686..374e37b8 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x3.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x3.kt @@ -153,22 +153,22 @@ internal interface MapperGenerator0x19x3 { fun toUni(d: LocalUserView): it.vercruysse.lemmyapi.datatypes.LocalUserView fun toUni(d: LoginResponse): it.vercruysse.lemmyapi.datatypes.LoginResponse fun toUni(d: LoginToken): it.vercruysse.lemmyapi.datatypes.LoginToken - fun toUni(d: ModAdd): it.vercruysse.lemmyapi.datatypes.ModAdd - fun toUni(d: ModAddCommunity): it.vercruysse.lemmyapi.datatypes.ModAddCommunity - fun toUni(d: ModAddCommunityView): it.vercruysse.lemmyapi.datatypes.ModAddCommunityView - fun toUni(d: ModAddView): it.vercruysse.lemmyapi.datatypes.ModAddView - fun toUni(d: ModBan): it.vercruysse.lemmyapi.datatypes.ModBan + fun toUni(d: ModAdd): it.vercruysse.lemmyapi.datatypes.AdminAdd + fun toUni(d: ModAddCommunity): it.vercruysse.lemmyapi.datatypes.ModAddToCommunity + fun toUni(d: ModAddCommunityView): it.vercruysse.lemmyapi.datatypes.ModAddToCommunityView + fun toUni(d: ModAddView): it.vercruysse.lemmyapi.datatypes.AdminAddView + fun toUni(d: ModBan): it.vercruysse.lemmyapi.datatypes.AdminBan fun toUni(d: ModBanFromCommunity): it.vercruysse.lemmyapi.datatypes.ModBanFromCommunity fun toUni(d: ModBanFromCommunityView): it.vercruysse.lemmyapi.datatypes.ModBanFromCommunityView - fun toUni(d: ModBanView): it.vercruysse.lemmyapi.datatypes.ModBanView + fun toUni(d: ModBanView): it.vercruysse.lemmyapi.datatypes.AdminBanView fun toUni(d: ModFeaturePost): it.vercruysse.lemmyapi.datatypes.ModFeaturePost fun toUni(d: ModFeaturePostView): it.vercruysse.lemmyapi.datatypes.ModFeaturePostView fun toUni(d: ModLockPost): it.vercruysse.lemmyapi.datatypes.ModLockPost fun toUni(d: ModLockPostView): it.vercruysse.lemmyapi.datatypes.ModLockPostView fun toUni(d: ModRemoveComment): it.vercruysse.lemmyapi.datatypes.ModRemoveComment fun toUni(d: ModRemoveCommentView): it.vercruysse.lemmyapi.datatypes.ModRemoveCommentView - fun toUni(d: ModRemoveCommunity): it.vercruysse.lemmyapi.datatypes.ModRemoveCommunity - fun toUni(d: ModRemoveCommunityView): it.vercruysse.lemmyapi.datatypes.ModRemoveCommunityView + fun toUni(d: ModRemoveCommunity): it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunity + fun toUni(d: ModRemoveCommunityView): it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunityView fun toUni(d: ModRemovePost): it.vercruysse.lemmyapi.datatypes.ModRemovePost fun toUni(d: ModRemovePostView): it.vercruysse.lemmyapi.datatypes.ModRemovePostView fun toUni(d: ModTransferCommunity): it.vercruysse.lemmyapi.datatypes.ModTransferCommunity diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt index b1b0c820..e43b20ab 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt @@ -75,22 +75,22 @@ internal interface MapperGenerator0x19x4 { fun toUni(d: LocalUserView): it.vercruysse.lemmyapi.datatypes.LocalUserView fun toUni(d: LoginResponse): it.vercruysse.lemmyapi.datatypes.LoginResponse fun toUni(d: LoginToken): it.vercruysse.lemmyapi.datatypes.LoginToken - fun toUni(d: ModAdd): it.vercruysse.lemmyapi.datatypes.ModAdd - fun toUni(d: ModAddCommunity): it.vercruysse.lemmyapi.datatypes.ModAddCommunity - fun toUni(d: ModAddCommunityView): it.vercruysse.lemmyapi.datatypes.ModAddCommunityView - fun toUni(d: ModAddView): it.vercruysse.lemmyapi.datatypes.ModAddView - fun toUni(d: ModBan): it.vercruysse.lemmyapi.datatypes.ModBan + fun toUni(d: ModAdd): it.vercruysse.lemmyapi.datatypes.AdminAdd + fun toUni(d: ModAddCommunity): it.vercruysse.lemmyapi.datatypes.ModAddToCommunity + fun toUni(d: ModAddCommunityView): it.vercruysse.lemmyapi.datatypes.ModAddToCommunityView + fun toUni(d: ModAddView): it.vercruysse.lemmyapi.datatypes.AdminAddView + fun toUni(d: ModBan): it.vercruysse.lemmyapi.datatypes.AdminBan fun toUni(d: ModBanFromCommunity): it.vercruysse.lemmyapi.datatypes.ModBanFromCommunity fun toUni(d: ModBanFromCommunityView): it.vercruysse.lemmyapi.datatypes.ModBanFromCommunityView - fun toUni(d: ModBanView): it.vercruysse.lemmyapi.datatypes.ModBanView + fun toUni(d: ModBanView): it.vercruysse.lemmyapi.datatypes.AdminBanView fun toUni(d: ModFeaturePost): it.vercruysse.lemmyapi.datatypes.ModFeaturePost fun toUni(d: ModFeaturePostView): it.vercruysse.lemmyapi.datatypes.ModFeaturePostView fun toUni(d: ModLockPost): it.vercruysse.lemmyapi.datatypes.ModLockPost fun toUni(d: ModLockPostView): it.vercruysse.lemmyapi.datatypes.ModLockPostView fun toUni(d: ModRemoveComment): it.vercruysse.lemmyapi.datatypes.ModRemoveComment fun toUni(d: ModRemoveCommentView): it.vercruysse.lemmyapi.datatypes.ModRemoveCommentView - fun toUni(d: ModRemoveCommunity): it.vercruysse.lemmyapi.datatypes.ModRemoveCommunity - fun toUni(d: ModRemoveCommunityView): it.vercruysse.lemmyapi.datatypes.ModRemoveCommunityView + fun toUni(d: ModRemoveCommunity): it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunity + fun toUni(d: ModRemoveCommunityView): it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunityView fun toUni(d: ModRemovePost): it.vercruysse.lemmyapi.datatypes.ModRemovePost fun toUni(d: ModRemovePostView): it.vercruysse.lemmyapi.datatypes.ModRemovePostView fun toUni(d: ModTransferCommunity): it.vercruysse.lemmyapi.datatypes.ModTransferCommunity diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt index 1f5e3f95..66ddb9b6 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt @@ -76,22 +76,22 @@ internal interface MapperGenerator0x19x6 { fun toUni(d: LocalUserView): it.vercruysse.lemmyapi.datatypes.LocalUserView fun toUni(d: LoginResponse): it.vercruysse.lemmyapi.datatypes.LoginResponse fun toUni(d: LoginToken): it.vercruysse.lemmyapi.datatypes.LoginToken - fun toUni(d: ModAdd): it.vercruysse.lemmyapi.datatypes.ModAdd - fun toUni(d: ModAddCommunity): it.vercruysse.lemmyapi.datatypes.ModAddCommunity - fun toUni(d: ModAddCommunityView): it.vercruysse.lemmyapi.datatypes.ModAddCommunityView - fun toUni(d: ModAddView): it.vercruysse.lemmyapi.datatypes.ModAddView - fun toUni(d: ModBan): it.vercruysse.lemmyapi.datatypes.ModBan + fun toUni(d: ModAdd): it.vercruysse.lemmyapi.datatypes.AdminAdd + fun toUni(d: ModAddCommunity): it.vercruysse.lemmyapi.datatypes.ModAddToCommunity + fun toUni(d: ModAddCommunityView): it.vercruysse.lemmyapi.datatypes.ModAddToCommunityView + fun toUni(d: ModAddView): it.vercruysse.lemmyapi.datatypes.AdminAddView + fun toUni(d: ModBan): it.vercruysse.lemmyapi.datatypes.AdminBan fun toUni(d: ModBanFromCommunity): it.vercruysse.lemmyapi.datatypes.ModBanFromCommunity fun toUni(d: ModBanFromCommunityView): it.vercruysse.lemmyapi.datatypes.ModBanFromCommunityView - fun toUni(d: ModBanView): it.vercruysse.lemmyapi.datatypes.ModBanView + fun toUni(d: ModBanView): it.vercruysse.lemmyapi.datatypes.AdminBanView fun toUni(d: ModFeaturePost): it.vercruysse.lemmyapi.datatypes.ModFeaturePost fun toUni(d: ModFeaturePostView): it.vercruysse.lemmyapi.datatypes.ModFeaturePostView fun toUni(d: ModLockPost): it.vercruysse.lemmyapi.datatypes.ModLockPost fun toUni(d: ModLockPostView): it.vercruysse.lemmyapi.datatypes.ModLockPostView fun toUni(d: ModRemoveComment): it.vercruysse.lemmyapi.datatypes.ModRemoveComment fun toUni(d: ModRemoveCommentView): it.vercruysse.lemmyapi.datatypes.ModRemoveCommentView - fun toUni(d: ModRemoveCommunity): it.vercruysse.lemmyapi.datatypes.ModRemoveCommunity - fun toUni(d: ModRemoveCommunityView): it.vercruysse.lemmyapi.datatypes.ModRemoveCommunityView + fun toUni(d: ModRemoveCommunity): it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunity + fun toUni(d: ModRemoveCommunityView): it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunityView fun toUni(d: ModRemovePost): it.vercruysse.lemmyapi.datatypes.ModRemovePost fun toUni(d: ModRemovePostView): it.vercruysse.lemmyapi.datatypes.ModRemovePostView fun toUni(d: ModTransferCommunity): it.vercruysse.lemmyapi.datatypes.ModTransferCommunity diff --git a/GeneratorScripts/src/main/kotlin/autogenscripts/GenTypes.kt b/GeneratorScripts/src/main/kotlin/autogenscripts/GenTypes.kt index 9a1dfdbd..e41ce766 100644 --- a/GeneratorScripts/src/main/kotlin/autogenscripts/GenTypes.kt +++ b/GeneratorScripts/src/main/kotlin/autogenscripts/GenTypes.kt @@ -4,9 +4,7 @@ import io.ktor.client.request.* import io.ktor.client.statement.* import io.ktor.util.cio.* import io.ktor.utils.io.* -import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.runBlocking -import kotlinx.coroutines.withContext import java.io.File import java.util.zip.ZipFile import kotlin.system.exitProcess @@ -245,6 +243,6 @@ fun downloadTypes( } fun main() { - downloadTypes("1.0.0-community-post-notifs.0", "v1/x0/x0") + downloadTypes("1.0.0-error-status-code.0", "v1/x0/x0") exitProcess(0) } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModAdd.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminAdd.kt similarity index 94% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModAdd.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminAdd.kt index 80d42c5d..2df1024b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModAdd.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminAdd.kt @@ -7,7 +7,7 @@ import it.vercruysse.lemmyapi.CommonParcelize @CommonParcelize @Serializable -data class ModAdd( +data class AdminAdd( val id: Long, val mod_person_id: PersonId, val other_person_id: PersonId, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModAddView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminAddView.kt similarity index 84% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModAddView.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminAddView.kt index a3bd25d9..ca4498cf 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModAddView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminAddView.kt @@ -7,8 +7,8 @@ import it.vercruysse.lemmyapi.CommonParcelize @CommonParcelize @Serializable -data class ModAddView( - val mod_add: ModAdd, +data class AdminAddView( + val admin_add: AdminAdd, val moderator: Person? = null, val other_person: Person, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModBan.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminBan.kt similarity index 96% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModBan.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminBan.kt index 29b17304..9ab948b7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModBan.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminBan.kt @@ -8,7 +8,7 @@ import it.vercruysse.lemmyapi.CommonParcelize @CommonParcelize @Serializable -data class ModBan( +data class AdminBan( override val id: Long, val mod_person_id: PersonId, val other_person_id: PersonId, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModBanView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminBanView.kt similarity index 81% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModBanView.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminBanView.kt index 0bc7ccf4..0e98d3aa 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModBanView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminBanView.kt @@ -8,11 +8,11 @@ import it.vercruysse.lemmyapi.CommonParcelize @CommonParcelize @Serializable -data class ModBanView( - val mod_ban: ModBan, +data class AdminBanView( + val admin_ban: AdminBan, val moderator: Person? = null, val other_person: Person, ) : DatatypeRoot, Identity { override val id: Long - get() = mod_ban.id + get() = admin_ban.id } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModRemoveCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminRemoveCommunity.kt similarity index 92% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModRemoveCommunity.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminRemoveCommunity.kt index 95d48cd3..9639d9d6 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModRemoveCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminRemoveCommunity.kt @@ -7,7 +7,7 @@ import it.vercruysse.lemmyapi.CommonParcelize @CommonParcelize @Serializable -data class ModRemoveCommunity( +data class AdminRemoveCommunity( val id: Long, val mod_person_id: PersonId, val community_id: CommunityId, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModRemoveCommunityView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminRemoveCommunityView.kt similarity index 75% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModRemoveCommunityView.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminRemoveCommunityView.kt index 4cb523e0..58ffba55 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModRemoveCommunityView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminRemoveCommunityView.kt @@ -7,8 +7,8 @@ import it.vercruysse.lemmyapi.CommonParcelize @CommonParcelize @Serializable -data class ModRemoveCommunityView( - val mod_remove_community: ModRemoveCommunity, +data class AdminRemoveCommunityView( + val admin_remove_community: AdminRemoveCommunity, val moderator: Person? = null, val community: Community, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetModlog.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetModlog.kt index 492d0ffc..440bd95c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetModlog.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetModlog.kt @@ -12,7 +12,7 @@ import it.vercruysse.lemmyapi.dto.ListingType data class GetModlog( val mod_person_id: PersonId? = null, val community_id: CommunityId? = null, - val type_: ModlogActionType? /* "All" | "ModRemovePost" | "ModLockPost" | "ModFeaturePost" | "ModRemoveComment" | "ModRemoveCommunity" | "ModBanFromCommunity" | "ModAddCommunity" | "ModTransferCommunity" | "ModAdd" | "ModBan" | "ModChangeCommunityVisibility" | "AdminPurgePerson" | "AdminPurgeCommunity" | "AdminPurgePost" | "AdminPurgeComment" | "AdminBlockInstance" | "AdminAllowInstance" */ = null, + val type_: ModlogActionType? /* "All" | "ModRemovePost" | "ModLockPost" | "ModFeaturePost" | "ModRemoveComment" | "ModLockComment" | "AdminRemoveCommunity" | "ModBanFromCommunity" | "ModAddToCommunity" | "ModTransferCommunity" | "AdminAdd" | "AdminBan" | "ModChangeCommunityVisibility" | "AdminPurgePerson" | "AdminPurgeCommunity" | "AdminPurgePost" | "AdminPurgeComment" | "AdminBlockInstance" | "AdminAllowInstance" */ = null, /** Added in 1.0.0 */ val listing_type: ListingType? /* "All" | "Local" | "Subscribed" | "ModeratorView" | "Suggested" */ = null, val other_person_id: PersonId? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LockComment.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LockComment.kt new file mode 100644 index 00000000..5e2e6a7d --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LockComment.kt @@ -0,0 +1,13 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class LockComment( + val comment_id: CommentId, + val locked: Boolean, + val reason: String, +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModAddCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModAddToCommunity.kt similarity index 93% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModAddCommunity.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModAddToCommunity.kt index d843fb7e..84505331 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModAddCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModAddToCommunity.kt @@ -7,7 +7,7 @@ import it.vercruysse.lemmyapi.CommonParcelize @CommonParcelize @Serializable -data class ModAddCommunity( +data class ModAddToCommunity( val id: Long, val mod_person_id: PersonId, val other_person_id: PersonId, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModAddCommunityView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModAddToCommunityView.kt similarity index 79% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModAddCommunityView.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModAddToCommunityView.kt index ff938044..219628a6 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModAddCommunityView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModAddToCommunityView.kt @@ -7,8 +7,8 @@ import it.vercruysse.lemmyapi.CommonParcelize @CommonParcelize @Serializable -data class ModAddCommunityView( - val mod_add_community: ModAddCommunity, +data class ModAddToCommunityView( + val mod_add_to_community: ModAddToCommunity, val moderator: Person? = null, val community: Community, val other_person: Person, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModLockComment.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModLockComment.kt new file mode 100644 index 00000000..0dd9148a --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModLockComment.kt @@ -0,0 +1,16 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class ModLockComment( + val id: Long, + val mod_person_id: PersonId, + val comment_id: CommentId, + val locked: Boolean, + val reason: String, + val published_at: String, +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModLockCommentView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModLockCommentView.kt new file mode 100644 index 00000000..a64bff83 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModLockCommentView.kt @@ -0,0 +1,16 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class ModLockCommentView( + val mod_lock_comment: ModLockComment, + val moderator: Person? = null, + val other_person: Person, + val comment: Comment, + val post: Post, + val community: Community, +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModlogCombinedView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModlogCombinedView.kt index 1aabbeaa..51995195 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModlogCombinedView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModlogCombinedView.kt @@ -56,23 +56,23 @@ sealed class ModlogCombinedView: DatatypeRoot { @CommonParcelize @Serializable - @SerialName("ModAdd") - data class ModAdd( - val mod_add: ModAddView + @SerialName("AdminAdd") + internal data class AdminAdd( + val admin_add: AdminAddView, ) : ModlogCombinedView() @CommonParcelize @Serializable - @SerialName("ModAddCommunity") - data class ModAddCommunity( - val mod_add_community: ModAddCommunityView + @SerialName("ModAddToCommunity") + internal data class ModAddToCommunity( + val mod_add_to_community: ModAddToCommunityView, ) : ModlogCombinedView() @CommonParcelize @Serializable - @SerialName("ModBan") - data class ModBan( - val mod_ban: ModBanView + @SerialName("AdminBan") + internal data class AdminBan( + val admin_ban: AdminBanView, ) : ModlogCombinedView() @CommonParcelize @@ -112,9 +112,9 @@ sealed class ModlogCombinedView: DatatypeRoot { @CommonParcelize @Serializable - @SerialName("ModRemoveCommunity") - data class ModRemoveCommunity( - val mod_remove_community: ModRemoveCommunityView + @SerialName("AdminRemoveCommunity") + internal data class AdminRemoveCommunity( + val admin_remove_community: AdminRemoveCommunityView, ) : ModlogCombinedView() @CommonParcelize @@ -130,4 +130,11 @@ sealed class ModlogCombinedView: DatatypeRoot { data class ModTransferCommunity( val mod_transfer_community: ModTransferCommunityView ) : ModlogCombinedView() + + @CommonParcelize + @Serializable + @SerialName("ModLockComment") + internal data class ModLockComment( + val mod_lock_comment: ModLockCommentView, + ): ModlogCombinedView() } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/dto/CustomDataTypes.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/dto/CustomDataTypes.kt index d2f833af..33d6847d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/dto/CustomDataTypes.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/dto/CustomDataTypes.kt @@ -90,12 +90,25 @@ enum class ModlogActionType(override val minimumVersion: Version = MINIMUM_API_V ModLockPost, ModFeaturePost, ModRemoveComment, - ModRemoveCommunity, + ModLockComment(V1_0_0), + + /** Deprecated alias for AdminRemoveCommunity */ + ModRemoveCommunity(MINIMUM_API_VERSION, V1_0_0), + AdminRemoveCommunity(V1_0_0), ModBanFromCommunity, - ModAddCommunity, + + /** Deprecated alias for ModAddToCommunity */ + ModAddCommunity(MINIMUM_API_VERSION, V1_0_0), + ModAddToCommunity(V1_0_0), ModTransferCommunity, - ModAdd, - ModBan, + + /** Deprecated alias for AdminAdd */ + ModAdd(MINIMUM_API_VERSION, V1_0_0), + + /** Deprecated alias for AdminBan */ + ModBan(MINIMUM_API_VERSION, V1_0_0), + AdminAdd(V1_0_0), + AdminBan(V1_0_0), ModHideCommunity(MINIMUM_API_VERSION, V1_0_0), ModChangeCommunityVisibility(V1_0_0), AdminPurgePerson, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/MapperGenerator.kt index 401ed547..13592aa7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/MapperGenerator.kt @@ -100,14 +100,14 @@ internal interface MapperGenerator { fun toUni(d: LocalUserView): it.vercruysse.lemmyapi.datatypes.LocalUserView fun toUni(d: LoginResponse): it.vercruysse.lemmyapi.datatypes.LoginResponse - fun toUni(d: ModAdd): it.vercruysse.lemmyapi.datatypes.ModAdd - fun toUni(d: ModAddCommunity): it.vercruysse.lemmyapi.datatypes.ModAddCommunity - fun toUni(d: ModAddCommunityView): it.vercruysse.lemmyapi.datatypes.ModAddCommunityView - fun toUni(d: ModAddView): it.vercruysse.lemmyapi.datatypes.ModAddView - fun toUni(d: ModBan): it.vercruysse.lemmyapi.datatypes.ModBan + fun toUni(d: ModAdd): it.vercruysse.lemmyapi.datatypes.AdminAdd + fun toUni(d: ModAddCommunity): it.vercruysse.lemmyapi.datatypes.ModAddToCommunity + fun toUni(d: ModAddCommunityView): it.vercruysse.lemmyapi.datatypes.ModAddToCommunityView + fun toUni(d: ModAddView): it.vercruysse.lemmyapi.datatypes.AdminAddView + fun toUni(d: ModBan): it.vercruysse.lemmyapi.datatypes.AdminBan fun toUni(d: ModBanFromCommunity): it.vercruysse.lemmyapi.datatypes.ModBanFromCommunity fun toUni(d: ModBanFromCommunityView): it.vercruysse.lemmyapi.datatypes.ModBanFromCommunityView - fun toUni(d: ModBanView): it.vercruysse.lemmyapi.datatypes.ModBanView + fun toUni(d: ModBanView): it.vercruysse.lemmyapi.datatypes.AdminBanView fun toUni(d: ModFeaturePost): it.vercruysse.lemmyapi.datatypes.ModFeaturePost fun toUni(d: ModFeaturePostView): it.vercruysse.lemmyapi.datatypes.ModFeaturePostView fun toUni(d: ModHideCommunity): it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibility @@ -116,8 +116,8 @@ internal interface MapperGenerator { fun toUni(d: ModLockPostView): it.vercruysse.lemmyapi.datatypes.ModLockPostView fun toUni(d: ModRemoveComment): it.vercruysse.lemmyapi.datatypes.ModRemoveComment fun toUni(d: ModRemoveCommentView): it.vercruysse.lemmyapi.datatypes.ModRemoveCommentView - fun toUni(d: ModRemoveCommunity): it.vercruysse.lemmyapi.datatypes.ModRemoveCommunity - fun toUni(d: ModRemoveCommunityView): it.vercruysse.lemmyapi.datatypes.ModRemoveCommunityView + fun toUni(d: ModRemoveCommunity): it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunity + fun toUni(d: ModRemoveCommunityView): it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunityView fun toUni(d: ModRemovePost): it.vercruysse.lemmyapi.datatypes.ModRemovePost fun toUni(d: ModRemovePostView): it.vercruysse.lemmyapi.datatypes.ModRemovePostView fun toUni(d: ModTransferCommunity): it.vercruysse.lemmyapi.datatypes.ModTransferCommunity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt index 4ecf3408..01b6096b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt @@ -26,6 +26,10 @@ import it.vercruysse.lemmyapi.datatypes.AddAdmin as LemmyapiDatatypesAddAdmin import it.vercruysse.lemmyapi.datatypes.AddAdminResponse as LemmyapiDatatypesAddAdminResponse import it.vercruysse.lemmyapi.datatypes.AddModToCommunity as LemmyapiDatatypesAddModToCommunity import it.vercruysse.lemmyapi.datatypes.AddModToCommunityResponse as LemmyapiDatatypesAddModToCommunityResponse +import it.vercruysse.lemmyapi.datatypes.AdminAdd as LemmyapiDatatypesModAdd +import it.vercruysse.lemmyapi.datatypes.AdminAddView as LemmyapiDatatypesModAddView +import it.vercruysse.lemmyapi.datatypes.AdminBan as LemmyapiDatatypesModBan +import it.vercruysse.lemmyapi.datatypes.AdminBanView as LemmyapiDatatypesModBanView import it.vercruysse.lemmyapi.datatypes.AdminPurgeComment as LemmyapiDatatypesAdminPurgeComment import it.vercruysse.lemmyapi.datatypes.AdminPurgeCommentView as LemmyapiDatatypesAdminPurgeCommentView import it.vercruysse.lemmyapi.datatypes.AdminPurgeCommunity as LemmyapiDatatypesAdminPurgeCommunity @@ -34,6 +38,8 @@ import it.vercruysse.lemmyapi.datatypes.AdminPurgePerson as LemmyapiDatatypesAdm import it.vercruysse.lemmyapi.datatypes.AdminPurgePersonView as LemmyapiDatatypesAdminPurgePersonView import it.vercruysse.lemmyapi.datatypes.AdminPurgePost as LemmyapiDatatypesAdminPurgePost import it.vercruysse.lemmyapi.datatypes.AdminPurgePostView as LemmyapiDatatypesAdminPurgePostView +import it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunity as LemmyapiDatatypesModRemoveCommunity +import it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunityView as LemmyapiDatatypesModRemoveCommunityView import it.vercruysse.lemmyapi.datatypes.ApproveRegistrationApplication as LemmyapiDatatypesApproveRegistrationApplication import it.vercruysse.lemmyapi.datatypes.BanFromCommunity as LemmyapiDatatypesBanFromCommunity import it.vercruysse.lemmyapi.datatypes.BanFromCommunityResponse as LemmyapiDatatypesBanFromCommunityResponse @@ -127,14 +133,10 @@ import it.vercruysse.lemmyapi.datatypes.LocalUserView as LemmyapiDatatypesLocalU import it.vercruysse.lemmyapi.datatypes.LockPost as LemmyapiDatatypesLockPost import it.vercruysse.lemmyapi.datatypes.Login as LemmyapiDatatypesLogin import it.vercruysse.lemmyapi.datatypes.LoginResponse as LemmyapiDatatypesLoginResponse -import it.vercruysse.lemmyapi.datatypes.ModAdd as LemmyapiDatatypesModAdd -import it.vercruysse.lemmyapi.datatypes.ModAddCommunity as LemmyapiDatatypesModAddCommunity -import it.vercruysse.lemmyapi.datatypes.ModAddCommunityView as LemmyapiDatatypesModAddCommunityView -import it.vercruysse.lemmyapi.datatypes.ModAddView as LemmyapiDatatypesModAddView -import it.vercruysse.lemmyapi.datatypes.ModBan as LemmyapiDatatypesModBan +import it.vercruysse.lemmyapi.datatypes.ModAddToCommunity as LemmyapiDatatypesModAddCommunity +import it.vercruysse.lemmyapi.datatypes.ModAddToCommunityView as LemmyapiDatatypesModAddCommunityView import it.vercruysse.lemmyapi.datatypes.ModBanFromCommunity as LemmyapiDatatypesModBanFromCommunity import it.vercruysse.lemmyapi.datatypes.ModBanFromCommunityView as LemmyapiDatatypesModBanFromCommunityView -import it.vercruysse.lemmyapi.datatypes.ModBanView as LemmyapiDatatypesModBanView import it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibility as LemmyapiDatatypesModChangeCommunityVisibility import it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibilityView as LemmyapiDatatypesModChangeCommunityVisibilityView import it.vercruysse.lemmyapi.datatypes.ModFeaturePost as LemmyapiDatatypesModFeaturePost @@ -143,8 +145,6 @@ import it.vercruysse.lemmyapi.datatypes.ModLockPost as LemmyapiDatatypesModLockP import it.vercruysse.lemmyapi.datatypes.ModLockPostView as LemmyapiDatatypesModLockPostView import it.vercruysse.lemmyapi.datatypes.ModRemoveComment as LemmyapiDatatypesModRemoveComment import it.vercruysse.lemmyapi.datatypes.ModRemoveCommentView as LemmyapiDatatypesModRemoveCommentView -import it.vercruysse.lemmyapi.datatypes.ModRemoveCommunity as LemmyapiDatatypesModRemoveCommunity -import it.vercruysse.lemmyapi.datatypes.ModRemoveCommunityView as LemmyapiDatatypesModRemoveCommunityView import it.vercruysse.lemmyapi.datatypes.ModRemovePost as LemmyapiDatatypesModRemovePost import it.vercruysse.lemmyapi.datatypes.ModRemovePostView as LemmyapiDatatypesModRemovePostView import it.vercruysse.lemmyapi.datatypes.ModTransferCommunity as LemmyapiDatatypesModTransferCommunity @@ -895,7 +895,7 @@ internal class Transformer(var auth: String) : MapperGenerator { modlogList.addAll( d.removed_communities.map { view -> - ModlogCombinedView.ModRemoveCommunity(mod_remove_community = this.toUni(d = view)) + ModlogCombinedView.AdminRemoveCommunity(admin_remove_community = this.toUni(d = view)) }, ) @@ -907,13 +907,13 @@ internal class Transformer(var auth: String) : MapperGenerator { modlogList.addAll( d.banned.map { view -> - ModlogCombinedView.ModBan(mod_ban = this.toUni(d = view)) + ModlogCombinedView.AdminBan(admin_ban = this.toUni(d = view)) }, ) modlogList.addAll( d.added_to_community.map { view -> - ModlogCombinedView.ModAddCommunity(mod_add_community = this.toUni(d = view)) + ModlogCombinedView.ModAddToCommunity(mod_add_to_community = this.toUni(d = view)) }, ) @@ -925,7 +925,7 @@ internal class Transformer(var auth: String) : MapperGenerator { modlogList.addAll( d.added.map { view -> - ModlogCombinedView.ModAdd(mod_add = this.toUni(d = view)) + ModlogCombinedView.AdminAdd(admin_add = this.toUni(d = view)) }, ) @@ -1159,7 +1159,7 @@ internal class Transformer(var auth: String) : MapperGenerator { override fun toUni(d: X5DatatypesModAddCommunityView): LemmyapiDatatypesModAddCommunityView = LemmyapiDatatypesModAddCommunityView( - mod_add_community = this.toUni(d = d.mod_add_community), + mod_add_to_community = this.toUni(d = d.mod_add_community), moderator = d.moderator?.let { this.toUni(d = it) }, community = this.toUni(d = d.community, counts = X5DatatypesCommunityAggregates(-1, -1, -1, -1, -1, "", -1, -1, -1, -1, -1)), other_person = this.toUni(d = d.modded_person), @@ -1167,7 +1167,7 @@ internal class Transformer(var auth: String) : MapperGenerator { override fun toUni(d: X5DatatypesModAddView): LemmyapiDatatypesModAddView = LemmyapiDatatypesModAddView( - mod_add = this.toUni(d = d.mod_add), + admin_add = this.toUni(d = d.mod_add), moderator = d.moderator?.let { this.toUni(d = it) }, other_person = this.toUni(d = d.modded_person), ) @@ -1204,7 +1204,7 @@ internal class Transformer(var auth: String) : MapperGenerator { override fun toUni(d: X5DatatypesModBanView): LemmyapiDatatypesModBanView = LemmyapiDatatypesModBanView( - mod_ban = this.toUni(d = d.mod_ban), + admin_ban = this.toUni(d = d.mod_ban), moderator = d.moderator?.let { this.toUni(d = it) }, other_person = this.toUni(d = d.banned_person), ) @@ -1297,7 +1297,7 @@ internal class Transformer(var auth: String) : MapperGenerator { ) override fun toUni(d: X5DatatypesModRemoveCommunityView): LemmyapiDatatypesModRemoveCommunityView = LemmyapiDatatypesModRemoveCommunityView( - mod_remove_community = this.toUni(d = d.mod_remove_community), + admin_remove_community = this.toUni(d = d.mod_remove_community), moderator = d.moderator?.let { this.toUni(d = it) }, community = this.toUni(d = d.community, counts = X5DatatypesCommunityAggregates(-1, -1, -1, -1, -1, "", -1, -1, -1, -1, -1)), ) @@ -1697,7 +1697,7 @@ internal class Transformer(var auth: String) : MapperGenerator { description = d.description, icon = d.icon, banner = d.banner, - enable_downvotes = when(d.post_downvotes) { + enable_downvotes = when (d.post_downvotes) { FederationMode.Local, FederationMode.All -> true FederationMode.Disable -> false null -> null diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt index 2f052fc8..68275a48 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt @@ -88,14 +88,14 @@ internal interface MapperGenerator { fun toUni(d: LocalUserView): it.vercruysse.lemmyapi.datatypes.LocalUserView fun toUni(d: LoginResponse): it.vercruysse.lemmyapi.datatypes.LoginResponse fun toUni(d: LoginToken): it.vercruysse.lemmyapi.datatypes.LoginToken - fun toUni(d: ModAdd): it.vercruysse.lemmyapi.datatypes.ModAdd - fun toUni(d: ModAddCommunity): it.vercruysse.lemmyapi.datatypes.ModAddCommunity - fun toUni(d: ModAddCommunityView): it.vercruysse.lemmyapi.datatypes.ModAddCommunityView - fun toUni(d: ModAddView): it.vercruysse.lemmyapi.datatypes.ModAddView - fun toUni(d: ModBan): it.vercruysse.lemmyapi.datatypes.ModBan + fun toUni(d: ModAdd): it.vercruysse.lemmyapi.datatypes.AdminAdd + fun toUni(d: ModAddCommunity): it.vercruysse.lemmyapi.datatypes.ModAddToCommunity + fun toUni(d: ModAddCommunityView): it.vercruysse.lemmyapi.datatypes.ModAddToCommunityView + fun toUni(d: ModAddView): it.vercruysse.lemmyapi.datatypes.AdminAddView + fun toUni(d: ModBan): it.vercruysse.lemmyapi.datatypes.AdminBan fun toUni(d: ModBanFromCommunity): it.vercruysse.lemmyapi.datatypes.ModBanFromCommunity fun toUni(d: ModBanFromCommunityView): it.vercruysse.lemmyapi.datatypes.ModBanFromCommunityView - fun toUni(d: ModBanView): it.vercruysse.lemmyapi.datatypes.ModBanView + fun toUni(d: ModBanView): it.vercruysse.lemmyapi.datatypes.AdminBanView fun toUni(d: ModFeaturePost): it.vercruysse.lemmyapi.datatypes.ModFeaturePost fun toUni(d: ModFeaturePostView): it.vercruysse.lemmyapi.datatypes.ModFeaturePostView fun toUni(d: ModHideCommunity): it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibility @@ -104,8 +104,8 @@ internal interface MapperGenerator { fun toUni(d: ModLockPostView): it.vercruysse.lemmyapi.datatypes.ModLockPostView fun toUni(d: ModRemoveComment): it.vercruysse.lemmyapi.datatypes.ModRemoveComment fun toUni(d: ModRemoveCommentView): it.vercruysse.lemmyapi.datatypes.ModRemoveCommentView - fun toUni(d: ModRemoveCommunity): it.vercruysse.lemmyapi.datatypes.ModRemoveCommunity - fun toUni(d: ModRemoveCommunityView): it.vercruysse.lemmyapi.datatypes.ModRemoveCommunityView + fun toUni(d: ModRemoveCommunity): it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunity + fun toUni(d: ModRemoveCommunityView): it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunityView fun toUni(d: ModRemovePost): it.vercruysse.lemmyapi.datatypes.ModRemovePost fun toUni(d: ModRemovePostView): it.vercruysse.lemmyapi.datatypes.ModRemovePostView fun toUni(d: ModTransferCommunity): it.vercruysse.lemmyapi.datatypes.ModTransferCommunity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt index 0ca914b0..500462a6 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt @@ -22,6 +22,10 @@ import it.vercruysse.lemmyapi.datatypes.AddAdmin as LemmyapiDatatypesAddAdmin import it.vercruysse.lemmyapi.datatypes.AddAdminResponse as LemmyapiDatatypesAddAdminResponse import it.vercruysse.lemmyapi.datatypes.AddModToCommunity as LemmyapiDatatypesAddModToCommunity import it.vercruysse.lemmyapi.datatypes.AddModToCommunityResponse as LemmyapiDatatypesAddModToCommunityResponse +import it.vercruysse.lemmyapi.datatypes.AdminAdd as LemmyapiDatatypesModAdd +import it.vercruysse.lemmyapi.datatypes.AdminAddView as LemmyapiDatatypesModAddView +import it.vercruysse.lemmyapi.datatypes.AdminBan as LemmyapiDatatypesModBan +import it.vercruysse.lemmyapi.datatypes.AdminBanView as LemmyapiDatatypesModBanView import it.vercruysse.lemmyapi.datatypes.AdminPurgeComment as LemmyapiDatatypesAdminPurgeComment import it.vercruysse.lemmyapi.datatypes.AdminPurgeCommentView as LemmyapiDatatypesAdminPurgeCommentView import it.vercruysse.lemmyapi.datatypes.AdminPurgeCommunity as LemmyapiDatatypesAdminPurgeCommunity @@ -30,6 +34,8 @@ import it.vercruysse.lemmyapi.datatypes.AdminPurgePerson as LemmyapiDatatypesAdm import it.vercruysse.lemmyapi.datatypes.AdminPurgePersonView as LemmyapiDatatypesAdminPurgePersonView import it.vercruysse.lemmyapi.datatypes.AdminPurgePost as LemmyapiDatatypesAdminPurgePost import it.vercruysse.lemmyapi.datatypes.AdminPurgePostView as LemmyapiDatatypesAdminPurgePostView +import it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunity as LemmyapiDatatypesModRemoveCommunity +import it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunityView as LemmyapiDatatypesModRemoveCommunityView import it.vercruysse.lemmyapi.datatypes.ApproveRegistrationApplication as LemmyapiDatatypesApproveRegistrationApplication import it.vercruysse.lemmyapi.datatypes.BanFromCommunity as LemmyapiDatatypesBanFromCommunity import it.vercruysse.lemmyapi.datatypes.BanFromCommunityResponse as LemmyapiDatatypesBanFromCommunityResponse @@ -126,14 +132,10 @@ import it.vercruysse.lemmyapi.datatypes.Login as LemmyapiDatatypesLogin import it.vercruysse.lemmyapi.datatypes.LoginResponse as LemmyapiDatatypesLoginResponse import it.vercruysse.lemmyapi.datatypes.LoginToken as LemmyapiDatatypesLoginToken import it.vercruysse.lemmyapi.datatypes.MarkPostAsRead as LemmyapiDatatypesMarkPostAsRead -import it.vercruysse.lemmyapi.datatypes.ModAdd as LemmyapiDatatypesModAdd -import it.vercruysse.lemmyapi.datatypes.ModAddCommunity as LemmyapiDatatypesModAddCommunity -import it.vercruysse.lemmyapi.datatypes.ModAddCommunityView as LemmyapiDatatypesModAddCommunityView -import it.vercruysse.lemmyapi.datatypes.ModAddView as LemmyapiDatatypesModAddView -import it.vercruysse.lemmyapi.datatypes.ModBan as LemmyapiDatatypesModBan +import it.vercruysse.lemmyapi.datatypes.ModAddToCommunity as LemmyapiDatatypesModAddCommunity +import it.vercruysse.lemmyapi.datatypes.ModAddToCommunityView as LemmyapiDatatypesModAddCommunityView import it.vercruysse.lemmyapi.datatypes.ModBanFromCommunity as LemmyapiDatatypesModBanFromCommunity import it.vercruysse.lemmyapi.datatypes.ModBanFromCommunityView as LemmyapiDatatypesModBanFromCommunityView -import it.vercruysse.lemmyapi.datatypes.ModBanView as LemmyapiDatatypesModBanView import it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibility as LemmyapiDatatypesModChangeCommunityVisibility import it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibilityView as LemmyapiDatatypesModChangeCommunityVisibilityView import it.vercruysse.lemmyapi.datatypes.ModFeaturePost as LemmyapiDatatypesModFeaturePost @@ -142,8 +144,6 @@ import it.vercruysse.lemmyapi.datatypes.ModLockPost as LemmyapiDatatypesModLockP import it.vercruysse.lemmyapi.datatypes.ModLockPostView as LemmyapiDatatypesModLockPostView import it.vercruysse.lemmyapi.datatypes.ModRemoveComment as LemmyapiDatatypesModRemoveComment import it.vercruysse.lemmyapi.datatypes.ModRemoveCommentView as LemmyapiDatatypesModRemoveCommentView -import it.vercruysse.lemmyapi.datatypes.ModRemoveCommunity as LemmyapiDatatypesModRemoveCommunity -import it.vercruysse.lemmyapi.datatypes.ModRemoveCommunityView as LemmyapiDatatypesModRemoveCommunityView import it.vercruysse.lemmyapi.datatypes.ModRemovePost as LemmyapiDatatypesModRemovePost import it.vercruysse.lemmyapi.datatypes.ModRemovePostView as LemmyapiDatatypesModRemovePostView import it.vercruysse.lemmyapi.datatypes.ModTransferCommunity as LemmyapiDatatypesModTransferCommunity @@ -828,7 +828,7 @@ internal class Transformer : MapperGenerator { // Add ModRemoveCommunity entries modlogList.addAll( d.removed_communities.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemoveCommunity(mod_remove_community = this.toUni(d = view)) + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminRemoveCommunity(admin_remove_community = this.toUni(d = view)) }, ) @@ -842,14 +842,14 @@ internal class Transformer : MapperGenerator { // Add ModBan entries modlogList.addAll( d.banned.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModBan(mod_ban = this.toUni(d = view)) + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminBan(admin_ban = this.toUni(d = view)) }, ) // Add ModAddCommunity entries modlogList.addAll( d.added_to_community.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModAddCommunity(mod_add_community = this.toUni(d = view)) + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModAddToCommunity(mod_add_to_community = this.toUni(d = view)) }, ) @@ -863,7 +863,7 @@ internal class Transformer : MapperGenerator { // Add ModAdd entries modlogList.addAll( d.added.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModAdd(mod_add = this.toUni(d = view)) + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminAdd(admin_add = this.toUni(d = view)) }, ) @@ -1182,7 +1182,7 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X0DatatypesModAddCommunityView): LemmyapiDatatypesModAddCommunityView = LemmyapiDatatypesModAddCommunityView( - mod_add_community = this.toUni(d = d.mod_add_community), + mod_add_to_community = this.toUni(d = d.mod_add_community), moderator = d.moderator?.let { this.toUni(d = it) }, community = this.toUni(d = d.community, counts = X0DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), other_person = this.toUni(d = d.modded_person), @@ -1190,7 +1190,7 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X0DatatypesModAddView): LemmyapiDatatypesModAddView = LemmyapiDatatypesModAddView( - mod_add = this.toUni(d = d.mod_add), + admin_add = this.toUni(d = d.mod_add), moderator = d.moderator?.let { this.toUni(d = it) }, other_person = this.toUni(d = d.modded_person), ) @@ -1227,7 +1227,7 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X0DatatypesModBanView): LemmyapiDatatypesModBanView = LemmyapiDatatypesModBanView( - mod_ban = this.toUni(d = d.mod_ban), + admin_ban = this.toUni(d = d.mod_ban), moderator = d.moderator?.let { this.toUni(d = it) }, other_person = this.toUni(d = d.banned_person), ) @@ -1320,7 +1320,7 @@ internal class Transformer : MapperGenerator { ) override fun toUni(d: X0DatatypesModRemoveCommunityView): LemmyapiDatatypesModRemoveCommunityView = LemmyapiDatatypesModRemoveCommunityView( - mod_remove_community = this.toUni(d = d.mod_remove_community), + admin_remove_community = this.toUni(d = d.mod_remove_community), moderator = d.moderator?.let { this.toUni(d = it) }, community = this.toUni(d = d.community, counts = X0DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), ) @@ -1741,7 +1741,7 @@ internal class Transformer : MapperGenerator { description = d.description, icon = d.icon, banner = d.banner, - enable_downvotes = when(d.post_downvotes) { + enable_downvotes = when (d.post_downvotes) { FederationMode.Local, FederationMode.All -> true FederationMode.Disable -> false null -> null diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt index 0f221e99..04e29a8e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt @@ -69,14 +69,14 @@ internal interface MapperGenerator { fun toUni(d: LocalUserView): it.vercruysse.lemmyapi.datatypes.LocalUserView fun toUni(d: LoginResponse): it.vercruysse.lemmyapi.datatypes.LoginResponse fun toUni(d: LoginToken): it.vercruysse.lemmyapi.datatypes.LoginToken - fun toUni(d: ModAdd): it.vercruysse.lemmyapi.datatypes.ModAdd - fun toUni(d: ModAddCommunity): it.vercruysse.lemmyapi.datatypes.ModAddCommunity - fun toUni(d: ModAddCommunityView): it.vercruysse.lemmyapi.datatypes.ModAddCommunityView - fun toUni(d: ModAddView): it.vercruysse.lemmyapi.datatypes.ModAddView - fun toUni(d: ModBan): it.vercruysse.lemmyapi.datatypes.ModBan + fun toUni(d: ModAdd): it.vercruysse.lemmyapi.datatypes.AdminAdd + fun toUni(d: ModAddCommunity): it.vercruysse.lemmyapi.datatypes.ModAddToCommunity + fun toUni(d: ModAddCommunityView): it.vercruysse.lemmyapi.datatypes.ModAddToCommunityView + fun toUni(d: ModAddView): it.vercruysse.lemmyapi.datatypes.AdminAddView + fun toUni(d: ModBan): it.vercruysse.lemmyapi.datatypes.AdminBan fun toUni(d: ModBanFromCommunity): it.vercruysse.lemmyapi.datatypes.ModBanFromCommunity fun toUni(d: ModBanFromCommunityView): it.vercruysse.lemmyapi.datatypes.ModBanFromCommunityView - fun toUni(d: ModBanView): it.vercruysse.lemmyapi.datatypes.ModBanView + fun toUni(d: ModBanView): it.vercruysse.lemmyapi.datatypes.AdminBanView fun toUni(d: ModFeaturePost): it.vercruysse.lemmyapi.datatypes.ModFeaturePost fun toUni(d: ModFeaturePostView): it.vercruysse.lemmyapi.datatypes.ModFeaturePostView fun toUni(d: ModHideCommunity): it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibility @@ -85,8 +85,8 @@ internal interface MapperGenerator { fun toUni(d: ModLockPostView): it.vercruysse.lemmyapi.datatypes.ModLockPostView fun toUni(d: ModRemoveComment): it.vercruysse.lemmyapi.datatypes.ModRemoveComment fun toUni(d: ModRemoveCommentView): it.vercruysse.lemmyapi.datatypes.ModRemoveCommentView - fun toUni(d: ModRemoveCommunity): it.vercruysse.lemmyapi.datatypes.ModRemoveCommunity - fun toUni(d: ModRemoveCommunityView): it.vercruysse.lemmyapi.datatypes.ModRemoveCommunityView + fun toUni(d: ModRemoveCommunity): it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunity + fun toUni(d: ModRemoveCommunityView): it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunityView fun toUni(d: ModRemovePost): it.vercruysse.lemmyapi.datatypes.ModRemovePost fun toUni(d: ModRemovePostView): it.vercruysse.lemmyapi.datatypes.ModRemovePostView fun toUni(d: ModTransferCommunity): it.vercruysse.lemmyapi.datatypes.ModTransferCommunity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt index e43ce5f6..12ae576e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt @@ -20,6 +20,10 @@ import it.vercruysse.lemmyapi.datatypes.AddAdmin as LemmyapiDatatypesAddAdmin import it.vercruysse.lemmyapi.datatypes.AddAdminResponse as LemmyapiDatatypesAddAdminResponse import it.vercruysse.lemmyapi.datatypes.AddModToCommunity as LemmyapiDatatypesAddModToCommunity import it.vercruysse.lemmyapi.datatypes.AddModToCommunityResponse as LemmyapiDatatypesAddModToCommunityResponse +import it.vercruysse.lemmyapi.datatypes.AdminAdd as LemmyapiDatatypesModAdd +import it.vercruysse.lemmyapi.datatypes.AdminAddView as LemmyapiDatatypesModAddView +import it.vercruysse.lemmyapi.datatypes.AdminBan as LemmyapiDatatypesModBan +import it.vercruysse.lemmyapi.datatypes.AdminBanView as LemmyapiDatatypesModBanView import it.vercruysse.lemmyapi.datatypes.AdminPurgeComment as LemmyapiDatatypesAdminPurgeComment import it.vercruysse.lemmyapi.datatypes.AdminPurgeCommentView as LemmyapiDatatypesAdminPurgeCommentView import it.vercruysse.lemmyapi.datatypes.AdminPurgeCommunity as LemmyapiDatatypesAdminPurgeCommunity @@ -28,6 +32,8 @@ import it.vercruysse.lemmyapi.datatypes.AdminPurgePerson as LemmyapiDatatypesAdm import it.vercruysse.lemmyapi.datatypes.AdminPurgePersonView as LemmyapiDatatypesAdminPurgePersonView import it.vercruysse.lemmyapi.datatypes.AdminPurgePost as LemmyapiDatatypesAdminPurgePost import it.vercruysse.lemmyapi.datatypes.AdminPurgePostView as LemmyapiDatatypesAdminPurgePostView +import it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunity as LemmyapiDatatypesModRemoveCommunity +import it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunityView as LemmyapiDatatypesModRemoveCommunityView import it.vercruysse.lemmyapi.datatypes.ApproveRegistrationApplication as LemmyapiDatatypesApproveRegistrationApplication import it.vercruysse.lemmyapi.datatypes.BanFromCommunity as LemmyapiDatatypesBanFromCommunity import it.vercruysse.lemmyapi.datatypes.BanFromCommunityResponse as LemmyapiDatatypesBanFromCommunityResponse @@ -137,14 +143,10 @@ import it.vercruysse.lemmyapi.datatypes.Login as LemmyapiDatatypesLogin import it.vercruysse.lemmyapi.datatypes.LoginResponse as LemmyapiDatatypesLoginResponse import it.vercruysse.lemmyapi.datatypes.LoginToken as LemmyapiDatatypesLoginToken import it.vercruysse.lemmyapi.datatypes.MarkPostAsRead as LemmyapiDatatypesMarkPostAsRead -import it.vercruysse.lemmyapi.datatypes.ModAdd as LemmyapiDatatypesModAdd -import it.vercruysse.lemmyapi.datatypes.ModAddCommunity as LemmyapiDatatypesModAddCommunity -import it.vercruysse.lemmyapi.datatypes.ModAddCommunityView as LemmyapiDatatypesModAddCommunityView -import it.vercruysse.lemmyapi.datatypes.ModAddView as LemmyapiDatatypesModAddView -import it.vercruysse.lemmyapi.datatypes.ModBan as LemmyapiDatatypesModBan +import it.vercruysse.lemmyapi.datatypes.ModAddToCommunity as LemmyapiDatatypesModAddCommunity +import it.vercruysse.lemmyapi.datatypes.ModAddToCommunityView as LemmyapiDatatypesModAddCommunityView import it.vercruysse.lemmyapi.datatypes.ModBanFromCommunity as LemmyapiDatatypesModBanFromCommunity import it.vercruysse.lemmyapi.datatypes.ModBanFromCommunityView as LemmyapiDatatypesModBanFromCommunityView -import it.vercruysse.lemmyapi.datatypes.ModBanView as LemmyapiDatatypesModBanView import it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibility as LemmyapiDatatypesModChangeCommunityVisibility import it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibilityView as LemmyapiDatatypesModChangeCommunityVisibilityView import it.vercruysse.lemmyapi.datatypes.ModFeaturePost as LemmyapiDatatypesModFeaturePost @@ -153,8 +155,6 @@ import it.vercruysse.lemmyapi.datatypes.ModLockPost as LemmyapiDatatypesModLockP import it.vercruysse.lemmyapi.datatypes.ModLockPostView as LemmyapiDatatypesModLockPostView import it.vercruysse.lemmyapi.datatypes.ModRemoveComment as LemmyapiDatatypesModRemoveComment import it.vercruysse.lemmyapi.datatypes.ModRemoveCommentView as LemmyapiDatatypesModRemoveCommentView -import it.vercruysse.lemmyapi.datatypes.ModRemoveCommunity as LemmyapiDatatypesModRemoveCommunity -import it.vercruysse.lemmyapi.datatypes.ModRemoveCommunityView as LemmyapiDatatypesModRemoveCommunityView import it.vercruysse.lemmyapi.datatypes.ModRemovePost as LemmyapiDatatypesModRemovePost import it.vercruysse.lemmyapi.datatypes.ModRemovePostView as LemmyapiDatatypesModRemovePostView import it.vercruysse.lemmyapi.datatypes.ModTransferCommunity as LemmyapiDatatypesModTransferCommunity @@ -760,7 +760,7 @@ internal class Transformer : MapperGenerator { // Add ModRemoveCommunity entries modlogList.addAll( d.removed_communities.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemoveCommunity(mod_remove_community = this.toUni(d = view)) + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminRemoveCommunity(admin_remove_community = this.toUni(d = view)) }, ) @@ -774,14 +774,14 @@ internal class Transformer : MapperGenerator { // Add ModBan entries modlogList.addAll( d.banned.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModBan(mod_ban = this.toUni(d = view)) + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminBan(admin_ban = this.toUni(d = view)) }, ) // Add ModAddCommunity entries modlogList.addAll( d.added_to_community.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModAddCommunity(mod_add_community = this.toUni(d = view)) + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModAddToCommunity(mod_add_to_community = this.toUni(d = view)) }, ) @@ -795,7 +795,7 @@ internal class Transformer : MapperGenerator { // Add ModAdd entries modlogList.addAll( d.added.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModAdd(mod_add = this.toUni(d = view)) + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminAdd(admin_add = this.toUni(d = view)) }, ) @@ -1233,7 +1233,7 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X11DatatypesModAddCommunityView): LemmyapiDatatypesModAddCommunityView = LemmyapiDatatypesModAddCommunityView( - mod_add_community = this.toUni(d = d.mod_add_community), + mod_add_to_community = this.toUni(d = d.mod_add_community), moderator = d.moderator?.let { this.toUni(d = it) }, community = this.toUni(d = d.community, counts = X11DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), other_person = this.toUni(d = d.modded_person), @@ -1241,7 +1241,7 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X11DatatypesModAddView): LemmyapiDatatypesModAddView = LemmyapiDatatypesModAddView( - mod_add = this.toUni(d = d.mod_add), + admin_add = this.toUni(d = d.mod_add), moderator = d.moderator?.let { this.toUni(d = it) }, other_person = this.toUni(d = d.modded_person), ) @@ -1278,7 +1278,7 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X11DatatypesModBanView): LemmyapiDatatypesModBanView = LemmyapiDatatypesModBanView( - mod_ban = this.toUni(d = d.mod_ban), + admin_ban = this.toUni(d = d.mod_ban), moderator = d.moderator?.let { this.toUni(d = it) }, other_person = this.toUni(d = d.banned_person), ) @@ -1371,7 +1371,7 @@ internal class Transformer : MapperGenerator { ) override fun toUni(d: X11DatatypesModRemoveCommunityView): LemmyapiDatatypesModRemoveCommunityView = LemmyapiDatatypesModRemoveCommunityView( - mod_remove_community = this.toUni(d = d.mod_remove_community), + admin_remove_community = this.toUni(d = d.mod_remove_community), moderator = d.moderator?.let { this.toUni(d = it) }, community = this.toUni(d = d.community, counts = X11DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), ) @@ -1842,7 +1842,7 @@ internal class Transformer : MapperGenerator { description = d.description, icon = d.icon, banner = d.banner, - enable_downvotes = when(d.post_downvotes) { + enable_downvotes = when (d.post_downvotes) { FederationMode.Local, FederationMode.All -> true FederationMode.Disable -> false null -> null @@ -2366,7 +2366,7 @@ internal class Transformer : MapperGenerator { collapse_bot_comments = d.collapse_bot_comments, show_scores = d.show_score, show_upvotes = d.show_upvotes, - show_downvotes = when(d.show_downvotes) { + show_downvotes = when (d.show_downvotes) { VoteShow.ShowForOthers, VoteShow.Show -> true VoteShow.Hide -> false null -> null diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt index ab9c47cf..7f28cd87 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt @@ -86,14 +86,14 @@ internal interface MapperGenerator { fun toUni(d: LocalUserView): it.vercruysse.lemmyapi.datatypes.LocalUserView fun toUni(d: LoginResponse): it.vercruysse.lemmyapi.datatypes.LoginResponse fun toUni(d: LoginToken): it.vercruysse.lemmyapi.datatypes.LoginToken - fun toUni(d: ModAdd): it.vercruysse.lemmyapi.datatypes.ModAdd - fun toUni(d: ModAddCommunity): it.vercruysse.lemmyapi.datatypes.ModAddCommunity - fun toUni(d: ModAddCommunityView): it.vercruysse.lemmyapi.datatypes.ModAddCommunityView - fun toUni(d: ModAddView): it.vercruysse.lemmyapi.datatypes.ModAddView - fun toUni(d: ModBan): it.vercruysse.lemmyapi.datatypes.ModBan + fun toUni(d: ModAdd): it.vercruysse.lemmyapi.datatypes.AdminAdd + fun toUni(d: ModAddCommunity): it.vercruysse.lemmyapi.datatypes.ModAddToCommunity + fun toUni(d: ModAddCommunityView): it.vercruysse.lemmyapi.datatypes.ModAddToCommunityView + fun toUni(d: ModAddView): it.vercruysse.lemmyapi.datatypes.AdminAddView + fun toUni(d: ModBan): it.vercruysse.lemmyapi.datatypes.AdminBan fun toUni(d: ModBanFromCommunity): it.vercruysse.lemmyapi.datatypes.ModBanFromCommunity fun toUni(d: ModBanFromCommunityView): it.vercruysse.lemmyapi.datatypes.ModBanFromCommunityView - fun toUni(d: ModBanView): it.vercruysse.lemmyapi.datatypes.ModBanView + fun toUni(d: ModBanView): it.vercruysse.lemmyapi.datatypes.AdminBanView fun toUni(d: ModFeaturePost): it.vercruysse.lemmyapi.datatypes.ModFeaturePost fun toUni(d: ModFeaturePostView): it.vercruysse.lemmyapi.datatypes.ModFeaturePostView fun toUni(d: ModHideCommunity): it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibility @@ -102,8 +102,8 @@ internal interface MapperGenerator { fun toUni(d: ModLockPostView): it.vercruysse.lemmyapi.datatypes.ModLockPostView fun toUni(d: ModRemoveComment): it.vercruysse.lemmyapi.datatypes.ModRemoveComment fun toUni(d: ModRemoveCommentView): it.vercruysse.lemmyapi.datatypes.ModRemoveCommentView - fun toUni(d: ModRemoveCommunity): it.vercruysse.lemmyapi.datatypes.ModRemoveCommunity - fun toUni(d: ModRemoveCommunityView): it.vercruysse.lemmyapi.datatypes.ModRemoveCommunityView + fun toUni(d: ModRemoveCommunity): it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunity + fun toUni(d: ModRemoveCommunityView): it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunityView fun toUni(d: ModRemovePost): it.vercruysse.lemmyapi.datatypes.ModRemovePost fun toUni(d: ModRemovePostView): it.vercruysse.lemmyapi.datatypes.ModRemovePostView fun toUni(d: ModTransferCommunity): it.vercruysse.lemmyapi.datatypes.ModTransferCommunity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt index 954a2168..d784b12c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt @@ -24,6 +24,10 @@ import it.vercruysse.lemmyapi.datatypes.AddAdmin as LemmyapiDatatypesAddAdmin import it.vercruysse.lemmyapi.datatypes.AddAdminResponse as LemmyapiDatatypesAddAdminResponse import it.vercruysse.lemmyapi.datatypes.AddModToCommunity as LemmyapiDatatypesAddModToCommunity import it.vercruysse.lemmyapi.datatypes.AddModToCommunityResponse as LemmyapiDatatypesAddModToCommunityResponse +import it.vercruysse.lemmyapi.datatypes.AdminAdd as LemmyapiDatatypesModAdd +import it.vercruysse.lemmyapi.datatypes.AdminAddView as LemmyapiDatatypesModAddView +import it.vercruysse.lemmyapi.datatypes.AdminBan as LemmyapiDatatypesModBan +import it.vercruysse.lemmyapi.datatypes.AdminBanView as LemmyapiDatatypesModBanView import it.vercruysse.lemmyapi.datatypes.AdminPurgeComment as LemmyapiDatatypesAdminPurgeComment import it.vercruysse.lemmyapi.datatypes.AdminPurgeCommentView as LemmyapiDatatypesAdminPurgeCommentView import it.vercruysse.lemmyapi.datatypes.AdminPurgeCommunity as LemmyapiDatatypesAdminPurgeCommunity @@ -32,6 +36,8 @@ import it.vercruysse.lemmyapi.datatypes.AdminPurgePerson as LemmyapiDatatypesAdm import it.vercruysse.lemmyapi.datatypes.AdminPurgePersonView as LemmyapiDatatypesAdminPurgePersonView import it.vercruysse.lemmyapi.datatypes.AdminPurgePost as LemmyapiDatatypesAdminPurgePost import it.vercruysse.lemmyapi.datatypes.AdminPurgePostView as LemmyapiDatatypesAdminPurgePostView +import it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunity as LemmyapiDatatypesModRemoveCommunity +import it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunityView as LemmyapiDatatypesModRemoveCommunityView import it.vercruysse.lemmyapi.datatypes.ApproveRegistrationApplication as LemmyapiDatatypesApproveRegistrationApplication import it.vercruysse.lemmyapi.datatypes.BanFromCommunity as LemmyapiDatatypesBanFromCommunity import it.vercruysse.lemmyapi.datatypes.BanFromCommunityResponse as LemmyapiDatatypesBanFromCommunityResponse @@ -132,14 +138,10 @@ import it.vercruysse.lemmyapi.datatypes.Login as LemmyapiDatatypesLogin import it.vercruysse.lemmyapi.datatypes.LoginResponse as LemmyapiDatatypesLoginResponse import it.vercruysse.lemmyapi.datatypes.LoginToken as LemmyapiDatatypesLoginToken import it.vercruysse.lemmyapi.datatypes.MarkPostAsRead as LemmyapiDatatypesMarkPostAsRead -import it.vercruysse.lemmyapi.datatypes.ModAdd as LemmyapiDatatypesModAdd -import it.vercruysse.lemmyapi.datatypes.ModAddCommunity as LemmyapiDatatypesModAddCommunity -import it.vercruysse.lemmyapi.datatypes.ModAddCommunityView as LemmyapiDatatypesModAddCommunityView -import it.vercruysse.lemmyapi.datatypes.ModAddView as LemmyapiDatatypesModAddView -import it.vercruysse.lemmyapi.datatypes.ModBan as LemmyapiDatatypesModBan +import it.vercruysse.lemmyapi.datatypes.ModAddToCommunity as LemmyapiDatatypesModAddCommunity +import it.vercruysse.lemmyapi.datatypes.ModAddToCommunityView as LemmyapiDatatypesModAddCommunityView import it.vercruysse.lemmyapi.datatypes.ModBanFromCommunity as LemmyapiDatatypesModBanFromCommunity import it.vercruysse.lemmyapi.datatypes.ModBanFromCommunityView as LemmyapiDatatypesModBanFromCommunityView -import it.vercruysse.lemmyapi.datatypes.ModBanView as LemmyapiDatatypesModBanView import it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibility as LemmyapiDatatypesModChangeCommunityVisibility import it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibilityView as LemmyapiDatatypesModChangeCommunityVisibilityView import it.vercruysse.lemmyapi.datatypes.ModFeaturePost as LemmyapiDatatypesModFeaturePost @@ -148,8 +150,6 @@ import it.vercruysse.lemmyapi.datatypes.ModLockPost as LemmyapiDatatypesModLockP import it.vercruysse.lemmyapi.datatypes.ModLockPostView as LemmyapiDatatypesModLockPostView import it.vercruysse.lemmyapi.datatypes.ModRemoveComment as LemmyapiDatatypesModRemoveComment import it.vercruysse.lemmyapi.datatypes.ModRemoveCommentView as LemmyapiDatatypesModRemoveCommentView -import it.vercruysse.lemmyapi.datatypes.ModRemoveCommunity as LemmyapiDatatypesModRemoveCommunity -import it.vercruysse.lemmyapi.datatypes.ModRemoveCommunityView as LemmyapiDatatypesModRemoveCommunityView import it.vercruysse.lemmyapi.datatypes.ModRemovePost as LemmyapiDatatypesModRemovePost import it.vercruysse.lemmyapi.datatypes.ModRemovePostView as LemmyapiDatatypesModRemovePostView import it.vercruysse.lemmyapi.datatypes.ModTransferCommunity as LemmyapiDatatypesModTransferCommunity @@ -850,7 +850,7 @@ internal class Transformer : MapperGenerator { // Add ModRemoveCommunity entries modlogList.addAll( d.removed_communities.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemoveCommunity(mod_remove_community = this.toUni(d = view)) + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminRemoveCommunity(admin_remove_community = this.toUni(d = view)) }, ) @@ -864,14 +864,14 @@ internal class Transformer : MapperGenerator { // Add ModBan entries modlogList.addAll( d.banned.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModBan(mod_ban = this.toUni(d = view)) + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminBan(admin_ban = this.toUni(d = view)) }, ) // Add ModAddCommunity entries modlogList.addAll( d.added_to_community.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModAddCommunity(mod_add_community = this.toUni(d = view)) + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModAddToCommunity(mod_add_to_community = this.toUni(d = view)) }, ) @@ -885,7 +885,7 @@ internal class Transformer : MapperGenerator { // Add ModAdd entries modlogList.addAll( d.added.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModAdd(mod_add = this.toUni(d = view)) + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminAdd(admin_add = this.toUni(d = view)) }, ) @@ -1214,7 +1214,7 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X3DatatypesModAddCommunityView): LemmyapiDatatypesModAddCommunityView = LemmyapiDatatypesModAddCommunityView( - mod_add_community = this.toUni(d = d.mod_add_community), + mod_add_to_community = this.toUni(d = d.mod_add_community), moderator = d.moderator?.let { this.toUni(d = it) }, community = this.toUni(d = d.community, counts = X3DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), other_person = this.toUni(d = d.modded_person), @@ -1222,7 +1222,7 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X3DatatypesModAddView): LemmyapiDatatypesModAddView = LemmyapiDatatypesModAddView( - mod_add = this.toUni(d = d.mod_add), + admin_add = this.toUni(d = d.mod_add), moderator = d.moderator?.let { this.toUni(d = it) }, other_person = this.toUni(d = d.modded_person), ) @@ -1259,7 +1259,7 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X3DatatypesModBanView): LemmyapiDatatypesModBanView = LemmyapiDatatypesModBanView( - mod_ban = this.toUni(d = d.mod_ban), + admin_ban = this.toUni(d = d.mod_ban), moderator = d.moderator?.let { this.toUni(d = it) }, other_person = this.toUni(d = d.banned_person), ) @@ -1352,7 +1352,7 @@ internal class Transformer : MapperGenerator { ) override fun toUni(d: X3DatatypesModRemoveCommunityView): LemmyapiDatatypesModRemoveCommunityView = LemmyapiDatatypesModRemoveCommunityView( - mod_remove_community = this.toUni(d = d.mod_remove_community), + admin_remove_community = this.toUni(d = d.mod_remove_community), moderator = d.moderator?.let { this.toUni(d = it) }, community = this.toUni(d = d.community, counts = X3DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), ) @@ -1772,7 +1772,7 @@ internal class Transformer : MapperGenerator { description = d.description, icon = d.icon, banner = d.banner, - enable_downvotes = when(d.post_downvotes) { + enable_downvotes = when (d.post_downvotes) { FederationMode.Local, FederationMode.All -> true FederationMode.Disable -> false null -> null diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt index cfab456e..99240d4b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt @@ -69,14 +69,14 @@ internal interface MapperGenerator { fun toUni(d: LocalUserView): it.vercruysse.lemmyapi.datatypes.LocalUserView fun toUni(d: LoginToken): it.vercruysse.lemmyapi.datatypes.LoginToken fun toUni(d: LoginResponse): it.vercruysse.lemmyapi.datatypes.LoginResponse - fun toUni(d: ModAdd): it.vercruysse.lemmyapi.datatypes.ModAdd - fun toUni(d: ModAddCommunity): it.vercruysse.lemmyapi.datatypes.ModAddCommunity - fun toUni(d: ModAddCommunityView): it.vercruysse.lemmyapi.datatypes.ModAddCommunityView - fun toUni(d: ModAddView): it.vercruysse.lemmyapi.datatypes.ModAddView - fun toUni(d: ModBan): it.vercruysse.lemmyapi.datatypes.ModBan + fun toUni(d: ModAdd): it.vercruysse.lemmyapi.datatypes.AdminAdd + fun toUni(d: ModAddCommunity): it.vercruysse.lemmyapi.datatypes.ModAddToCommunity + fun toUni(d: ModAddCommunityView): it.vercruysse.lemmyapi.datatypes.ModAddToCommunityView + fun toUni(d: ModAddView): it.vercruysse.lemmyapi.datatypes.AdminAddView + fun toUni(d: ModBan): it.vercruysse.lemmyapi.datatypes.AdminBan fun toUni(d: ModBanFromCommunity): it.vercruysse.lemmyapi.datatypes.ModBanFromCommunity fun toUni(d: ModBanFromCommunityView): it.vercruysse.lemmyapi.datatypes.ModBanFromCommunityView - fun toUni(d: ModBanView): it.vercruysse.lemmyapi.datatypes.ModBanView + fun toUni(d: ModBanView): it.vercruysse.lemmyapi.datatypes.AdminBanView fun toUni(d: ModFeaturePost): it.vercruysse.lemmyapi.datatypes.ModFeaturePost fun toUni(d: ModFeaturePostView): it.vercruysse.lemmyapi.datatypes.ModFeaturePostView fun toUni(d: ModHideCommunity): it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibility @@ -85,8 +85,8 @@ internal interface MapperGenerator { fun toUni(d: ModLockPostView): it.vercruysse.lemmyapi.datatypes.ModLockPostView fun toUni(d: ModRemoveComment): it.vercruysse.lemmyapi.datatypes.ModRemoveComment fun toUni(d: ModRemoveCommentView): it.vercruysse.lemmyapi.datatypes.ModRemoveCommentView - fun toUni(d: ModRemoveCommunity): it.vercruysse.lemmyapi.datatypes.ModRemoveCommunity - fun toUni(d: ModRemoveCommunityView): it.vercruysse.lemmyapi.datatypes.ModRemoveCommunityView + fun toUni(d: ModRemoveCommunity): it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunity + fun toUni(d: ModRemoveCommunityView): it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunityView fun toUni(d: ModRemovePost): it.vercruysse.lemmyapi.datatypes.ModRemovePost fun toUni(d: ModRemovePostView): it.vercruysse.lemmyapi.datatypes.ModRemovePostView fun toUni(d: ModTransferCommunity): it.vercruysse.lemmyapi.datatypes.ModTransferCommunity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt index ebc39cf7..e8815aa4 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt @@ -20,6 +20,10 @@ import it.vercruysse.lemmyapi.datatypes.AddAdmin as LemmyapiDatatypesAddAdmin import it.vercruysse.lemmyapi.datatypes.AddAdminResponse as LemmyapiDatatypesAddAdminResponse import it.vercruysse.lemmyapi.datatypes.AddModToCommunity as LemmyapiDatatypesAddModToCommunity import it.vercruysse.lemmyapi.datatypes.AddModToCommunityResponse as LemmyapiDatatypesAddModToCommunityResponse +import it.vercruysse.lemmyapi.datatypes.AdminAdd as LemmyapiDatatypesModAdd +import it.vercruysse.lemmyapi.datatypes.AdminAddView as LemmyapiDatatypesModAddView +import it.vercruysse.lemmyapi.datatypes.AdminBan as LemmyapiDatatypesModBan +import it.vercruysse.lemmyapi.datatypes.AdminBanView as LemmyapiDatatypesModBanView import it.vercruysse.lemmyapi.datatypes.AdminPurgeComment as LemmyapiDatatypesAdminPurgeComment import it.vercruysse.lemmyapi.datatypes.AdminPurgeCommentView as LemmyapiDatatypesAdminPurgeCommentView import it.vercruysse.lemmyapi.datatypes.AdminPurgeCommunity as LemmyapiDatatypesAdminPurgeCommunity @@ -28,6 +32,8 @@ import it.vercruysse.lemmyapi.datatypes.AdminPurgePerson as LemmyapiDatatypesAdm import it.vercruysse.lemmyapi.datatypes.AdminPurgePersonView as LemmyapiDatatypesAdminPurgePersonView import it.vercruysse.lemmyapi.datatypes.AdminPurgePost as LemmyapiDatatypesAdminPurgePost import it.vercruysse.lemmyapi.datatypes.AdminPurgePostView as LemmyapiDatatypesAdminPurgePostView +import it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunity as LemmyapiDatatypesModRemoveCommunity +import it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunityView as LemmyapiDatatypesModRemoveCommunityView import it.vercruysse.lemmyapi.datatypes.ApproveRegistrationApplication as LemmyapiDatatypesApproveRegistrationApplication import it.vercruysse.lemmyapi.datatypes.BanFromCommunity as LemmyapiDatatypesBanFromCommunity import it.vercruysse.lemmyapi.datatypes.BanFromCommunityResponse as LemmyapiDatatypesBanFromCommunityResponse @@ -135,14 +141,10 @@ import it.vercruysse.lemmyapi.datatypes.Login as LemmyapiDatatypesLogin import it.vercruysse.lemmyapi.datatypes.LoginResponse as LemmyapiDatatypesLoginResponse import it.vercruysse.lemmyapi.datatypes.LoginToken as LemmyapiDatatypesLoginToken import it.vercruysse.lemmyapi.datatypes.MarkPostAsRead as LemmyapiDatatypesMarkPostAsRead -import it.vercruysse.lemmyapi.datatypes.ModAdd as LemmyapiDatatypesModAdd -import it.vercruysse.lemmyapi.datatypes.ModAddCommunity as LemmyapiDatatypesModAddCommunity -import it.vercruysse.lemmyapi.datatypes.ModAddCommunityView as LemmyapiDatatypesModAddCommunityView -import it.vercruysse.lemmyapi.datatypes.ModAddView as LemmyapiDatatypesModAddView -import it.vercruysse.lemmyapi.datatypes.ModBan as LemmyapiDatatypesModBan +import it.vercruysse.lemmyapi.datatypes.ModAddToCommunity as LemmyapiDatatypesModAddCommunity +import it.vercruysse.lemmyapi.datatypes.ModAddToCommunityView as LemmyapiDatatypesModAddCommunityView import it.vercruysse.lemmyapi.datatypes.ModBanFromCommunity as LemmyapiDatatypesModBanFromCommunity import it.vercruysse.lemmyapi.datatypes.ModBanFromCommunityView as LemmyapiDatatypesModBanFromCommunityView -import it.vercruysse.lemmyapi.datatypes.ModBanView as LemmyapiDatatypesModBanView import it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibility as LemmyapiDatatypesModChangeCommunityVisibility import it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibilityView as LemmyapiDatatypesModChangeCommunityVisibilityView import it.vercruysse.lemmyapi.datatypes.ModFeaturePost as LemmyapiDatatypesModFeaturePost @@ -151,8 +153,6 @@ import it.vercruysse.lemmyapi.datatypes.ModLockPost as LemmyapiDatatypesModLockP import it.vercruysse.lemmyapi.datatypes.ModLockPostView as LemmyapiDatatypesModLockPostView import it.vercruysse.lemmyapi.datatypes.ModRemoveComment as LemmyapiDatatypesModRemoveComment import it.vercruysse.lemmyapi.datatypes.ModRemoveCommentView as LemmyapiDatatypesModRemoveCommentView -import it.vercruysse.lemmyapi.datatypes.ModRemoveCommunity as LemmyapiDatatypesModRemoveCommunity -import it.vercruysse.lemmyapi.datatypes.ModRemoveCommunityView as LemmyapiDatatypesModRemoveCommunityView import it.vercruysse.lemmyapi.datatypes.ModRemovePost as LemmyapiDatatypesModRemovePost import it.vercruysse.lemmyapi.datatypes.ModRemovePostView as LemmyapiDatatypesModRemovePostView import it.vercruysse.lemmyapi.datatypes.ModTransferCommunity as LemmyapiDatatypesModTransferCommunity @@ -759,7 +759,7 @@ internal class Transformer : MapperGenerator { // Add ModRemoveCommunity entries modlogList.addAll( d.removed_communities.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemoveCommunity(mod_remove_community = this.toUni(d = view)) + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminRemoveCommunity(admin_remove_community = this.toUni(d = view)) }, ) @@ -773,14 +773,14 @@ internal class Transformer : MapperGenerator { // Add ModBan entries modlogList.addAll( d.banned.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModBan(mod_ban = this.toUni(d = view)) + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminBan(admin_ban = this.toUni(d = view)) }, ) // Add ModAddCommunity entries modlogList.addAll( d.added_to_community.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModAddCommunity(mod_add_community = this.toUni(d = view)) + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModAddToCommunity(mod_add_to_community = this.toUni(d = view)) }, ) @@ -794,7 +794,7 @@ internal class Transformer : MapperGenerator { // Add ModAdd entries modlogList.addAll( d.added.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModAdd(mod_add = this.toUni(d = view)) + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminAdd(admin_add = this.toUni(d = view)) }, ) @@ -1224,7 +1224,7 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X4DatatypesModAddCommunityView): LemmyapiDatatypesModAddCommunityView = LemmyapiDatatypesModAddCommunityView( - mod_add_community = this.toUni(d = d.mod_add_community), + mod_add_to_community = this.toUni(d = d.mod_add_community), moderator = d.moderator?.let { this.toUni(d = it) }, community = this.toUni(d = d.community, counts = X4DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), other_person = this.toUni(d = d.modded_person), @@ -1232,7 +1232,7 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X4DatatypesModAddView): LemmyapiDatatypesModAddView = LemmyapiDatatypesModAddView( - mod_add = this.toUni(d = d.mod_add), + admin_add = this.toUni(d = d.mod_add), moderator = d.moderator?.let { this.toUni(d = it) }, other_person = this.toUni(d = d.modded_person), ) @@ -1269,7 +1269,7 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X4DatatypesModBanView): LemmyapiDatatypesModBanView = LemmyapiDatatypesModBanView( - mod_ban = this.toUni(d = d.mod_ban), + admin_ban = this.toUni(d = d.mod_ban), moderator = d.moderator?.let { this.toUni(d = it) }, other_person = this.toUni(d = d.banned_person), ) @@ -1363,7 +1363,7 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X4DatatypesModRemoveCommunityView): LemmyapiDatatypesModRemoveCommunityView = LemmyapiDatatypesModRemoveCommunityView( - mod_remove_community = this.toUni(d = d.mod_remove_community), + admin_remove_community = this.toUni(d = d.mod_remove_community), moderator = d.moderator?.let { this.toUni(d = it) }, community = this.toUni(d = d.community, counts = X4DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), ) @@ -1830,7 +1830,7 @@ internal class Transformer : MapperGenerator { description = d.description, icon = d.icon, banner = d.banner, - enable_downvotes = when(d.post_downvotes) { + enable_downvotes = when (d.post_downvotes) { FederationMode.Local, FederationMode.All -> true FederationMode.Disable -> false null -> null @@ -2343,7 +2343,7 @@ internal class Transformer : MapperGenerator { collapse_bot_comments = d.collapse_bot_comments, show_scores = d.show_score, show_upvotes = d.show_upvotes, - show_downvotes = when(d.show_downvotes) { + show_downvotes = when (d.show_downvotes) { VoteShow.ShowForOthers, VoteShow.Show -> true VoteShow.Hide -> false null -> null diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt index e80e2519..e9b62915 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt @@ -71,14 +71,14 @@ internal interface MapperGenerator { fun toUni(d: LocalUserView): it.vercruysse.lemmyapi.datatypes.LocalUserView fun toUni(d: LoginResponse): it.vercruysse.lemmyapi.datatypes.LoginResponse fun toUni(d: LoginToken): it.vercruysse.lemmyapi.datatypes.LoginToken - fun toUni(d: ModAdd): it.vercruysse.lemmyapi.datatypes.ModAdd - fun toUni(d: ModAddCommunity): it.vercruysse.lemmyapi.datatypes.ModAddCommunity - fun toUni(d: ModAddCommunityView): it.vercruysse.lemmyapi.datatypes.ModAddCommunityView - fun toUni(d: ModAddView): it.vercruysse.lemmyapi.datatypes.ModAddView - fun toUni(d: ModBan): it.vercruysse.lemmyapi.datatypes.ModBan + fun toUni(d: ModAdd): it.vercruysse.lemmyapi.datatypes.AdminAdd + fun toUni(d: ModAddCommunity): it.vercruysse.lemmyapi.datatypes.ModAddToCommunity + fun toUni(d: ModAddCommunityView): it.vercruysse.lemmyapi.datatypes.ModAddToCommunityView + fun toUni(d: ModAddView): it.vercruysse.lemmyapi.datatypes.AdminAddView + fun toUni(d: ModBan): it.vercruysse.lemmyapi.datatypes.AdminBan fun toUni(d: ModBanFromCommunity): it.vercruysse.lemmyapi.datatypes.ModBanFromCommunity fun toUni(d: ModBanFromCommunityView): it.vercruysse.lemmyapi.datatypes.ModBanFromCommunityView - fun toUni(d: ModBanView): it.vercruysse.lemmyapi.datatypes.ModBanView + fun toUni(d: ModBanView): it.vercruysse.lemmyapi.datatypes.AdminBanView fun toUni(d: ModFeaturePost): it.vercruysse.lemmyapi.datatypes.ModFeaturePost fun toUni(d: ModFeaturePostView): it.vercruysse.lemmyapi.datatypes.ModFeaturePostView fun toUni(d: ModHideCommunity): it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibility @@ -87,8 +87,8 @@ internal interface MapperGenerator { fun toUni(d: ModLockPostView): it.vercruysse.lemmyapi.datatypes.ModLockPostView fun toUni(d: ModRemoveComment): it.vercruysse.lemmyapi.datatypes.ModRemoveComment fun toUni(d: ModRemoveCommentView): it.vercruysse.lemmyapi.datatypes.ModRemoveCommentView - fun toUni(d: ModRemoveCommunity): it.vercruysse.lemmyapi.datatypes.ModRemoveCommunity - fun toUni(d: ModRemoveCommunityView): it.vercruysse.lemmyapi.datatypes.ModRemoveCommunityView + fun toUni(d: ModRemoveCommunity): it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunity + fun toUni(d: ModRemoveCommunityView): it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunityView fun toUni(d: ModRemovePost): it.vercruysse.lemmyapi.datatypes.ModRemovePost fun toUni(d: ModRemovePostView): it.vercruysse.lemmyapi.datatypes.ModRemovePostView fun toUni(d: ModTransferCommunity): it.vercruysse.lemmyapi.datatypes.ModTransferCommunity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt index e0856bb6..e928f476 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt @@ -20,6 +20,10 @@ import it.vercruysse.lemmyapi.datatypes.AddAdmin as LemmyapiDatatypesAddAdmin import it.vercruysse.lemmyapi.datatypes.AddAdminResponse as LemmyapiDatatypesAddAdminResponse import it.vercruysse.lemmyapi.datatypes.AddModToCommunity as LemmyapiDatatypesAddModToCommunity import it.vercruysse.lemmyapi.datatypes.AddModToCommunityResponse as LemmyapiDatatypesAddModToCommunityResponse +import it.vercruysse.lemmyapi.datatypes.AdminAdd as LemmyapiDatatypesModAdd +import it.vercruysse.lemmyapi.datatypes.AdminAddView as LemmyapiDatatypesModAddView +import it.vercruysse.lemmyapi.datatypes.AdminBan as LemmyapiDatatypesModBan +import it.vercruysse.lemmyapi.datatypes.AdminBanView as LemmyapiDatatypesModBanView import it.vercruysse.lemmyapi.datatypes.AdminPurgeComment as LemmyapiDatatypesAdminPurgeComment import it.vercruysse.lemmyapi.datatypes.AdminPurgeCommentView as LemmyapiDatatypesAdminPurgeCommentView import it.vercruysse.lemmyapi.datatypes.AdminPurgeCommunity as LemmyapiDatatypesAdminPurgeCommunity @@ -28,6 +32,8 @@ import it.vercruysse.lemmyapi.datatypes.AdminPurgePerson as LemmyapiDatatypesAdm import it.vercruysse.lemmyapi.datatypes.AdminPurgePersonView as LemmyapiDatatypesAdminPurgePersonView import it.vercruysse.lemmyapi.datatypes.AdminPurgePost as LemmyapiDatatypesAdminPurgePost import it.vercruysse.lemmyapi.datatypes.AdminPurgePostView as LemmyapiDatatypesAdminPurgePostView +import it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunity as LemmyapiDatatypesModRemoveCommunity +import it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunityView as LemmyapiDatatypesModRemoveCommunityView import it.vercruysse.lemmyapi.datatypes.ApproveRegistrationApplication as LemmyapiDatatypesApproveRegistrationApplication import it.vercruysse.lemmyapi.datatypes.BanFromCommunity as LemmyapiDatatypesBanFromCommunity import it.vercruysse.lemmyapi.datatypes.BanFromCommunityResponse as LemmyapiDatatypesBanFromCommunityResponse @@ -137,14 +143,10 @@ import it.vercruysse.lemmyapi.datatypes.Login as LemmyapiDatatypesLogin import it.vercruysse.lemmyapi.datatypes.LoginResponse as LemmyapiDatatypesLoginResponse import it.vercruysse.lemmyapi.datatypes.LoginToken as LemmyapiDatatypesLoginToken import it.vercruysse.lemmyapi.datatypes.MarkPostAsRead as LemmyapiDatatypesMarkPostAsRead -import it.vercruysse.lemmyapi.datatypes.ModAdd as LemmyapiDatatypesModAdd -import it.vercruysse.lemmyapi.datatypes.ModAddCommunity as LemmyapiDatatypesModAddCommunity -import it.vercruysse.lemmyapi.datatypes.ModAddCommunityView as LemmyapiDatatypesModAddCommunityView -import it.vercruysse.lemmyapi.datatypes.ModAddView as LemmyapiDatatypesModAddView -import it.vercruysse.lemmyapi.datatypes.ModBan as LemmyapiDatatypesModBan +import it.vercruysse.lemmyapi.datatypes.ModAddToCommunity as LemmyapiDatatypesModAddCommunity +import it.vercruysse.lemmyapi.datatypes.ModAddToCommunityView as LemmyapiDatatypesModAddCommunityView import it.vercruysse.lemmyapi.datatypes.ModBanFromCommunity as LemmyapiDatatypesModBanFromCommunity import it.vercruysse.lemmyapi.datatypes.ModBanFromCommunityView as LemmyapiDatatypesModBanFromCommunityView -import it.vercruysse.lemmyapi.datatypes.ModBanView as LemmyapiDatatypesModBanView import it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibility as LemmyapiDatatypesModChangeCommunityVisibility import it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibilityView as LemmyapiDatatypesModChangeCommunityVisibilityView import it.vercruysse.lemmyapi.datatypes.ModFeaturePost as LemmyapiDatatypesModFeaturePost @@ -153,8 +155,6 @@ import it.vercruysse.lemmyapi.datatypes.ModLockPost as LemmyapiDatatypesModLockP import it.vercruysse.lemmyapi.datatypes.ModLockPostView as LemmyapiDatatypesModLockPostView import it.vercruysse.lemmyapi.datatypes.ModRemoveComment as LemmyapiDatatypesModRemoveComment import it.vercruysse.lemmyapi.datatypes.ModRemoveCommentView as LemmyapiDatatypesModRemoveCommentView -import it.vercruysse.lemmyapi.datatypes.ModRemoveCommunity as LemmyapiDatatypesModRemoveCommunity -import it.vercruysse.lemmyapi.datatypes.ModRemoveCommunityView as LemmyapiDatatypesModRemoveCommunityView import it.vercruysse.lemmyapi.datatypes.ModRemovePost as LemmyapiDatatypesModRemovePost import it.vercruysse.lemmyapi.datatypes.ModRemovePostView as LemmyapiDatatypesModRemovePostView import it.vercruysse.lemmyapi.datatypes.ModTransferCommunity as LemmyapiDatatypesModTransferCommunity @@ -761,7 +761,7 @@ internal class Transformer : MapperGenerator { // Add ModRemoveCommunity entries modlogList.addAll( d.removed_communities.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemoveCommunity(mod_remove_community = this.toUni(d = view)) + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminRemoveCommunity(admin_remove_community = this.toUni(d = view)) }, ) @@ -775,14 +775,14 @@ internal class Transformer : MapperGenerator { // Add ModBan entries modlogList.addAll( d.banned.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModBan(mod_ban = this.toUni(d = view)) + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminBan(admin_ban = this.toUni(d = view)) }, ) // Add ModAddCommunity entries modlogList.addAll( d.added_to_community.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModAddCommunity(mod_add_community = this.toUni(d = view)) + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModAddToCommunity(mod_add_to_community = this.toUni(d = view)) }, ) @@ -796,7 +796,7 @@ internal class Transformer : MapperGenerator { // Add ModAdd entries modlogList.addAll( d.added.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModAdd(mod_add = this.toUni(d = view)) + it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminAdd(admin_add = this.toUni(d = view)) }, ) @@ -1231,7 +1231,7 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X6DatatypesModAddCommunityView): LemmyapiDatatypesModAddCommunityView = LemmyapiDatatypesModAddCommunityView( - mod_add_community = this.toUni(d = d.mod_add_community), + mod_add_to_community = this.toUni(d = d.mod_add_community), moderator = d.moderator?.let { this.toUni(d = it) }, community = this.toUni(d = d.community, counts = X6DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), other_person = this.toUni(d = d.modded_person), @@ -1239,7 +1239,7 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X6DatatypesModAddView): LemmyapiDatatypesModAddView = LemmyapiDatatypesModAddView( - mod_add = this.toUni(d = d.mod_add), + admin_add = this.toUni(d = d.mod_add), moderator = d.moderator?.let { this.toUni(d = it) }, other_person = this.toUni(d = d.modded_person), ) @@ -1276,7 +1276,7 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X6DatatypesModBanView): LemmyapiDatatypesModBanView = LemmyapiDatatypesModBanView( - mod_ban = this.toUni(d = d.mod_ban), + admin_ban = this.toUni(d = d.mod_ban), moderator = d.moderator?.let { this.toUni(d = it) }, other_person = this.toUni(d = d.banned_person), ) @@ -1369,7 +1369,7 @@ internal class Transformer : MapperGenerator { ) override fun toUni(d: X6DatatypesModRemoveCommunityView): LemmyapiDatatypesModRemoveCommunityView = LemmyapiDatatypesModRemoveCommunityView( - mod_remove_community = this.toUni(d = d.mod_remove_community), + admin_remove_community = this.toUni(d = d.mod_remove_community), moderator = d.moderator?.let { this.toUni(d = it) }, community = this.toUni(d = d.community, counts = X6DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), ) @@ -1836,7 +1836,7 @@ internal class Transformer : MapperGenerator { description = d.description, icon = d.icon, banner = d.banner, - enable_downvotes = when(d.post_downvotes) { + enable_downvotes = when (d.post_downvotes) { FederationMode.Local, FederationMode.All -> true FederationMode.Disable -> false null -> null @@ -2357,7 +2357,7 @@ internal class Transformer : MapperGenerator { collapse_bot_comments = d.collapse_bot_comments, show_scores = d.show_score, show_upvotes = d.show_upvotes, - show_downvotes = when(d.show_downvotes) { + show_downvotes = when (d.show_downvotes) { VoteShow.ShowForOthers, VoteShow.Show -> true VoteShow.Hide -> false null -> null diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/ModlogCombinedView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/ModlogCombinedView.kt index 751f875a..dd0b949a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/ModlogCombinedView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/ModlogCombinedView.kt @@ -1,20 +1,21 @@ package it.vercruysse.lemmyapi.v1.x0.x0.combinedtypes +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.AdminAddView import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.AdminAllowInstanceView +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.AdminBanView import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.AdminBlockInstanceView import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.AdminPurgeCommentView import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.AdminPurgeCommunityView import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.AdminPurgePersonView import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.AdminPurgePostView -import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ModAddCommunityView -import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ModAddView +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.AdminRemoveCommunityView +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ModAddToCommunityView import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ModBanFromCommunityView -import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ModBanView import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ModChangeCommunityVisibilityView import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ModFeaturePostView +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ModLockCommentView import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ModLockPostView import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ModRemoveCommentView -import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ModRemoveCommunityView import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ModRemovePostView import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ModTransferCommunityView import kotlinx.serialization.ExperimentalSerializationApi @@ -63,21 +64,21 @@ internal sealed class ModlogCombinedView { ) : ModlogCombinedView() @Serializable - @SerialName("ModAdd") - internal data class ModAdd( - val mod_add: ModAddView, + @SerialName("AdminAdd") + internal data class AdminAdd( + val admin_add: AdminAddView, ) : ModlogCombinedView() @Serializable - @SerialName("ModAddCommunity") - internal data class ModAddCommunity( - val mod_add_community: ModAddCommunityView, + @SerialName("ModAddToCommunity") + internal data class ModAddToCommunity( + val mod_add_to_community: ModAddToCommunityView, ) : ModlogCombinedView() @Serializable - @SerialName("ModBan") - internal data class ModBan( - val mod_ban: ModBanView, + @SerialName("AdminBan") + internal data class AdminBan( + val admin_ban: AdminBanView, ) : ModlogCombinedView() @Serializable @@ -111,9 +112,9 @@ internal sealed class ModlogCombinedView { ) : ModlogCombinedView() @Serializable - @SerialName("ModRemoveCommunity") - internal data class ModRemoveCommunity( - val mod_remove_community: ModRemoveCommunityView, + @SerialName("AdminRemoveCommunity") + internal data class AdminRemoveCommunity( + val admin_remove_community: AdminRemoveCommunityView, ) : ModlogCombinedView() @Serializable @@ -127,4 +128,10 @@ internal sealed class ModlogCombinedView { internal data class ModTransferCommunity( val mod_transfer_community: ModTransferCommunityView, ) : ModlogCombinedView() + + @Serializable + @SerialName("ModLockComment") + internal data class ModLockComment( + val mod_lock_comment: ModLockCommentView, + ) : ModlogCombinedView() } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAdd.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAdd.kt similarity index 81% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAdd.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAdd.kt index dd71ba32..5159cbc8 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAdd.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAdd.kt @@ -3,8 +3,8 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes import kotlinx.serialization.Serializable @Serializable -internal data class ModAdd( - val id: ModAddId, +internal data class AdminAdd( + val id: AdminAddId, val mod_person_id: PersonId, val other_person_id: PersonId, val removed: Boolean, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAddId.kt similarity index 57% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddId.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAddId.kt index 1f40181f..c38d94c5 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAddId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -internal typealias ModAddId = Long +internal typealias AdminAddId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAddView.kt similarity index 73% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddView.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAddView.kt index 5fe282a8..d829827a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAddView.kt @@ -3,8 +3,8 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes import kotlinx.serialization.Serializable @Serializable -internal data class ModAddView( - val mod_add: ModAdd, +internal data class AdminAddView( + val admin_add: AdminAdd, val moderator: Person? = null, val other_person: Person, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBan.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBan.kt similarity index 78% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBan.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBan.kt index 47ad1ab9..d67f7fa6 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBan.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBan.kt @@ -3,11 +3,11 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes import kotlinx.serialization.Serializable @Serializable -internal data class ModBan( - val id: ModBanId, +internal data class AdminBan( + val id: AdminBanId, val mod_person_id: PersonId, val other_person_id: PersonId, - val reason: String? = null, + val reason: String, val banned: Boolean, val expires_at: String? = null, val published_at: String, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBanId.kt similarity index 57% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanId.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBanId.kt index b30d70d9..10de95df 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBanId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -internal typealias ModBanId = Long +internal typealias AdminBanId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBanView.kt similarity index 73% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanView.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBanView.kt index c9e65e97..4f692075 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBanView.kt @@ -3,8 +3,8 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes import kotlinx.serialization.Serializable @Serializable -internal data class ModBanView( - val mod_ban: ModBan, +internal data class AdminBanView( + val admin_ban: AdminBan, val moderator: Person? = null, val other_person: Person, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminRemoveCommunity.kt similarity index 68% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveCommunity.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminRemoveCommunity.kt index 62d1d4f6..8289e5cd 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminRemoveCommunity.kt @@ -3,11 +3,11 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes import kotlinx.serialization.Serializable @Serializable -internal data class ModRemoveCommunity( - val id: ModRemoveCommunityId, +internal data class AdminRemoveCommunity( + val id: AdminRemoveCommunityId, val mod_person_id: PersonId, val community_id: CommunityId, - val reason: String? = null, + val reason: String, val removed: Boolean, val published_at: String, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminRemoveCommunityId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminRemoveCommunityId.kt new file mode 100644 index 00000000..b3a77c36 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminRemoveCommunityId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +internal typealias AdminRemoveCommunityId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveCommunityView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminRemoveCommunityView.kt similarity index 63% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveCommunityView.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminRemoveCommunityView.kt index 9d56fa81..916296c7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveCommunityView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminRemoveCommunityView.kt @@ -3,8 +3,8 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes import kotlinx.serialization.Serializable @Serializable -internal data class ModRemoveCommunityView( - val mod_remove_community: ModRemoveCommunity, +internal data class AdminRemoveCommunityView( + val admin_remove_community: AdminRemoveCommunity, val moderator: Person? = null, val community: Community, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetModlog.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetModlog.kt index e5e164ba..5e91abc5 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetModlog.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetModlog.kt @@ -8,7 +8,7 @@ import kotlinx.serialization.Serializable internal data class GetModlog( val mod_person_id: PersonId? = null, val community_id: CommunityId? = null, - val type_: ModlogActionType? /* "All" | "ModRemovePost" | "ModLockPost" | "ModFeaturePost" | "ModRemoveComment" | "ModRemoveCommunity" | "ModBanFromCommunity" | "ModAddCommunity" | "ModTransferCommunity" | "ModAdd" | "ModBan" | "ModChangeCommunityVisibility" | "AdminPurgePerson" | "AdminPurgeCommunity" | "AdminPurgePost" | "AdminPurgeComment" | "AdminBlockInstance" | "AdminAllowInstance" */ = null, + val type_: ModlogActionType? /* "All" | "ModRemovePost" | "ModLockPost" | "ModFeaturePost" | "ModRemoveComment" | "ModLockComment" | "AdminRemoveCommunity" | "ModBanFromCommunity" | "ModAddToCommunity" | "ModTransferCommunity" | "AdminAdd" | "AdminBan" | "ModChangeCommunityVisibility" | "AdminPurgePerson" | "AdminPurgeCommunity" | "AdminPurgePost" | "AdminPurgeComment" | "AdminBlockInstance" | "AdminAllowInstance" */ = null, val listing_type: ListingType? /* "All" | "Local" | "Subscribed" | "ModeratorView" | "Suggested" */ = null, val other_person_id: PersonId? = null, val post_id: PostId? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LockComment.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LockComment.kt new file mode 100644 index 00000000..a7d5b093 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LockComment.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class LockComment( + val comment_id: CommentId, + val locked: Boolean, + val reason: String, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddToCommunity.kt similarity index 78% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddCommunity.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddToCommunity.kt index 9e11b693..e44815aa 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddToCommunity.kt @@ -3,8 +3,8 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes import kotlinx.serialization.Serializable @Serializable -internal data class ModAddCommunity( - val id: ModAddCommunityId, +internal data class ModAddToCommunity( + val id: ModAddToCommunityId, val mod_person_id: PersonId, val other_person_id: PersonId, val community_id: CommunityId, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveCommunityId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddToCommunityId.kt similarity index 52% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveCommunityId.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddToCommunityId.kt index bc282875..543f9af0 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveCommunityId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddToCommunityId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -internal typealias ModRemoveCommunityId = Long +internal typealias ModAddToCommunityId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddCommunityView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddToCommunityView.kt similarity index 69% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddCommunityView.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddToCommunityView.kt index 92de30d1..782c4da0 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddCommunityView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddToCommunityView.kt @@ -3,8 +3,8 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes import kotlinx.serialization.Serializable @Serializable -internal data class ModAddCommunityView( - val mod_add_community: ModAddCommunity, +internal data class ModAddToCommunityView( + val mod_add_to_community: ModAddToCommunity, val moderator: Person? = null, val community: Community, val other_person: Person, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockComment.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockComment.kt new file mode 100644 index 00000000..8e114995 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockComment.kt @@ -0,0 +1,13 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ModLockComment( + val id: ModLockCommentId, + val mod_person_id: PersonId, + val comment_id: CommentId, + val locked: Boolean, + val reason: String, + val published_at: String, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddCommunityId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockCommentId.kt similarity index 53% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddCommunityId.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockCommentId.kt index 66659d68..c8e118dc 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddCommunityId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockCommentId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -internal typealias ModAddCommunityId = Long +internal typealias ModLockCommentId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockCommentView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockCommentView.kt new file mode 100644 index 00000000..841c290a --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockCommentView.kt @@ -0,0 +1,13 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ModLockCommentView( + val mod_lock_comment: ModLockComment, + val moderator: Person? = null, + val other_person: Person, + val comment: Comment, + val post: Post, + val community: Community, +) From a8ee330308c6d871a86389601b20c84b3760d731 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Wed, 8 Oct 2025 00:56:20 +0200 Subject: [PATCH 030/110] Fix todos --- .../vercruysse/lemmyapi/datatypes/GetComments.kt | 14 +++++++++++--- .../it/vercruysse/lemmyapi/datatypes/LocalUser.kt | 4 +--- .../it/vercruysse/lemmyapi/datatypes/Register.kt | 3 +-- .../vercruysse/lemmyapi/v0/x18/x5/Transformer.kt | 5 ++--- .../vercruysse/lemmyapi/v0/x19/x0/Transformer.kt | 5 ++--- .../vercruysse/lemmyapi/v0/x19/x11/Transformer.kt | 3 +-- .../vercruysse/lemmyapi/v0/x19/x3/Transformer.kt | 5 ++--- .../vercruysse/lemmyapi/v0/x19/x4/Transformer.kt | 3 +-- .../vercruysse/lemmyapi/v0/x19/x6/Transformer.kt | 3 +-- 9 files changed, 22 insertions(+), 23 deletions(-) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetComments.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetComments.kt index 8deef48c..5d149f3f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetComments.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetComments.kt @@ -7,21 +7,29 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize -// TODO: many changes - @CommonParcelize @Serializable data class GetComments( - val type_: ListingType? /* "All" | "Local" | "Subscribed" | "ModeratorView" */ = null, + val type_: ListingType? /* "All" | "Local" | "Subscribed" | "ModeratorView" | "Suggested" */ = null, val sort: CommentSortType? /* "Hot" | "Top" | "New" | "Old" | "Controversial" */ = null, + /** Added in 1.0.0 */ + val time_range_seconds: Long? = null, val max_depth: Long? = null, + /** Added in 1.0.0 */ + val page_cursor: PaginationCursor? = null, + /** Added in 1.0.0 */ + val page_back: Boolean? = null, + /** Removed in 1.0.0 */ val page: Long? = null, val limit: Long? = null, val community_id: CommunityId? = null, val community_name: String? = null, val post_id: PostId? = null, val parent_id: CommentId? = null, + /** Removed in 1.0.0 */ val saved_only: Boolean? = null, + /** Removed in 1.0.0 */ val liked_only: Boolean? = null, + /** Removed in 1.0.0 */ val disliked_only: Boolean? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUser.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUser.kt index b8fbc716..e501dca8 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUser.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUser.kt @@ -20,7 +20,7 @@ data class LocalUser( val email: String? = null, val show_nsfw: Boolean, val theme: String, - val default_sort_type: SortType /* "Active" | "Hot" | "New" | "Old" | "TopDay" | "TopWeek" | "TopMonth" | "TopYear" | "TopAll" | "MostComments" | "NewComments" | "TopHour" | "TopSixHour" | "TopTwelveHour" | "TopThreeMonths" | "TopSixMonths" | "TopNineMonths" | "Controversial" | "Scaled" */, + val default_post_sort_type: SortType /* "Active" | "Hot" | "New" | "Old" | "TopDay" | "TopWeek" | "TopMonth" | "TopYear" | "TopAll" | "MostComments" | "NewComments" | "TopHour" | "TopSixHour" | "TopTwelveHour" | "TopThreeMonths" | "TopSixMonths" | "TopNineMonths" | "Controversial" | "Scaled" */, val default_listing_type: ListingType /* "All" | "Local" | "Subscribed" | "ModeratorView" */, val interface_language: String, val show_avatars: Boolean, @@ -31,8 +31,6 @@ data class LocalUser( val accepted_application: Boolean, val open_links_in_new_tab: Boolean, val blur_nsfw: Boolean, - /** Removed in 1.0.0 */ - val auto_expand: Boolean, val infinite_scroll_enabled: Boolean, val admin: Boolean, val post_listing_mode: PostListingMode /* "List" | "Card" | "SmallCard" */, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Register.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Register.kt index 8c883642..31c9ad10 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Register.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Register.kt @@ -11,8 +11,7 @@ data class Register( val username: String, val password: SensitiveString, val password_verify: SensitiveString, -// TODO val show_nsfw: Boolean? = null, - val show_nsfw: Boolean, + val show_nsfw: Boolean? = null, val email: SensitiveString? = null, val captcha_uuid: String? = null, val captcha_answer: String? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt index 01b6096b..9969826c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt @@ -397,7 +397,7 @@ internal class Transformer(var auth: String) : MapperGenerator { email = d.email, show_nsfw = d.show_nsfw, theme = d.theme, - default_sort_type = d.default_sort_type, + default_post_sort_type = d.default_sort_type, default_listing_type = d.default_listing_type, interface_language = d.interface_language, show_avatars = d.show_avatars, @@ -408,7 +408,6 @@ internal class Transformer(var auth: String) : MapperGenerator { accepted_application = d.accepted_application, open_links_in_new_tab = d.open_links_in_new_tab, blur_nsfw = false, - auto_expand = false, infinite_scroll_enabled = true, admin = false, post_listing_mode = PostListingMode.Card, @@ -2113,7 +2112,7 @@ internal class Transformer(var auth: String) : MapperGenerator { username = d.username, password = d.password, password_verify = d.password_verify, - show_nsfw = d.show_nsfw, + show_nsfw = d.show_nsfw ?: false, email = d.email, captcha_uuid = d.captcha_uuid, captcha_answer = d.captcha_answer, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt index 500462a6..ccc16555 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt @@ -1106,7 +1106,7 @@ internal class Transformer : MapperGenerator { email = d.email, show_nsfw = d.show_nsfw, theme = d.theme, - default_sort_type = d.default_sort_type, + default_post_sort_type = d.default_sort_type, default_listing_type = d.default_listing_type, interface_language = d.interface_language, show_avatars = d.show_avatars, @@ -1117,7 +1117,6 @@ internal class Transformer : MapperGenerator { accepted_application = d.accepted_application, open_links_in_new_tab = d.open_links_in_new_tab, blur_nsfw = d.blur_nsfw, - auto_expand = d.auto_expand, infinite_scroll_enabled = d.infinite_scroll_enabled, admin = d.admin, post_listing_mode = d.post_listing_mode, @@ -2127,7 +2126,7 @@ internal class Transformer : MapperGenerator { username = d.username, password = d.password, password_verify = d.password_verify, - show_nsfw = d.show_nsfw, + show_nsfw = d.show_nsfw ?: false, email = d.email, captcha_uuid = d.captcha_uuid, captcha_answer = d.captcha_answer, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt index 12ae576e..183f1474 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt @@ -1156,7 +1156,7 @@ internal class Transformer : MapperGenerator { email = d.email, show_nsfw = d.show_nsfw, theme = d.theme, - default_sort_type = d.default_sort_type, + default_post_sort_type = d.default_sort_type, default_listing_type = d.default_listing_type, interface_language = d.interface_language, show_avatars = d.show_avatars, @@ -1167,7 +1167,6 @@ internal class Transformer : MapperGenerator { accepted_application = d.accepted_application, open_links_in_new_tab = d.open_links_in_new_tab, blur_nsfw = d.blur_nsfw, - auto_expand = d.auto_expand, infinite_scroll_enabled = d.infinite_scroll_enabled, admin = d.admin, post_listing_mode = d.post_listing_mode, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt index d784b12c..ca45cd6f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt @@ -1138,7 +1138,7 @@ internal class Transformer : MapperGenerator { email = d.email, show_nsfw = d.show_nsfw, theme = d.theme, - default_sort_type = d.default_sort_type, + default_post_sort_type = d.default_sort_type, default_listing_type = d.default_listing_type, interface_language = d.interface_language, show_avatars = d.show_avatars, @@ -1149,7 +1149,6 @@ internal class Transformer : MapperGenerator { accepted_application = d.accepted_application, open_links_in_new_tab = d.open_links_in_new_tab, blur_nsfw = d.blur_nsfw, - auto_expand = d.auto_expand, infinite_scroll_enabled = d.infinite_scroll_enabled, admin = d.admin, post_listing_mode = d.post_listing_mode, @@ -2172,7 +2171,7 @@ internal class Transformer : MapperGenerator { username = d.username, password = d.password, password_verify = d.password_verify, - show_nsfw = d.show_nsfw, + show_nsfw = d.show_nsfw ?: false, email = d.email, captcha_uuid = d.captcha_uuid, captcha_answer = d.captcha_answer, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt index e8815aa4..3fa3819a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt @@ -1147,7 +1147,7 @@ internal class Transformer : MapperGenerator { email = d.email, show_nsfw = d.show_nsfw, theme = d.theme, - default_sort_type = d.default_sort_type, + default_post_sort_type = d.default_sort_type, default_listing_type = d.default_listing_type, interface_language = d.interface_language, show_avatars = d.show_avatars, @@ -1158,7 +1158,6 @@ internal class Transformer : MapperGenerator { accepted_application = d.accepted_application, open_links_in_new_tab = d.open_links_in_new_tab, blur_nsfw = d.blur_nsfw, - auto_expand = d.auto_expand, infinite_scroll_enabled = d.infinite_scroll_enabled, admin = d.admin, post_listing_mode = d.post_listing_mode, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt index e928f476..1028a157 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt @@ -1155,7 +1155,7 @@ internal class Transformer : MapperGenerator { email = d.email, show_nsfw = d.show_nsfw, theme = d.theme, - default_sort_type = d.default_sort_type, + default_post_sort_type = d.default_sort_type, default_listing_type = d.default_listing_type, interface_language = d.interface_language, show_avatars = d.show_avatars, @@ -1166,7 +1166,6 @@ internal class Transformer : MapperGenerator { accepted_application = d.accepted_application, open_links_in_new_tab = d.open_links_in_new_tab, blur_nsfw = d.blur_nsfw, - auto_expand = d.auto_expand, infinite_scroll_enabled = d.infinite_scroll_enabled, admin = d.admin, post_listing_mode = d.post_listing_mode, From b4dbba70600cb77f40cf5aad1a7f9eab18a33063 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Wed, 8 Oct 2025 02:13:11 +0200 Subject: [PATCH 031/110] Fix more todos --- .../it/vercruysse/lemmyapi/datatypes/CommentReportView.kt | 3 +-- .../kotlin/it/vercruysse/lemmyapi/datatypes/LocalUser.kt | 2 -- .../lemmyapi/v1/x0/x0/datatypes/CommentReportView.kt | 1 - .../lemmyapi/v1/x0/x0/datatypes/ListReportsResponse.kt | 2 -- 4 files changed, 1 insertion(+), 7 deletions(-) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReportView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReportView.kt index 1370ff04..63aae579 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReportView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReportView.kt @@ -23,8 +23,7 @@ data class CommentReportView( val creator_is_moderator: Boolean, val creator_banned: Boolean, val creator_banned_from_community: Boolean, - - ) : DatatypeRoot, Identity { +) : DatatypeRoot, Identity { override val id: Long get() = comment_report.id } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUser.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUser.kt index e501dca8..84baff77 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUser.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUser.kt @@ -10,8 +10,6 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.dto.VoteShow -// TODO: changes - @CommonParcelize @Serializable data class LocalUser( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReportView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReportView.kt index 2695355e..b5359dcc 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReportView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReportView.kt @@ -2,7 +2,6 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes import kotlinx.serialization.Serializable -// TODO changed @Serializable internal data class CommentReportView( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListReportsResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListReportsResponse.kt index 109fd5ca..4de85597 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListReportsResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListReportsResponse.kt @@ -3,8 +3,6 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes import it.vercruysse.lemmyapi.v1.x0.x0.combinedtypes.ReportCombinedView import kotlinx.serialization.Serializable -// TODO: changed in new - @Serializable internal data class ListReportsResponse( val reports: List, From 84eeaf93f27c60bcc8d6f8fafe617242aa19df13 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Thu, 9 Oct 2025 21:16:18 +0200 Subject: [PATCH 032/110] Fix listCustomEmojis --- .../lemmyapi/LemmyApiBaseController.kt | 7 +++++++ .../lemmyapi/datatypes/GetSiteResponse.kt | 3 --- .../datatypes/ListCustomEmojisResponse.kt | 2 +- .../lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt | 19 +++++++++++++++++++ .../lemmyapi/v0/x18/x5/Transformer.kt | 1 - .../lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt | 12 ++++++++++++ .../lemmyapi/v0/x19/x0/Transformer.kt | 1 - .../lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt | 12 ++++++++++++ .../lemmyapi/v0/x19/x11/Transformer.kt | 1 - .../lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt | 12 ++++++++++++ .../lemmyapi/v0/x19/x3/Transformer.kt | 1 - .../lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt | 12 ++++++++++++ .../lemmyapi/v0/x19/x4/Transformer.kt | 1 - .../lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt | 12 ++++++++++++ .../lemmyapi/v0/x19/x6/Transformer.kt | 1 - 15 files changed, 87 insertions(+), 10 deletions(-) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt index 52895910..3db9647c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt @@ -574,6 +574,13 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version */ abstract suspend fun deleteCustomEmoji(form: DeleteCustomEmoji): Result + /** + * List custom emojis + * + * @GET("custom_emoji/list") + */ + abstract suspend fun listCustomEmojis(form: ListCustomEmojis): Result + /** * Block an instance. * diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetSiteResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetSiteResponse.kt index 2465ab77..7d3df4d1 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetSiteResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetSiteResponse.kt @@ -17,9 +17,6 @@ data class GetSiteResponse( /** Removed in 1.0.0 */ // TODO remove ? val my_user: MyUserInfo? = null, - /** Removed in 1.0.0 */ - // TODO remove - val custom_emojis: List, val tagline: Tagline? = null, /** Added in 1.0.0 */ val oauth_providers: List, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCustomEmojisResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCustomEmojisResponse.kt index dd53dded..415fef14 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCustomEmojisResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCustomEmojisResponse.kt @@ -6,6 +6,6 @@ import kotlinx.serialization.Serializable @CommonParcelize @Serializable -internal data class ListCustomEmojisResponse( +data class ListCustomEmojisResponse( val custom_emojis: List, ): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt index 4dac6e76..451febc9 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt @@ -3,6 +3,8 @@ package it.vercruysse.lemmyapi.v0.x18.x5 import io.github.z4kn4fein.semver.Version import io.ktor.client.HttpClient import it.vercruysse.lemmyapi.LemmyApiBaseController +import it.vercruysse.lemmyapi.datatypes.ListCustomEmojis +import it.vercruysse.lemmyapi.datatypes.ListCustomEmojisResponse import it.vercruysse.lemmyapi.datatypes.ListNotifications import it.vercruysse.lemmyapi.datatypes.ListNotificationsResponse import it.vercruysse.lemmyapi.datatypes.MarkNotificationAsRead @@ -353,6 +355,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba it.vercruysse.lemmyapi.datatypes.ListReportsResponse(items) } } + it.vercruysse.lemmyapi.dto.ReportType.Comments -> { apiV18.listCommentReports(transformer.fromUniC(form)).map { resp -> val items = resp.comment_reports.map { r -> @@ -363,6 +366,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba it.vercruysse.lemmyapi.datatypes.ListReportsResponse(items) } } + it.vercruysse.lemmyapi.dto.ReportType.PrivateMessages -> { apiV18.listPrivateMessageReports(transformer.fromUniPm(form)).map { resp -> val items = resp.private_message_reports.map { r -> @@ -373,6 +377,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba it.vercruysse.lemmyapi.datatypes.ListReportsResponse(items) } } + it.vercruysse.lemmyapi.dto.ReportType.All -> { runCatching { val postsResp = apiV18.listPostReports(transformer.fromUniP(form)).getOrThrow() @@ -636,12 +641,16 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba }, ) } + NotificationDataType.Reply -> apiV18.getReplies(transformer.fromUniR(form)).map(transformer::toUni) + NotificationDataType.Mention -> apiV18.getPersonMentions(transformer.fromUniM(form)).map(transformer::toUni) + NotificationDataType.PrivateMessage -> apiV18.getPrivateMessages(transformer.fromUniP(form)).map(transformer::toUni) + NotificationDataType.Subscribed -> Result.success(ListNotificationsResponse(emptyList())) } @@ -874,6 +883,16 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba form: it.vercruysse.lemmyapi.datatypes.DeleteCustomEmoji, ): Result = apiV18.deleteCustomEmoji(transformer.fromUni(form)) + /** + * List custom emojis + * + * @GET("custom_emoji/list") + */ + override suspend fun listCustomEmojis(form: ListCustomEmojis): Result = + apiV18.getSite(it.vercruysse.lemmyapi.v0.x18.x5.datatypes.GetSite(auth)).map { + ListCustomEmojisResponse(it.custom_emojis.map(transformer::toUni)) + } + /** * Block an instance. * diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt index 9969826c..13ef1b1e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt @@ -544,7 +544,6 @@ internal class Transformer(var auth: String) : MapperGenerator { my_user = d.my_user?.let { this.toUni(d = it) }, all_languages = d.all_languages.map { this.toUni(d = it) }, discussion_languages = d.discussion_languages, - custom_emojis = d.custom_emojis.map { this.toUni(d = it) }, blocked_urls = emptyList(), tagline = if (d.taglines.isEmpty()) null else this.toUni(d = d.taglines.random()), oauth_providers = emptyList(), diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt index db608f23..20c277ce 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt @@ -3,6 +3,8 @@ package it.vercruysse.lemmyapi.v0.x19.x0 import io.github.z4kn4fein.semver.Version import io.ktor.client.HttpClient import it.vercruysse.lemmyapi.LemmyApiBaseController +import it.vercruysse.lemmyapi.datatypes.ListCustomEmojis +import it.vercruysse.lemmyapi.datatypes.ListCustomEmojisResponse import it.vercruysse.lemmyapi.datatypes.ListNotifications import it.vercruysse.lemmyapi.datatypes.ListNotificationsResponse import it.vercruysse.lemmyapi.datatypes.MarkNotificationAsRead @@ -857,6 +859,16 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun deleteCustomEmoji(form: it.vercruysse.lemmyapi.datatypes.DeleteCustomEmoji): Result = api.deleteCustomEmoji(transformer.fromUni(form)) + /** + * List custom emojis + * + * @GET("custom_emoji/list") + */ + override suspend fun listCustomEmojis(form: ListCustomEmojis): Result = + api.getSite().map { + ListCustomEmojisResponse(it.custom_emojis.map(transformer::toUni)) + } + /** * Block an instance. * diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt index ccc16555..dab0df1d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt @@ -477,7 +477,6 @@ internal class Transformer : MapperGenerator { my_user = d.my_user?.let { this.toUni(d = it) }, all_languages = d.all_languages.map { this.toUni(d = it) }, discussion_languages = d.discussion_languages, - custom_emojis = d.custom_emojis.map { this.toUni(d = it) }, blocked_urls = emptyList(), tagline = if (d.taglines.isEmpty()) null else this.toUni(d = d.taglines.random()), oauth_providers = emptyList(), diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt index e17dbcab..b52741c0 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt @@ -3,6 +3,8 @@ package it.vercruysse.lemmyapi.v0.x19.x11 import io.github.z4kn4fein.semver.Version import io.ktor.client.HttpClient import it.vercruysse.lemmyapi.LemmyApiBaseController +import it.vercruysse.lemmyapi.datatypes.ListCustomEmojis +import it.vercruysse.lemmyapi.datatypes.ListCustomEmojisResponse import it.vercruysse.lemmyapi.datatypes.ListNotifications import it.vercruysse.lemmyapi.datatypes.ListNotificationsResponse import it.vercruysse.lemmyapi.datatypes.MarkNotificationAsRead @@ -858,6 +860,16 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun deleteCustomEmoji(form: it.vercruysse.lemmyapi.datatypes.DeleteCustomEmoji): Result = api.deleteCustomEmoji(transformer.fromUni(form)) + /** + * List custom emojis + * + * @GET("custom_emoji/list") + */ + override suspend fun listCustomEmojis(form: ListCustomEmojis): Result = + api.getSite().map { + ListCustomEmojisResponse(it.custom_emojis.map(transformer::toUni)) + } + /** * Block an instance. * diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt index 183f1474..53654d67 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt @@ -976,7 +976,6 @@ internal class Transformer : MapperGenerator { my_user = d.my_user?.let { this.toUni(d = it) }, all_languages = d.all_languages.map { this.toUni(d = it) }, discussion_languages = d.discussion_languages, - custom_emojis = d.custom_emojis.map { this.toUni(d = it) }, blocked_urls = d.blocked_urls.map { this.toUni(d = it) }, tagline = if (d.taglines.isEmpty()) null else this.toUni(d = d.taglines.random()), oauth_providers = emptyList(), diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt index 57a9e47f..e5d63313 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt @@ -3,6 +3,8 @@ package it.vercruysse.lemmyapi.v0.x19.x3 import io.github.z4kn4fein.semver.Version import io.ktor.client.HttpClient import it.vercruysse.lemmyapi.LemmyApiBaseController +import it.vercruysse.lemmyapi.datatypes.ListCustomEmojis +import it.vercruysse.lemmyapi.datatypes.ListCustomEmojisResponse import it.vercruysse.lemmyapi.datatypes.ListNotifications import it.vercruysse.lemmyapi.datatypes.ListNotificationsResponse import it.vercruysse.lemmyapi.datatypes.MarkNotificationAsRead @@ -858,6 +860,16 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun deleteCustomEmoji(form: it.vercruysse.lemmyapi.datatypes.DeleteCustomEmoji): Result = api.deleteCustomEmoji(transformer.fromUni(form)) + /** + * List custom emojis + * + * @GET("custom_emoji/list") + */ + override suspend fun listCustomEmojis(form: ListCustomEmojis): Result = + api.getSite().map { + ListCustomEmojisResponse(it.custom_emojis.map(transformer::toUni)) + } + /** * Block an instance. * diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt index ca45cd6f..e5fb94ee 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt @@ -495,7 +495,6 @@ internal class Transformer : MapperGenerator { my_user = d.my_user?.let { this.toUni(d = it) }, all_languages = d.all_languages.map { this.toUni(d = it) }, discussion_languages = d.discussion_languages, - custom_emojis = d.custom_emojis.map { this.toUni(d = it) }, blocked_urls = emptyList(), tagline = if (d.taglines.isEmpty()) null else this.toUni(d = d.taglines.random()), oauth_providers = emptyList(), diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt index a45e8923..94489638 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt @@ -3,6 +3,8 @@ package it.vercruysse.lemmyapi.v0.x19.x4 import io.github.z4kn4fein.semver.Version import io.ktor.client.HttpClient import it.vercruysse.lemmyapi.LemmyApiBaseController +import it.vercruysse.lemmyapi.datatypes.ListCustomEmojis +import it.vercruysse.lemmyapi.datatypes.ListCustomEmojisResponse import it.vercruysse.lemmyapi.datatypes.ListNotifications import it.vercruysse.lemmyapi.datatypes.ListNotificationsResponse import it.vercruysse.lemmyapi.datatypes.MarkNotificationAsRead @@ -857,6 +859,16 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun deleteCustomEmoji(form: it.vercruysse.lemmyapi.datatypes.DeleteCustomEmoji): Result = api.deleteCustomEmoji(transformer.fromUni(form)) + /** + * List custom emojis + * + * @GET("custom_emoji/list") + */ + override suspend fun listCustomEmojis(form: ListCustomEmojis): Result = + api.getSite().map { + ListCustomEmojisResponse(it.custom_emojis.map(transformer::toUni)) + } + /** * Block an instance. * diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt index 3fa3819a..5a6fef42 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt @@ -976,7 +976,6 @@ internal class Transformer : MapperGenerator { my_user = d.my_user?.let { this.toUni(d = it) }, all_languages = d.all_languages.map { this.toUni(d = it) }, discussion_languages = d.discussion_languages, - custom_emojis = d.custom_emojis.map { this.toUni(d = it) }, blocked_urls = d.blocked_urls.map { this.toUni(d = it) }, tagline = if (d.taglines.isEmpty()) null else this.toUni(d = d.taglines.random()), oauth_providers = emptyList(), diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt index de3c580e..0e8339b0 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt @@ -3,6 +3,8 @@ package it.vercruysse.lemmyapi.v0.x19.x6 import io.github.z4kn4fein.semver.Version import io.ktor.client.HttpClient import it.vercruysse.lemmyapi.LemmyApiBaseController +import it.vercruysse.lemmyapi.datatypes.ListCustomEmojis +import it.vercruysse.lemmyapi.datatypes.ListCustomEmojisResponse import it.vercruysse.lemmyapi.datatypes.ListNotifications import it.vercruysse.lemmyapi.datatypes.ListNotificationsResponse import it.vercruysse.lemmyapi.datatypes.MarkNotificationAsRead @@ -855,6 +857,16 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun deleteCustomEmoji(form: it.vercruysse.lemmyapi.datatypes.DeleteCustomEmoji): Result = api.deleteCustomEmoji(transformer.fromUni(form)) + /** + * List custom emojis + * + * @GET("custom_emoji/list") + */ + override suspend fun listCustomEmojis(form: ListCustomEmojis): Result = + api.getSite().map { + ListCustomEmojisResponse(it.custom_emojis.map(transformer::toUni)) + } + /** * Block an instance. * diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt index 1028a157..6c7a7051 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt @@ -977,7 +977,6 @@ internal class Transformer : MapperGenerator { my_user = d.my_user?.let { this.toUni(d = it) }, all_languages = d.all_languages.map { this.toUni(d = it) }, discussion_languages = d.discussion_languages, - custom_emojis = d.custom_emojis.map { this.toUni(d = it) }, blocked_urls = d.blocked_urls.map { this.toUni(d = it) }, tagline = if (d.taglines.isEmpty()) null else this.toUni(d = d.taglines.random()), oauth_providers = emptyList(), From 4e54be4f039393d6ab30c2c63d448d901c3d8775 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Thu, 9 Oct 2025 22:35:28 +0200 Subject: [PATCH 033/110] Fix myUserInfo --- .../lemmyapi/LemmyApiBaseController.kt | 7 +++++++ .../lemmyapi/datatypes/GetSiteResponse.kt | 3 --- .../lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt | 11 +++++++++++ .../lemmyapi/v0/x18/x5/Transformer.kt | 1 - .../lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt | 18 ++++++++++++++++++ .../lemmyapi/v0/x19/x0/Transformer.kt | 1 - .../lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt | 11 +++++++++++ .../lemmyapi/v0/x19/x11/Transformer.kt | 1 - .../lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt | 11 +++++++++++ .../lemmyapi/v0/x19/x3/Transformer.kt | 1 - .../lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt | 11 +++++++++++ .../lemmyapi/v0/x19/x4/Transformer.kt | 1 - .../lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt | 11 +++++++++++ .../lemmyapi/v0/x19/x6/Transformer.kt | 1 - 14 files changed, 80 insertions(+), 9 deletions(-) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt index 3db9647c..659e5d5b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt @@ -637,6 +637,13 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version */ abstract suspend fun validateAuth(): Result + /** + * Get data of current user + * + * @GET("/account") + */ + abstract suspend fun getMyUser(): Result + /** * Logout your user * diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetSiteResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetSiteResponse.kt index 7d3df4d1..8c65515a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetSiteResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetSiteResponse.kt @@ -14,9 +14,6 @@ data class GetSiteResponse( val all_languages: List, val discussion_languages: List, val blocked_urls: List, - /** Removed in 1.0.0 */ - // TODO remove ? - val my_user: MyUserInfo? = null, val tagline: Tagline? = null, /** Added in 1.0.0 */ val oauth_providers: List, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt index 451febc9..f938f022 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt @@ -8,6 +8,7 @@ import it.vercruysse.lemmyapi.datatypes.ListCustomEmojisResponse import it.vercruysse.lemmyapi.datatypes.ListNotifications import it.vercruysse.lemmyapi.datatypes.ListNotificationsResponse import it.vercruysse.lemmyapi.datatypes.MarkNotificationAsRead +import it.vercruysse.lemmyapi.datatypes.MyUserInfo import it.vercruysse.lemmyapi.dto.ExportUserSettingsResponse import it.vercruysse.lemmyapi.dto.ImportUserSettings import it.vercruysse.lemmyapi.dto.NotificationDataType @@ -957,6 +958,16 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba // This request can only fail if the auth token is invalid apiV18.getPersonMentions(it.vercruysse.lemmyapi.v0.x18.x5.datatypes.GetPersonMentions(auth = auth ?: "")).map { } + /** + * Get data of current user + * + * @GET("/account") + */ + override suspend fun getMyUser(): Result = + apiV18.getSite(it.vercruysse.lemmyapi.v0.x18.x5.datatypes.GetSite(auth)) + .mapCatching { it.my_user ?: throw IllegalStateException("Auth invalid") } + .map { transformer.toUni(it) } + /** * Logout your user * diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt index 13ef1b1e..f4285337 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt @@ -541,7 +541,6 @@ internal class Transformer(var auth: String) : MapperGenerator { site_view = this.toUni(d = d.site_view), admins = d.admins.map { this.toUni(d = it) }, version = d.version, - my_user = d.my_user?.let { this.toUni(d = it) }, all_languages = d.all_languages.map { this.toUni(d = it) }, discussion_languages = d.discussion_languages, blocked_urls = emptyList(), diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt index 20c277ce..1722edb8 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt @@ -8,6 +8,7 @@ import it.vercruysse.lemmyapi.datatypes.ListCustomEmojisResponse import it.vercruysse.lemmyapi.datatypes.ListNotifications import it.vercruysse.lemmyapi.datatypes.ListNotificationsResponse import it.vercruysse.lemmyapi.datatypes.MarkNotificationAsRead +import it.vercruysse.lemmyapi.datatypes.MyUserInfo import it.vercruysse.lemmyapi.dto.ExportUserSettingsResponse import it.vercruysse.lemmyapi.dto.ImportUserSettings import it.vercruysse.lemmyapi.dto.NotificationDataType @@ -341,6 +342,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba it.vercruysse.lemmyapi.datatypes.ListReportsResponse(items) } } + it.vercruysse.lemmyapi.dto.ReportType.Comments -> { api.listCommentReports(transformer.fromUniC(form)).map { resp -> val items = resp.comment_reports.map { r -> @@ -351,6 +353,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba it.vercruysse.lemmyapi.datatypes.ListReportsResponse(items) } } + it.vercruysse.lemmyapi.dto.ReportType.PrivateMessages -> { api.listPrivateMessageReports(transformer.fromUniPm(form)).map { resp -> val items = resp.private_message_reports.map { r -> @@ -361,6 +364,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba it.vercruysse.lemmyapi.datatypes.ListReportsResponse(items) } } + it.vercruysse.lemmyapi.dto.ReportType.All -> { runCatching { val postsResp = api.listPostReports(transformer.fromUniP(form)).getOrThrow() @@ -625,12 +629,16 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba }, ) } + NotificationDataType.Reply -> api.getReplies(transformer.fromUniR(form)).map(transformer::toUni) + NotificationDataType.Mention -> api.getPersonMentions(transformer.fromUniM(form)).map(transformer::toUni) + NotificationDataType.PrivateMessage -> api.getPrivateMessages(transformer.fromUniP(form)).map(transformer::toUni) + NotificationDataType.Subscribed -> Result.success(ListNotificationsResponse(emptyList())) } @@ -998,4 +1006,14 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun getRegistrationApplication( form: it.vercruysse.lemmyapi.datatypes.GetRegistrationApplication, ): Result = notSupported() + + /** + * Get data of current user + * + * @GET("/account") + */ + override suspend fun getMyUser(): Result = + api.getSite() + .mapCatching { it.my_user ?: throw IllegalStateException("Auth invalid") } + .map { transformer.toUni(it) } } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt index dab0df1d..3a3b0433 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt @@ -474,7 +474,6 @@ internal class Transformer : MapperGenerator { site_view = this.toUni(d = d.site_view), admins = d.admins.map { this.toUni(d = it) }, version = d.version, - my_user = d.my_user?.let { this.toUni(d = it) }, all_languages = d.all_languages.map { this.toUni(d = it) }, discussion_languages = d.discussion_languages, blocked_urls = emptyList(), diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt index b52741c0..e87aae25 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt @@ -8,6 +8,7 @@ import it.vercruysse.lemmyapi.datatypes.ListCustomEmojisResponse import it.vercruysse.lemmyapi.datatypes.ListNotifications import it.vercruysse.lemmyapi.datatypes.ListNotificationsResponse import it.vercruysse.lemmyapi.datatypes.MarkNotificationAsRead +import it.vercruysse.lemmyapi.datatypes.MyUserInfo import it.vercruysse.lemmyapi.dto.ExportUserSettingsResponse import it.vercruysse.lemmyapi.dto.ImportUserSettings import it.vercruysse.lemmyapi.dto.NotificationDataType @@ -1000,4 +1001,14 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba form: it.vercruysse.lemmyapi.datatypes.GetRegistrationApplication, ): Result = api.getRegistrationApplication(transformer.fromUni(form)).map(transformer::toUni) + + /** + * Get data of current user + * + * @GET("/account") + */ + override suspend fun getMyUser(): Result = + api.getSite() + .mapCatching { it.my_user ?: throw IllegalStateException("Auth invalid") } + .map { transformer.toUni(it) } } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt index 53654d67..fcc16297 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt @@ -973,7 +973,6 @@ internal class Transformer : MapperGenerator { site_view = this.toUni(d = d.site_view), admins = d.admins.map { this.toUni(d = it) }, version = d.version, - my_user = d.my_user?.let { this.toUni(d = it) }, all_languages = d.all_languages.map { this.toUni(d = it) }, discussion_languages = d.discussion_languages, blocked_urls = d.blocked_urls.map { this.toUni(d = it) }, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt index e5d63313..9363f89f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt @@ -8,6 +8,7 @@ import it.vercruysse.lemmyapi.datatypes.ListCustomEmojisResponse import it.vercruysse.lemmyapi.datatypes.ListNotifications import it.vercruysse.lemmyapi.datatypes.ListNotificationsResponse import it.vercruysse.lemmyapi.datatypes.MarkNotificationAsRead +import it.vercruysse.lemmyapi.datatypes.MyUserInfo import it.vercruysse.lemmyapi.dto.ExportUserSettingsResponse import it.vercruysse.lemmyapi.dto.ImportUserSettings import it.vercruysse.lemmyapi.dto.NotificationDataType @@ -999,4 +1000,14 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun getRegistrationApplication( form: it.vercruysse.lemmyapi.datatypes.GetRegistrationApplication, ): Result = notSupported() + + /** + * Get data of current user + * + * @GET("/account") + */ + override suspend fun getMyUser(): Result = + api.getSite() + .mapCatching { it.my_user ?: throw IllegalStateException("Auth invalid") } + .map { transformer.toUni(it) } } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt index e5fb94ee..a67b92a9 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt @@ -492,7 +492,6 @@ internal class Transformer : MapperGenerator { site_view = this.toUni(d = d.site_view), admins = d.admins.map { this.toUni(d = it) }, version = d.version, - my_user = d.my_user?.let { this.toUni(d = it) }, all_languages = d.all_languages.map { this.toUni(d = it) }, discussion_languages = d.discussion_languages, blocked_urls = emptyList(), diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt index 94489638..9eed71e4 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt @@ -8,6 +8,7 @@ import it.vercruysse.lemmyapi.datatypes.ListCustomEmojisResponse import it.vercruysse.lemmyapi.datatypes.ListNotifications import it.vercruysse.lemmyapi.datatypes.ListNotificationsResponse import it.vercruysse.lemmyapi.datatypes.MarkNotificationAsRead +import it.vercruysse.lemmyapi.datatypes.MyUserInfo import it.vercruysse.lemmyapi.dto.ExportUserSettingsResponse import it.vercruysse.lemmyapi.dto.ImportUserSettings import it.vercruysse.lemmyapi.dto.NotificationDataType @@ -998,4 +999,14 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun getRegistrationApplication( form: it.vercruysse.lemmyapi.datatypes.GetRegistrationApplication, ): Result = notSupported() + + /** + * Get data of current user + * + * @GET("/account") + */ + override suspend fun getMyUser(): Result = + api.getSite() + .mapCatching { it.my_user ?: throw IllegalStateException("Auth invalid") } + .map { transformer.toUni(it) } } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt index 5a6fef42..2245c88c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt @@ -973,7 +973,6 @@ internal class Transformer : MapperGenerator { site_view = this.toUni(d = d.site_view), admins = d.admins.map { this.toUni(d = it) }, version = d.version, - my_user = d.my_user?.let { this.toUni(d = it) }, all_languages = d.all_languages.map { this.toUni(d = it) }, discussion_languages = d.discussion_languages, blocked_urls = d.blocked_urls.map { this.toUni(d = it) }, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt index 0e8339b0..8b1428e4 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt @@ -8,6 +8,7 @@ import it.vercruysse.lemmyapi.datatypes.ListCustomEmojisResponse import it.vercruysse.lemmyapi.datatypes.ListNotifications import it.vercruysse.lemmyapi.datatypes.ListNotificationsResponse import it.vercruysse.lemmyapi.datatypes.MarkNotificationAsRead +import it.vercruysse.lemmyapi.datatypes.MyUserInfo import it.vercruysse.lemmyapi.dto.ExportUserSettingsResponse import it.vercruysse.lemmyapi.dto.ImportUserSettings import it.vercruysse.lemmyapi.dto.NotificationDataType @@ -997,4 +998,14 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba form: it.vercruysse.lemmyapi.datatypes.GetRegistrationApplication, ): Result = api.getRegistrationApplication(transformer.fromUni(form)).map(transformer::toUni) + + /** + * Get data of current user + * + * @GET("/account") + */ + override suspend fun getMyUser(): Result = + api.getSite() + .mapCatching { it.my_user ?: throw IllegalStateException("Auth invalid") } + .map { transformer.toUni(it) } } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt index 6c7a7051..d0bec714 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt @@ -974,7 +974,6 @@ internal class Transformer : MapperGenerator { site_view = this.toUni(d = d.site_view), admins = d.admins.map { this.toUni(d = it) }, version = d.version, - my_user = d.my_user?.let { this.toUni(d = it) }, all_languages = d.all_languages.map { this.toUni(d = it) }, discussion_languages = d.discussion_languages, blocked_urls = d.blocked_urls.map { this.toUni(d = it) }, From 23a242449d997814e1b0a12ff07cf22b9dba9ae9 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Fri, 10 Oct 2025 18:17:47 +0200 Subject: [PATCH 034/110] Fix CommentResponse.kt --- .../kotlin/it/vercruysse/lemmyapi/datatypes/CommentResponse.kt | 2 -- .../kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt | 1 - .../kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt | 1 - .../kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt | 1 - .../kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt | 1 - .../kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt | 1 - .../kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt | 1 - 7 files changed, 8 deletions(-) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentResponse.kt index a89e4c70..bd650034 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentResponse.kt @@ -9,6 +9,4 @@ import it.vercruysse.lemmyapi.CommonParcelize @Serializable data class CommentResponse( val comment_view: CommentView, - // TODO is removed - val recipient_ids: List, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt index f4285337..e14dbd89 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt @@ -785,7 +785,6 @@ internal class Transformer(var auth: String) : MapperGenerator { override fun toUni(d: X5DatatypesCommentResponse): LemmyapiDatatypesCommentResponse = LemmyapiDatatypesCommentResponse( comment_view = this.toUni(d = d.comment_view), - recipient_ids = d.recipient_ids, ) override fun toUni(d: X5DatatypesCommunityFollowerView): LemmyapiDatatypesCommunityFollowerView = diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt index 3a3b0433..98d604a7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt @@ -710,7 +710,6 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X0DatatypesCommentResponse): LemmyapiDatatypesCommentResponse = LemmyapiDatatypesCommentResponse( comment_view = this.toUni(d = d.comment_view), - recipient_ids = d.recipient_ids, ) override fun toUni(d: X0DatatypesCommunityFollowerView): LemmyapiDatatypesCommunityFollowerView = diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt index fcc16297..5d8ff7ce 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt @@ -586,7 +586,6 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X11DatatypesCommentResponse): LemmyapiDatatypesCommentResponse = LemmyapiDatatypesCommentResponse( comment_view = this.toUni(d = d.comment_view), - recipient_ids = d.recipient_ids, ) override fun toUni(d: X11DatatypesCommentView): LemmyapiDatatypesCommentView = diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt index a67b92a9..2cbdca7b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt @@ -732,7 +732,6 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X3DatatypesCommentResponse): LemmyapiDatatypesCommentResponse = LemmyapiDatatypesCommentResponse( comment_view = this.toUni(d = d.comment_view), - recipient_ids = d.recipient_ids, ) override fun toUni(d: X3DatatypesCommunityFollowerView): LemmyapiDatatypesCommunityFollowerView = diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt index 2245c88c..cf3e5878 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt @@ -584,7 +584,6 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X4DatatypesCommentResponse): LemmyapiDatatypesCommentResponse = LemmyapiDatatypesCommentResponse( comment_view = this.toUni(d = d.comment_view), - recipient_ids = d.recipient_ids, ) override fun toUni(d: X4DatatypesCommentView): LemmyapiDatatypesCommentView = diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt index d0bec714..7cfafe0d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt @@ -587,7 +587,6 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X6DatatypesCommentResponse): LemmyapiDatatypesCommentResponse = LemmyapiDatatypesCommentResponse( comment_view = this.toUni(d = d.comment_view), - recipient_ids = d.recipient_ids, ) override fun toUni(d: X6DatatypesCommentView): LemmyapiDatatypesCommentView = From 9120dec6f5144f31489e073e771a40fb66409d97 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Sun, 22 Feb 2026 17:46:56 +0100 Subject: [PATCH 035/110] Apply MarkManyPostsAsRead changes --- .../src/main/kotlin/MapperGenerator0x19x0.kt | 2 +- .../src/main/kotlin/MapperGenerator0x19x11.kt | 2 +- .../src/main/kotlin/MapperGenerator0x19x3.kt | 2 +- .../src/main/kotlin/MapperGenerator0x19x4.kt | 2 +- .../src/main/kotlin/MapperGenerator0x19x6.kt | 2 +- .../vercruysse/lemmyapi/LemmyApiBaseController.kt | 2 +- .../lemmyapi/datatypes/MarkManyPostsAsRead.kt | 6 +++--- .../lemmyapi/datatypes/MarkPostAsRead.kt | 15 --------------- .../lemmyapi/datatypes/ModlogCombinedView.kt | 3 +++ .../it/vercruysse/lemmyapi/dto/CustomDataTypes.kt | 3 +++ .../lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt | 2 +- .../lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt | 2 +- .../lemmyapi/v0/x19/x0/MapperGenerator.kt | 2 +- .../vercruysse/lemmyapi/v0/x19/x0/Transformer.kt | 2 +- .../lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt | 2 +- .../lemmyapi/v0/x19/x11/MapperGenerator.kt | 2 +- .../vercruysse/lemmyapi/v0/x19/x11/Transformer.kt | 2 +- .../lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt | 2 +- .../lemmyapi/v0/x19/x3/MapperGenerator.kt | 2 +- .../vercruysse/lemmyapi/v0/x19/x3/Transformer.kt | 2 +- .../lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt | 2 +- .../lemmyapi/v0/x19/x4/MapperGenerator.kt | 2 +- .../vercruysse/lemmyapi/v0/x19/x4/Transformer.kt | 2 +- .../lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt | 2 +- .../lemmyapi/v0/x19/x6/MapperGenerator.kt | 2 +- .../vercruysse/lemmyapi/v0/x19/x6/Transformer.kt | 2 +- .../v1/x0/x0/datatypes/MarkManyPostsAsRead.kt | 1 + 27 files changed, 32 insertions(+), 40 deletions(-) delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkPostAsRead.kt diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x0.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x0.kt index d51a0c56..03da6d10 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x0.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x0.kt @@ -250,7 +250,7 @@ internal interface MapperGenerator0x19x0 { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListRegistrationApplications): ListRegistrationApplications fun fromUni(d: it.vercruysse.lemmyapi.datatypes.LockPost): LockPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.Login): Login - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkPostAsRead): MarkPostAsRead + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead): MarkPostAsRead fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset): PasswordChangeAfterReset fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordReset): PasswordReset fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgeComment): PurgeComment diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt index 8d523bfe..0e4c0cd8 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt @@ -179,7 +179,7 @@ internal interface MapperGenerator0x19x11 { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListRegistrationApplications): ListRegistrationApplications fun fromUni(d: it.vercruysse.lemmyapi.datatypes.LockPost): LockPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.Login): Login - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkPostAsRead): MarkPostAsRead + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead): MarkPostAsRead fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset): PasswordChangeAfterReset fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordReset): PasswordReset fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgeComment): PurgeComment diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x3.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x3.kt index 374e37b8..a3b67c4f 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x3.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x3.kt @@ -253,7 +253,7 @@ internal interface MapperGenerator0x19x3 { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListRegistrationApplications): ListRegistrationApplications fun fromUni(d: it.vercruysse.lemmyapi.datatypes.LockPost): LockPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.Login): Login - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkPostAsRead): MarkPostAsRead + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead): MarkPostAsRead fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset): PasswordChangeAfterReset fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordReset): PasswordReset fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgeComment): PurgeComment diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt index e43b20ab..3b1f86ca 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt @@ -177,7 +177,7 @@ internal interface MapperGenerator0x19x4 { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListRegistrationApplications): ListRegistrationApplications fun fromUni(d: it.vercruysse.lemmyapi.datatypes.LockPost): LockPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.Login): Login - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkPostAsRead): MarkPostAsRead + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead): MarkPostAsRead fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset): PasswordChangeAfterReset fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordReset): PasswordReset fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgeComment): PurgeComment diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt index 66ddb9b6..32193e91 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt @@ -179,7 +179,7 @@ internal interface MapperGenerator0x19x6 { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListRegistrationApplications): ListRegistrationApplications fun fromUni(d: it.vercruysse.lemmyapi.datatypes.LockPost): LockPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.Login): Login - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkPostAsRead): MarkPostAsRead + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead): MarkPostAsRead fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset): PasswordChangeAfterReset fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordReset): PasswordReset fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgeComment): PurgeComment diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt index 659e5d5b..290e6a54 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt @@ -193,7 +193,7 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version * * @POST("post/mark_as_read") */ - abstract suspend fun markPostAsRead(form: MarkPostAsRead): Result + abstract suspend fun markManyPostAsRead(form: MarkManyPostsAsRead): Result /** * A moderator can lock a post ( IE disable new comments ). diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkManyPostsAsRead.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkManyPostsAsRead.kt index 2f0f2da3..1c451f18 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkManyPostsAsRead.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkManyPostsAsRead.kt @@ -1,13 +1,13 @@ package it.vercruysse.lemmyapi.datatypes -import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -// TODO: changes mark read +import it.vercruysse.lemmyapi.CommonParcelize @CommonParcelize @Serializable data class MarkManyPostsAsRead( val post_ids: List, -): DatatypeRoot + val read: Boolean, +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkPostAsRead.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkPostAsRead.kt deleted file mode 100644 index 4383f080..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkPostAsRead.kt +++ /dev/null @@ -1,15 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -// TODO changes MarkPostAsRead amount list - -@CommonParcelize -@Serializable -data class MarkPostAsRead( - val post_ids: List, - val read: Boolean, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModlogCombinedView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModlogCombinedView.kt index 51995195..1e05f1aa 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModlogCombinedView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModlogCombinedView.kt @@ -7,6 +7,9 @@ import kotlinx.serialization.SerialName import kotlinx.serialization.json.JsonClassDiscriminator import kotlinx.serialization.Serializable + +// TODO: most likely wrong + @CommonParcelize @Serializable @OptIn(ExperimentalSerializationApi::class) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/dto/CustomDataTypes.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/dto/CustomDataTypes.kt index 33d6847d..0af00053 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/dto/CustomDataTypes.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/dto/CustomDataTypes.kt @@ -119,6 +119,9 @@ enum class ModlogActionType(override val minimumVersion: Version = MINIMUM_API_V AdminAllowInstance(V1_0_0), } +// TODO: fix +// now only "Active" | "Hot" | "New" | "Old" | "Top" | "MostComments" | "NewComments" | "Controversial" | "Scaled" + @Serializable enum class SortType(override val minimumVersion: Version = MINIMUM_API_VERSION, override val maximumVersion: Version? = null) : VersionTracker { diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt index f938f022..50da3dba 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt @@ -276,7 +276,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @POST("post/mark_as_read") */ - override suspend fun markPostAsRead(form: it.vercruysse.lemmyapi.datatypes.MarkPostAsRead): Result = form.post_ids + override suspend fun markManyPostAsRead(form: it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead): Result = form.post_ids .map { MarkPostAsRead(post_id = it, read = form.read, auth = "" + auth) } .map { apiV18.markPostAsRead(it) } .map { it.map { } } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt index 1722edb8..35173124 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt @@ -265,7 +265,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @POST("post/mark_as_read") */ - override suspend fun markPostAsRead(form: it.vercruysse.lemmyapi.datatypes.MarkPostAsRead): Result = + override suspend fun markManyPostAsRead(form: it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead): Result = api.markPostAsRead(transformer.fromUni(form)) /** diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt index 68275a48..e5d8644b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt @@ -194,7 +194,7 @@ internal interface MapperGenerator { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListRegistrationApplications): ListRegistrationApplications fun fromUni(d: it.vercruysse.lemmyapi.datatypes.LockPost): LockPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.Login): Login - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkPostAsRead): MarkPostAsRead + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead): MarkPostAsRead fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset): PasswordChangeAfterReset fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordReset): PasswordReset fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgeComment): PurgeComment diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt index 98d604a7..4237e375 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt @@ -131,7 +131,7 @@ import it.vercruysse.lemmyapi.datatypes.LockPost as LemmyapiDatatypesLockPost import it.vercruysse.lemmyapi.datatypes.Login as LemmyapiDatatypesLogin import it.vercruysse.lemmyapi.datatypes.LoginResponse as LemmyapiDatatypesLoginResponse import it.vercruysse.lemmyapi.datatypes.LoginToken as LemmyapiDatatypesLoginToken -import it.vercruysse.lemmyapi.datatypes.MarkPostAsRead as LemmyapiDatatypesMarkPostAsRead +import it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead as LemmyapiDatatypesMarkPostAsRead import it.vercruysse.lemmyapi.datatypes.ModAddToCommunity as LemmyapiDatatypesModAddCommunity import it.vercruysse.lemmyapi.datatypes.ModAddToCommunityView as LemmyapiDatatypesModAddCommunityView import it.vercruysse.lemmyapi.datatypes.ModBanFromCommunity as LemmyapiDatatypesModBanFromCommunity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt index e87aae25..852fc72c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt @@ -265,7 +265,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @POST("post/mark_as_read") */ - override suspend fun markPostAsRead(form: it.vercruysse.lemmyapi.datatypes.MarkPostAsRead): Result = + override suspend fun markManyPostAsRead(form: it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead): Result = api.markPostAsRead(transformer.fromUni(form)) /** diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt index 04e29a8e..03e60afb 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt @@ -177,7 +177,7 @@ internal interface MapperGenerator { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListRegistrationApplications): ListRegistrationApplications fun fromUni(d: it.vercruysse.lemmyapi.datatypes.LockPost): LockPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.Login): Login - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkPostAsRead): MarkPostAsRead + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead): MarkPostAsRead fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset): PasswordChangeAfterReset fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordReset): PasswordReset fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgeComment): PurgeComment diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt index 5d8ff7ce..d89d4ad6 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt @@ -142,7 +142,7 @@ import it.vercruysse.lemmyapi.datatypes.LockPost as LemmyapiDatatypesLockPost import it.vercruysse.lemmyapi.datatypes.Login as LemmyapiDatatypesLogin import it.vercruysse.lemmyapi.datatypes.LoginResponse as LemmyapiDatatypesLoginResponse import it.vercruysse.lemmyapi.datatypes.LoginToken as LemmyapiDatatypesLoginToken -import it.vercruysse.lemmyapi.datatypes.MarkPostAsRead as LemmyapiDatatypesMarkPostAsRead +import it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead as LemmyapiDatatypesMarkPostAsRead import it.vercruysse.lemmyapi.datatypes.ModAddToCommunity as LemmyapiDatatypesModAddCommunity import it.vercruysse.lemmyapi.datatypes.ModAddToCommunityView as LemmyapiDatatypesModAddCommunityView import it.vercruysse.lemmyapi.datatypes.ModBanFromCommunity as LemmyapiDatatypesModBanFromCommunity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt index 9363f89f..e28bf1db 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt @@ -266,7 +266,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @POST("post/mark_as_read") */ - override suspend fun markPostAsRead(form: it.vercruysse.lemmyapi.datatypes.MarkPostAsRead): Result = + override suspend fun markManyPostAsRead(form: it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead): Result = api.markPostAsRead(transformer.fromUni(form)) /** diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt index 7f28cd87..ef92fdfb 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt @@ -191,7 +191,7 @@ internal interface MapperGenerator { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListRegistrationApplications): ListRegistrationApplications fun fromUni(d: it.vercruysse.lemmyapi.datatypes.LockPost): LockPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.Login): Login - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkPostAsRead): MarkPostAsRead + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead): MarkPostAsRead fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset): PasswordChangeAfterReset fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordReset): PasswordReset fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgeComment): PurgeComment diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt index 2cbdca7b..aaf9c316 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt @@ -137,7 +137,7 @@ import it.vercruysse.lemmyapi.datatypes.LockPost as LemmyapiDatatypesLockPost import it.vercruysse.lemmyapi.datatypes.Login as LemmyapiDatatypesLogin import it.vercruysse.lemmyapi.datatypes.LoginResponse as LemmyapiDatatypesLoginResponse import it.vercruysse.lemmyapi.datatypes.LoginToken as LemmyapiDatatypesLoginToken -import it.vercruysse.lemmyapi.datatypes.MarkPostAsRead as LemmyapiDatatypesMarkPostAsRead +import it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead as LemmyapiDatatypesMarkPostAsRead import it.vercruysse.lemmyapi.datatypes.ModAddToCommunity as LemmyapiDatatypesModAddCommunity import it.vercruysse.lemmyapi.datatypes.ModAddToCommunityView as LemmyapiDatatypesModAddCommunityView import it.vercruysse.lemmyapi.datatypes.ModBanFromCommunity as LemmyapiDatatypesModBanFromCommunity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt index 9eed71e4..3bb6b373 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt @@ -265,7 +265,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @POST("post/mark_as_read") */ - override suspend fun markPostAsRead(form: it.vercruysse.lemmyapi.datatypes.MarkPostAsRead): Result = + override suspend fun markManyPostAsRead(form: it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead): Result = api.markPostAsRead(transformer.fromUni(form)) /** diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt index 99240d4b..5d899350 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt @@ -176,7 +176,7 @@ internal interface MapperGenerator { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListRegistrationApplications): ListRegistrationApplications fun fromUni(d: it.vercruysse.lemmyapi.datatypes.LockPost): LockPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.Login): Login - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkPostAsRead): MarkPostAsRead + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead): MarkPostAsRead fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset): PasswordChangeAfterReset fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordReset): PasswordReset fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgeComment): PurgeComment diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt index cf3e5878..f37b38ca 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt @@ -140,7 +140,7 @@ import it.vercruysse.lemmyapi.datatypes.LockPost as LemmyapiDatatypesLockPost import it.vercruysse.lemmyapi.datatypes.Login as LemmyapiDatatypesLogin import it.vercruysse.lemmyapi.datatypes.LoginResponse as LemmyapiDatatypesLoginResponse import it.vercruysse.lemmyapi.datatypes.LoginToken as LemmyapiDatatypesLoginToken -import it.vercruysse.lemmyapi.datatypes.MarkPostAsRead as LemmyapiDatatypesMarkPostAsRead +import it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead as LemmyapiDatatypesMarkPostAsRead import it.vercruysse.lemmyapi.datatypes.ModAddToCommunity as LemmyapiDatatypesModAddCommunity import it.vercruysse.lemmyapi.datatypes.ModAddToCommunityView as LemmyapiDatatypesModAddCommunityView import it.vercruysse.lemmyapi.datatypes.ModBanFromCommunity as LemmyapiDatatypesModBanFromCommunity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt index 8b1428e4..c9325c16 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt @@ -265,7 +265,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @POST("post/mark_as_read") */ - override suspend fun markPostAsRead(form: it.vercruysse.lemmyapi.datatypes.MarkPostAsRead): Result = + override suspend fun markManyPostAsRead(form: it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead): Result = api.markPostAsRead(transformer.fromUni(form)) /** diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt index e9b62915..4927d149 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt @@ -179,7 +179,7 @@ internal interface MapperGenerator { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListRegistrationApplications): ListRegistrationApplications fun fromUni(d: it.vercruysse.lemmyapi.datatypes.LockPost): LockPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.Login): Login - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkPostAsRead): MarkPostAsRead + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead): MarkPostAsRead fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset): PasswordChangeAfterReset fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordReset): PasswordReset fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgeComment): PurgeComment diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt index 7cfafe0d..5b825562 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt @@ -142,7 +142,7 @@ import it.vercruysse.lemmyapi.datatypes.LockPost as LemmyapiDatatypesLockPost import it.vercruysse.lemmyapi.datatypes.Login as LemmyapiDatatypesLogin import it.vercruysse.lemmyapi.datatypes.LoginResponse as LemmyapiDatatypesLoginResponse import it.vercruysse.lemmyapi.datatypes.LoginToken as LemmyapiDatatypesLoginToken -import it.vercruysse.lemmyapi.datatypes.MarkPostAsRead as LemmyapiDatatypesMarkPostAsRead +import it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead as LemmyapiDatatypesMarkPostAsRead import it.vercruysse.lemmyapi.datatypes.ModAddToCommunity as LemmyapiDatatypesModAddCommunity import it.vercruysse.lemmyapi.datatypes.ModAddToCommunityView as LemmyapiDatatypesModAddCommunityView import it.vercruysse.lemmyapi.datatypes.ModBanFromCommunity as LemmyapiDatatypesModBanFromCommunity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MarkManyPostsAsRead.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MarkManyPostsAsRead.kt index 23ff540e..8f9bd706 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MarkManyPostsAsRead.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MarkManyPostsAsRead.kt @@ -5,4 +5,5 @@ import kotlinx.serialization.Serializable @Serializable internal data class MarkManyPostsAsRead( val post_ids: List, + val read: Boolean ) From 4bc06f325ffc7e45b54f2c7d207908e318f1daae Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Tue, 3 Mar 2026 01:24:15 +0100 Subject: [PATCH 036/110] Wip progress 1.0.0 types mapping --- ACTIVE_CHANGES.md | 14 + .../src/main/kotlin/MapperGenerator0x18x5.kt | 45 -- .../src/main/kotlin/MapperGenerator0x19x0.kt | 6 +- .../src/main/kotlin/MapperGenerator0x19x11.kt | 6 +- .../src/main/kotlin/MapperGenerator0x19x3.kt | 6 +- .../src/main/kotlin/MapperGenerator0x19x4.kt | 6 +- .../src/main/kotlin/MapperGenerator0x19x6.kt | 6 +- .../main/kotlin/autogenscripts/GenTypes.kt | 2 +- .../lemmyapi/LemmyApiBaseController.kt | 57 +- .../lemmyapi/datatypes/AdminAllowInstance.kt | 16 - .../datatypes/AdminAllowInstanceId.kt | 3 - .../datatypes/AdminAllowInstanceView.kt | 13 - .../vercruysse/lemmyapi/datatypes/AdminBan.kt | 21 - .../lemmyapi/datatypes/AdminBanView.kt | 18 - .../lemmyapi/datatypes/AdminBlockInstance.kt | 17 - .../datatypes/AdminBlockInstanceId.kt | 3 - .../datatypes/AdminBlockInstanceView.kt | 13 - .../lemmyapi/datatypes/AdminListUsers.kt | 3 +- .../datatypes/AdminListUsersResponse.kt | 13 - ...OAuthProvider.kt => AdminOAuthProvider.kt} | 2 +- .../lemmyapi/datatypes/AdminPurgeCommentId.kt | 3 - .../lemmyapi/datatypes/AdminPurgeCommunity.kt | 16 - .../datatypes/AdminPurgeCommunityId.kt | 3 - .../datatypes/AdminPurgeCommunityView.kt | 17 - .../lemmyapi/datatypes/AdminPurgePerson.kt | 16 - .../lemmyapi/datatypes/AdminPurgePersonId.kt | 3 - .../datatypes/AdminPurgePersonView.kt | 17 - .../lemmyapi/datatypes/AdminPurgePost.kt | 17 - .../lemmyapi/datatypes/AdminPurgePostId.kt | 3 - .../lemmyapi/datatypes/AdminPurgePostView.kt | 18 - .../datatypes/AdminRemoveCommunity.kt | 17 - .../datatypes/AdminRemoveCommunityView.kt | 14 - .../datatypes/AuthenticateWithOauth.kt | 1 + .../datatypes/BanFromCommunityResponse.kt | 13 - .../lemmyapi/datatypes/BanPersonResponse.kt | 13 - .../datatypes/BannedPersonsResponse.kt | 14 - .../datatypes/BlockCommunityResponse.kt | 13 - .../lemmyapi/datatypes/BlockPersonResponse.kt | 13 - .../lemmyapi/datatypes/ChangePassword.kt | 1 + .../lemmyapi/datatypes/CommentActions.kt | 4 +- .../lemmyapi/datatypes/CommentReportView.kt | 6 +- .../lemmyapi/datatypes/CommentView.kt | 6 +- .../lemmyapi/datatypes/Community.kt | 5 +- .../lemmyapi/datatypes/CommunityActions.kt | 2 +- .../lemmyapi/datatypes/CommunityReport.kt | 2 +- .../lemmyapi/datatypes/CommunityReportView.kt | 6 +- .../datatypes/{Tag.kt => CommunityTag.kt} | 9 +- .../{TagsView.kt => CommunityTagId.kt} | 2 +- .../lemmyapi/datatypes/CommunityTagsView.kt | 3 + .../lemmyapi/datatypes/CommunityView.kt | 2 +- .../lemmyapi/datatypes/CreateCommentLike.kt | 1 + ...LockComment.kt => CreateCommentWarning.kt} | 9 +- .../lemmyapi/datatypes/CreateCommunity.kt | 2 +- .../lemmyapi/datatypes/CreateCommunityTag.kt | 5 +- .../datatypes/CreateMultiCommunity.kt | 2 +- .../lemmyapi/datatypes/CreatePost.kt | 2 +- .../lemmyapi/datatypes/CreatePostLike.kt | 1 + ...inPurgeComment.kt => CreatePostWarning.kt} | 8 +- .../lemmyapi/datatypes/CreateSite.kt | 4 +- .../lemmyapi/datatypes/DeleteCommunityTag.kt | 3 +- .../lemmyapi/datatypes/EditCommunity.kt | 2 +- ...tions.kt => EditCommunityNotifications.kt} | 2 +- .../lemmyapi/datatypes/EditCommunityTag.kt | 14 + .../lemmyapi/datatypes/EditCustomEmoji.kt | 9 +- ...ultiCommunity.kt => EditMultiCommunity.kt} | 4 +- .../vercruysse/lemmyapi/datatypes/EditPost.kt | 2 +- ...eaturePost.kt => EditPostNotifications.kt} | 12 +- .../vercruysse/lemmyapi/datatypes/EditSite.kt | 12 +- .../{UpdateTagline.kt => EditTagline.kt} | 2 +- .../datatypes/{UpdateTotp.kt => EditTotp.kt} | 2 +- ...ateTotpResponse.kt => EditTotpResponse.kt} | 2 +- .../datatypes/FederatedInstanceView.kt | 12 + .../lemmyapi/datatypes/FederatedInstances.kt | 14 - .../lemmyapi/datatypes/FederationAllowList.kt | 9 + .../lemmyapi/datatypes/FederationBlockList.kt | 1 - ...rationState.kt => FederationQueueState.kt} | 3 +- .../lemmyapi/datatypes/GetComments.kt | 2 - .../lemmyapi/datatypes/GetCommentsResponse.kt | 16 - .../datatypes/GetCommentsSlimResponse.kt | 13 - ...GetCommunityPendingFollowsCountResponse.kt | 11 - .../datatypes/GetFederatedInstances.kt | 15 + .../GetFederatedInstancesResponse.kt | 12 - .../lemmyapi/datatypes/GetModlog.kt | 2 - .../lemmyapi/datatypes/GetModlogResponse.kt | 14 - .../lemmyapi/datatypes/GetMultiCommunity.kt | 3 +- .../datatypes/GetMultiCommunityResponse.kt | 7 +- .../lemmyapi/datatypes/GetPersonDetails.kt | 2 +- .../datatypes/GetPersonDetailsResponse.kt | 5 +- .../vercruysse/lemmyapi/datatypes/GetPosts.kt | 4 + .../lemmyapi/datatypes/GetReportCount.kt | 12 - .../lemmyapi/datatypes/GetSiteResponse.kt | 3 +- ...eadRegistrationApplicationCountResponse.kt | 12 - .../datatypes/InstanceWithFederationState.kt | 2 +- .../lemmyapi/datatypes/ListCommentLikes.kt | 2 - .../datatypes/ListCommentLikesResponse.kt | 16 - .../lemmyapi/datatypes/ListCommunities.kt | 2 - .../datatypes/ListCommunitiesResponse.kt | 16 - .../datatypes/ListCommunityPendingFollows.kt | 3 +- .../lemmyapi/datatypes/ListMedia.kt | 2 - .../lemmyapi/datatypes/ListMediaResponse.kt | 16 - .../datatypes/ListMultiCommunities.kt | 8 +- .../datatypes/ListMultiCommunitiesResponse.kt | 11 - .../lemmyapi/datatypes/ListNotifications.kt | 2 - .../datatypes/ListNotificationsResponse.kt | 13 - .../lemmyapi/datatypes/ListPersonContent.kt | 4 +- .../datatypes/ListPersonContentResponse.kt | 13 - .../lemmyapi/datatypes/ListPersonHidden.kt | 1 - .../lemmyapi/datatypes/ListPersonLiked.kt | 8 +- .../datatypes/ListPersonLikedResponse.kt | 13 - .../lemmyapi/datatypes/ListPersonRead.kt | 1 - .../datatypes/ListPersonReadResponse.kt | 13 - .../lemmyapi/datatypes/ListPersonSaved.kt | 3 +- .../datatypes/ListPersonSavedResponse.kt | 13 - .../lemmyapi/datatypes/ListPostLikes.kt | 2 - .../datatypes/ListPostLikesResponse.kt | 16 - .../datatypes/ListRegistrationApplications.kt | 2 - .../ListRegistrationApplicationsResponse.kt | 16 - .../lemmyapi/datatypes/ListReports.kt | 2 - .../lemmyapi/datatypes/ListReportsResponse.kt | 13 - .../{AdminAdd.kt => ListTaglines.kt} | 13 +- .../datatypes/ListTaglinesResponse.kt | 13 - .../lemmyapi/datatypes/LocalSite.kt | 4 +- .../lemmyapi/datatypes/LocalUser.kt | 1 - .../it/vercruysse/lemmyapi/datatypes/Login.kt | 1 + ...PostNotifications.kt => MarkPostAsRead.kt} | 5 +- .../datatypes/MarkPrivateMessageAsRead.kt | 2 + .../lemmyapi/datatypes/ModAddToCommunity.kt | 17 - .../datatypes/ModAddToCommunityView.kt | 15 - .../lemmyapi/datatypes/ModBanFromCommunity.kt | 20 - .../datatypes/ModBanFromCommunityView.kt | 15 - .../datatypes/ModChangeCommunityVisibility.kt | 18 - .../ModChangeCommunityVisibilityView.kt | 13 - .../lemmyapi/datatypes/ModEditPost.kt | 2 +- .../lemmyapi/datatypes/ModFeaturePostView.kt | 17 - .../lemmyapi/datatypes/ModLockCommentView.kt | 16 - .../lemmyapi/datatypes/ModLockPost.kt | 18 - .../lemmyapi/datatypes/ModLockPostView.kt | 17 - .../lemmyapi/datatypes/ModRemoveComment.kt | 17 - .../datatypes/ModRemoveCommentView.kt | 17 - .../lemmyapi/datatypes/ModRemovePost.kt | 17 - .../lemmyapi/datatypes/ModRemovePostView.kt | 15 - .../datatypes/ModTransferCommunity.kt | 16 - .../datatypes/ModTransferCommunityView.kt | 15 - .../vercruysse/lemmyapi/datatypes/Modlog.kt | 17 + .../lemmyapi/datatypes/ModlogCombinedView.kt | 143 ----- .../datatypes/{TagId.kt => ModlogId.kt} | 2 +- .../lemmyapi/datatypes/ModlogView.kt | 19 + .../lemmyapi/datatypes/MultiCommunity.kt | 6 +- ...FollowsCount.kt => MultiCommunityEntry.kt} | 5 +- ...tResponse.kt => MultiCommunityResponse.kt} | 7 +- .../lemmyapi/datatypes/MultiCommunityView.kt | 2 + .../lemmyapi/datatypes/MyUserInfo.kt | 7 +- .../lemmyapi/datatypes/Notification.kt | 1 + .../lemmyapi/datatypes/NotificationData.kt | 51 +- .../{GetPostsResponse.kt => PagedResponse.kt} | 7 +- .../lemmyapi/datatypes/PendingFollowerView.kt | 15 + .../vercruysse/lemmyapi/datatypes/Person.kt | 2 + .../datatypes/PersonCommentMention.kt | 15 - .../datatypes/PersonCommentMentionId.kt | 3 - .../datatypes/PersonCommentMentionView.kt | 26 - .../datatypes/PersonContentCombinedView.kt | 28 - .../datatypes/PersonLikedCombinedView.kt | 29 - ...readCountResponse.kt => PersonResponse.kt} | 7 +- .../datatypes/PersonSavedCombinedView.kt | 28 - .../lemmyapi/datatypes/PluginMetadata.kt | 4 +- .../it/vercruysse/lemmyapi/datatypes/Post.kt | 2 +- .../lemmyapi/datatypes/PostActions.kt | 4 +- .../lemmyapi/datatypes/PostReportView.kt | 6 +- .../vercruysse/lemmyapi/datatypes/PostView.kt | 6 +- .../datatypes/PrivateMessageReportView.kt | 7 +- .../lemmyapi/datatypes/PrivateMessageView.kt | 4 +- .../lemmyapi/datatypes/PublicOAuthProvider.kt | 12 +- .../vercruysse/lemmyapi/datatypes/Register.kt | 2 + .../datatypes/RegistrationApplication.kt | 1 + .../lemmyapi/datatypes/ReportCombinedView.kt | 35 +- .../datatypes/ResolveObjectResponse.kt | 2 + .../lemmyapi/datatypes/SaveUserSettings.kt | 1 - .../vercruysse/lemmyapi/datatypes/Search.kt | 2 - .../lemmyapi/datatypes/SearchResponse.kt | 3 +- .../it/vercruysse/lemmyapi/datatypes/Site.kt | 2 +- ...dminAddView.kt => UnreadCountsResponse.kt} | 12 +- .../lemmyapi/datatypes/UpdateCommunityTag.kt | 12 - .../lemmyapi/datatypes/UserSettingsBackup.kt | 2 + .../vercruysse/lemmyapi/datatypes/VoteView.kt | 3 + .../lemmyapi/dto/CustomDataTypes.kt | 4 +- .../enums/GetFederatedInstancesKind.kt | 15 + .../vercruysse/lemmyapi/enums/ModlogKind.kt | 33 + .../enums/MultiCommunityListingType.kt | 13 + .../lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt | 189 +++--- .../lemmyapi/v0/x18/x5/MapperGenerator.kt | 49 +- .../lemmyapi/v0/x18/x5/Transformer.kt | 598 +----------------- .../lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt | 4 +- .../lemmyapi/v0/x19/x0/MapperGenerator.kt | 6 +- .../lemmyapi/v0/x19/x0/Transformer.kt | 34 +- .../lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt | 4 +- .../lemmyapi/v0/x19/x11/MapperGenerator.kt | 6 +- .../lemmyapi/v0/x19/x11/Transformer.kt | 36 +- .../lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt | 4 +- .../lemmyapi/v0/x19/x3/MapperGenerator.kt | 6 +- .../lemmyapi/v0/x19/x3/Transformer.kt | 34 +- .../lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt | 4 +- .../lemmyapi/v0/x19/x4/MapperGenerator.kt | 6 +- .../lemmyapi/v0/x19/x4/Transformer.kt | 36 +- .../lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt | 8 +- .../lemmyapi/v0/x19/x6/MapperGenerator.kt | 6 +- .../lemmyapi/v0/x19/x6/Transformer.kt | 36 +- .../x0/x0/combinedtypes/ModlogCombinedView.kt | 137 ---- .../x0/x0/combinedtypes/SearchCombinedView.kt | 2 + .../lemmyapi/v1/x0/x0/datatypes/AdminAdd.kt | 12 - .../v1/x0/x0/datatypes/AdminAddView.kt | 10 - .../v1/x0/x0/datatypes/AdminAllowInstance.kt | 13 - .../x0/x0/datatypes/AdminAllowInstanceId.kt | 3 - .../x0/x0/datatypes/AdminAllowInstanceView.kt | 10 - .../lemmyapi/v1/x0/x0/datatypes/AdminBan.kt | 15 - .../lemmyapi/v1/x0/x0/datatypes/AdminBanId.kt | 3 - .../v1/x0/x0/datatypes/AdminBanView.kt | 10 - .../v1/x0/x0/datatypes/AdminBlockInstance.kt | 14 - .../x0/x0/datatypes/AdminBlockInstanceId.kt | 3 - .../x0/datatypes/AdminBlockInstanceParams.kt | 3 +- .../x0/x0/datatypes/AdminBlockInstanceView.kt | 10 - .../v1/x0/x0/datatypes/AdminListUsers.kt | 3 +- .../x0/x0/datatypes/AdminListUsersResponse.kt | 10 - ...OAuthProvider.kt => AdminOAuthProvider.kt} | 2 +- .../v1/x0/x0/datatypes/AdminPurgeCommentId.kt | 3 - .../x0/x0/datatypes/AdminPurgeCommentView.kt | 10 - .../v1/x0/x0/datatypes/AdminPurgeCommunity.kt | 11 - .../x0/x0/datatypes/AdminPurgeCommunityId.kt | 3 - .../x0/datatypes/AdminPurgeCommunityView.kt | 9 - .../v1/x0/x0/datatypes/AdminPurgePersonId.kt | 3 - .../x0/x0/datatypes/AdminPurgePersonView.kt | 9 - .../v1/x0/x0/datatypes/AdminPurgePost.kt | 12 - .../v1/x0/x0/datatypes/AdminPurgePostId.kt | 3 - .../v1/x0/x0/datatypes/AdminPurgePostView.kt | 10 - .../x0/x0/datatypes/AdminRemoveCommunity.kt | 13 - .../x0/x0/datatypes/AdminRemoveCommunityId.kt | 3 - .../x0/datatypes/AdminRemoveCommunityView.kt | 10 - .../x0/x0/datatypes/AuthenticateWithOauth.kt | 1 + .../x0/datatypes/BanFromCommunityResponse.kt | 9 - .../x0/x0/datatypes/BlockCommunityResponse.kt | 9 - .../v1/x0/x0/datatypes/BlockPersonResponse.kt | 9 - .../v1/x0/x0/datatypes/ChangePassword.kt | 1 + .../v1/x0/x0/datatypes/CommentActions.kt | 5 +- .../v1/x0/x0/datatypes/CommentReportView.kt | 3 +- .../v1/x0/x0/datatypes/CommentView.kt | 2 +- .../lemmyapi/v1/x0/x0/datatypes/Community.kt | 5 +- .../v1/x0/x0/datatypes/CommunityActions.kt | 4 +- .../v1/x0/x0/datatypes/CommunityReport.kt | 2 +- .../v1/x0/x0/datatypes/CommunityReportView.kt | 2 + .../x0/datatypes/{Tag.kt => CommunityTag.kt} | 7 +- .../{AdminAddId.kt => CommunityTagId.kt} | 2 +- .../v1/x0/x0/datatypes/CommunityTagsView.kt | 3 + .../v1/x0/x0/datatypes/CommunityView.kt | 2 +- .../v1/x0/x0/datatypes/CreateCommentLike.kt | 2 +- ...LockComment.kt => CreateCommentWarning.kt} | 8 +- .../v1/x0/x0/datatypes/CreateCommunity.kt | 4 +- .../v1/x0/x0/datatypes/CreateCommunityTag.kt | 3 +- .../x0/x0/datatypes/CreateMultiCommunity.kt | 2 +- .../lemmyapi/v1/x0/x0/datatypes/CreatePost.kt | 2 +- .../v1/x0/x0/datatypes/CreatePostLike.kt | 3 +- ...inPurgeComment.kt => CreatePostWarning.kt} | 7 +- .../lemmyapi/v1/x0/x0/datatypes/CreateSite.kt | 22 +- .../v1/x0/x0/datatypes/DeleteCommunityTag.kt | 3 +- .../v1/x0/x0/datatypes/EditCommunity.kt | 4 +- ...tions.kt => EditCommunityNotifications.kt} | 4 +- .../v1/x0/x0/datatypes/EditCommunityTag.kt | 11 + .../v1/x0/x0/datatypes/EditCustomEmoji.kt | 9 +- ...ultiCommunity.kt => EditMultiCommunity.kt} | 4 +- .../lemmyapi/v1/x0/x0/datatypes/EditPost.kt | 2 +- .../x0/x0/datatypes/EditPostNotifications.kt | 10 + .../lemmyapi/v1/x0/x0/datatypes/EditSite.kt | 23 +- .../{UpdateTagline.kt => EditTagline.kt} | 2 +- .../datatypes/{UpdateTotp.kt => EditTotp.kt} | 2 +- ...ateTotpResponse.kt => EditTotpResponse.kt} | 2 +- .../v1/x0/x0/datatypes/FeaturePost.kt | 2 +- .../x0/x0/datatypes/FederatedInstanceView.kt | 12 + .../v1/x0/x0/datatypes/FederatedInstances.kt | 10 - ...nPurgePerson.kt => FederationAllowList.kt} | 6 +- .../v1/x0/x0/datatypes/FederationBlockList.kt | 1 - ...rationState.kt => FederationQueueState.kt} | 3 +- .../v1/x0/x0/datatypes/GetComments.kt | 5 +- .../v1/x0/x0/datatypes/GetCommentsResponse.kt | 10 - .../x0/datatypes/GetCommentsSlimResponse.kt | 10 - .../x0/x0/datatypes/GetFederatedInstances.kt | 12 + .../GetFederatedInstancesResponse.kt | 8 - .../lemmyapi/v1/x0/x0/datatypes/GetModlog.kt | 5 +- .../v1/x0/x0/datatypes/GetModlogResponse.kt | 11 - .../v1/x0/x0/datatypes/GetMultiCommunity.kt | 3 +- .../x0/datatypes/GetPersonDetailsResponse.kt | 1 + .../lemmyapi/v1/x0/x0/datatypes/GetPosts.kt | 6 +- .../v1/x0/x0/datatypes/GetRandomCommunity.kt | 2 +- .../v1/x0/x0/datatypes/GetReportCount.kt | 8 - .../x0/x0/datatypes/GetReportCountResponse.kt | 8 - .../v1/x0/x0/datatypes/GetSiteResponse.kt | 3 +- .../x0/x0/datatypes/GetUnreadCountResponse.kt | 8 - ...eadRegistrationApplicationCountResponse.kt | 8 - .../datatypes/InstanceWithFederationState.kt | 14 - .../v1/x0/x0/datatypes/ListCommentLikes.kt | 1 - .../x0/datatypes/ListCommentLikesResponse.kt | 10 - .../v1/x0/x0/datatypes/ListCommunities.kt | 5 +- .../x0/datatypes/ListCommunitiesResponse.kt | 10 - .../datatypes/ListCommunityPendingFollows.kt | 3 +- .../ListCommunityPendingFollowsResponse.kt | 9 +- .../lemmyapi/v1/x0/x0/datatypes/ListMedia.kt | 1 - .../v1/x0/x0/datatypes/ListMediaResponse.kt | 10 - .../x0/x0/datatypes/ListMultiCommunities.kt | 9 +- .../datatypes/ListMultiCommunitiesResponse.kt | 8 - .../v1/x0/x0/datatypes/ListNotifications.kt | 3 +- .../x0/datatypes/ListNotificationsResponse.kt | 10 - .../v1/x0/x0/datatypes/ListPersonContent.kt | 5 +- .../x0/datatypes/ListPersonContentResponse.kt | 11 - .../v1/x0/x0/datatypes/ListPersonHidden.kt | 1 - .../x0/datatypes/ListPersonHiddenResponse.kt | 10 - .../v1/x0/x0/datatypes/ListPersonLiked.kt | 7 +- .../x0/datatypes/ListPersonLikedResponse.kt | 11 - .../v1/x0/x0/datatypes/ListPersonRead.kt | 1 - .../x0/x0/datatypes/ListPersonReadResponse.kt | 10 - .../v1/x0/x0/datatypes/ListPersonSaved.kt | 5 +- .../x0/datatypes/ListPersonSavedResponse.kt | 11 - .../v1/x0/x0/datatypes/ListPostLikes.kt | 1 - .../x0/x0/datatypes/ListPostLikesResponse.kt | 10 - .../datatypes/ListRegistrationApplications.kt | 1 - .../ListRegistrationApplicationsResponse.kt | 10 - .../v1/x0/x0/datatypes/ListReports.kt | 3 +- .../v1/x0/x0/datatypes/ListReportsResponse.kt | 11 - .../v1/x0/x0/datatypes/ListTaglines.kt | 1 - .../x0/x0/datatypes/ListTaglinesResponse.kt | 10 - .../lemmyapi/v1/x0/x0/datatypes/LocalSite.kt | 20 +- .../lemmyapi/v1/x0/x0/datatypes/LocalUser.kt | 12 +- .../lemmyapi/v1/x0/x0/datatypes/Login.kt | 1 + .../v1/x0/x0/datatypes/MarkManyPostsAsRead.kt | 2 +- .../v1/x0/x0/datatypes/ModAddToCommunity.kt | 13 - .../v1/x0/x0/datatypes/ModAddToCommunityId.kt | 3 - .../x0/x0/datatypes/ModAddToCommunityView.kt | 11 - .../v1/x0/x0/datatypes/ModBanFromCommunity.kt | 15 - .../x0/x0/datatypes/ModBanFromCommunityId.kt | 3 - .../x0/datatypes/ModBanFromCommunityView.kt | 11 - .../datatypes/ModChangeCommunityVisibility.kt | 13 - .../ModChangeCommunityVisibilityId.kt | 3 - .../ModChangeCommunityVisibilityView.kt | 10 - .../v1/x0/x0/datatypes/ModEditPost.kt | 2 +- .../v1/x0/x0/datatypes/ModFeaturePost.kt | 13 - .../v1/x0/x0/datatypes/ModFeaturePostId.kt | 3 - .../v1/x0/x0/datatypes/ModFeaturePostView.kt | 12 - .../v1/x0/x0/datatypes/ModLockCommentId.kt | 3 - .../v1/x0/x0/datatypes/ModLockCommentView.kt | 13 - .../v1/x0/x0/datatypes/ModLockPost.kt | 13 - .../v1/x0/x0/datatypes/ModLockPostId.kt | 3 - .../v1/x0/x0/datatypes/ModLockPostView.kt | 12 - .../v1/x0/x0/datatypes/ModRemoveComment.kt | 13 - .../v1/x0/x0/datatypes/ModRemoveCommentId.kt | 3 - .../x0/x0/datatypes/ModRemoveCommentView.kt | 13 - .../v1/x0/x0/datatypes/ModRemovePost.kt | 13 - .../v1/x0/x0/datatypes/ModRemovePostId.kt | 3 - .../v1/x0/x0/datatypes/ModRemovePostView.kt | 12 - .../x0/x0/datatypes/ModTransferCommunity.kt | 12 - .../x0/x0/datatypes/ModTransferCommunityId.kt | 3 - .../x0/datatypes/ModTransferCommunityView.kt | 11 - .../lemmyapi/v1/x0/x0/datatypes/Modlog.kt | 14 + .../x0/x0/datatypes/{TagId.kt => ModlogId.kt} | 2 +- .../lemmyapi/v1/x0/x0/datatypes/ModlogView.kt | 14 + .../v1/x0/x0/datatypes/MultiCommunity.kt | 6 +- ...FollowsCount.kt => MultiCommunityEntry.kt} | 3 +- .../x0/x0/datatypes/MultiCommunityFollow.kt | 2 +- ...tResponse.kt => MultiCommunityResponse.kt} | 4 +- .../v1/x0/x0/datatypes/MultiCommunityView.kt | 2 + .../lemmyapi/v1/x0/x0/datatypes/MyUserInfo.kt | 1 + .../v1/x0/x0/datatypes/Notification.kt | 3 +- .../{GetPostsResponse.kt => PagedResponse.kt} | 4 +- .../v1/x0/x0/datatypes/PendingFollow.kt | 3 +- .../v1/x0/x0/datatypes/PendingFollowerView.kt | 12 + .../lemmyapi/v1/x0/x0/datatypes/Person.kt | 1 + ...BanPersonResponse.kt => PersonResponse.kt} | 3 +- .../v1/x0/x0/datatypes/PluginMetadata.kt | 4 +- .../lemmyapi/v1/x0/x0/datatypes/Post.kt | 2 +- .../v1/x0/x0/datatypes/PostActions.kt | 10 +- .../v1/x0/x0/datatypes/PostReportView.kt | 2 + .../lemmyapi/v1/x0/x0/datatypes/PostView.kt | 2 +- .../x0/datatypes/PrivateMessageReportView.kt | 1 + .../v1/x0/x0/datatypes/PublicOAuthProvider.kt | 12 +- .../lemmyapi/v1/x0/x0/datatypes/Register.kt | 1 + .../x0/datatypes/RegistrationApplication.kt | 1 + .../x0/x0/datatypes/ResolveObjectResponse.kt} | 11 +- .../v1/x0/x0/datatypes/SaveUserSettings.kt | 11 +- .../lemmyapi/v1/x0/x0/datatypes/Search.kt | 7 +- .../v1/x0/x0/datatypes/SearchResponse.kt | 3 +- .../lemmyapi/v1/x0/x0/datatypes/Site.kt | 2 +- .../lemmyapi/v1/x0/x0/datatypes/TagsView.kt | 3 - .../x0/x0/datatypes/UnreadCountsResponse.kt | 11 + .../v1/x0/x0/datatypes/UpdateCommunityTag.kt | 10 - .../x0/datatypes/UpdatePostNotifications.kt | 9 - .../v1/x0/x0/datatypes/UserSettingsBackup.kt | 2 + .../lemmyapi/v1/x0/x0/datatypes/VoteView.kt | 2 +- 392 files changed, 1005 insertions(+), 3348 deletions(-) delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminAllowInstance.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminAllowInstanceId.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminAllowInstanceView.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminBan.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminBanView.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminBlockInstance.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminBlockInstanceId.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminBlockInstanceView.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminListUsersResponse.kt rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/{OAuthProvider.kt => AdminOAuthProvider.kt} (95%) delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgeCommentId.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgeCommunity.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgeCommunityId.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgeCommunityView.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgePerson.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgePersonId.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgePersonView.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgePost.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgePostId.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgePostView.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminRemoveCommunity.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminRemoveCommunityView.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BanFromCommunityResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BanPersonResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BannedPersonsResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BlockCommunityResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BlockPersonResponse.kt rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/{Tag.kt => CommunityTag.kt} (62%) rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/{TagsView.kt => CommunityTagId.kt} (56%) create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityTagsView.kt rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/{ModLockComment.kt => CreateCommentWarning.kt} (67%) rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/{AdminPurgeComment.kt => CreatePostWarning.kt} (68%) rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/{UpdateCommunityNotifications.kt => EditCommunityNotifications.kt} (91%) create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditCommunityTag.kt rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/{UpdateMultiCommunity.kt => EditMultiCommunity.kt} (81%) rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/{ModFeaturePost.kt => EditPostNotifications.kt} (57%) rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/{UpdateTagline.kt => EditTagline.kt} (91%) rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/{UpdateTotp.kt => EditTotp.kt} (92%) rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/{UpdateTotpResponse.kt => EditTotpResponse.kt} (88%) create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/FederatedInstanceView.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/FederatedInstances.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/FederationAllowList.kt rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/{ReadableFederationState.kt => FederationQueueState.kt} (85%) delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetCommentsResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetCommentsSlimResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetCommunityPendingFollowsCountResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetFederatedInstances.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetFederatedInstancesResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetModlogResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetReportCount.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetUnreadRegistrationApplicationCountResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommentLikesResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommunitiesResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListMediaResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListMultiCommunitiesResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListNotificationsResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonContentResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonLikedResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonReadResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonSavedResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPostLikesResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListRegistrationApplicationsResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListReportsResponse.kt rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/{AdminAdd.kt => ListTaglines.kt} (57%) delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListTaglinesResponse.kt rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/{UpdatePostNotifications.kt => MarkPostAsRead.kt} (69%) delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModAddToCommunity.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModAddToCommunityView.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModBanFromCommunity.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModBanFromCommunityView.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModChangeCommunityVisibility.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModChangeCommunityVisibilityView.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModFeaturePostView.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModLockCommentView.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModLockPost.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModLockPostView.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModRemoveComment.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModRemoveCommentView.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModRemovePost.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModRemovePostView.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModTransferCommunity.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModTransferCommunityView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Modlog.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModlogCombinedView.kt rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/{TagId.kt => ModlogId.kt} (61%) create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModlogView.kt rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/{GetCommunityPendingFollowsCount.kt => MultiCommunityEntry.kt} (71%) rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/{GetReportCountResponse.kt => MultiCommunityResponse.kt} (72%) rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/{GetPostsResponse.kt => PagedResponse.kt} (83%) create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PendingFollowerView.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonCommentMention.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonCommentMentionId.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonCommentMentionView.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonContentCombinedView.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonLikedCombinedView.kt rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/{GetUnreadCountResponse.kt => PersonResponse.kt} (73%) delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonSavedCombinedView.kt rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/{AdminAddView.kt => UnreadCountsResponse.kt} (52%) delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UpdateCommunityTag.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/GetFederatedInstancesKind.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/ModlogKind.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/MultiCommunityListingType.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/ModlogCombinedView.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAdd.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAddView.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAllowInstance.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAllowInstanceId.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAllowInstanceView.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBan.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBanId.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBanView.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBlockInstance.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBlockInstanceId.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBlockInstanceView.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminListUsersResponse.kt rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/{OAuthProvider.kt => AdminOAuthProvider.kt} (93%) delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeCommentId.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeCommentView.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeCommunity.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeCommunityId.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeCommunityView.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePersonId.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePersonView.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePost.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePostId.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePostView.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminRemoveCommunity.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminRemoveCommunityId.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminRemoveCommunityView.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BanFromCommunityResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BlockCommunityResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BlockPersonResponse.kt rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/{Tag.kt => CommunityTag.kt} (56%) rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/{AdminAddId.kt => CommunityTagId.kt} (55%) create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityTagsView.kt rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/{ModLockComment.kt => CreateCommentWarning.kt} (51%) rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/{AdminPurgeComment.kt => CreatePostWarning.kt} (53%) rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/{UpdateCommunityNotifications.kt => EditCommunityNotifications.kt} (54%) create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditCommunityTag.kt rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/{UpdateMultiCommunity.kt => EditMultiCommunity.kt} (72%) create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditPostNotifications.kt rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/{UpdateTagline.kt => EditTagline.kt} (81%) rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/{UpdateTotp.kt => EditTotp.kt} (83%) rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/{UpdateTotpResponse.kt => EditTotpResponse.kt} (77%) create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/FederatedInstanceView.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/FederatedInstances.kt rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/{AdminPurgePerson.kt => FederationAllowList.kt} (52%) rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/{ReadableFederationState.kt => FederationQueueState.kt} (78%) delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetCommentsResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetCommentsSlimResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetFederatedInstances.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetFederatedInstancesResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetModlogResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetReportCount.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetReportCountResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetUnreadCountResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetUnreadRegistrationApplicationCountResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/InstanceWithFederationState.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommentLikesResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommunitiesResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListMediaResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListMultiCommunitiesResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListNotificationsResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonContentResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonHiddenResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonLikedResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonReadResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonSavedResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPostLikesResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListRegistrationApplicationsResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListReportsResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListTaglinesResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddToCommunity.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddToCommunityId.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddToCommunityView.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanFromCommunity.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanFromCommunityId.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanFromCommunityView.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModChangeCommunityVisibility.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModChangeCommunityVisibilityId.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModChangeCommunityVisibilityView.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModFeaturePost.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModFeaturePostId.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModFeaturePostView.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockCommentId.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockCommentView.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockPost.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockPostId.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockPostView.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveComment.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveCommentId.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveCommentView.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemovePost.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemovePostId.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemovePostView.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModTransferCommunity.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModTransferCommunityId.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModTransferCommunityView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Modlog.kt rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/{TagId.kt => ModlogId.kt} (59%) create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModlogView.kt rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/{GetCommunityPendingFollowsCount.kt => MultiCommunityEntry.kt} (62%) rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/{GetCommunityPendingFollowsCountResponse.kt => MultiCommunityResponse.kt} (53%) rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/{GetPostsResponse.kt => PagedResponse.kt} (74%) create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PendingFollowerView.kt rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/{BanPersonResponse.kt => PersonResponse.kt} (69%) rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/{datatypes/AdminPurgeCommentView.kt => v1/x0/x0/datatypes/ResolveObjectResponse.kt} (52%) delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/TagsView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UnreadCountsResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UpdateCommunityTag.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UpdatePostNotifications.kt diff --git a/ACTIVE_CHANGES.md b/ACTIVE_CHANGES.md index 5c59899b..2f378942 100644 --- a/ACTIVE_CHANGES.md +++ b/ACTIVE_CHANGES.md @@ -30,3 +30,17 @@ But each has different behaviour. The old behaviour is to hide all voting types - Instance block support - 2FA rework, one must now provide a valid 2FA code to enable 2FA. Added routes to support this. + + +TODO: cleanup + +## 1.0.0 too many to write down... +https://github.com/LemmyNet/lemmy/issues/6292 tags to CommunityTags +https://github.com/LemmyNet/lemmy/issues/6291 description to summary +https://github.com/LemmyNet/lemmy/issues/6150 page back removal +https://github.com/LemmyNet/lemmy/issues/6062 All enums use snake_case now + +TODO: +media changes +enum changes +combined types diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x18x5.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x18x5.kt index 39c71fbd..fcd9716d 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x18x5.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x18x5.kt @@ -141,19 +141,6 @@ internal interface MapperGenerator0x18x5 { fun toUni(d: AddAdminResponse): it.vercruysse.lemmyapi.datatypes.AddAdminResponse fun toUni(d: AddModToCommunityResponse): it.vercruysse.lemmyapi.datatypes.AddModToCommunityResponse - fun toUni(d: AdminPurgeComment): it.vercruysse.lemmyapi.datatypes.AdminPurgeComment - fun toUni(d: AdminPurgeCommentView): it.vercruysse.lemmyapi.datatypes.AdminPurgeCommentView - fun toUni(d: AdminPurgeCommunity): it.vercruysse.lemmyapi.datatypes.AdminPurgeCommunity - fun toUni(d: AdminPurgeCommunityView): it.vercruysse.lemmyapi.datatypes.AdminPurgeCommunityView - fun toUni(d: AdminPurgePerson): it.vercruysse.lemmyapi.datatypes.AdminPurgePerson - fun toUni(d: AdminPurgePersonView): it.vercruysse.lemmyapi.datatypes.AdminPurgePersonView - fun toUni(d: AdminPurgePost): it.vercruysse.lemmyapi.datatypes.AdminPurgePost - fun toUni(d: AdminPurgePostView): it.vercruysse.lemmyapi.datatypes.AdminPurgePostView - fun toUni(d: BanFromCommunityResponse): it.vercruysse.lemmyapi.datatypes.BanFromCommunityResponse - fun toUni(d: BannedPersonsResponse): it.vercruysse.lemmyapi.datatypes.BannedPersonsResponse - fun toUni(d: BanPersonResponse): it.vercruysse.lemmyapi.datatypes.BanPersonResponse - fun toUni(d: BlockCommunityResponse): it.vercruysse.lemmyapi.datatypes.BlockCommunityResponse - fun toUni(d: BlockPersonResponse): it.vercruysse.lemmyapi.datatypes.BlockPersonResponse fun toUni(d: CaptchaResponse): it.vercruysse.lemmyapi.datatypes.CaptchaResponse fun toUni(d: Comment): it.vercruysse.lemmyapi.datatypes.Comment @@ -171,47 +158,17 @@ internal interface MapperGenerator0x18x5 { fun toUni(d: CustomEmojiKeyword): it.vercruysse.lemmyapi.datatypes.CustomEmojiKeyword fun toUni(d: CustomEmojiResponse): it.vercruysse.lemmyapi.datatypes.CustomEmojiResponse fun toUni(d: CustomEmojiView): it.vercruysse.lemmyapi.datatypes.CustomEmojiView - fun toUni(d: FederatedInstances): it.vercruysse.lemmyapi.datatypes.FederatedInstances fun toUni(d: GetCaptchaResponse): it.vercruysse.lemmyapi.datatypes.GetCaptchaResponse - fun toUni(d: GetCommentsResponse): it.vercruysse.lemmyapi.datatypes.GetCommentsResponse fun toUni(d: GetCommunityResponse): it.vercruysse.lemmyapi.datatypes.GetCommunityResponse - fun toUni(d: GetFederatedInstancesResponse): it.vercruysse.lemmyapi.datatypes.GetFederatedInstancesResponse - fun toUni(d: GetModlogResponse): it.vercruysse.lemmyapi.datatypes.GetModlogResponse fun toUni(d: GetPersonDetailsResponse): it.vercruysse.lemmyapi.datatypes.GetPersonDetailsResponse fun toUni(d: GetPostResponse): it.vercruysse.lemmyapi.datatypes.GetPostResponse - fun toUni(d: GetPostsResponse): it.vercruysse.lemmyapi.datatypes.GetPostsResponse - fun toUni(d: GetReportCountResponse): it.vercruysse.lemmyapi.datatypes.GetReportCountResponse fun toUni(d: GetSiteMetadataResponse): it.vercruysse.lemmyapi.datatypes.GetSiteMetadataResponse - fun toUni(d: GetUnreadCountResponse): it.vercruysse.lemmyapi.datatypes.GetUnreadCountResponse - fun toUni(d: GetUnreadRegistrationApplicationCountResponse): it.vercruysse.lemmyapi.datatypes.GetUnreadRegistrationApplicationCountResponse fun toUni(d: Instance): it.vercruysse.lemmyapi.datatypes.Instance fun toUni(d: Language): it.vercruysse.lemmyapi.datatypes.Language - fun toUni(d: ListCommunitiesResponse): it.vercruysse.lemmyapi.datatypes.ListCommunitiesResponse - fun toUni(d: ListRegistrationApplicationsResponse): it.vercruysse.lemmyapi.datatypes.ListRegistrationApplicationsResponse fun toUni(d: LocalUserView): it.vercruysse.lemmyapi.datatypes.LocalUserView fun toUni(d: LoginResponse): it.vercruysse.lemmyapi.datatypes.LoginResponse - fun toUni(d: ModAdd): it.vercruysse.lemmyapi.datatypes.AdminAdd - fun toUni(d: ModAddCommunity): it.vercruysse.lemmyapi.datatypes.ModAddToCommunity - fun toUni(d: ModAddCommunityView): it.vercruysse.lemmyapi.datatypes.ModAddToCommunityView - fun toUni(d: ModAddView): it.vercruysse.lemmyapi.datatypes.AdminAddView - fun toUni(d: ModBan): it.vercruysse.lemmyapi.datatypes.AdminBan - fun toUni(d: ModBanFromCommunity): it.vercruysse.lemmyapi.datatypes.ModBanFromCommunity - fun toUni(d: ModBanFromCommunityView): it.vercruysse.lemmyapi.datatypes.ModBanFromCommunityView - fun toUni(d: ModBanView): it.vercruysse.lemmyapi.datatypes.AdminBanView - fun toUni(d: ModFeaturePost): it.vercruysse.lemmyapi.datatypes.ModFeaturePost - fun toUni(d: ModFeaturePostView): it.vercruysse.lemmyapi.datatypes.ModFeaturePostView - fun toUni(d: ModLockPost): it.vercruysse.lemmyapi.datatypes.ModLockPost - fun toUni(d: ModLockPostView): it.vercruysse.lemmyapi.datatypes.ModLockPostView - fun toUni(d: ModRemoveComment): it.vercruysse.lemmyapi.datatypes.ModRemoveComment - fun toUni(d: ModRemoveCommentView): it.vercruysse.lemmyapi.datatypes.ModRemoveCommentView - fun toUni(d: ModRemoveCommunity): it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunity - fun toUni(d: ModRemoveCommunityView): it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunityView - fun toUni(d: ModRemovePost): it.vercruysse.lemmyapi.datatypes.ModRemovePost - fun toUni(d: ModRemovePostView): it.vercruysse.lemmyapi.datatypes.ModRemovePostView - fun toUni(d: ModTransferCommunity): it.vercruysse.lemmyapi.datatypes.ModTransferCommunity - fun toUni(d: ModTransferCommunityView): it.vercruysse.lemmyapi.datatypes.ModTransferCommunityView fun toUni(d: Person): it.vercruysse.lemmyapi.datatypes.Person @@ -361,8 +318,6 @@ internal interface MapperGenerator0x18x5 { @Konvert(mappings = [Mapping(target = "auth", constant = "auth")]) fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPosts): GetPosts - @Konvert(mappings = [Mapping(target = "auth", constant = "auth")]) - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetReportCount): GetReportCount fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetSiteMetadata): GetSiteMetadata @Konvert(mappings = [Mapping(target = "auth", constant = "auth")]) diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x0.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x0.kt index 03da6d10..788cefe0 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x0.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x0.kt @@ -188,7 +188,7 @@ internal interface MapperGenerator0x19x0 { fun toUni(d: PrivateMessageReportView): it.vercruysse.lemmyapi.datatypes.PrivateMessageReportView fun toUni(d: PrivateMessageResponse): it.vercruysse.lemmyapi.datatypes.PrivateMessageResponse fun toUni(d: PrivateMessageView): it.vercruysse.lemmyapi.datatypes.PrivateMessageView - fun toUni(d: ReadableFederationState): it.vercruysse.lemmyapi.datatypes.ReadableFederationState + fun toUni(d: ReadableFederationState): it.vercruysse.lemmyapi.datatypes.FederationQueueState fun toUni(d: RegistrationApplication): it.vercruysse.lemmyapi.datatypes.RegistrationApplication fun toUni(d: RegistrationApplicationResponse): it.vercruysse.lemmyapi.datatypes.RegistrationApplicationResponse fun toUni(d: RegistrationApplicationView): it.vercruysse.lemmyapi.datatypes.RegistrationApplicationView @@ -198,7 +198,7 @@ internal interface MapperGenerator0x19x0 { fun toUni(d: SiteResponse): it.vercruysse.lemmyapi.datatypes.SiteResponse fun toUni(d: SiteView): it.vercruysse.lemmyapi.datatypes.SiteView fun toUni(d: Tagline): it.vercruysse.lemmyapi.datatypes.Tagline - fun toUni(d: UpdateTotpResponse): it.vercruysse.lemmyapi.datatypes.UpdateTotpResponse + fun toUni(d: UpdateTotpResponse): it.vercruysse.lemmyapi.datatypes.EditTotpResponse // body mappings fun fromUni(d: it.vercruysse.lemmyapi.datatypes.AddAdmin): AddAdmin @@ -270,6 +270,6 @@ internal interface MapperGenerator0x19x0 { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.SaveUserSettings): SaveUserSettings fun fromUni(d: it.vercruysse.lemmyapi.datatypes.Search): Search fun fromUni(d: it.vercruysse.lemmyapi.datatypes.TransferCommunity): TransferCommunity - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.UpdateTotp): UpdateTotp + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.EditTotp): UpdateTotp fun fromUni(d: it.vercruysse.lemmyapi.datatypes.VerifyEmail): VerifyEmail } diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt index 0e4c0cd8..b7acaa77 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt @@ -111,7 +111,7 @@ internal interface MapperGenerator0x19x11 { fun toUni(d: PrivateMessageReportView): it.vercruysse.lemmyapi.datatypes.PrivateMessageReportView fun toUni(d: PrivateMessageResponse): it.vercruysse.lemmyapi.datatypes.PrivateMessageResponse fun toUni(d: PrivateMessageView): it.vercruysse.lemmyapi.datatypes.PrivateMessageView - fun toUni(d: ReadableFederationState): it.vercruysse.lemmyapi.datatypes.ReadableFederationState + fun toUni(d: ReadableFederationState): it.vercruysse.lemmyapi.datatypes.FederationQueueState fun toUni(d: RegistrationApplication): it.vercruysse.lemmyapi.datatypes.RegistrationApplication fun toUni(d: RegistrationApplicationResponse): it.vercruysse.lemmyapi.datatypes.RegistrationApplicationResponse fun toUni(d: RegistrationApplicationView): it.vercruysse.lemmyapi.datatypes.RegistrationApplicationView @@ -121,7 +121,7 @@ internal interface MapperGenerator0x19x11 { fun toUni(d: SiteResponse): it.vercruysse.lemmyapi.datatypes.SiteResponse fun toUni(d: SiteView): it.vercruysse.lemmyapi.datatypes.SiteView fun toUni(d: Tagline): it.vercruysse.lemmyapi.datatypes.Tagline - fun toUni(d: UpdateTotpResponse): it.vercruysse.lemmyapi.datatypes.UpdateTotpResponse + fun toUni(d: UpdateTotpResponse): it.vercruysse.lemmyapi.datatypes.EditTotpResponse fun toUni(d: VoteView): it.vercruysse.lemmyapi.datatypes.VoteView // body mappings @@ -199,6 +199,6 @@ internal interface MapperGenerator0x19x11 { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.SaveUserSettings): SaveUserSettings fun fromUni(d: it.vercruysse.lemmyapi.datatypes.Search): Search fun fromUni(d: it.vercruysse.lemmyapi.datatypes.TransferCommunity): TransferCommunity - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.UpdateTotp): UpdateTotp + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.EditTotp): UpdateTotp fun fromUni(d: it.vercruysse.lemmyapi.datatypes.VerifyEmail): VerifyEmail } diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x3.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x3.kt index a3b67c4f..f76f3588 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x3.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x3.kt @@ -189,7 +189,7 @@ internal interface MapperGenerator0x19x3 { fun toUni(d: PrivateMessageReportView): it.vercruysse.lemmyapi.datatypes.PrivateMessageReportView fun toUni(d: PrivateMessageResponse): it.vercruysse.lemmyapi.datatypes.PrivateMessageResponse fun toUni(d: PrivateMessageView): it.vercruysse.lemmyapi.datatypes.PrivateMessageView - fun toUni(d: ReadableFederationState): it.vercruysse.lemmyapi.datatypes.ReadableFederationState + fun toUni(d: ReadableFederationState): it.vercruysse.lemmyapi.datatypes.FederationQueueState fun toUni(d: RegistrationApplication): it.vercruysse.lemmyapi.datatypes.RegistrationApplication fun toUni(d: RegistrationApplicationResponse): it.vercruysse.lemmyapi.datatypes.RegistrationApplicationResponse fun toUni(d: RegistrationApplicationView): it.vercruysse.lemmyapi.datatypes.RegistrationApplicationView @@ -199,7 +199,7 @@ internal interface MapperGenerator0x19x3 { fun toUni(d: SiteResponse): it.vercruysse.lemmyapi.datatypes.SiteResponse fun toUni(d: SiteView): it.vercruysse.lemmyapi.datatypes.SiteView fun toUni(d: Tagline): it.vercruysse.lemmyapi.datatypes.Tagline - fun toUni(d: UpdateTotpResponse): it.vercruysse.lemmyapi.datatypes.UpdateTotpResponse + fun toUni(d: UpdateTotpResponse): it.vercruysse.lemmyapi.datatypes.EditTotpResponse // body mappings fun fromUni(d: it.vercruysse.lemmyapi.datatypes.AddAdmin): AddAdmin @@ -273,7 +273,7 @@ internal interface MapperGenerator0x19x3 { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.SaveUserSettings): SaveUserSettings fun fromUni(d: it.vercruysse.lemmyapi.datatypes.Search): Search fun fromUni(d: it.vercruysse.lemmyapi.datatypes.TransferCommunity): TransferCommunity - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.UpdateTotp): UpdateTotp + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.EditTotp): UpdateTotp fun fromUni(d: it.vercruysse.lemmyapi.datatypes.VerifyEmail): VerifyEmail } diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt index 3b1f86ca..d79fe1d4 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt @@ -110,7 +110,7 @@ internal interface MapperGenerator0x19x4 { fun toUni(d: PrivateMessageReportView): it.vercruysse.lemmyapi.datatypes.PrivateMessageReportView fun toUni(d: PrivateMessageResponse): it.vercruysse.lemmyapi.datatypes.PrivateMessageResponse fun toUni(d: PrivateMessageView): it.vercruysse.lemmyapi.datatypes.PrivateMessageView - fun toUni(d: ReadableFederationState): it.vercruysse.lemmyapi.datatypes.ReadableFederationState + fun toUni(d: ReadableFederationState): it.vercruysse.lemmyapi.datatypes.FederationQueueState fun toUni(d: RegistrationApplication): it.vercruysse.lemmyapi.datatypes.RegistrationApplication fun toUni(d: RegistrationApplicationResponse): it.vercruysse.lemmyapi.datatypes.RegistrationApplicationResponse fun toUni(d: RegistrationApplicationView): it.vercruysse.lemmyapi.datatypes.RegistrationApplicationView @@ -120,7 +120,7 @@ internal interface MapperGenerator0x19x4 { fun toUni(d: SiteResponse): it.vercruysse.lemmyapi.datatypes.SiteResponse fun toUni(d: SiteView): it.vercruysse.lemmyapi.datatypes.SiteView fun toUni(d: Tagline): it.vercruysse.lemmyapi.datatypes.Tagline - fun toUni(d: UpdateTotpResponse): it.vercruysse.lemmyapi.datatypes.UpdateTotpResponse + fun toUni(d: UpdateTotpResponse): it.vercruysse.lemmyapi.datatypes.EditTotpResponse fun toUni(d: VoteView): it.vercruysse.lemmyapi.datatypes.VoteView // body mappings @@ -197,6 +197,6 @@ internal interface MapperGenerator0x19x4 { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.SaveUserSettings): SaveUserSettings fun fromUni(d: it.vercruysse.lemmyapi.datatypes.Search): Search fun fromUni(d: it.vercruysse.lemmyapi.datatypes.TransferCommunity): TransferCommunity - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.UpdateTotp): UpdateTotp + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.EditTotp): UpdateTotp fun fromUni(d: it.vercruysse.lemmyapi.datatypes.VerifyEmail): VerifyEmail } diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt index 32193e91..7d87c418 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt @@ -111,7 +111,7 @@ internal interface MapperGenerator0x19x6 { fun toUni(d: PrivateMessageReportView): it.vercruysse.lemmyapi.datatypes.PrivateMessageReportView fun toUni(d: PrivateMessageResponse): it.vercruysse.lemmyapi.datatypes.PrivateMessageResponse fun toUni(d: PrivateMessageView): it.vercruysse.lemmyapi.datatypes.PrivateMessageView - fun toUni(d: ReadableFederationState): it.vercruysse.lemmyapi.datatypes.ReadableFederationState + fun toUni(d: ReadableFederationState): it.vercruysse.lemmyapi.datatypes.FederationQueueState fun toUni(d: RegistrationApplication): it.vercruysse.lemmyapi.datatypes.RegistrationApplication fun toUni(d: RegistrationApplicationResponse): it.vercruysse.lemmyapi.datatypes.RegistrationApplicationResponse fun toUni(d: RegistrationApplicationView): it.vercruysse.lemmyapi.datatypes.RegistrationApplicationView @@ -121,7 +121,7 @@ internal interface MapperGenerator0x19x6 { fun toUni(d: SiteResponse): it.vercruysse.lemmyapi.datatypes.SiteResponse fun toUni(d: SiteView): it.vercruysse.lemmyapi.datatypes.SiteView fun toUni(d: Tagline): it.vercruysse.lemmyapi.datatypes.Tagline - fun toUni(d: UpdateTotpResponse): it.vercruysse.lemmyapi.datatypes.UpdateTotpResponse + fun toUni(d: UpdateTotpResponse): it.vercruysse.lemmyapi.datatypes.EditTotpResponse fun toUni(d: VoteView): it.vercruysse.lemmyapi.datatypes.VoteView // body mappings @@ -199,6 +199,6 @@ internal interface MapperGenerator0x19x6 { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.SaveUserSettings): SaveUserSettings fun fromUni(d: it.vercruysse.lemmyapi.datatypes.Search): Search fun fromUni(d: it.vercruysse.lemmyapi.datatypes.TransferCommunity): TransferCommunity - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.UpdateTotp): UpdateTotp + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.EditTotp): UpdateTotp fun fromUni(d: it.vercruysse.lemmyapi.datatypes.VerifyEmail): VerifyEmail } diff --git a/GeneratorScripts/src/main/kotlin/autogenscripts/GenTypes.kt b/GeneratorScripts/src/main/kotlin/autogenscripts/GenTypes.kt index e41ce766..24f676b8 100644 --- a/GeneratorScripts/src/main/kotlin/autogenscripts/GenTypes.kt +++ b/GeneratorScripts/src/main/kotlin/autogenscripts/GenTypes.kt @@ -243,6 +243,6 @@ fun downloadTypes( } fun main() { - downloadTypes("1.0.0-error-status-code.0", "v1/x0/x0") + downloadTypes("1.0.0-suggested-community-fixes.0", "v1/x0/x1") exitProcess(0) } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt index 290e6a54..720b801b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt @@ -39,7 +39,7 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version * * @GET("modlog") */ - abstract suspend fun getModlog(form: GetModlog): Result + abstract suspend fun getModlog(form: GetModlog): Result> /** * Search lemmy. @@ -88,7 +88,7 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version * * @GET("community/list") */ - abstract suspend fun listCommunities(form: ListCommunities): Result + abstract suspend fun listCommunities(form: ListCommunities): Result> /** * Follow / subscribe to a community. @@ -102,7 +102,7 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version * * @POST("community/block") */ - abstract suspend fun blockCommunity(form: BlockCommunity): Result + abstract suspend fun blockCommunity(form: BlockCommunity): Result /** * Delete a community. @@ -130,7 +130,7 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version * * @POST("community/ban_user") */ - abstract suspend fun banFromCommunity(form: BanFromCommunity): Result + abstract suspend fun banFromCommunity(form: BanFromCommunity): Result /** * Add a moderator to your community. @@ -144,7 +144,7 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version * * @GET("federated_instances") */ - abstract suspend fun getFederatedInstances(): Result + abstract suspend fun getFederatedInstances(form: GetFederatedInstances): Result> /** * Get / fetch a post. @@ -172,7 +172,7 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version * * @GET("post/list") */ - abstract suspend fun getPosts(form: GetPosts): Result + abstract suspend fun getPosts(form: GetPosts): Result> /** * Delete a post. @@ -240,7 +240,7 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version /** * List reports. */ - abstract suspend fun listReports(form: ListReports): Result + abstract suspend fun listReports(form: ListReports): Result> /** * Fetch metadata for any given site. @@ -275,7 +275,7 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version * * @GET("comment/list") */ - abstract suspend fun getComments(form: GetComments): Result + abstract suspend fun getComments(form: GetComments): Result> /** * Delete a comment. @@ -390,28 +390,29 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version /** * List notifications. */ - abstract suspend fun listNotifications(form: ListNotifications): Result + abstract suspend fun listNotifications(form: ListNotifications): Result> /** * Ban a person from your site. * - * @POST("user/ban") + * @POST("admin/ban") */ - abstract suspend fun banPerson(form: BanPerson): Result + abstract suspend fun banPerson(form: BanPerson): Result +// TODO: merged into list of users /** * Get a list of banned users * * @GET("user/banned") */ - abstract suspend fun getBannedPersons(): Result + abstract suspend fun getBannedPersons(): Result> /** * Block a person. * * @POST("user/block") */ - abstract suspend fun blockPerson(form: BlockPerson): Result + abstract suspend fun blockPerson(form: BlockPerson): Result /** * Log into lemmy. @@ -462,19 +463,12 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version */ abstract suspend fun changePassword(form: ChangePassword): Result - /** - * Get counts for your reports - * - * @GET("user/report_count") - */ - abstract suspend fun getReportCount(form: GetReportCount): Result - /** * Get your unread counts * - * @GET("user/unread_count") + * @GET("account/unread_counts") */ - abstract suspend fun getUnreadCount(): Result + abstract suspend fun getUnreadCounts(): Result /** * Verify your email @@ -504,19 +498,12 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version */ abstract suspend fun addAdmin(form: AddAdmin): Result - /** - * Get the unread registration applications count. - * - * @GET("admin/registration_application/count") - */ - abstract suspend fun getUnreadRegistrationApplicationCount(): Result - /** * List the registration applications. * * @GET("admin/registration_application/list") */ - abstract suspend fun listRegistrationApplications(form: ListRegistrationApplications): Result + abstract suspend fun listRegistrationApplications(form: ListRegistrationApplications): Result> /** * Approve a registration application @@ -606,7 +593,7 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version * * @POST("user/totp/update") */ - abstract suspend fun updateTotp(form: UpdateTotp): Result + abstract suspend fun updateTotp(form: EditTotp): Result /** * Export a backup of your user settings, including your saved content, @@ -656,28 +643,28 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version * * @GET("post/like/list") */ - abstract suspend fun listPostLikes(form: ListPostLikes): Result + abstract suspend fun listPostLikes(form: ListPostLikes): Result> /** * List a comment's likes. Admin-only. * * @GET("comment/like/list") */ - abstract suspend fun listCommentLikes(form: ListCommentLikes): Result + abstract suspend fun listCommentLikes(form: ListCommentLikes): Result> /** * List all the media for your user * * @GET("account/list_media") */ - abstract suspend fun listMedia(form: ListMedia): Result + abstract suspend fun listMedia(form: ListMedia): Result> /** * List all the media known to your instance. * * @GET("admin/list_all_media") */ - abstract suspend fun listAllMedia(form: ListMedia): Result + abstract suspend fun listAllMedia(form: ListMedia): Result> /** * Hide a post from list views. diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminAllowInstance.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminAllowInstance.kt deleted file mode 100644 index 629789b0..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminAllowInstance.kt +++ /dev/null @@ -1,16 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.CommonParcelize -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -@CommonParcelize -@Serializable -data class AdminAllowInstance( - val id: AdminAllowInstanceId, - val instance_id: InstanceId, - val admin_person_id: PersonId, - val allowed: Boolean, - val reason: String, - val published_at: String, -): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminAllowInstanceId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminAllowInstanceId.kt deleted file mode 100644 index 054f5d74..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminAllowInstanceId.kt +++ /dev/null @@ -1,3 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -typealias AdminAllowInstanceId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminAllowInstanceView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminAllowInstanceView.kt deleted file mode 100644 index c02e84ec..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminAllowInstanceView.kt +++ /dev/null @@ -1,13 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.CommonParcelize -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -@CommonParcelize -@Serializable -data class AdminAllowInstanceView( - val admin_allow_instance: AdminAllowInstance, - val instance: Instance, - val admin: Person? = null, -): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminBan.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminBan.kt deleted file mode 100644 index 9ab948b7..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminBan.kt +++ /dev/null @@ -1,21 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.Identity -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -@CommonParcelize -@Serializable -data class AdminBan( - override val id: Long, - val mod_person_id: PersonId, - val other_person_id: PersonId, - val reason: String? = null, - val banned: Boolean, - val expires_at: String? = null, - val published_at: String, - /** Added in Lemmy 1.0.0 */ - val instance_id: InstanceId, -) : DatatypeRoot, Identity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminBanView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminBanView.kt deleted file mode 100644 index 0e98d3aa..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminBanView.kt +++ /dev/null @@ -1,18 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.Identity -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -@CommonParcelize -@Serializable -data class AdminBanView( - val admin_ban: AdminBan, - val moderator: Person? = null, - val other_person: Person, -) : DatatypeRoot, Identity { - override val id: Long - get() = admin_ban.id -} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminBlockInstance.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminBlockInstance.kt deleted file mode 100644 index 93354a20..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminBlockInstance.kt +++ /dev/null @@ -1,17 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.CommonParcelize -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -@CommonParcelize -@Serializable -data class AdminBlockInstance( - val id: AdminBlockInstanceId, - val instance_id: InstanceId, - val admin_person_id: PersonId, - val blocked: Boolean, - val reason: String, - val expires_at: String? = null, - val published_at: String, -): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminBlockInstanceId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminBlockInstanceId.kt deleted file mode 100644 index 2b5431bc..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminBlockInstanceId.kt +++ /dev/null @@ -1,3 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -typealias AdminBlockInstanceId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminBlockInstanceView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminBlockInstanceView.kt deleted file mode 100644 index 461fe542..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminBlockInstanceView.kt +++ /dev/null @@ -1,13 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.CommonParcelize -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -@CommonParcelize -@Serializable -data class AdminBlockInstanceView( - val admin_block_instance: AdminBlockInstance, - val instance: Instance, - val admin: Person? = null, -): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminListUsers.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminListUsers.kt index 31909302..4ea96370 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminListUsers.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminListUsers.kt @@ -9,6 +9,7 @@ import kotlinx.serialization.Serializable data class AdminListUsers( val banned_only: Boolean? = null, val page_cursor: PaginationCursor? = null, - val page_back: Boolean? = null, + // TODO: AdminListSortType + val sort: String? /* "new" | "old" */ = null, val limit: Long? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminListUsersResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminListUsersResponse.kt deleted file mode 100644 index b47bdaf9..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminListUsersResponse.kt +++ /dev/null @@ -1,13 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.CommonParcelize -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -@CommonParcelize -@Serializable -internal data class AdminListUsersResponse( - val users: List, - val next_page: PaginationCursor? = null, - val prev_page: PaginationCursor? = null, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/OAuthProvider.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminOAuthProvider.kt similarity index 95% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/OAuthProvider.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminOAuthProvider.kt index 8b07c17b..b3e9335c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/OAuthProvider.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminOAuthProvider.kt @@ -6,7 +6,7 @@ import kotlinx.serialization.Serializable @CommonParcelize @Serializable -data class OAuthProvider( +data class AdminOAuthProvider( val id: OAuthProviderId, val display_name: String, val issuer: String, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgeCommentId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgeCommentId.kt deleted file mode 100644 index bcadab43..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgeCommentId.kt +++ /dev/null @@ -1,3 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -typealias AdminPurgeCommentId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgeCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgeCommunity.kt deleted file mode 100644 index 3c0c6b9f..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgeCommunity.kt +++ /dev/null @@ -1,16 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.Identity -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -@CommonParcelize -@Serializable -data class AdminPurgeCommunity( - override val id: AdminPurgeCommunityId, - val admin_person_id: PersonId, - val reason: String, - val published_at: String, -) : DatatypeRoot, Identity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgeCommunityId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgeCommunityId.kt deleted file mode 100644 index c35539cf..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgeCommunityId.kt +++ /dev/null @@ -1,3 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -typealias AdminPurgeCommunityId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgeCommunityView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgeCommunityView.kt deleted file mode 100644 index 6a27cef0..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgeCommunityView.kt +++ /dev/null @@ -1,17 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.Identity -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -@CommonParcelize -@Serializable -data class AdminPurgeCommunityView( - val admin_purge_community: AdminPurgeCommunity, - val admin: Person? = null, -) : DatatypeRoot, Identity { - override val id: Long - get() = admin_purge_community.id -} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgePerson.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgePerson.kt deleted file mode 100644 index 3256656c..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgePerson.kt +++ /dev/null @@ -1,16 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.Identity -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -@CommonParcelize -@Serializable -data class AdminPurgePerson( - override val id: AdminPurgePersonId, - val admin_person_id: PersonId, - val reason: String, - val published_at: String, -) : DatatypeRoot, Identity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgePersonId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgePersonId.kt deleted file mode 100644 index 98e7d056..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgePersonId.kt +++ /dev/null @@ -1,3 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -typealias AdminPurgePersonId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgePersonView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgePersonView.kt deleted file mode 100644 index 15d07e52..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgePersonView.kt +++ /dev/null @@ -1,17 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.Identity -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -@CommonParcelize -@Serializable -data class AdminPurgePersonView( - val admin_purge_person: AdminPurgePerson, - val admin: Person? = null, -) : DatatypeRoot, Identity { - override val id: Long - get() = admin_purge_person.id -} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgePost.kt deleted file mode 100644 index b0a7d5e2..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgePost.kt +++ /dev/null @@ -1,17 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.Identity -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -@CommonParcelize -@Serializable -data class AdminPurgePost( - override val id: AdminPurgePostId, - val admin_person_id: PersonId, - val community_id: CommunityId, - val reason: String, - val published_at: String, -) : DatatypeRoot, Identity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgePostId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgePostId.kt deleted file mode 100644 index 4eed36cb..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgePostId.kt +++ /dev/null @@ -1,3 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -typealias AdminPurgePostId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgePostView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgePostView.kt deleted file mode 100644 index 26134de7..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgePostView.kt +++ /dev/null @@ -1,18 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.Identity -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -@CommonParcelize -@Serializable -data class AdminPurgePostView( - val admin_purge_post: AdminPurgePost, - val admin: Person? = null, - val community: Community, -) : DatatypeRoot, Identity { - override val id: Long - get() = admin_purge_post.id -} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminRemoveCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminRemoveCommunity.kt deleted file mode 100644 index 9639d9d6..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminRemoveCommunity.kt +++ /dev/null @@ -1,17 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -@CommonParcelize -@Serializable -data class AdminRemoveCommunity( - val id: Long, - val mod_person_id: PersonId, - val community_id: CommunityId, - val reason: String? = null, - val removed: Boolean, - val published_at: String, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminRemoveCommunityView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminRemoveCommunityView.kt deleted file mode 100644 index 58ffba55..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminRemoveCommunityView.kt +++ /dev/null @@ -1,14 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -@CommonParcelize -@Serializable -data class AdminRemoveCommunityView( - val admin_remove_community: AdminRemoveCommunity, - val moderator: Person? = null, - val community: Community, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AuthenticateWithOauth.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AuthenticateWithOauth.kt index 6da43790..b6ea8c05 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AuthenticateWithOauth.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AuthenticateWithOauth.kt @@ -14,4 +14,5 @@ data class AuthenticateWithOauth( val username: String? = null, val answer: String? = null, val pkce_code_verifier: String? = null, + val stay_logged_in: Boolean? = null, ): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BanFromCommunityResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BanFromCommunityResponse.kt deleted file mode 100644 index 7eb61da5..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BanFromCommunityResponse.kt +++ /dev/null @@ -1,13 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -@CommonParcelize -@Serializable -data class BanFromCommunityResponse( - val person_view: PersonView, - val banned: Boolean, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BanPersonResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BanPersonResponse.kt deleted file mode 100644 index 4e3dd43e..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BanPersonResponse.kt +++ /dev/null @@ -1,13 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -@CommonParcelize -@Serializable -data class BanPersonResponse( - val person_view: PersonView, - val banned: Boolean, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BannedPersonsResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BannedPersonsResponse.kt deleted file mode 100644 index 1544f440..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BannedPersonsResponse.kt +++ /dev/null @@ -1,14 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -// TODO is now admin/list/users -// AdminListUsersResponse -@CommonParcelize -@Serializable -data class BannedPersonsResponse( - val banned: List, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BlockCommunityResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BlockCommunityResponse.kt deleted file mode 100644 index 08bd9c61..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BlockCommunityResponse.kt +++ /dev/null @@ -1,13 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -@CommonParcelize -@Serializable -data class BlockCommunityResponse( - val community_view: CommunityView, - val blocked: Boolean, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BlockPersonResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BlockPersonResponse.kt deleted file mode 100644 index 867cffd0..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BlockPersonResponse.kt +++ /dev/null @@ -1,13 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -@CommonParcelize -@Serializable -data class BlockPersonResponse( - val person_view: PersonView, - val blocked: Boolean, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ChangePassword.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ChangePassword.kt index 5a842fbc..bff3f123 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ChangePassword.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ChangePassword.kt @@ -11,4 +11,5 @@ data class ChangePassword( val new_password: SensitiveString, val new_password_verify: SensitiveString, val old_password: SensitiveString, + val stay_logged_in: Boolean? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentActions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentActions.kt index f68fd8ab..c95a44b5 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentActions.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentActions.kt @@ -4,10 +4,12 @@ import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable +// TODO: voting changes + @CommonParcelize @Serializable data class CommentActions( val like_score: Int = 0, - val liked_at: String? = null, + val voted_at: String? = null, val saved_at: String? = null, ): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReportView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReportView.kt index 63aae579..cc8f73d8 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReportView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReportView.kt @@ -5,9 +5,11 @@ import it.vercruysse.lemmyapi.Identity import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +import kotlinx.serialization.SerialName @CommonParcelize @Serializable +@SerialName("comment") data class CommentReportView( val comment_report: CommentReport, val comment: Comment, @@ -22,8 +24,10 @@ data class CommentReportView( val creator_is_admin: Boolean, val creator_is_moderator: Boolean, val creator_banned: Boolean, + val creator_ban_expires_at: String? = null, val creator_banned_from_community: Boolean, -) : DatatypeRoot, Identity { + val creator_community_ban_expires_at: String? = null, +) : DatatypeRoot, Identity, ReportCombinedView { override val id: Long get() = comment_report.id } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentView.kt index 10be3e78..2c511eb7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentView.kt @@ -5,9 +5,11 @@ import it.vercruysse.lemmyapi.Identity import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +import kotlinx.serialization.SerialName @CommonParcelize @Serializable +@SerialName("comment") data class CommentView( val comment: Comment, val creator: Person, @@ -16,7 +18,7 @@ data class CommentView( val community_actions: CommunityActions? = null, val comment_actions: CommentActions? = null, val person_actions: PersonActions? = null, - val post_tags: TagsView, + val tags: CommunityTagsView, val can_mod: Boolean, val creator_banned: Boolean, val creator_ban_expires_at: String? = null, @@ -25,7 +27,7 @@ data class CommentView( val creator_banned_from_community: Boolean, val creator_community_ban_expires_at: String? = null, - ) : DatatypeRoot, Identity { + ) : DatatypeRoot, Identity, NotificationData { override val id: Long get() = comment.id } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Community.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Community.kt index 1854c0c8..90944931 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Community.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Community.kt @@ -7,13 +7,15 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: not correct yet + @CommonParcelize @Serializable data class Community( override val id: CommunityId, val name: String, val title: String, - val description: String? = null, + val summary: String? = null, val removed: Boolean, val published_at: String, val updated_at: String? = null, @@ -21,6 +23,7 @@ data class Community( val nsfw: Boolean, val ap_id: String, val local: Boolean, + val last_refreshed_at: String, val icon: String? = null, val banner: String? = null, val hidden: Boolean, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityActions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityActions.kt index 903c7dfd..86e06eeb 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityActions.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityActions.kt @@ -10,7 +10,7 @@ import kotlinx.serialization.Serializable @Serializable data class CommunityActions( val followed_at: String? = null, - val follow_state: CommunityFollowerState? /* "Accepted" | "Pending" | "ApprovalRequired" */ = null, + val follow_state: CommunityFollowerState? /* "accepted" | "pending" | "approval_required" | "denied" */ = null, val blocked_at: String? = null, val became_moderator_at: String? = null, val received_ban_at: String? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityReport.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityReport.kt index 69cd7a85..e90e4dc9 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityReport.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityReport.kt @@ -13,7 +13,7 @@ data class CommunityReport( val community_id: CommunityId, val original_community_name: String, val original_community_title: String, - val original_community_description: String? = null, + val original_community_summary: String? = null, val original_community_sidebar: String? = null, val original_community_icon: String? = null, val original_community_banner: String? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityReportView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityReportView.kt index 461d9ddc..876290e8 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityReportView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityReportView.kt @@ -2,10 +2,12 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.SerialName import kotlinx.serialization.Serializable @CommonParcelize @Serializable +@SerialName("community") data class CommunityReportView( val community_report: CommunityReport, val community: Community, @@ -14,5 +16,7 @@ data class CommunityReportView( val creator_is_admin: Boolean, val creator_is_moderator: Boolean, val creator_banned: Boolean, + val creator_ban_expires_at: String? = null, val creator_banned_from_community: Boolean, -): DatatypeRoot + val creator_community_ban_expires_at: String? = null, +): DatatypeRoot, ReportCombinedView diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Tag.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityTag.kt similarity index 62% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Tag.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityTag.kt index 4e6e7e8a..d68253cc 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Tag.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityTag.kt @@ -6,16 +6,17 @@ import kotlinx.serialization.Serializable @CommonParcelize @Serializable -data class Tag( - val id: TagId, +data class CommunityTag( + val id: CommunityTagId, val ap_id: String, /** Added in 1.0.0 */ val name: String, + val display_name: String? = null, /** Added in 1.0.0 */ - val description: String? = null, - val display_name: String, + val summary: String? = null, val community_id: CommunityId, val published_at: String, val updated_at: String? = null, val deleted: Boolean, + val color: String /* "color01" | "color02" | "color03" | "color04" | "color05" | "color06" | "color07" | "color08" | "color09" | "color10" */, ): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/TagsView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityTagId.kt similarity index 56% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/TagsView.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityTagId.kt index 3cc0c539..8421ec90 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/TagsView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityTagId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.datatypes -typealias TagsView = List +typealias CommunityTagId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityTagsView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityTagsView.kt new file mode 100644 index 00000000..459e611a --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityTagsView.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.datatypes + +typealias CommunityTagsView = List diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityView.kt index 75cda557..52c39ccc 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityView.kt @@ -10,5 +10,5 @@ data class CommunityView( val community: Community, val community_actions: CommunityActions? = null, val can_mod: Boolean, - val post_tags: TagsView, + val tags: CommunityTagsView, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommentLike.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommentLike.kt index 681bcbfc..4c855957 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommentLike.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommentLike.kt @@ -9,5 +9,6 @@ import it.vercruysse.lemmyapi.CommonParcelize @Serializable data class CreateCommentLike( val comment_id: CommentId, + // TODO: changed val score: Int, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModLockComment.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommentWarning.kt similarity index 67% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModLockComment.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommentWarning.kt index 0dd9148a..ca404b76 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModLockComment.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommentWarning.kt @@ -2,15 +2,14 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CommentId import kotlinx.serialization.Serializable +// TODO no endpoint yet + @CommonParcelize @Serializable -data class ModLockComment( - val id: Long, - val mod_person_id: PersonId, +data class CreateCommentWarning( val comment_id: CommentId, - val locked: Boolean, val reason: String, - val published_at: String, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommunity.kt index 2db89e0d..e31e9b75 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommunity.kt @@ -12,7 +12,7 @@ data class CreateCommunity( val name: String, val title: String, val sidebar: String? = null, - val description: String? = null, + val summary: String? = null, val icon: String? = null, val banner: String? = null, val nsfw: Boolean? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommunityTag.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommunityTag.kt index 437ce75e..e4f15903 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommunityTag.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommunityTag.kt @@ -10,5 +10,6 @@ data class CreateCommunityTag( val community_id: CommunityId, val name: String, val display_name: String? = null, - val description: String? = null, -): DatatypeRoot + val summary: String? = null, + val color: String? /* "color01" | "color02" | "color03" | "color04" | "color05" | "color06" | "color07" | "color08" | "color09" | "color10" */ = null, + ): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateMultiCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateMultiCommunity.kt index e017c6fa..08495742 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateMultiCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateMultiCommunity.kt @@ -9,5 +9,5 @@ import kotlinx.serialization.Serializable data class CreateMultiCommunity( val name: String, val title: String? = null, - val description: String? = null, + val summary: String? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreatePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreatePost.kt index 64c164a3..a8d64703 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreatePost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreatePost.kt @@ -18,7 +18,7 @@ data class CreatePost( val language_id: LanguageId? = null, val custom_thumbnail: String? = null, /** Added in Lemmy 1.0.0 */ - val tags: List? = null, + val tags: List? = null, /** Added in Lemmy 1.0.0 */ val scheduled_publish_time_at: Long? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreatePostLike.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreatePostLike.kt index 3eca5c34..32ca4d5e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreatePostLike.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreatePostLike.kt @@ -9,5 +9,6 @@ import it.vercruysse.lemmyapi.CommonParcelize @Serializable data class CreatePostLike( val post_id: PostId, + // TODO: update val score: Int, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgeComment.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreatePostWarning.kt similarity index 68% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgeComment.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreatePostWarning.kt index 1212f6a0..262b289f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgeComment.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreatePostWarning.kt @@ -1,16 +1,14 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PostId import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize @CommonParcelize @Serializable -data class AdminPurgeComment( - val id: AdminPurgeCommentId, - val admin_person_id: PersonId, +internal data class CreatePostWarning( val post_id: PostId, val reason: String, - val published_at: String, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateSite.kt index d2a4ab0a..03b3adac 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateSite.kt @@ -15,7 +15,7 @@ import it.vercruysse.lemmyapi.dto.FederationMode data class CreateSite( val name: String, val sidebar: String? = null, - val description: String? = null, + val summary: String? = null, /** Removed in 1.0.0 */ val icon: String? = null, /** Removed in 1.0.0 */ @@ -69,5 +69,5 @@ data class CreateSite( /** Added in 1.0.0 */ val disable_email_notifications: Boolean? = null, /** Added in 1.0.0 */ - val suggested_communities: MultiCommunityId? = null, + val suggested_multi_community_id: MultiCommunityId? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeleteCommunityTag.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeleteCommunityTag.kt index 7a32d54c..003c21b1 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeleteCommunityTag.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeleteCommunityTag.kt @@ -7,5 +7,6 @@ import kotlinx.serialization.Serializable @CommonParcelize @Serializable data class DeleteCommunityTag( - val tag_id: TagId, + val tag_id: CommunityTagId, + val delete: Boolean, ): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditCommunity.kt index bb52a3bb..c577fb7c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditCommunity.kt @@ -13,7 +13,7 @@ data class EditCommunity( val title: String? = null, /** Added in Lemmy 1.0.0 */ val sidebar: String? = null, - val description: String? = null, + val summary: String? = null, /** Removed in Lemmy 1.0.0 */ val icon: String? = null, /** Removed in Lemmy 1.0.0 */ diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UpdateCommunityNotifications.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditCommunityNotifications.kt similarity index 91% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UpdateCommunityNotifications.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditCommunityNotifications.kt index 9542ee12..e144548b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UpdateCommunityNotifications.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditCommunityNotifications.kt @@ -7,7 +7,7 @@ import kotlinx.serialization.Serializable @CommonParcelize @Serializable -data class UpdateCommunityNotifications( +data class EditCommunityNotifications( val community_id: CommunityId, val mode: CommunityNotificationsMode /* "AllPostsAndComments" | "AllPosts" | "RepliesAndMentions" | "Mute" */, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditCommunityTag.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditCommunityTag.kt new file mode 100644 index 00000000..70903c8e --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditCommunityTag.kt @@ -0,0 +1,14 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class EditCommunityTag( + val tag_id: CommunityTagId, + val display_name: String, + val summary: String? = null, + val color: String? /* "color01" | "color02" | "color03" | "color04" | "color05" | "color06" | "color07" | "color08" | "color09" | "color10" */ = null, + ): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditCustomEmoji.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditCustomEmoji.kt index 59ab5fe9..e5a4fc1d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditCustomEmoji.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditCustomEmoji.kt @@ -9,8 +9,9 @@ import it.vercruysse.lemmyapi.CommonParcelize @Serializable data class EditCustomEmoji( val id: CustomEmojiId, - val category: String, - val image_url: String, - val alt_text: String, - val keywords: List, + val category: String? = null, + val shortcode: String? = null, + val image_url: String? = null, + val alt_text: String? = null, + val keywords: List? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UpdateMultiCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditMultiCommunity.kt similarity index 81% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UpdateMultiCommunity.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditMultiCommunity.kt index d41b5dec..b32c67e5 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UpdateMultiCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditMultiCommunity.kt @@ -6,9 +6,9 @@ import kotlinx.serialization.Serializable @CommonParcelize @Serializable -data class UpdateMultiCommunity( +data class EditMultiCommunity( val id: MultiCommunityId, val title: String? = null, - val description: String? = null, + val summary: String? = null, val deleted: Boolean? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditPost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditPost.kt index bdedd242..bbd75164 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditPost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditPost.kt @@ -19,5 +19,5 @@ data class EditPost( /** Added in Lemmy 1.0.0 */ val scheduled_publish_time_at: Long? = null, /** Added in Lemmy 1.0.0 */ - val tags: List? = null, + val tags: List? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModFeaturePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditPostNotifications.kt similarity index 57% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModFeaturePost.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditPostNotifications.kt index d76eb71f..cc9cf241 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModFeaturePost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditPostNotifications.kt @@ -1,17 +1,13 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot +import it.vercruysse.lemmyapi.dto.PostNotificationsMode import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable -data class ModFeaturePost( - val id: Long, - val mod_person_id: PersonId, +data class EditPostNotifications( val post_id: PostId, - val featured: Boolean, - val published_at: String, - val is_featured_community: Boolean, + val mode: PostNotificationsMode /* "AllComments" | "RepliesAndMentions" | "Mute" */, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt index c58d4f72..40187992 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt @@ -14,7 +14,7 @@ import it.vercruysse.lemmyapi.CommonParcelize data class EditSite( val name: String? = null, val sidebar: String? = null, - val description: String? = null, + val summary: String? = null, val icon: String? = null, val banner: String? = null, val enable_downvotes: Boolean? = null, @@ -25,7 +25,11 @@ data class EditSite( val private_instance: Boolean? = null, val default_theme: String? = null, val default_post_listing_type: ListingType? /* "All" | "Local" | "Subscribed" | "ModeratorView" */ = null, - val default_sort_type: SortType? /* "Active" | "Hot" | "New" | "Old" | "TopDay" | "TopWeek" | "TopMonth" | "TopYear" | "TopAll" | "MostComments" | "NewComments" | "TopHour" | "TopSixHour" | "TopTwelveHour" | "TopThreeMonths" | "TopSixMonths" | "TopNineMonths" | "Controversial" | "Scaled" */ = null, + val default_post_listing_mode: PostListingMode? /* "List" | "Card" | "SmallCard" */ = null, + val default_post_sort_type: SortType? /* "Active" | "Hot" | "New" | "Old" | "TopDay" | "TopWeek" | "TopMonth" | "TopYear" | "TopAll" | "MostComments" | "NewComments" | "TopHour" | "TopSixHour" | "TopTwelveHour" | "TopThreeMonths" | "TopSixMonths" | "TopNineMonths" | "Controversial" | "Scaled" */ = null, + val default_post_time_range_seconds: Long? = null, + val default_items_per_page: Long, + val default_comment_sort_type: SortType? /* "hot" | "top" | "new" | "old" | "controversial" */ = null, val legal_information: String? = null, val application_email_admins: Boolean? = null, val hide_modlog_mod_names: Boolean? = null, @@ -58,8 +62,6 @@ data class EditSite( val registration_mode: RegistrationMode? /* "Closed" | "RequireApplication" | "Open" */ = null, val reports_email_admins: Boolean? = null, val content_warning: String? = null, - val default_post_listing_mode: PostListingMode? /* "List" | "Card" | "SmallCard" */ = null, /** Added in 1.0.0 */ - val suggested_communities: MultiCommunityId? = null, - val default_items_per_page: Long, + val suggested_multi_community_id: MultiCommunityId? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UpdateTagline.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditTagline.kt similarity index 91% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UpdateTagline.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditTagline.kt index f63b9596..b70471e0 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UpdateTagline.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditTagline.kt @@ -6,7 +6,7 @@ import kotlinx.serialization.Serializable @CommonParcelize @Serializable -data class UpdateTagline( +data class EditTagline( val id: TaglineId, val content: String, ): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UpdateTotp.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditTotp.kt similarity index 92% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UpdateTotp.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditTotp.kt index 04703e5c..bd517af3 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UpdateTotp.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditTotp.kt @@ -7,7 +7,7 @@ import it.vercruysse.lemmyapi.CommonParcelize @CommonParcelize @Serializable -data class UpdateTotp( +data class EditTotp( val totp_token: String, val enabled: Boolean, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UpdateTotpResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditTotpResponse.kt similarity index 88% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UpdateTotpResponse.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditTotpResponse.kt index af8775b8..0fc63133 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UpdateTotpResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditTotpResponse.kt @@ -7,6 +7,6 @@ import it.vercruysse.lemmyapi.CommonParcelize @CommonParcelize @Serializable -data class UpdateTotpResponse( +data class EditTotpResponse( val enabled: Boolean, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/FederatedInstanceView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/FederatedInstanceView.kt new file mode 100644 index 00000000..200b3c3c --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/FederatedInstanceView.kt @@ -0,0 +1,12 @@ +package it.vercruysse.lemmyapi.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +data class FederatedInstanceView( + val instance: Instance, + val site: Site? = null, + val queue_state: FederationQueueState? = null, + val blocked: FederationBlockList? = null, + val allowed: FederationAllowList? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/FederatedInstances.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/FederatedInstances.kt deleted file mode 100644 index 0621753a..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/FederatedInstances.kt +++ /dev/null @@ -1,14 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -@CommonParcelize -@Serializable -data class FederatedInstances( - val linked: List, - val allowed: List, - val blocked: List, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/FederationAllowList.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/FederationAllowList.kt new file mode 100644 index 00000000..78f608f7 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/FederationAllowList.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +data class FederationAllowList( + val published_at: String, + val updated_at: String? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/FederationBlockList.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/FederationBlockList.kt index 5bc729d2..fddb5b5f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/FederationBlockList.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/FederationBlockList.kt @@ -7,7 +7,6 @@ import kotlinx.serialization.Serializable @CommonParcelize @Serializable data class FederationBlockList( - val instance_id: InstanceId, val published_at: String, val updated_at: String? = null, val expires_at: String? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ReadableFederationState.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/FederationQueueState.kt similarity index 85% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ReadableFederationState.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/FederationQueueState.kt index 014344f8..3ddd8376 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ReadableFederationState.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/FederationQueueState.kt @@ -7,11 +7,10 @@ import it.vercruysse.lemmyapi.CommonParcelize @CommonParcelize @Serializable -data class ReadableFederationState( +data class FederationQueueState( val instance_id: InstanceId, val last_successful_id: ActivityId? = null, val last_successful_published_time_at: String? = null, val fail_count: Long, val last_retry_at: String? = null, - val next_retry_at: String? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetComments.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetComments.kt index 5d149f3f..e0548d17 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetComments.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetComments.kt @@ -17,8 +17,6 @@ data class GetComments( val max_depth: Long? = null, /** Added in 1.0.0 */ val page_cursor: PaginationCursor? = null, - /** Added in 1.0.0 */ - val page_back: Boolean? = null, /** Removed in 1.0.0 */ val page: Long? = null, val limit: Long? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetCommentsResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetCommentsResponse.kt deleted file mode 100644 index 27763ca3..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetCommentsResponse.kt +++ /dev/null @@ -1,16 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -@CommonParcelize -@Serializable -data class GetCommentsResponse( - val comments: List, - /** Added in Lemmy 1.0.0 */ - val next_page: PaginationCursor? = null, - /** Added in Lemmy 1.0.0 */ - val prev_page: PaginationCursor? = null, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetCommentsSlimResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetCommentsSlimResponse.kt deleted file mode 100644 index daceef42..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetCommentsSlimResponse.kt +++ /dev/null @@ -1,13 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.CommonParcelize -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -@CommonParcelize -@Serializable -internal data class GetCommentsSlimResponse( - val comments: List, - val next_page: PaginationCursor? = null, - val prev_page: PaginationCursor? = null, -): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetCommunityPendingFollowsCountResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetCommunityPendingFollowsCountResponse.kt deleted file mode 100644 index d67b9ee0..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetCommunityPendingFollowsCountResponse.kt +++ /dev/null @@ -1,11 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.CommonParcelize -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -@CommonParcelize -@Serializable -data class GetCommunityPendingFollowsCountResponse( - val count: Long, -): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetFederatedInstances.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetFederatedInstances.kt new file mode 100644 index 00000000..c37596d9 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetFederatedInstances.kt @@ -0,0 +1,15 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import it.vercruysse.lemmyapi.enums.GetFederatedInstancesKind +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class GetFederatedInstances( + val domain_filter: String? = null, + val kind: GetFederatedInstancesKind /* "all" | "linked" | "allowed" | "blocked" */, + val page_cursor: PaginationCursor? = null, + val limit: Long? = null, +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetFederatedInstancesResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetFederatedInstancesResponse.kt deleted file mode 100644 index dfb41246..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetFederatedInstancesResponse.kt +++ /dev/null @@ -1,12 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -@CommonParcelize -@Serializable -data class GetFederatedInstancesResponse( - val federated_instances: FederatedInstances? = null, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetModlog.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetModlog.kt index 440bd95c..9530cc01 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetModlog.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetModlog.kt @@ -20,8 +20,6 @@ data class GetModlog( val comment_id: CommentId? = null, /** Added in 1.0.0 */ val page_cursor: PaginationCursor? = null, - /** Added in 1.0.0 */ - val page_back: Boolean? = null, /** Removed in 1.0.0 */ val page: Long? = null, val limit: Long? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetModlogResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetModlogResponse.kt deleted file mode 100644 index 563cd05c..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetModlogResponse.kt +++ /dev/null @@ -1,14 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -@CommonParcelize -@Serializable -data class GetModlogResponse( - val modlog: List, - val next_page: PaginationCursor? = null, - val prev_page: PaginationCursor? = null, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetMultiCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetMultiCommunity.kt index ebcf8780..4b03163e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetMultiCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetMultiCommunity.kt @@ -7,5 +7,6 @@ import kotlinx.serialization.Serializable @CommonParcelize @Serializable data class GetMultiCommunity( - val id: MultiCommunityId, + val id: MultiCommunityId? = null, + val name: String? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetMultiCommunityResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetMultiCommunityResponse.kt index 8f71f4b5..2ad983ec 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetMultiCommunityResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetMultiCommunityResponse.kt @@ -1,9 +1,12 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable +@CommonParcelize @Serializable -internal data class GetMultiCommunityResponse( +data class GetMultiCommunityResponse( val multi_community_view: MultiCommunityView, val communities: List, -) +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPersonDetails.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPersonDetails.kt index 38909e46..7ea8271c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPersonDetails.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPersonDetails.kt @@ -6,7 +6,7 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize -// TODO: many removed, research +// TODO: many fields removed, research @CommonParcelize @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPersonDetailsResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPersonDetailsResponse.kt index d9af1409..b1c3d583 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPersonDetailsResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPersonDetailsResponse.kt @@ -5,14 +5,17 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize -// TODO: Removed research +// TODO research, comments posts @CommonParcelize @Serializable data class GetPersonDetailsResponse( val person_view: PersonView, val site: Site? = null, + // TODO: removed val comments: List, + // TODO: removed val posts: List, val moderates: List, + val multi_communities_created: List, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPosts.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPosts.kt index f4a853fa..df8a8ab4 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPosts.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPosts.kt @@ -14,10 +14,14 @@ import it.vercruysse.lemmyapi.dto.PAGE_CURSOR_GUARD data class GetPosts( val type_: ListingType? /* "All" | "Local" | "Subscribed" | "ModeratorView" */ = null, val sort: SortType? /* "Active" | "Hot" | "New" | "Old" | "TopDay" | "TopWeek" | "TopMonth" | "TopYear" | "TopAll" | "MostComments" | "NewComments" | "TopHour" | "TopSixHour" | "TopTwelveHour" | "TopThreeMonths" | "TopSixMonths" | "TopNineMonths" | "Controversial" | "Scaled" */ = null, + /** Added in 1.0.0 */ + val time_range_seconds: Long? = null, val community_id: CommunityId? = null, val community_name: String? = null, /** Added in 1.0.0 */ val multi_community_id: MultiCommunityId? = null, + /** Added in 1.0.0 */ + val multi_community_name: String? = null, val show_hidden: Boolean? = null, /** Added in 0.19.6 */ val show_read: Boolean? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetReportCount.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetReportCount.kt deleted file mode 100644 index cc178b1b..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetReportCount.kt +++ /dev/null @@ -1,12 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -@CommonParcelize -@Serializable -data class GetReportCount( - val community_id: CommunityId? = null, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetSiteResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetSiteResponse.kt index 8c65515a..0d033b54 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetSiteResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetSiteResponse.kt @@ -18,9 +18,10 @@ data class GetSiteResponse( /** Added in 1.0.0 */ val oauth_providers: List, /** Added in 1.0.0 */ - val admin_oauth_providers: List, + val admin_oauth_providers: List, /** Added in 1.0.0 */ val image_upload_disabled: Boolean, /** Added in 1.0.0 */ val active_plugins: List, + val last_application_duration_seconds: Long? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetUnreadRegistrationApplicationCountResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetUnreadRegistrationApplicationCountResponse.kt deleted file mode 100644 index ba66f4c7..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetUnreadRegistrationApplicationCountResponse.kt +++ /dev/null @@ -1,12 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -@CommonParcelize -@Serializable -data class GetUnreadRegistrationApplicationCountResponse( - val registration_applications: Long, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/InstanceWithFederationState.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/InstanceWithFederationState.kt index ddb5ec1c..6ecdf2c7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/InstanceWithFederationState.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/InstanceWithFederationState.kt @@ -14,5 +14,5 @@ data class InstanceWithFederationState( val updated_at: String? = null, val software: String? = null, val version: String? = null, - val federation_state: ReadableFederationState? = null, + val federation_state: FederationQueueState? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommentLikes.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommentLikes.kt index 20ded37a..0b5873c7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommentLikes.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommentLikes.kt @@ -13,7 +13,5 @@ data class ListCommentLikes( val page: Long? = null, /** Added in 1.0.0 */ val page_cursor: PaginationCursor? = null, - /** Added in 1.0.0 */ - val page_back: Boolean? = null, val limit: Long? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommentLikesResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommentLikesResponse.kt deleted file mode 100644 index 1b6e3ab2..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommentLikesResponse.kt +++ /dev/null @@ -1,16 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -@CommonParcelize -@Serializable -data class ListCommentLikesResponse( - val comment_likes: List, - /** Added in Lemmy 1.0.0 */ - val next_page: PaginationCursor? = null, - /** Added in Lemmy 1.0.0 */ - val prev_page: PaginationCursor? = null, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommunities.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommunities.kt index 3a027649..a013b47e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommunities.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommunities.kt @@ -15,8 +15,6 @@ data class ListCommunities( val sort: SortType? /* "Active" | "Hot" | "New" | "Old" | "TopDay" | "TopWeek" | "TopMonth" | "TopYear" | "TopAll" | "MostComments" | "NewComments" | "TopHour" | "TopSixHour" | "TopTwelveHour" | "TopThreeMonths" | "TopSixMonths" | "TopNineMonths" | "Controversial" | "Scaled" */ = null, /** Added in 1.0.0 */ val page_cursor: PaginationCursor? = null, - /** Added in 1.0.0 */ - val page_back: Boolean? = null, /** Removed in 1.0.0 */ val page: Long? = null, val limit: Long? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommunitiesResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommunitiesResponse.kt deleted file mode 100644 index 50062fc8..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommunitiesResponse.kt +++ /dev/null @@ -1,16 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -@CommonParcelize -@Serializable -data class ListCommunitiesResponse( - val communities: List, - /** Added in Lemmy 1.0.0 */ - val next_page: PaginationCursor? = null, - /** Added in Lemmy 1.0.0 */ - val prev_page: PaginationCursor? = null, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommunityPendingFollows.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommunityPendingFollows.kt index e630e7b5..ffac0072 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommunityPendingFollows.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommunityPendingFollows.kt @@ -7,9 +7,8 @@ import kotlinx.serialization.Serializable @CommonParcelize @Serializable data class ListCommunityPendingFollows( - val pending_only: Boolean? = null, + val unread_only: Boolean? = null, val all_communities: Boolean? = null, val page_cursor: PaginationCursor? = null, - val page_back: Boolean? = null, val limit: Long? = null, ): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListMedia.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListMedia.kt index ef94e1dc..b0b76c91 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListMedia.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListMedia.kt @@ -12,7 +12,5 @@ data class ListMedia( val page: Long? = null, /** Added in 1.0.0 */ val page_cursor: PaginationCursor? = null, - /** Added in 1.0.0 */ - val page_back: Boolean? = null, val limit: Long? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListMediaResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListMediaResponse.kt deleted file mode 100644 index 2d9132b2..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListMediaResponse.kt +++ /dev/null @@ -1,16 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -@CommonParcelize -@Serializable -data class ListMediaResponse( - val images: List, - /** Added in Lemmy 1.0.0 */ - val next_page: PaginationCursor? = null, - /** Added in Lemmy 1.0.0 */ - val prev_page: PaginationCursor? = null, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListMultiCommunities.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListMultiCommunities.kt index b7238a5e..ce87703a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListMultiCommunities.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListMultiCommunities.kt @@ -2,11 +2,17 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot +import it.vercruysse.lemmyapi.enums.MultiCommunityListingType import kotlinx.serialization.Serializable @CommonParcelize @Serializable data class ListMultiCommunities( + val type_: MultiCommunityListingType? /* "all" | "local" | "subscribed" */ = null, + // TODO: custom sort type + val sort: String? /* "new" | "old" | "name_asc" | "name_desc" | "communities" | "subscribers" | "subscribers_local" */ = null, val creator_id: PersonId? = null, - val followed_only: Boolean? = null, + val time_range_seconds: Long? = null, + val page_cursor: PaginationCursor? = null, + val limit: Long? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListMultiCommunitiesResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListMultiCommunitiesResponse.kt deleted file mode 100644 index be338443..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListMultiCommunitiesResponse.kt +++ /dev/null @@ -1,11 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.CommonParcelize -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -@CommonParcelize -@Serializable -data class ListMultiCommunitiesResponse( - val multi_communities: List, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListNotifications.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListNotifications.kt index 2bb2f167..d699a3b2 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListNotifications.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListNotifications.kt @@ -14,7 +14,5 @@ data class ListNotifications( val page: Long? = null, /** Added 1.0.0 */ val page_cursor: PaginationCursor? = null, - /** Added 1.0.0 */ - val page_back: Boolean? = null, val limit: Long? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListNotificationsResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListNotificationsResponse.kt deleted file mode 100644 index 3dcd18a5..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListNotificationsResponse.kt +++ /dev/null @@ -1,13 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.CommonParcelize -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -@CommonParcelize -@Serializable -data class ListNotificationsResponse( - val notifications: List, - val next_page: PaginationCursor? = null, - val prev_page: PaginationCursor? = null, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonContent.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonContent.kt index 2c085b5e..0066b370 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonContent.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonContent.kt @@ -8,10 +8,10 @@ import kotlinx.serialization.Serializable @CommonParcelize @Serializable data class ListPersonContent( - val type_: ListingType? /* "All" | "Comments" | "Posts" */ = null, + // TODO: custom enum + val type_: String? /* "all" | "comments" | "posts" */ = null, val person_id: PersonId? = null, val username: String? = null, val page_cursor: PaginationCursor? = null, - val page_back: Boolean? = null, val limit: Long? = null, ): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonContentResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonContentResponse.kt deleted file mode 100644 index 0a329dba..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonContentResponse.kt +++ /dev/null @@ -1,13 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.CommonParcelize -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -@CommonParcelize -@Serializable -data class ListPersonContentResponse( - val content: List, - val next_page: PaginationCursor? = null, - val prev_page: PaginationCursor? = null, -): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonHidden.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonHidden.kt index 4c7547d8..165c3dc9 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonHidden.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonHidden.kt @@ -10,6 +10,5 @@ import kotlinx.serialization.Serializable @Serializable data class ListPersonHidden( val page_cursor: PaginationCursor? = null, - val page_back: Boolean? = null, val limit: Long? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonLiked.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonLiked.kt index 689106bf..204d60da 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonLiked.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonLiked.kt @@ -2,16 +2,14 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.dto.LikeType -import it.vercruysse.lemmyapi.dto.ListingType +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PaginationCursor import kotlinx.serialization.Serializable @CommonParcelize @Serializable data class ListPersonLiked( - val type_: ListingType? /* "All" | "Comments" | "Posts" */ = null, - val like_type: LikeType? /* "All" | "LikedOnly" | "DislikedOnly" */ = null, + val type_: String? /* "all" | "comments" | "posts" */ = null, + val like_type: String? /* "all" | "liked_only" | "disliked_only" */ = null, val page_cursor: PaginationCursor? = null, - val page_back: Boolean? = null, val limit: Long? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonLikedResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonLikedResponse.kt deleted file mode 100644 index 6bfab3a7..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonLikedResponse.kt +++ /dev/null @@ -1,13 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.CommonParcelize -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -@CommonParcelize -@Serializable -data class ListPersonLikedResponse( - val liked: List, - val next_page: PaginationCursor? = null, - val prev_page: PaginationCursor? = null, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonRead.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonRead.kt index 97b66c19..bce84f9c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonRead.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonRead.kt @@ -8,6 +8,5 @@ import kotlinx.serialization.Serializable @Serializable data class ListPersonRead( val page_cursor: PaginationCursor? = null, - val page_back: Boolean? = null, val limit: Long? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonReadResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonReadResponse.kt deleted file mode 100644 index ac949229..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonReadResponse.kt +++ /dev/null @@ -1,13 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.CommonParcelize -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -@CommonParcelize -@Serializable -data class ListPersonReadResponse( - val read: List, - val next_page: PaginationCursor? = null, - val prev_page: PaginationCursor? = null, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonSaved.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonSaved.kt index 02e8d829..3584c1b4 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonSaved.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonSaved.kt @@ -8,8 +8,7 @@ import kotlinx.serialization.Serializable @CommonParcelize @Serializable data class ListPersonSaved( - val type_: ListingType? /* "All" | "Comments" | "Posts" */ = null, + val type_: String? /* "All" | "Comments" | "Posts" */ = null, val page_cursor: PaginationCursor? = null, - val page_back: Boolean? = null, val limit: Long? = null, ): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonSavedResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonSavedResponse.kt deleted file mode 100644 index c6415728..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonSavedResponse.kt +++ /dev/null @@ -1,13 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.CommonParcelize -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -@CommonParcelize -@Serializable -data class ListPersonSavedResponse( - val saved: List, - val next_page: PaginationCursor? = null, - val prev_page: PaginationCursor? = null, -): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPostLikes.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPostLikes.kt index 980eb0ce..144529c9 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPostLikes.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPostLikes.kt @@ -13,7 +13,5 @@ data class ListPostLikes( val page: Long? = null, /** Added in 1.0.0 */ val page_cursor: PaginationCursor? = null, - /** Added in 1.0.0 */ - val page_back: Boolean? = null, val limit: Long? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPostLikesResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPostLikesResponse.kt deleted file mode 100644 index 8bc45783..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPostLikesResponse.kt +++ /dev/null @@ -1,16 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -@CommonParcelize -@Serializable -data class ListPostLikesResponse( - val post_likes: List, - /** Added in Lemmy 1.0.0 */ - val next_page: PaginationCursor? = null, - /** Added in Lemmy 1.0.0 */ - val prev_page: PaginationCursor? = null, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListRegistrationApplications.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListRegistrationApplications.kt index 0c1d86e3..a3e93bff 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListRegistrationApplications.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListRegistrationApplications.kt @@ -13,7 +13,5 @@ data class ListRegistrationApplications( val page: Long? = null, /** Added in 1.0.0 */ val page_cursor: PaginationCursor? = null, - /** Added in 1.0.0 */ - val page_back: Boolean? = null, val limit: Long? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListRegistrationApplicationsResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListRegistrationApplicationsResponse.kt deleted file mode 100644 index 569c1051..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListRegistrationApplicationsResponse.kt +++ /dev/null @@ -1,16 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -@CommonParcelize -@Serializable -data class ListRegistrationApplicationsResponse( - val registration_applications: List, - /** Added in Lemmy 1.0.0 */ - val next_page: PaginationCursor? = null, - /** Added in Lemmy 1.0.0 */ - val prev_page: PaginationCursor? = null, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListReports.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListReports.kt index b5bcf75f..460a3f91 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListReports.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListReports.kt @@ -16,8 +16,6 @@ data class ListReports( val page: Long? = null, /** Added in 1.0.0 */ val page_cursor: PaginationCursor? = null, - /** Added in 1.0.0 */ - val page_back: Boolean? = null, val limit: Long? = null, /** Added in 1.0.0 */ val show_community_rule_violations: Boolean? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListReportsResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListReportsResponse.kt deleted file mode 100644 index 61b2ad92..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListReportsResponse.kt +++ /dev/null @@ -1,13 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.CommonParcelize -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -@CommonParcelize -@Serializable -data class ListReportsResponse( - val reports: List, - val next_page: PaginationCursor? = null, - val prev_page: PaginationCursor? = null, -): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminAdd.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListTaglines.kt similarity index 57% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminAdd.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListTaglines.kt index 2df1024b..c9607835 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminAdd.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListTaglines.kt @@ -1,16 +1,13 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PaginationCursor import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable -data class AdminAdd( - val id: Long, - val mod_person_id: PersonId, - val other_person_id: PersonId, - val removed: Boolean, - val published_at: String, +data class ListTaglines( + val page_cursor: PaginationCursor? = null, + val limit: Long? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListTaglinesResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListTaglinesResponse.kt deleted file mode 100644 index 145b9d57..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListTaglinesResponse.kt +++ /dev/null @@ -1,13 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.CommonParcelize -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -@CommonParcelize -@Serializable -data class ListTaglinesResponse( - val taglines: List, - val next_page: PaginationCursor? = null, - val prev_page: PaginationCursor? = null, -): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalSite.kt index 2ca60c27..7634ff92 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalSite.kt @@ -35,7 +35,7 @@ data class LocalSite( val reports_email_admins: Boolean, val federation_signed_fetch: Boolean, val default_post_listing_mode: PostListingMode /* "List" | "Card" | "SmallCard" */, - val default_sort_type: SortType /* "Active" | "Hot" | "New" | "Old" | "TopDay" | "TopWeek" | "TopMonth" | "TopYear" | "TopAll" | "MostComments" | "NewComments" | "TopHour" | "TopSixHour" | "TopTwelveHour" | "TopThreeMonths" | "TopSixMonths" | "TopNineMonths" | "Controversial" | "Scaled" */, + val default_post_sort_type: SortType /* "Active" | "Hot" | "New" | "Old" | "TopDay" | "TopWeek" | "TopMonth" | "TopYear" | "TopAll" | "MostComments" | "NewComments" | "TopHour" | "TopSixHour" | "TopTwelveHour" | "TopThreeMonths" | "TopSixMonths" | "TopNineMonths" | "Controversial" | "Scaled" */, val default_comment_sort_type: SortType /* "Hot" | "Top" | "New" | "Old" | "Controversial" */, val oauth_registration: Boolean, val post_upvotes: FederationMode /* "All" | "Local" | "Disable" */, @@ -53,6 +53,6 @@ data class LocalSite( val users_active_month: Long, val users_active_half_year: Long, val disable_email_notifications: Boolean, - val suggested_communities: MultiCommunityId? = null, + val suggested_multi_community_id: MultiCommunityId? = null, val default_items_per_page: Long, ) : DatatypeRoot, Identity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUser.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUser.kt index 84baff77..e2dc293e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUser.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUser.kt @@ -33,7 +33,6 @@ data class LocalUser( val admin: Boolean, val post_listing_mode: PostListingMode /* "List" | "Card" | "SmallCard" */, val totp_2fa_enabled: Boolean, - val enable_keyboard_navigation: Boolean, val enable_animated_images: Boolean, /** Added in 1.0.0 */ val enable_private_messages: Boolean, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Login.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Login.kt index c6d8eb83..b2f13ed9 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Login.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Login.kt @@ -11,4 +11,5 @@ data class Login( val username_or_email: SensitiveString, val password: SensitiveString, val totp_2fa_token: String? = null, + val stay_logged_in: Boolean? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UpdatePostNotifications.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkPostAsRead.kt similarity index 69% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UpdatePostNotifications.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkPostAsRead.kt index c20a1d8e..30f8bcc0 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UpdatePostNotifications.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkPostAsRead.kt @@ -2,11 +2,12 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PostId import kotlinx.serialization.Serializable @CommonParcelize @Serializable -data class UpdatePostNotifications( +data class MarkPostAsRead( val post_id: PostId, - val mode: String /* "AllComments" | "RepliesAndMentions" | "Mute" */, + val read: Boolean, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkPrivateMessageAsRead.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkPrivateMessageAsRead.kt index 960d39c2..13c6a230 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkPrivateMessageAsRead.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkPrivateMessageAsRead.kt @@ -5,6 +5,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: removed + @CommonParcelize @Serializable data class MarkPrivateMessageAsRead( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModAddToCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModAddToCommunity.kt deleted file mode 100644 index 84505331..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModAddToCommunity.kt +++ /dev/null @@ -1,17 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -@CommonParcelize -@Serializable -data class ModAddToCommunity( - val id: Long, - val mod_person_id: PersonId, - val other_person_id: PersonId, - val community_id: CommunityId, - val removed: Boolean, - val published_at: String, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModAddToCommunityView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModAddToCommunityView.kt deleted file mode 100644 index 219628a6..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModAddToCommunityView.kt +++ /dev/null @@ -1,15 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -@CommonParcelize -@Serializable -data class ModAddToCommunityView( - val mod_add_to_community: ModAddToCommunity, - val moderator: Person? = null, - val community: Community, - val other_person: Person, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModBanFromCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModBanFromCommunity.kt deleted file mode 100644 index 84829ace..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModBanFromCommunity.kt +++ /dev/null @@ -1,20 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.Identity -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -@CommonParcelize -@Serializable -data class ModBanFromCommunity( - override val id: Long, - val mod_person_id: PersonId, - val other_person_id: PersonId, - val community_id: CommunityId, - val reason: String, - val banned: Boolean, - val expires_at: String? = null, - val published_at: String, -) : DatatypeRoot, Identity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModBanFromCommunityView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModBanFromCommunityView.kt deleted file mode 100644 index c97309bc..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModBanFromCommunityView.kt +++ /dev/null @@ -1,15 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -@CommonParcelize -@Serializable -data class ModBanFromCommunityView( - val mod_ban_from_community: ModBanFromCommunity, - val moderator: Person? = null, - val community: Community, - val other_person: Person, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModChangeCommunityVisibility.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModChangeCommunityVisibility.kt deleted file mode 100644 index 666f825a..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModChangeCommunityVisibility.kt +++ /dev/null @@ -1,18 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.CommonParcelize -import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.dto.CommunityVisibility -import kotlinx.serialization.Serializable - -@CommonParcelize -@Serializable -data class ModChangeCommunityVisibility( - val id: Long, - val community_id: CommunityId, - val mod_person_id: PersonId, - val published_at: String, - /** Removed in 1.0.0 */ - val reason: String? = null, - val visibility: CommunityVisibility /* "Public" | "Unlisted" | "LocalOnlyPublic" | "LocalOnlyPrivate" | "Private" */, -): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModChangeCommunityVisibilityView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModChangeCommunityVisibilityView.kt deleted file mode 100644 index 644d341e..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModChangeCommunityVisibilityView.kt +++ /dev/null @@ -1,13 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.CommonParcelize -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -@CommonParcelize -@Serializable -data class ModChangeCommunityVisibilityView( - val mod_change_community_visibility: ModChangeCommunityVisibility, - val moderator: Person? = null, - val community: Community, -): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModEditPost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModEditPost.kt index 9d7d0771..bd66a9ba 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModEditPost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModEditPost.kt @@ -9,5 +9,5 @@ import kotlinx.serialization.Serializable data class ModEditPost( val post_id: PostId, val nsfw: Boolean? = null, - val tags: List? = null, + val tags: List? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModFeaturePostView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModFeaturePostView.kt deleted file mode 100644 index 2a19a8bf..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModFeaturePostView.kt +++ /dev/null @@ -1,17 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -@CommonParcelize -@Serializable -data class ModFeaturePostView( - val mod_feature_post: ModFeaturePost, - val moderator: Person? = null, - /** Added in Lemmy 1.0.0 */ - val other_person: Person? = null, - val post: Post, - val community: Community, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModLockCommentView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModLockCommentView.kt deleted file mode 100644 index a64bff83..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModLockCommentView.kt +++ /dev/null @@ -1,16 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.CommonParcelize -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -@CommonParcelize -@Serializable -data class ModLockCommentView( - val mod_lock_comment: ModLockComment, - val moderator: Person? = null, - val other_person: Person, - val comment: Comment, - val post: Post, - val community: Community, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModLockPost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModLockPost.kt deleted file mode 100644 index db135a59..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModLockPost.kt +++ /dev/null @@ -1,18 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -@CommonParcelize -@Serializable -data class ModLockPost( - val id: Long, - val mod_person_id: PersonId, - val post_id: PostId, - val locked: Boolean, - val published_at: String, - /** Added in 1.0.0 */ - val reason: String, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModLockPostView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModLockPostView.kt deleted file mode 100644 index 52242744..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModLockPostView.kt +++ /dev/null @@ -1,17 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -@CommonParcelize -@Serializable -data class ModLockPostView( - val mod_lock_post: ModLockPost, - val moderator: Person? = null, - /** Added in Lemmy 1.0.0 */ - val other_person: Person? = null, - val post: Post, - val community: Community, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModRemoveComment.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModRemoveComment.kt deleted file mode 100644 index ce041cee..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModRemoveComment.kt +++ /dev/null @@ -1,17 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -@CommonParcelize -@Serializable -data class ModRemoveComment( - val id: Long, - val mod_person_id: PersonId, - val comment_id: CommentId, - val reason: String, - val removed: Boolean, - val published_at: String, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModRemoveCommentView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModRemoveCommentView.kt deleted file mode 100644 index 69a6e6bb..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModRemoveCommentView.kt +++ /dev/null @@ -1,17 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -@CommonParcelize -@Serializable -data class ModRemoveCommentView( - val mod_remove_comment: ModRemoveComment, - val moderator: Person? = null, - val comment: Comment, - val other_person: Person, - val post: Post, - val community: Community, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModRemovePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModRemovePost.kt deleted file mode 100644 index 72e5a07b..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModRemovePost.kt +++ /dev/null @@ -1,17 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -@CommonParcelize -@Serializable -data class ModRemovePost( - val id: Long, - val mod_person_id: PersonId, - val post_id: PostId, - val reason: String, - val removed: Boolean, - val published_at: String, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModRemovePostView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModRemovePostView.kt deleted file mode 100644 index 62affd32..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModRemovePostView.kt +++ /dev/null @@ -1,15 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -@CommonParcelize -@Serializable -data class ModRemovePostView( - val mod_remove_post: ModRemovePost, - val moderator: Person? = null, - val post: Post, - val community: Community, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModTransferCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModTransferCommunity.kt deleted file mode 100644 index f98a2544..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModTransferCommunity.kt +++ /dev/null @@ -1,16 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -@CommonParcelize -@Serializable -data class ModTransferCommunity( - val id: Long, - val mod_person_id: PersonId, - val other_person_id: PersonId, - val community_id: CommunityId, - val published_at: String, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModTransferCommunityView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModTransferCommunityView.kt deleted file mode 100644 index 63897c93..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModTransferCommunityView.kt +++ /dev/null @@ -1,15 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -@CommonParcelize -@Serializable -data class ModTransferCommunityView( - val mod_transfer_community: ModTransferCommunity, - val moderator: Person? = null, - val community: Community, - val other_person: Person, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Modlog.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Modlog.kt new file mode 100644 index 00000000..26612bc0 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Modlog.kt @@ -0,0 +1,17 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import it.vercruysse.lemmyapi.enums.ModlogKind +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class Modlog( + val id: ModlogId, + val kind: ModlogKind /* "admin_add" | "admin_ban" | "admin_allow_instance" | "admin_block_instance" | "admin_purge_comment" | "admin_purge_community" | "admin_purge_person" | "admin_purge_post" | "mod_add_to_community" | "mod_ban_from_community" | "admin_feature_post_site" | "mod_feature_post_community" | "mod_change_community_visibility" | "mod_lock_post" | "mod_remove_comment" | "admin_remove_community" | "mod_remove_post" | "mod_transfer_community" | "mod_lock_comment" | "mod_warn_comment" | "mod_warn_post" */, + val is_revert: Boolean, + val reason: String? = null, + val expires_at: String? = null, + val published_at: String, +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModlogCombinedView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModlogCombinedView.kt deleted file mode 100644 index 1e05f1aa..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModlogCombinedView.kt +++ /dev/null @@ -1,143 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.CommonParcelize -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.ExperimentalSerializationApi -import kotlinx.serialization.SerialName -import kotlinx.serialization.json.JsonClassDiscriminator -import kotlinx.serialization.Serializable - - -// TODO: most likely wrong - -@CommonParcelize -@Serializable -@OptIn(ExperimentalSerializationApi::class) -@JsonClassDiscriminator("type_") -sealed class ModlogCombinedView: DatatypeRoot { - @CommonParcelize - @Serializable - @SerialName("AdminAllowInstance") - data class AdminAllowInstance( - val admin_allow_instance: AdminAllowInstanceView - ) : ModlogCombinedView() - - @CommonParcelize - @Serializable - @SerialName("AdminBlockInstance") - data class AdminBlockInstance( - val admin_block_instance: AdminBlockInstanceView - ) : ModlogCombinedView() - - @CommonParcelize - @Serializable - @SerialName("AdminPurgeComment") - data class AdminPurgeComment( - val admin_purge_comment: AdminPurgeCommentView - ) : ModlogCombinedView() - - @CommonParcelize - @Serializable - @SerialName("AdminPurgeCommunity") - data class AdminPurgeCommunity( - val admin_purge_community: AdminPurgeCommunityView - ) : ModlogCombinedView() - - @CommonParcelize - @Serializable - @SerialName("AdminPurgePerson") - data class AdminPurgePerson( - val admin_purge_person: AdminPurgePersonView - ) : ModlogCombinedView() - - @CommonParcelize - @Serializable - @SerialName("AdminPurgePost") - data class AdminPurgePost( - val admin_purge_post: AdminPurgePostView - ) : ModlogCombinedView() - - @CommonParcelize - @Serializable - @SerialName("AdminAdd") - internal data class AdminAdd( - val admin_add: AdminAddView, - ) : ModlogCombinedView() - - @CommonParcelize - @Serializable - @SerialName("ModAddToCommunity") - internal data class ModAddToCommunity( - val mod_add_to_community: ModAddToCommunityView, - ) : ModlogCombinedView() - - @CommonParcelize - @Serializable - @SerialName("AdminBan") - internal data class AdminBan( - val admin_ban: AdminBanView, - ) : ModlogCombinedView() - - @CommonParcelize - @Serializable - @SerialName("ModBanFromCommunity") - data class ModBanFromCommunity( - val mod_ban_from_community: ModBanFromCommunityView - ) : ModlogCombinedView() - - @CommonParcelize - @Serializable - @SerialName("ModFeaturePost") - data class ModFeaturePost( - val mod_feature_post: ModFeaturePostView - ) : ModlogCombinedView() - - @CommonParcelize - @Serializable - @SerialName("ModChangeCommunityVisibility") - data class ModChangeCommunityVisibility( - val mod_change_community_visibility: ModChangeCommunityVisibilityView - ) : ModlogCombinedView() - - @CommonParcelize - @Serializable - @SerialName("ModLockPost") - data class ModLockPost( - val mod_lock_post: ModLockPostView - ) : ModlogCombinedView() - - @CommonParcelize - @Serializable - @SerialName("ModRemoveComment") - data class ModRemoveComment( - val mod_remove_comment: ModRemoveCommentView - ) : ModlogCombinedView() - - @CommonParcelize - @Serializable - @SerialName("AdminRemoveCommunity") - internal data class AdminRemoveCommunity( - val admin_remove_community: AdminRemoveCommunityView, - ) : ModlogCombinedView() - - @CommonParcelize - @Serializable - @SerialName("ModRemovePost") - data class ModRemovePost( - val mod_remove_post: ModRemovePostView - ) : ModlogCombinedView() - - @CommonParcelize - @Serializable - @SerialName("ModTransferCommunity") - data class ModTransferCommunity( - val mod_transfer_community: ModTransferCommunityView - ) : ModlogCombinedView() - - @CommonParcelize - @Serializable - @SerialName("ModLockComment") - internal data class ModLockComment( - val mod_lock_comment: ModLockCommentView, - ): ModlogCombinedView() -} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/TagId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModlogId.kt similarity index 61% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/TagId.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModlogId.kt index 7b43964a..d32a905e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/TagId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModlogId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.datatypes -typealias TagId = Long +typealias ModlogId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModlogView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModlogView.kt new file mode 100644 index 00000000..135b0c0b --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ModlogView.kt @@ -0,0 +1,19 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.SerialName +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +@SerialName("mod_action") +data class ModlogView( + val modlog: Modlog, + val moderator: Person? = null, + val target_person: Person? = null, + val target_instance: Instance? = null, + val target_community: Community? = null, + val target_post: Post? = null, + val target_comment: Comment? = null, +) : DatatypeRoot, NotificationData diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MultiCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MultiCommunity.kt index b21768c4..1bdbbe97 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MultiCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MultiCommunity.kt @@ -12,10 +12,14 @@ data class MultiCommunity( val instance_id: InstanceId, val name: String, val title: String? = null, - val description: String? = null, + val summary: String? = null, val local: Boolean, val deleted: Boolean, val ap_id: String, + val last_refreshed_at: String, val published_at: String, val updated_at: String? = null, + val subscribers: Long, + val subscribers_local: Long, + val communities: Long, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetCommunityPendingFollowsCount.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MultiCommunityEntry.kt similarity index 71% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetCommunityPendingFollowsCount.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MultiCommunityEntry.kt index d558ef1a..f9267fbd 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetCommunityPendingFollowsCount.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MultiCommunityEntry.kt @@ -6,6 +6,7 @@ import kotlinx.serialization.Serializable @CommonParcelize @Serializable -data class GetCommunityPendingFollowsCount( +data class MultiCommunityEntry( + val multi_community_id: MultiCommunityId, val community_id: CommunityId, -): DatatypeRoot +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetReportCountResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MultiCommunityResponse.kt similarity index 72% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetReportCountResponse.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MultiCommunityResponse.kt index c6300f23..3579ce16 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetReportCountResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MultiCommunityResponse.kt @@ -1,12 +1,11 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable -data class GetReportCountResponse( - val count: Long, +data class MultiCommunityResponse( + val multi_community_view: MultiCommunityView, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MultiCommunityView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MultiCommunityView.kt index 7df87ab4..1c06f9f2 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MultiCommunityView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MultiCommunityView.kt @@ -2,11 +2,13 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot +import it.vercruysse.lemmyapi.dto.CommunityFollowerState import kotlinx.serialization.Serializable @CommonParcelize @Serializable data class MultiCommunityView( val multi: MultiCommunity, + val follow_state: CommunityFollowerState? /* "accepted" | "pending" | "approval_required" | "denied" */ = null, val owner: Person, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MyUserInfo.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MyUserInfo.kt index 849b36db..fbe7caa5 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MyUserInfo.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MyUserInfo.kt @@ -11,10 +11,11 @@ data class MyUserInfo( val local_user_view: LocalUserView, val follows: List, val moderates: List, + /** Added in Lemmy 1.0.0 */ + val multi_community_follows: List, val community_blocks: List, - - val instance_community_blocks: List, - val instance_person_blocks: List, + val instance_communities_blocks: List, + val instance_persons_blocks: List, val person_blocks: List, /** Added in Lemmy 1.0.0 */ val keyword_blocks: List = emptyList(), diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Notification.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Notification.kt index 8e136757..b6f2d6fa 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Notification.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Notification.kt @@ -16,4 +16,5 @@ data class Notification( val kind: NotificationType /* "Mention" | "Reply" | "Subscribed" | "PrivateMessage" */, val post_id: PostId? = null, val private_message_id: PrivateMessageId? = null, + val modlog_id: ModlogId? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/NotificationData.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/NotificationData.kt index 4f0f8d18..f379d233 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/NotificationData.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/NotificationData.kt @@ -2,34 +2,43 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot +//import it.vercruysse.lemmyapi.serializers.NotificationDataSerializer import kotlinx.serialization.ExperimentalSerializationApi import kotlinx.serialization.SerialName import kotlinx.serialization.Serializable import kotlinx.serialization.json.JsonClassDiscriminator +// TODO: uses custom serializers, idk if better solution, also maybe move to combined types + @CommonParcelize -@Serializable +//@Serializable(with = NotificationDataSerializer::class) @OptIn(ExperimentalSerializationApi::class) @JsonClassDiscriminator("type_") -sealed class NotificationData : DatatypeRoot { - @CommonParcelize - @Serializable - @SerialName("Post") - data class Post( - val post: PostView - ) : NotificationData() +sealed interface NotificationData : DatatypeRoot { +// @CommonParcelize +// @Serializable +// data class Post( +// val post: PostView +// ) : NotificationData() +// +// @CommonParcelize +// @Serializable +// data class Comment( +// val comment: CommentView +// ) : NotificationData() +// +// @CommonParcelize +// @Serializable +// data class PrivateMessage( +// val private_message: PrivateMessageView +// ) : NotificationData() +// +// @CommonParcelize +// @Serializable +// data class ModAction( +// val mod_action: ModlogView +// ) : NotificationData() +} + - @CommonParcelize - @Serializable - @SerialName("Comment") - data class Comment( - val comment: CommentView - ) : NotificationData() - @CommonParcelize - @Serializable - @SerialName("PrivateMessage") - data class PrivateMessage( - val private_message: PrivateMessageView - ) : NotificationData() -} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPostsResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PagedResponse.kt similarity index 83% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPostsResponse.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PagedResponse.kt index 4c031765..5fd4b981 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPostsResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PagedResponse.kt @@ -1,14 +1,13 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable -data class GetPostsResponse( - val posts: List, +data class PagedResponse( + val items: List, val next_page: PaginationCursor? = null, val prev_page: PaginationCursor? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PendingFollowerView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PendingFollowerView.kt new file mode 100644 index 00000000..9b83c6e2 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PendingFollowerView.kt @@ -0,0 +1,15 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import it.vercruysse.lemmyapi.dto.CommunityFollowerState +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class PendingFollowerView( + val person: Person, + val community: Community, + val is_new_instance: Boolean, + val follow_state: CommunityFollowerState? /* "accepted" | "pending" | "approval_required" | "denied" */ = null, +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Person.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Person.kt index aaf1121e..61f0e8b8 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Person.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Person.kt @@ -25,4 +25,6 @@ data class Person( val instance_id: InstanceId, val post_count: Long, val comment_count: Long, + /** Added in 1.0.0 */ + val last_refreshed_at: String, ) : DatatypeRoot, Identity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonCommentMention.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonCommentMention.kt deleted file mode 100644 index 15019d12..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonCommentMention.kt +++ /dev/null @@ -1,15 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.CommonParcelize -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -@CommonParcelize -@Serializable -data class PersonCommentMention( - val id: PersonCommentMentionId, - val recipient_id: PersonId, - val comment_id: CommentId, - val read: Boolean, - val published: String, -): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonCommentMentionId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonCommentMentionId.kt deleted file mode 100644 index bb9bb6b0..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonCommentMentionId.kt +++ /dev/null @@ -1,3 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -typealias PersonCommentMentionId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonCommentMentionView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonCommentMentionView.kt deleted file mode 100644 index 1b2ea6c3..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonCommentMentionView.kt +++ /dev/null @@ -1,26 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.CommonParcelize -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -@CommonParcelize -@Serializable -data class PersonCommentMentionView( - val person_comment_mention: PersonCommentMention, - val recipient: Person, - val comment: Comment, - val creator: Person, - val post: Post, - val community: Community, - val community_actions: CommunityActions? = null, - val comment_actions: CommentActions? = null, - val person_actions: PersonActions? = null, - val instance_actions: InstanceActions? = null, - val creator_home_instance_actions: InstanceActions? = null, - val creator_local_instance_actions: InstanceActions? = null, - val creator_community_actions: CommunityActions? = null, - val creator_is_admin: Boolean, - val can_mod: Boolean, - val creator_banned: Boolean, -): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonContentCombinedView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonContentCombinedView.kt deleted file mode 100644 index 6413e1b5..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonContentCombinedView.kt +++ /dev/null @@ -1,28 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.CommonParcelize -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.ExperimentalSerializationApi -import kotlinx.serialization.SerialName -import kotlinx.serialization.json.JsonClassDiscriminator -import kotlinx.serialization.Serializable - -@CommonParcelize -@Serializable -@OptIn(ExperimentalSerializationApi::class) -@JsonClassDiscriminator("type_") -sealed class PersonContentCombinedView: DatatypeRoot { - @CommonParcelize - @Serializable - @SerialName("Post") - data class Post( - val post: PostView - ) : PersonContentCombinedView() - - @CommonParcelize - @Serializable - @SerialName("Comment") - data class Comment( - val comment: CommentView - ) : PersonContentCombinedView() -} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonLikedCombinedView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonLikedCombinedView.kt deleted file mode 100644 index 9e14eb94..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonLikedCombinedView.kt +++ /dev/null @@ -1,29 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.CommonParcelize -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.ExperimentalSerializationApi -import kotlinx.serialization.SerialName -import kotlinx.serialization.Serializable -import kotlinx.serialization.json.JsonClassDiscriminator - -@CommonParcelize -@Serializable -@OptIn(ExperimentalSerializationApi::class) -@JsonClassDiscriminator("type_") -sealed class PersonLikedCombinedView : DatatypeRoot { - - @CommonParcelize - @Serializable - @SerialName("Post") - data class Post( - val post: PostView - ) : PersonLikedCombinedView() - - @CommonParcelize - @Serializable - @SerialName("Comment") - data class Comment( - val comment: CommentView - ) : PersonLikedCombinedView() -} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetUnreadCountResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonResponse.kt similarity index 73% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetUnreadCountResponse.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonResponse.kt index ae83ede0..b37b9b60 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetUnreadCountResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonResponse.kt @@ -1,12 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable -data class GetUnreadCountResponse( - val count: Long, -) : DatatypeRoot +data class PersonResponse(val person_view: PersonView) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonSavedCombinedView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonSavedCombinedView.kt deleted file mode 100644 index d66aab26..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonSavedCombinedView.kt +++ /dev/null @@ -1,28 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.CommonParcelize -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.ExperimentalSerializationApi -import kotlinx.serialization.SerialName -import kotlinx.serialization.json.JsonClassDiscriminator -import kotlinx.serialization.Serializable - -@CommonParcelize -@Serializable -@OptIn(ExperimentalSerializationApi::class) -@JsonClassDiscriminator("type_") -sealed class PersonSavedCombinedView: DatatypeRoot { - @CommonParcelize - @Serializable - @SerialName("Post") - data class Post( - val post: PostView - ) : PersonSavedCombinedView() - - @CommonParcelize - @Serializable - @SerialName("Comment") - data class Comment( - val comment: CommentView - ) : PersonSavedCombinedView() -} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PluginMetadata.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PluginMetadata.kt index 7ea01681..f5f6516f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PluginMetadata.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PluginMetadata.kt @@ -8,6 +8,6 @@ import kotlinx.serialization.Serializable @Serializable data class PluginMetadata( val name: String, - val url: String, - val description: String, + val url: String? = null, + val description: String? = null, ): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Post.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Post.kt index 5fe76e84..875682cc 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Post.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Post.kt @@ -33,11 +33,11 @@ data class Post( val url_content_type: String? = null, val alt_text: String? = null, val scheduled_publish_time_at: String? = null, + val newest_comment_time_at: String? = null, val comments: Long, val score: Long, val upvotes: Long, val downvotes: Long, - val newest_comment_time_at: String, val report_count: Long, val unresolved_report_count: Long, val federation_pending: Boolean, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostActions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostActions.kt index 4d24c705..0a27243c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostActions.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostActions.kt @@ -5,6 +5,8 @@ import it.vercruysse.lemmyapi.DatatypeRoot import it.vercruysse.lemmyapi.dto.PostNotificationsMode import kotlinx.serialization.Serializable +// TODO: voting changes + @CommonParcelize @Serializable data class PostActions( @@ -12,7 +14,7 @@ data class PostActions( val read_comments_at: String? = null, val read_comments_amount: Long? = null, val saved_at: String? = null, - val liked_at: String? = null, + val voted_at: String? = null, val like_score: Int? = null, val hidden_at: String? = null, val notifications: PostNotificationsMode? /* "AllComments" | "RepliesAndMentions" | "Mute" */ = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostReportView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostReportView.kt index 58a33849..e7ea15da 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostReportView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostReportView.kt @@ -4,10 +4,12 @@ import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +import kotlinx.serialization.SerialName @CommonParcelize @Serializable +@SerialName("post") data class PostReportView( val post_report: PostReport, val post: Post, @@ -21,5 +23,7 @@ data class PostReportView( val creator_is_admin: Boolean, val creator_is_moderator: Boolean, val creator_banned: Boolean, + val creator_ban_expires_at: String? = null, val creator_banned_from_community: Boolean, -) : DatatypeRoot + val creator_community_ban_expires_at: String? = null, +) : DatatypeRoot, ReportCombinedView diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostView.kt index dfd82223..60ce2ffb 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostView.kt @@ -5,9 +5,11 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.Identity +import kotlinx.serialization.SerialName @CommonParcelize @Serializable +@SerialName("post") data class PostView( val post: Post, val creator: Person, @@ -17,7 +19,7 @@ data class PostView( val community_actions: CommunityActions? = null, val person_actions: PersonActions? = null, val post_actions: PostActions? = null, - val tags: TagsView, + val tags: CommunityTagsView, /** Added in 1.0.0 */ val can_mod: Boolean, val creator_banned: Boolean, @@ -26,7 +28,7 @@ data class PostView( val creator_is_moderator: Boolean, val creator_banned_from_community: Boolean, val creator_community_ban_expires_at: String? = null, - ) : DatatypeRoot, Identity { + ) : DatatypeRoot, Identity, NotificationData { override val id: Long get() = post.id } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessageReportView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessageReportView.kt index 2c3b2bfc..c4d5895d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessageReportView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessageReportView.kt @@ -5,16 +5,21 @@ import it.vercruysse.lemmyapi.Identity import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +import kotlinx.serialization.SerialName @CommonParcelize @Serializable +@SerialName("private_message") data class PrivateMessageReportView( val private_message_report: PrivateMessageReport, val private_message: PrivateMessage, val private_message_creator: Person, val creator: Person, val resolver: Person? = null, -) : DatatypeRoot, Identity { + val creator_is_admin: Boolean, + val creator_banned: Boolean, + val creator_ban_expires_at: String? = null, +) : DatatypeRoot, Identity, ReportCombinedView { override val id: Long get() = private_message_report.id } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessageView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessageView.kt index 00d61ab9..24f2420c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessageView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessageView.kt @@ -5,14 +5,16 @@ import it.vercruysse.lemmyapi.Identity import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +import kotlinx.serialization.SerialName @CommonParcelize @Serializable +@SerialName("private_message") data class PrivateMessageView( val private_message: PrivateMessage, val creator: Person, val recipient: Person, -) : DatatypeRoot, Identity { +) : DatatypeRoot, Identity, NotificationData { override val id: Long get() = private_message.id } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PublicOAuthProvider.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PublicOAuthProvider.kt index a37ae81c..57232f57 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PublicOAuthProvider.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PublicOAuthProvider.kt @@ -1,3 +1,13 @@ package it.vercruysse.lemmyapi.datatypes -typealias PublicOAuthProvider = OAuthProvider +import kotlinx.serialization.Serializable + +@Serializable +data class PublicOAuthProvider( + val id: OAuthProviderId, + val display_name: String, + val authorization_endpoint: String, + val client_id: String, + val scopes: String, + val use_pkce: Boolean, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Register.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Register.kt index 31c9ad10..cff84cb3 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Register.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Register.kt @@ -17,4 +17,6 @@ data class Register( val captcha_answer: String? = null, val honeypot: String? = null, val answer: String? = null, + /** Added in 1.0.0 */ + val stay_logged_in: Boolean? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/RegistrationApplication.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/RegistrationApplication.kt index 2b3735ad..2ea4cc0b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/RegistrationApplication.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/RegistrationApplication.kt @@ -14,4 +14,5 @@ data class RegistrationApplication( val admin_id: PersonId? = null, val deny_reason: String? = null, val published_at: String, + val updated_at: String? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ReportCombinedView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ReportCombinedView.kt index 04417a9e..31f2b056 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ReportCombinedView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ReportCombinedView.kt @@ -1,42 +1,9 @@ package it.vercruysse.lemmyapi.datatypes -import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.ExperimentalSerializationApi -import kotlinx.serialization.SerialName import kotlinx.serialization.json.JsonClassDiscriminator -import kotlinx.serialization.Serializable -@CommonParcelize -@Serializable @OptIn(ExperimentalSerializationApi::class) @JsonClassDiscriminator("type_") -sealed class ReportCombinedView: DatatypeRoot { - @CommonParcelize - @Serializable - @SerialName("Post") - data class Post( - val post: PostReportView - ) : ReportCombinedView() - - @CommonParcelize - @Serializable - @SerialName("Comment") - data class Comment( - val comment: CommentReportView - ) : ReportCombinedView() - - @CommonParcelize - @Serializable - @SerialName("PrivateMessage") - data class PrivateMessage( - val private_message: PrivateMessageReportView - ) : ReportCombinedView() - - @CommonParcelize - @Serializable - @SerialName("Community") - data class Community( - val community: CommunityReportView - ) : ReportCombinedView() -} +sealed interface ReportCombinedView : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ResolveObjectResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ResolveObjectResponse.kt index b2a98351..c31145ea 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ResolveObjectResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ResolveObjectResponse.kt @@ -5,6 +5,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: is removed + @CommonParcelize @Serializable data class ResolveObjectResponse( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SaveUserSettings.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SaveUserSettings.kt index 21bcf392..4a18374a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SaveUserSettings.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SaveUserSettings.kt @@ -41,7 +41,6 @@ data class SaveUserSettings( val blocking_keywords: List? = null, val open_links_in_new_tab: Boolean? = null, val infinite_scroll_enabled: Boolean? = null, - val enable_keyboard_navigation: Boolean? = null, val enable_animated_images: Boolean? = null, val enable_private_messages: Boolean? = null, val collapse_bot_comments: Boolean? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Search.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Search.kt index 06020221..06afbc45 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Search.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Search.kt @@ -33,7 +33,5 @@ data class Search( val show_nsfw: Boolean? = null, /** Added in 1.0.0 */ val page_cursor: PaginationCursor? = null, - /** Added in 1.0.0 */ - val page_back: Boolean? = null, val limit: Long? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SearchResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SearchResponse.kt index 2fddcbf6..84621516 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SearchResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SearchResponse.kt @@ -9,7 +9,8 @@ import it.vercruysse.lemmyapi.CommonParcelize @CommonParcelize @Serializable data class SearchResponse( - val results: List, + val resolve: SearchCombinedView? = null, + val search: List, /** Added in 1.0.0 */ val next_page: PaginationCursor? = null, /** Added in 1.0.0 */ diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Site.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Site.kt index 3a22dcd7..43becd2c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Site.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Site.kt @@ -16,7 +16,7 @@ data class Site( val updated_at: String? = null, val icon: String? = null, val banner: String? = null, - val description: String? = null, + val summary: String? = null, val ap_id: String, val last_refreshed_at: String, val inbox_url: String, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminAddView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UnreadCountsResponse.kt similarity index 52% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminAddView.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UnreadCountsResponse.kt index ca4498cf..13482f27 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminAddView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UnreadCountsResponse.kt @@ -1,14 +1,14 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable -data class AdminAddView( - val admin_add: AdminAdd, - val moderator: Person? = null, - val other_person: Person, +data class UnreadCountsResponse( + val notification_count: Long, + val report_count: Long? = null, + val pending_follow_count: Long? = null, + val registration_application_count: Long? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UpdateCommunityTag.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UpdateCommunityTag.kt deleted file mode 100644 index cde5d4b9..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UpdateCommunityTag.kt +++ /dev/null @@ -1,12 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.CommonParcelize -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -@CommonParcelize -@Serializable -data class UpdateCommunityTag( - val tag_id: TagId, - val display_name: String, -): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UserSettingsBackup.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UserSettingsBackup.kt index 3b114009..706ebd4c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UserSettingsBackup.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UserSettingsBackup.kt @@ -21,4 +21,6 @@ data class UserSettingsBackup( val blocked_users: List, val blocked_instances_communities: List, val blocked_instances_persons: List, + val blocking_keywords: List, + val discussion_languages: List, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/VoteView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/VoteView.kt index dbd69737..1d91bba9 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/VoteView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/VoteView.kt @@ -6,12 +6,15 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO add new files and remove old files + @CommonParcelize @Serializable data class VoteView( val creator: Person, val creator_banned: Boolean, val creator_banned_from_community: Boolean, + // TODO: to be changed val score: Int, ) : DatatypeRoot, Identity { override val id: Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/dto/CustomDataTypes.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/dto/CustomDataTypes.kt index 0af00053..4c0a934c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/dto/CustomDataTypes.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/dto/CustomDataTypes.kt @@ -27,7 +27,7 @@ enum class SubscribedType { NotSubscribed, Pending, } - +// TODO: denied @Serializable enum class CommunityFollowerState { Accepted, @@ -82,6 +82,7 @@ enum class SearchType(override val minimumVersion: Version = MINIMUM_API_VERSION Url, } +// TODO: changes @Serializable enum class ModlogActionType(override val minimumVersion: Version = MINIMUM_API_VERSION, override val maximumVersion: Version? = null) : VersionTracker { @@ -216,6 +217,7 @@ enum class NotificationType(override val minimumVersion: Version = MINIMUM_API_V Reply, PrivateMessage, Subscribed(V1_0_0), + ModAction(V1_0_0), } @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/GetFederatedInstancesKind.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/GetFederatedInstancesKind.kt new file mode 100644 index 00000000..214c959d --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/GetFederatedInstancesKind.kt @@ -0,0 +1,15 @@ +package it.vercruysse.lemmyapi.enums + +import io.github.z4kn4fein.semver.Version +import it.vercruysse.lemmyapi.V1_0_0 +import it.vercruysse.lemmyapi.dto.VersionTracker +import kotlinx.serialization.Serializable + + +@Serializable +enum class GetFederatedInstancesKind(override val minimumVersion: Version = V1_0_0, override val maximumVersion: Version? = null) : VersionTracker { + All, + Linked, + Allowed, + Blocked, +} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/ModlogKind.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/ModlogKind.kt new file mode 100644 index 00000000..487d9f20 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/ModlogKind.kt @@ -0,0 +1,33 @@ +package it.vercruysse.lemmyapi.enums + +import io.github.z4kn4fein.semver.Version +import it.vercruysse.lemmyapi.V1_0_0 +import it.vercruysse.lemmyapi.dto.VersionTracker +import kotlinx.serialization.Serializable + + +@Serializable +enum class ModlogKind(override val minimumVersion: Version = V1_0_0, override val maximumVersion: Version? = null) : VersionTracker { + All, + AdminAdd, + AdminBan, + AdminAllowInstance, + AdminBlockInstance, + AdminPurgeComment, + AdminPurgeCommunity, + AdminPurgePerson, + AdminPurgePost, + ModAddToCommunity, + ModBanFromCommunity, + AdminFeaturePostSite, + ModFeaturePostCommunity, + ModChangeCommunityVisibility, + ModLockPost, + ModRemoveComment, + AdminRemoveCommunity, + ModRemovePost, + ModTransferCommunity, + ModLockComment, + ModWarnComment, + ModWarnPost, +} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/MultiCommunityListingType.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/MultiCommunityListingType.kt new file mode 100644 index 00000000..121abdb7 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/MultiCommunityListingType.kt @@ -0,0 +1,13 @@ +package it.vercruysse.lemmyapi.enums + +import io.github.z4kn4fein.semver.Version +import it.vercruysse.lemmyapi.V1_0_0 +import it.vercruysse.lemmyapi.dto.VersionTracker +import kotlinx.serialization.Serializable + +@Serializable +enum class MultiCommunityListingType(override val minimumVersion: Version = V1_0_0, override val maximumVersion: Version? = null) : VersionTracker { + All, + Local, + Subscribed, +} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt index 50da3dba..6467a72f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt @@ -6,16 +6,20 @@ import it.vercruysse.lemmyapi.LemmyApiBaseController import it.vercruysse.lemmyapi.datatypes.ListCustomEmojis import it.vercruysse.lemmyapi.datatypes.ListCustomEmojisResponse import it.vercruysse.lemmyapi.datatypes.ListNotifications -import it.vercruysse.lemmyapi.datatypes.ListNotificationsResponse import it.vercruysse.lemmyapi.datatypes.MarkNotificationAsRead import it.vercruysse.lemmyapi.datatypes.MyUserInfo +import it.vercruysse.lemmyapi.datatypes.PagedResponse +import it.vercruysse.lemmyapi.datatypes.UnreadCountsResponse import it.vercruysse.lemmyapi.dto.ExportUserSettingsResponse import it.vercruysse.lemmyapi.dto.ImportUserSettings import it.vercruysse.lemmyapi.dto.NotificationDataType import it.vercruysse.lemmyapi.dto.NotificationType import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.GetCaptcha +import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.GetReportCount import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.GetUnreadCount +import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.GetUnreadRegistrationApplicationCount import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.MarkPostAsRead +import kotlin.map internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, baseUrl: String, auth: String?) : LemmyApiBaseController(client, actualVersion, baseUrl, auth) { @@ -66,8 +70,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun getModlog( form: it.vercruysse.lemmyapi.datatypes.GetModlog, - ): Result = - apiV18.getModlog(transformer.fromUni(form)).map(transformer::toUni) + ): Result> = notSupported() /** * Search lemmy. @@ -132,8 +135,12 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun listCommunities( form: it.vercruysse.lemmyapi.datatypes.ListCommunities, - ): Result = - apiV18.listCommunities(transformer.fromUni(form)).map(transformer::toUni) + ): Result> = + apiV18.listCommunities(transformer.fromUni(form)).map { + PagedResponse( + items = it.communities.map(transformer::toUni), + ) + } /** * Follow / subscribe to a community. @@ -152,8 +159,13 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun blockCommunity( form: it.vercruysse.lemmyapi.datatypes.BlockCommunity, - ): Result = - apiV18.blockCommunity(transformer.fromUni(form)).map(transformer::toUni) + ): Result = + apiV18.blockCommunity(transformer.fromUni(form)).map { resp -> + it.vercruysse.lemmyapi.datatypes.CommunityResponse( + transformer.toUni(resp.community_view), + emptyList() + ) + } /** * Delete a community. @@ -192,7 +204,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun banFromCommunity( form: it.vercruysse.lemmyapi.datatypes.BanFromCommunity, - ): Result = + ): Result = apiV18.banFromCommunity(transformer.fromUni(form)).map(transformer::toUni) /** @@ -210,8 +222,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @GET("federated_instances") */ - override suspend fun getFederatedInstances(): Result = - apiV18.getFederatedInstances(it.vercruysse.lemmyapi.v0.x18.x5.datatypes.GetFederatedInstances(auth)).map(transformer::toUni) + override suspend fun getFederatedInstances(form: it.vercruysse.lemmyapi.datatypes.GetFederatedInstances): Result> = + notSupported() // Not used and complex to map /** * Get / fetch a post. @@ -246,8 +258,10 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun getPosts( form: it.vercruysse.lemmyapi.datatypes.GetPosts, - ): Result = - apiV18.getPosts(transformer.fromUni(form.toPostsForm())).map(transformer::toUni) + ): Result> = + apiV18.getPosts(transformer.fromUni(form.toPostsForm())).map { resp -> + PagedResponse(resp.posts.map(transformer::toUni)) + } /** * Delete a post. @@ -343,39 +357,24 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun listReports( form: it.vercruysse.lemmyapi.datatypes.ListReports, - ): Result = + ): Result> = when (form.type_) { it.vercruysse.lemmyapi.dto.ReportType.Communities -> notSupported() it.vercruysse.lemmyapi.dto.ReportType.Posts -> { apiV18.listPostReports(transformer.fromUniP(form)).map { resp -> - val items = resp.post_reports.map { r -> - it.vercruysse.lemmyapi.datatypes.ReportCombinedView.Post( - transformer.toUni(r), - ) - } - it.vercruysse.lemmyapi.datatypes.ListReportsResponse(items) + PagedResponse(resp.post_reports.map(transformer::toUni)) } } it.vercruysse.lemmyapi.dto.ReportType.Comments -> { apiV18.listCommentReports(transformer.fromUniC(form)).map { resp -> - val items = resp.comment_reports.map { r -> - it.vercruysse.lemmyapi.datatypes.ReportCombinedView.Comment( - transformer.toUni(r), - ) - } - it.vercruysse.lemmyapi.datatypes.ListReportsResponse(items) + PagedResponse(resp.comment_reports.map(transformer::toUni)) } } it.vercruysse.lemmyapi.dto.ReportType.PrivateMessages -> { apiV18.listPrivateMessageReports(transformer.fromUniPm(form)).map { resp -> - val items = resp.private_message_reports.map { r -> - it.vercruysse.lemmyapi.datatypes.ReportCombinedView.PrivateMessage( - transformer.toUni(r), - ) - } - it.vercruysse.lemmyapi.datatypes.ListReportsResponse(items) + PagedResponse(resp.private_message_reports.map(transformer::toUni)) } } @@ -388,30 +387,18 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba val allReports = mutableListOf() allReports.addAll( - postsResp.post_reports.map { r -> - it.vercruysse.lemmyapi.datatypes.ReportCombinedView.Post( - transformer.toUni(r), - ) - }, + postsResp.post_reports.map(transformer::toUni) ) allReports.addAll( - commentsResp.comment_reports.map { r -> - it.vercruysse.lemmyapi.datatypes.ReportCombinedView.Comment( - transformer.toUni(r), - ) - }, + commentsResp.comment_reports.map(transformer::toUni) ) allReports.addAll( - privateMessagesResp.private_message_reports.map { r -> - it.vercruysse.lemmyapi.datatypes.ReportCombinedView.PrivateMessage( - transformer.toUni(r), - ) - }, + privateMessagesResp.private_message_reports.map(transformer::toUni) ) - it.vercruysse.lemmyapi.datatypes.ListReportsResponse(allReports) + PagedResponse(allReports) } } } @@ -463,8 +450,10 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun getComments( form: it.vercruysse.lemmyapi.datatypes.GetComments, - ): Result = - apiV18.getComments(transformer.fromUni(form)).map(transformer::toUni) + ): Result> = + apiV18.getComments(transformer.fromUni(form)).map { resp -> + PagedResponse(resp.comments.map(transformer::toUni)) + } /** * Delete a comment. @@ -620,39 +609,45 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba NotificationType.Mention -> apiV18.markPersonMentionAsRead(transformer.fromUniM(form)).map { } NotificationType.Reply -> apiV18.markCommentReplyAsRead(transformer.fromUniR(form)).map { } NotificationType.PrivateMessage -> apiV18.markPrivateMessageAsRead(transformer.fromUniP(form)).map { } - NotificationType.Subscribed -> notSupported() + NotificationType.Subscribed, NotificationType.ModAction -> notSupported() null -> notSupported() } /** * List notifications. */ - override suspend fun listNotifications(form: ListNotifications): Result = when (form.type_) { + override suspend fun listNotifications(form: ListNotifications): Result> = when (form.type_) { NotificationDataType.All -> runCatching { - val resReplies = apiV18.getReplies(transformer.fromUniR(form)).map(transformer::toUni).getOrThrow() - val mentionReplies = apiV18.getPersonMentions(transformer.fromUniM(form)).map(transformer::toUni).getOrThrow() - val privateMessages = apiV18.getPrivateMessages(transformer.fromUniP(form)).map(transformer::toUni).getOrThrow() + val replies = apiV18.getReplies(transformer.fromUniR(form)).getOrThrow().replies.map(transformer::toUni) + val mentionReplies = apiV18.getPersonMentions(transformer.fromUniM(form)).getOrThrow().mentions.map(transformer::toUni) + val privateMessages = apiV18.getPrivateMessages(transformer.fromUniP(form)).getOrThrow().private_messages.map(transformer::toUniPMV) - ListNotificationsResponse( + PagedResponse( buildList { - addAll(resReplies.notifications) - addAll(mentionReplies.notifications) - addAll(privateMessages.notifications) + addAll(replies) + addAll(mentionReplies) + addAll(privateMessages) }, ) } NotificationDataType.Reply -> - apiV18.getReplies(transformer.fromUniR(form)).map(transformer::toUni) + apiV18.getReplies(transformer.fromUniR(form)).map { resp -> + PagedResponse(resp.replies.map(transformer::toUni)) + } NotificationDataType.Mention -> - apiV18.getPersonMentions(transformer.fromUniM(form)).map(transformer::toUni) + apiV18.getPersonMentions(transformer.fromUniM(form)).map { resp -> + PagedResponse(resp.mentions.map(transformer::toUni)) + } NotificationDataType.PrivateMessage -> - apiV18.getPrivateMessages(transformer.fromUniP(form)).map(transformer::toUni) + apiV18.getPrivateMessages(transformer.fromUniP(form)).map { resp -> + PagedResponse(resp.private_messages.map(transformer::toUniPMV)) + } - NotificationDataType.Subscribed -> Result.success(ListNotificationsResponse(emptyList())) + NotificationDataType.Subscribed -> Result.success(PagedResponse(emptyList())) } /** @@ -662,16 +657,20 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun banPerson( form: it.vercruysse.lemmyapi.datatypes.BanPerson, - ): Result = - apiV18.banPerson(transformer.fromUni(form)).map(transformer::toUni) + ): Result = + apiV18.banPerson(transformer.fromUni(form)).map { resp -> + it.vercruysse.lemmyapi.datatypes.PersonResponse(transformer.toUni(resp.person_view)) + } /** * Get a list of banned users * * @GET("user/banned") */ - override suspend fun getBannedPersons(): Result = - apiV18.getBannedPersons(it.vercruysse.lemmyapi.v0.x18.x5.datatypes.GetBannedPersons(auth ?: "")).map(transformer::toUni) + override suspend fun getBannedPersons(): Result> = + apiV18.getBannedPersons(it.vercruysse.lemmyapi.v0.x18.x5.datatypes.GetBannedPersons(auth ?: "")).map { resp -> + PagedResponse(resp.banned.map(transformer::toUni)) + } /** * Block a person. @@ -680,8 +679,10 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun blockPerson( form: it.vercruysse.lemmyapi.datatypes.BlockPerson, - ): Result = - apiV18.blockPerson(transformer.fromUni(form)).map(transformer::toUni) + ): Result = + apiV18.blockPerson(transformer.fromUni(form)).map { resp -> + it.vercruysse.lemmyapi.datatypes.PersonResponse(transformer.toUni(resp.person_view)) + } /** * Log into lemmy. @@ -742,23 +743,21 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba ): Result = apiV18.changePassword(transformer.fromUni(form)).map(transformer::toUni) - /** - * Get counts for your reports - * - * @GET("user/report_count") - */ - override suspend fun getReportCount( - form: it.vercruysse.lemmyapi.datatypes.GetReportCount, - ): Result = - apiV18.getReportCount(transformer.fromUni(form)).map(transformer::toUni) - /** * Get your unread counts * - * @GET("user/unread_count") */ - override suspend fun getUnreadCount(): Result = - apiV18.getUnreadCount(GetUnreadCount(auth ?: "")).map(transformer::toUni) + override suspend fun getUnreadCounts(): Result = runCatching { + val d = apiV18.getUnreadCount(GetUnreadCount(auth ?: "")).getOrThrow() + val reportCount = apiV18.getReportCount(GetReportCount(null, auth ?: "")).getOrNull() + val applicationCount = apiV18.getUnreadRegistrationApplicationCount(GetUnreadRegistrationApplicationCount(auth ?: "")).getOrNull() + + UnreadCountsResponse( + notification_count = d.replies + d.mentions + d.private_messages, + report_count = (reportCount?.post_reports ?: 0L) + (reportCount?.comment_reports ?: 0L) + (reportCount?.comment_reports ?: 0L), + registration_application_count = applicationCount?.registration_applications, + ) + } /** * Verify your email @@ -793,16 +792,6 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba ): Result = apiV18.addAdmin(transformer.fromUni(form)).map(transformer::toUni) - /** - * Get the unread registration applications count. - * - * @GET("admin/registration_application/count") - */ - override suspend fun getUnreadRegistrationApplicationCount(): Result = - apiV18.getUnreadRegistrationApplicationCount( - it.vercruysse.lemmyapi.v0.x18.x5.datatypes.GetUnreadRegistrationApplicationCount(auth ?: ""), - ).map(transformer::toUni) - /** * List the registration applications. * @@ -810,8 +799,10 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun listRegistrationApplications( form: it.vercruysse.lemmyapi.datatypes.ListRegistrationApplications, - ): Result = - apiV18.listRegistrationApplications(transformer.fromUni(form)).map(transformer::toUni) + ): Result> = + apiV18.listRegistrationApplications(transformer.fromUni(form)).map { resp -> + PagedResponse(resp.registration_applications.map(transformer::toUni)) + } /** * Approve a registration application @@ -924,8 +915,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * @POST("user/totp/update") */ override suspend fun updateTotp( - form: it.vercruysse.lemmyapi.datatypes.UpdateTotp, - ): Result = notSupported() + form: it.vercruysse.lemmyapi.datatypes.EditTotp, + ): Result = notSupported() /** * Export a backup of your user settings, including your saved content, @@ -982,7 +973,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun listPostLikes( form: it.vercruysse.lemmyapi.datatypes.ListPostLikes, - ): Result = notSupported() + ): Result> = notSupported() /** * List a comment's likes. Admin-only. @@ -991,7 +982,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun listCommentLikes( form: it.vercruysse.lemmyapi.datatypes.ListCommentLikes, - ): Result = notSupported() + ): Result> = notSupported() /** * List all the media for your user @@ -1000,7 +991,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun listMedia( form: it.vercruysse.lemmyapi.datatypes.ListMedia, - ): Result = notSupported() + ): Result> = notSupported() /** * List all the media known to your instance. @@ -1009,7 +1000,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun listAllMedia( form: it.vercruysse.lemmyapi.datatypes.ListMedia, - ): Result = notSupported() + ): Result> = notSupported() /** * Hide a post from list views. diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/MapperGenerator.kt index 13592aa7..b72863a8 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/MapperGenerator.kt @@ -48,19 +48,7 @@ internal interface MapperGenerator { fun toUni(d: AddAdminResponse): it.vercruysse.lemmyapi.datatypes.AddAdminResponse fun toUni(d: AddModToCommunityResponse): it.vercruysse.lemmyapi.datatypes.AddModToCommunityResponse - fun toUni(d: AdminPurgeComment): it.vercruysse.lemmyapi.datatypes.AdminPurgeComment - fun toUni(d: AdminPurgeCommentView): it.vercruysse.lemmyapi.datatypes.AdminPurgeCommentView - fun toUni(d: AdminPurgeCommunity): it.vercruysse.lemmyapi.datatypes.AdminPurgeCommunity - fun toUni(d: AdminPurgeCommunityView): it.vercruysse.lemmyapi.datatypes.AdminPurgeCommunityView - fun toUni(d: AdminPurgePerson): it.vercruysse.lemmyapi.datatypes.AdminPurgePerson - fun toUni(d: AdminPurgePersonView): it.vercruysse.lemmyapi.datatypes.AdminPurgePersonView - fun toUni(d: AdminPurgePost): it.vercruysse.lemmyapi.datatypes.AdminPurgePost - fun toUni(d: AdminPurgePostView): it.vercruysse.lemmyapi.datatypes.AdminPurgePostView - fun toUni(d: BanFromCommunityResponse): it.vercruysse.lemmyapi.datatypes.BanFromCommunityResponse - fun toUni(d: BannedPersonsResponse): it.vercruysse.lemmyapi.datatypes.BannedPersonsResponse - fun toUni(d: BanPersonResponse): it.vercruysse.lemmyapi.datatypes.BanPersonResponse - fun toUni(d: BlockCommunityResponse): it.vercruysse.lemmyapi.datatypes.BlockCommunityResponse - fun toUni(d: BlockPersonResponse): it.vercruysse.lemmyapi.datatypes.BlockPersonResponse + fun toUni(d: BanFromCommunityResponse): it.vercruysse.lemmyapi.datatypes.PersonResponse fun toUni(d: CaptchaResponse): it.vercruysse.lemmyapi.datatypes.CaptchaResponse fun toUni(d: Comment, counts: CommentAggregates): it.vercruysse.lemmyapi.datatypes.Comment @@ -77,51 +65,17 @@ internal interface MapperGenerator { fun toUni(d: CustomEmojiKeyword): it.vercruysse.lemmyapi.datatypes.CustomEmojiKeyword fun toUni(d: CustomEmojiResponse): it.vercruysse.lemmyapi.datatypes.CustomEmojiResponse fun toUni(d: CustomEmojiView): it.vercruysse.lemmyapi.datatypes.CustomEmojiView - fun toUni(d: FederatedInstances): it.vercruysse.lemmyapi.datatypes.FederatedInstances fun toUni(d: GetCaptchaResponse): it.vercruysse.lemmyapi.datatypes.GetCaptchaResponse - fun toUni(d: GetCommentsResponse): it.vercruysse.lemmyapi.datatypes.GetCommentsResponse fun toUni(d: GetCommunityResponse): it.vercruysse.lemmyapi.datatypes.GetCommunityResponse - fun toUni(d: GetFederatedInstancesResponse): it.vercruysse.lemmyapi.datatypes.GetFederatedInstancesResponse - fun toUni(d: GetModlogResponse): it.vercruysse.lemmyapi.datatypes.GetModlogResponse fun toUni(d: GetPersonDetailsResponse): it.vercruysse.lemmyapi.datatypes.GetPersonDetailsResponse fun toUni(d: GetPostResponse): it.vercruysse.lemmyapi.datatypes.GetPostResponse - fun toUni(d: GetPostsResponse): it.vercruysse.lemmyapi.datatypes.GetPostsResponse - fun toUni(d: GetReportCountResponse): it.vercruysse.lemmyapi.datatypes.GetReportCountResponse fun toUni(d: GetSiteMetadataResponse): it.vercruysse.lemmyapi.datatypes.GetSiteMetadataResponse - fun toUni(d: GetUnreadCountResponse): it.vercruysse.lemmyapi.datatypes.GetUnreadCountResponse - fun toUni( - d: GetUnreadRegistrationApplicationCountResponse, - ): it.vercruysse.lemmyapi.datatypes.GetUnreadRegistrationApplicationCountResponse fun toUni(d: Instance): it.vercruysse.lemmyapi.datatypes.Instance fun toUni(d: Language): it.vercruysse.lemmyapi.datatypes.Language - fun toUni(d: ListCommunitiesResponse): it.vercruysse.lemmyapi.datatypes.ListCommunitiesResponse - fun toUni(d: ListRegistrationApplicationsResponse): it.vercruysse.lemmyapi.datatypes.ListRegistrationApplicationsResponse fun toUni(d: LocalUserView): it.vercruysse.lemmyapi.datatypes.LocalUserView fun toUni(d: LoginResponse): it.vercruysse.lemmyapi.datatypes.LoginResponse - fun toUni(d: ModAdd): it.vercruysse.lemmyapi.datatypes.AdminAdd - fun toUni(d: ModAddCommunity): it.vercruysse.lemmyapi.datatypes.ModAddToCommunity - fun toUni(d: ModAddCommunityView): it.vercruysse.lemmyapi.datatypes.ModAddToCommunityView - fun toUni(d: ModAddView): it.vercruysse.lemmyapi.datatypes.AdminAddView - fun toUni(d: ModBan): it.vercruysse.lemmyapi.datatypes.AdminBan - fun toUni(d: ModBanFromCommunity): it.vercruysse.lemmyapi.datatypes.ModBanFromCommunity - fun toUni(d: ModBanFromCommunityView): it.vercruysse.lemmyapi.datatypes.ModBanFromCommunityView - fun toUni(d: ModBanView): it.vercruysse.lemmyapi.datatypes.AdminBanView - fun toUni(d: ModFeaturePost): it.vercruysse.lemmyapi.datatypes.ModFeaturePost - fun toUni(d: ModFeaturePostView): it.vercruysse.lemmyapi.datatypes.ModFeaturePostView - fun toUni(d: ModHideCommunity): it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibility - fun toUni(d: ModHideCommunityView): it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibilityView - fun toUni(d: ModLockPost): it.vercruysse.lemmyapi.datatypes.ModLockPost - fun toUni(d: ModLockPostView): it.vercruysse.lemmyapi.datatypes.ModLockPostView - fun toUni(d: ModRemoveComment): it.vercruysse.lemmyapi.datatypes.ModRemoveComment - fun toUni(d: ModRemoveCommentView): it.vercruysse.lemmyapi.datatypes.ModRemoveCommentView - fun toUni(d: ModRemoveCommunity): it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunity - fun toUni(d: ModRemoveCommunityView): it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunityView - fun toUni(d: ModRemovePost): it.vercruysse.lemmyapi.datatypes.ModRemovePost - fun toUni(d: ModRemovePostView): it.vercruysse.lemmyapi.datatypes.ModRemovePostView - fun toUni(d: ModTransferCommunity): it.vercruysse.lemmyapi.datatypes.ModTransferCommunity - fun toUni(d: ModTransferCommunityView): it.vercruysse.lemmyapi.datatypes.ModTransferCommunityView fun toUni(d: Person, counts: PersonAggregates): it.vercruysse.lemmyapi.datatypes.Person fun toUni(d: Post, counts: PostAggregates): it.vercruysse.lemmyapi.datatypes.Post @@ -230,7 +184,6 @@ internal interface MapperGenerator { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPosts): GetPosts - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetReportCount): GetReportCount fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetSiteMetadata): GetSiteMetadata fun fromUni(d: it.vercruysse.lemmyapi.datatypes.HideCommunity): HideCommunity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt index e14dbd89..619b9abf 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt @@ -2,13 +2,9 @@ package it.vercruysse.lemmyapi.v0.x18.x5 import it.vercruysse.lemmyapi.datatypes.CommentActions import it.vercruysse.lemmyapi.datatypes.CommunityActions -import it.vercruysse.lemmyapi.datatypes.GetModlogResponse import it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState -import it.vercruysse.lemmyapi.datatypes.ListNotificationsResponse import it.vercruysse.lemmyapi.datatypes.MarkNotificationAsRead -import it.vercruysse.lemmyapi.datatypes.ModlogCombinedView import it.vercruysse.lemmyapi.datatypes.Notification -import it.vercruysse.lemmyapi.datatypes.NotificationData import it.vercruysse.lemmyapi.datatypes.NotificationView import it.vercruysse.lemmyapi.datatypes.PersonActions import it.vercruysse.lemmyapi.datatypes.PostActions @@ -26,30 +22,11 @@ import it.vercruysse.lemmyapi.datatypes.AddAdmin as LemmyapiDatatypesAddAdmin import it.vercruysse.lemmyapi.datatypes.AddAdminResponse as LemmyapiDatatypesAddAdminResponse import it.vercruysse.lemmyapi.datatypes.AddModToCommunity as LemmyapiDatatypesAddModToCommunity import it.vercruysse.lemmyapi.datatypes.AddModToCommunityResponse as LemmyapiDatatypesAddModToCommunityResponse -import it.vercruysse.lemmyapi.datatypes.AdminAdd as LemmyapiDatatypesModAdd -import it.vercruysse.lemmyapi.datatypes.AdminAddView as LemmyapiDatatypesModAddView -import it.vercruysse.lemmyapi.datatypes.AdminBan as LemmyapiDatatypesModBan -import it.vercruysse.lemmyapi.datatypes.AdminBanView as LemmyapiDatatypesModBanView -import it.vercruysse.lemmyapi.datatypes.AdminPurgeComment as LemmyapiDatatypesAdminPurgeComment -import it.vercruysse.lemmyapi.datatypes.AdminPurgeCommentView as LemmyapiDatatypesAdminPurgeCommentView -import it.vercruysse.lemmyapi.datatypes.AdminPurgeCommunity as LemmyapiDatatypesAdminPurgeCommunity -import it.vercruysse.lemmyapi.datatypes.AdminPurgeCommunityView as LemmyapiDatatypesAdminPurgeCommunityView -import it.vercruysse.lemmyapi.datatypes.AdminPurgePerson as LemmyapiDatatypesAdminPurgePerson -import it.vercruysse.lemmyapi.datatypes.AdminPurgePersonView as LemmyapiDatatypesAdminPurgePersonView -import it.vercruysse.lemmyapi.datatypes.AdminPurgePost as LemmyapiDatatypesAdminPurgePost -import it.vercruysse.lemmyapi.datatypes.AdminPurgePostView as LemmyapiDatatypesAdminPurgePostView -import it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunity as LemmyapiDatatypesModRemoveCommunity -import it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunityView as LemmyapiDatatypesModRemoveCommunityView import it.vercruysse.lemmyapi.datatypes.ApproveRegistrationApplication as LemmyapiDatatypesApproveRegistrationApplication import it.vercruysse.lemmyapi.datatypes.BanFromCommunity as LemmyapiDatatypesBanFromCommunity -import it.vercruysse.lemmyapi.datatypes.BanFromCommunityResponse as LemmyapiDatatypesBanFromCommunityResponse import it.vercruysse.lemmyapi.datatypes.BanPerson as LemmyapiDatatypesBanPerson -import it.vercruysse.lemmyapi.datatypes.BanPersonResponse as LemmyapiDatatypesBanPersonResponse -import it.vercruysse.lemmyapi.datatypes.BannedPersonsResponse as LemmyapiDatatypesBannedPersonsResponse import it.vercruysse.lemmyapi.datatypes.BlockCommunity as LemmyapiDatatypesBlockCommunity -import it.vercruysse.lemmyapi.datatypes.BlockCommunityResponse as LemmyapiDatatypesBlockCommunityResponse import it.vercruysse.lemmyapi.datatypes.BlockPerson as LemmyapiDatatypesBlockPerson -import it.vercruysse.lemmyapi.datatypes.BlockPersonResponse as LemmyapiDatatypesBlockPersonResponse import it.vercruysse.lemmyapi.datatypes.CaptchaResponse as LemmyapiDatatypesCaptchaResponse import it.vercruysse.lemmyapi.datatypes.ChangePassword as LemmyapiDatatypesChangePassword import it.vercruysse.lemmyapi.datatypes.Comment as LemmyapiDatatypesComment @@ -92,39 +69,27 @@ import it.vercruysse.lemmyapi.datatypes.EditPost as LemmyapiDatatypesEditPost import it.vercruysse.lemmyapi.datatypes.EditPrivateMessage as LemmyapiDatatypesEditPrivateMessage import it.vercruysse.lemmyapi.datatypes.EditSite as LemmyapiDatatypesEditSite import it.vercruysse.lemmyapi.datatypes.FeaturePost as LemmyapiDatatypesFeaturePost -import it.vercruysse.lemmyapi.datatypes.FederatedInstances as LemmyapiDatatypesFederatedInstances import it.vercruysse.lemmyapi.datatypes.FollowCommunity as LemmyapiDatatypesFollowCommunity import it.vercruysse.lemmyapi.datatypes.GetCaptchaResponse as LemmyapiDatatypesGetCaptchaResponse import it.vercruysse.lemmyapi.datatypes.GetComment as LemmyapiDatatypesGetComment import it.vercruysse.lemmyapi.datatypes.GetComments as LemmyapiDatatypesGetComments -import it.vercruysse.lemmyapi.datatypes.GetCommentsResponse as LemmyapiDatatypesGetCommentsResponse import it.vercruysse.lemmyapi.datatypes.GetCommunity as LemmyapiDatatypesGetCommunity import it.vercruysse.lemmyapi.datatypes.GetCommunityResponse as LemmyapiDatatypesGetCommunityResponse -import it.vercruysse.lemmyapi.datatypes.GetFederatedInstancesResponse as LemmyapiDatatypesGetFederatedInstancesResponse import it.vercruysse.lemmyapi.datatypes.GetModlog as LemmyapiDatatypesGetModlog -import it.vercruysse.lemmyapi.datatypes.GetModlogResponse as LemmyapiDatatypesGetModlogResponse import it.vercruysse.lemmyapi.datatypes.GetPersonDetails as LemmyapiDatatypesGetPersonDetails import it.vercruysse.lemmyapi.datatypes.GetPersonDetailsResponse as LemmyapiDatatypesGetPersonDetailsResponse import it.vercruysse.lemmyapi.datatypes.GetPost as LemmyapiDatatypesGetPost import it.vercruysse.lemmyapi.datatypes.GetPostResponse as LemmyapiDatatypesGetPostResponse import it.vercruysse.lemmyapi.datatypes.GetPosts as LemmyapiDatatypesGetPosts -import it.vercruysse.lemmyapi.datatypes.GetPostsResponse as LemmyapiDatatypesGetPostsResponse -import it.vercruysse.lemmyapi.datatypes.GetReportCount as LemmyapiDatatypesGetReportCount -import it.vercruysse.lemmyapi.datatypes.GetReportCountResponse as LemmyapiDatatypesGetReportCountResponse import it.vercruysse.lemmyapi.datatypes.GetSiteMetadata as LemmyapiDatatypesGetSiteMetadata import it.vercruysse.lemmyapi.datatypes.GetSiteMetadataResponse as LemmyapiDatatypesGetSiteMetadataResponse import it.vercruysse.lemmyapi.datatypes.GetSiteResponse as LemmyapiDatatypesGetSiteResponse -import it.vercruysse.lemmyapi.datatypes.GetUnreadCountResponse as LemmyapiDatatypesGetUnreadCountResponse -import it.vercruysse.lemmyapi.datatypes.GetUnreadRegistrationApplicationCountResponse as LemmyapiDatatypesGetUnreadRegistrationApplicationCountResponse import it.vercruysse.lemmyapi.datatypes.HideCommunity as LemmyapiDatatypesHideCommunity import it.vercruysse.lemmyapi.datatypes.Instance as LemmyapiDatatypesInstance import it.vercruysse.lemmyapi.datatypes.Language as LemmyapiDatatypesLanguage import it.vercruysse.lemmyapi.datatypes.ListCommunities as LemmyapiDatatypesListCommunities -import it.vercruysse.lemmyapi.datatypes.ListCommunitiesResponse as LemmyapiDatatypesListCommunitiesResponse import it.vercruysse.lemmyapi.datatypes.ListNotifications as LemmyapiDatatypesListNotifications -import it.vercruysse.lemmyapi.datatypes.ListNotificationsResponse as LemmyapiDatatypesListNotificationsResponse import it.vercruysse.lemmyapi.datatypes.ListRegistrationApplications as LemmyapiDatatypesListRegistrationApplications -import it.vercruysse.lemmyapi.datatypes.ListRegistrationApplicationsResponse as LemmyapiDatatypesListRegistrationApplicationsResponse import it.vercruysse.lemmyapi.datatypes.ListReports as LemmyapiDatatypesListReports import it.vercruysse.lemmyapi.datatypes.LocalSite as LemmyapiDatatypesLocalSite import it.vercruysse.lemmyapi.datatypes.LocalSiteRateLimit as LemmyapiDatatypesLocalSiteRateLimit @@ -133,23 +98,8 @@ import it.vercruysse.lemmyapi.datatypes.LocalUserView as LemmyapiDatatypesLocalU import it.vercruysse.lemmyapi.datatypes.LockPost as LemmyapiDatatypesLockPost import it.vercruysse.lemmyapi.datatypes.Login as LemmyapiDatatypesLogin import it.vercruysse.lemmyapi.datatypes.LoginResponse as LemmyapiDatatypesLoginResponse -import it.vercruysse.lemmyapi.datatypes.ModAddToCommunity as LemmyapiDatatypesModAddCommunity -import it.vercruysse.lemmyapi.datatypes.ModAddToCommunityView as LemmyapiDatatypesModAddCommunityView -import it.vercruysse.lemmyapi.datatypes.ModBanFromCommunity as LemmyapiDatatypesModBanFromCommunity -import it.vercruysse.lemmyapi.datatypes.ModBanFromCommunityView as LemmyapiDatatypesModBanFromCommunityView -import it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibility as LemmyapiDatatypesModChangeCommunityVisibility -import it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibilityView as LemmyapiDatatypesModChangeCommunityVisibilityView -import it.vercruysse.lemmyapi.datatypes.ModFeaturePost as LemmyapiDatatypesModFeaturePost -import it.vercruysse.lemmyapi.datatypes.ModFeaturePostView as LemmyapiDatatypesModFeaturePostView -import it.vercruysse.lemmyapi.datatypes.ModLockPost as LemmyapiDatatypesModLockPost -import it.vercruysse.lemmyapi.datatypes.ModLockPostView as LemmyapiDatatypesModLockPostView -import it.vercruysse.lemmyapi.datatypes.ModRemoveComment as LemmyapiDatatypesModRemoveComment -import it.vercruysse.lemmyapi.datatypes.ModRemoveCommentView as LemmyapiDatatypesModRemoveCommentView -import it.vercruysse.lemmyapi.datatypes.ModRemovePost as LemmyapiDatatypesModRemovePost -import it.vercruysse.lemmyapi.datatypes.ModRemovePostView as LemmyapiDatatypesModRemovePostView -import it.vercruysse.lemmyapi.datatypes.ModTransferCommunity as LemmyapiDatatypesModTransferCommunity -import it.vercruysse.lemmyapi.datatypes.ModTransferCommunityView as LemmyapiDatatypesModTransferCommunityView import it.vercruysse.lemmyapi.datatypes.MyUserInfo as LemmyapiDatatypesMyUserInfo +import it.vercruysse.lemmyapi.datatypes.PersonResponse as LemmyapiDatatypesPersonResponse import it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset as LemmyapiDatatypesPasswordChangeAfterReset import it.vercruysse.lemmyapi.datatypes.PasswordReset as LemmyapiDatatypesPasswordReset import it.vercruysse.lemmyapi.datatypes.Person as LemmyapiDatatypesPerson @@ -198,24 +148,14 @@ import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.AddAdmin as X5DatatypesAddAdmi import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.AddAdminResponse as X5DatatypesAddAdminResponse import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.AddModToCommunity as X5DatatypesAddModToCommunity import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.AddModToCommunityResponse as X5DatatypesAddModToCommunityResponse -import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.AdminPurgeComment as X5DatatypesAdminPurgeComment -import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.AdminPurgeCommentView as X5DatatypesAdminPurgeCommentView -import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.AdminPurgeCommunity as X5DatatypesAdminPurgeCommunity -import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.AdminPurgeCommunityView as X5DatatypesAdminPurgeCommunityView -import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.AdminPurgePerson as X5DatatypesAdminPurgePerson -import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.AdminPurgePersonView as X5DatatypesAdminPurgePersonView -import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.AdminPurgePost as X5DatatypesAdminPurgePost -import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.AdminPurgePostView as X5DatatypesAdminPurgePostView import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.ApproveRegistrationApplication as X5DatatypesApproveRegistrationApplication import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.BanFromCommunity as X5DatatypesBanFromCommunity import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.BanFromCommunityResponse as X5DatatypesBanFromCommunityResponse import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.BanPerson as X5DatatypesBanPerson import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.BanPersonResponse as X5DatatypesBanPersonResponse -import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.BannedPersonsResponse as X5DatatypesBannedPersonsResponse import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.BlockCommunity as X5DatatypesBlockCommunity import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.BlockCommunityResponse as X5DatatypesBlockCommunityResponse import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.BlockPerson as X5DatatypesBlockPerson -import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.BlockPersonResponse as X5DatatypesBlockPersonResponse import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.CaptchaResponse as X5DatatypesCaptchaResponse import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.ChangePassword as X5DatatypesChangePassword import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.Comment as X5DatatypesComment @@ -261,45 +201,32 @@ import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.EditPost as X5DatatypesEditPos import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.EditPrivateMessage as X5DatatypesEditPrivateMessage import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.EditSite as X5DatatypesEditSite import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.FeaturePost as X5DatatypesFeaturePost -import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.FederatedInstances as X5DatatypesFederatedInstances import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.FollowCommunity as X5DatatypesFollowCommunity import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.GetCaptchaResponse as X5DatatypesGetCaptchaResponse import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.GetComment as X5DatatypesGetComment import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.GetComments as X5DatatypesGetComments -import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.GetCommentsResponse as X5DatatypesGetCommentsResponse import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.GetCommunity as X5DatatypesGetCommunity import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.GetCommunityResponse as X5DatatypesGetCommunityResponse -import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.GetFederatedInstancesResponse as X5DatatypesGetFederatedInstancesResponse import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.GetModlog as X5DatatypesGetModlog -import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.GetModlogResponse as X5DatatypesGetModlogResponse import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.GetPersonDetails as X5DatatypesGetPersonDetails import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.GetPersonDetailsResponse as X5DatatypesGetPersonDetailsResponse import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.GetPersonMentions as X5DatatypesGetPersonMentions -import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.GetPersonMentionsResponse as X5DatatypesGetPersonMentionsResponse import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.GetPost as X5DatatypesGetPost import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.GetPostResponse as X5DatatypesGetPostResponse import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.GetPosts as X5DatatypesGetPosts -import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.GetPostsResponse as X5DatatypesGetPostsResponse import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.GetPrivateMessages as X5DatatypesGetPrivateMessages import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.GetReplies as X5DatatypesGetReplies -import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.GetRepliesResponse as X5DatatypesGetRepliesResponse -import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.GetReportCount as X5DatatypesGetReportCount -import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.GetReportCountResponse as X5DatatypesGetReportCountResponse import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.GetSiteMetadata as X5DatatypesGetSiteMetadata import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.GetSiteMetadataResponse as X5DatatypesGetSiteMetadataResponse import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.GetSiteResponse as X5DatatypesGetSiteResponse -import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.GetUnreadCountResponse as X5DatatypesGetUnreadCountResponse -import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.GetUnreadRegistrationApplicationCountResponse as X5DatatypesGetUnreadRegistrationApplicationCountResponse import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.HideCommunity as X5DatatypesHideCommunity import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.Instance as X5DatatypesInstance import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.Language as X5DatatypesLanguage import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.ListCommentReports as X5DatatypesListCommentReports import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.ListCommunities as X5DatatypesListCommunities -import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.ListCommunitiesResponse as X5DatatypesListCommunitiesResponse import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.ListPostReports as X5DatatypesListPostReports import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.ListPrivateMessageReports as X5DatatypesListPrivateMessageReports import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.ListRegistrationApplications as X5DatatypesListRegistrationApplications -import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.ListRegistrationApplicationsResponse as X5DatatypesListRegistrationApplicationsResponse import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.LocalSite as X5DatatypesLocalSite import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.LocalSiteRateLimit as X5DatatypesLocalSiteRateLimit import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.LocalUser as X5DatatypesLocalUser @@ -310,28 +237,6 @@ import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.LoginResponse as X5DatatypesLo import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.MarkCommentReplyAsRead as X5DatatypesMarkCommentReplyAsRead import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.MarkPersonMentionAsRead as X5DatatypesMarkPersonMentionAsRead import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.MarkPrivateMessageAsRead as X5DatatypesMarkPrivateMessageAsRead -import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.ModAdd as X5DatatypesModAdd -import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.ModAddCommunity as X5DatatypesModAddCommunity -import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.ModAddCommunityView as X5DatatypesModAddCommunityView -import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.ModAddView as X5DatatypesModAddView -import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.ModBan as X5DatatypesModBan -import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.ModBanFromCommunity as X5DatatypesModBanFromCommunity -import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.ModBanFromCommunityView as X5DatatypesModBanFromCommunityView -import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.ModBanView as X5DatatypesModBanView -import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.ModFeaturePost as X5DatatypesModFeaturePost -import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.ModFeaturePostView as X5DatatypesModFeaturePostView -import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.ModHideCommunity as X5DatatypesModHideCommunity -import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.ModHideCommunityView as X5DatatypesModHideCommunityView -import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.ModLockPost as X5DatatypesModLockPost -import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.ModLockPostView as X5DatatypesModLockPostView -import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.ModRemoveComment as X5DatatypesModRemoveComment -import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.ModRemoveCommentView as X5DatatypesModRemoveCommentView -import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.ModRemoveCommunity as X5DatatypesModRemoveCommunity -import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.ModRemoveCommunityView as X5DatatypesModRemoveCommunityView -import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.ModRemovePost as X5DatatypesModRemovePost -import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.ModRemovePostView as X5DatatypesModRemovePostView -import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.ModTransferCommunity as X5DatatypesModTransferCommunity -import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.ModTransferCommunityView as X5DatatypesModTransferCommunityView import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.MyUserInfo as X5DatatypesMyUserInfo import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.PasswordChangeAfterReset as X5DatatypesPasswordChangeAfterReset import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.PasswordReset as X5DatatypesPasswordReset @@ -352,7 +257,6 @@ import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.PrivateMessageReportResponse a import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.PrivateMessageReportView as X5DatatypesPrivateMessageReportView import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.PrivateMessageResponse as X5DatatypesPrivateMessageResponse import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.PrivateMessageView as X5DatatypesPrivateMessageView -import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.PrivateMessagesResponse as X5DatatypesPrivateMessagesResponse import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.PurgeComment as X5DatatypesPurgeComment import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.PurgeCommunity as X5DatatypesPurgeCommunity import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.PurgePerson as X5DatatypesPurgePerson @@ -412,7 +316,6 @@ internal class Transformer(var auth: String) : MapperGenerator { admin = false, post_listing_mode = PostListingMode.Card, totp_2fa_enabled = d.let { this.mapLocalUserTotp(it) }, - enable_keyboard_navigation = false, enable_animated_images = true, collapse_bot_comments = false, last_donation_notification_at = "", @@ -435,10 +338,11 @@ internal class Transformer(var auth: String) : MapperGenerator { follows = d.follows.map { this.toUni(d = it) }, moderates = d.moderates.map { this.toUni(d = it) }, community_blocks = d.community_blocks.map { this.toUni(d = it.community, counts = X5DatatypesCommunityAggregates(-1, -1, -1, -1, -1, "", -1, -1, -1, -1, -1)) }, - instance_community_blocks = emptyList(), - instance_person_blocks = emptyList(), + instance_communities_blocks = emptyList(), + instance_persons_blocks = emptyList(), person_blocks = d.person_blocks.map { this.toUni(d = it.target) }, discussion_languages = d.discussion_languages, + multi_community_follows = emptyList() ) override fun toUni(d: X5DatatypesLocalSiteRateLimit): LemmyapiDatatypesLocalSiteRateLimit = @@ -487,7 +391,7 @@ internal class Transformer(var auth: String) : MapperGenerator { creator_banned_from_community = d.creator_banned_from_community, creator_is_moderator = false, creator_is_admin = false, - post_tags = emptyList(), + tags = emptyList(), creator_banned = d.creator.banned, creator_ban_expires_at = addTimezoneOffsetNullable(d.creator.ban_expires), can_mod = false, @@ -501,7 +405,7 @@ internal class Transformer(var auth: String) : MapperGenerator { id = d.id, name = d.name, title = d.title, - description = d.description, + summary = d.description, removed = d.removed, published_at = addTimezoneOffset(d.published), updated_at = addTimezoneOffsetNullable(d.updated), @@ -526,13 +430,14 @@ internal class Transformer(var auth: String) : MapperGenerator { report_count = -1, unresolved_report_count = -1, local_removed = false, + last_refreshed_at = "", ) override fun toUni(d: X5DatatypesCommunityView): LemmyapiDatatypesCommunityView = LemmyapiDatatypesCommunityView( community = this.toUni(d = d.community, d.counts), can_mod = false, - post_tags = emptyList(), + tags = emptyList(), community_actions = CommunityActions(null, CommunityFollowerState.from(d.subscribed), if (d.blocked) "" else null), ) @@ -574,11 +479,11 @@ internal class Transformer(var auth: String) : MapperGenerator { reports_email_admins = d.reports_email_admins, federation_signed_fetch = false, default_post_listing_mode = PostListingMode.Card, - default_sort_type = SortType.Active, + default_post_sort_type = SortType.Active, disallow_nsfw_content = !d.enable_nsfw, oauth_registration = false, disable_email_notifications = false, - suggested_communities = null, + suggested_multi_community_id = null, default_comment_sort_type = SortType.Active, default_post_time_range_seconds = null, post_upvotes = FederationMode.All, @@ -647,92 +552,10 @@ internal class Transformer(var auth: String) : MapperGenerator { moderators = d.moderators.map { this.toUni(d = it) }, ) - override fun toUni(d: X5DatatypesAdminPurgeComment): LemmyapiDatatypesAdminPurgeComment = - LemmyapiDatatypesAdminPurgeComment( - id = d.id, - admin_person_id = d.admin_person_id, - post_id = d.post_id, - reason = d.reason ?: "", - published_at = addTimezoneOffset(d.when_), - ) - - override fun toUni(d: X5DatatypesAdminPurgeCommentView): LemmyapiDatatypesAdminPurgeCommentView = - LemmyapiDatatypesAdminPurgeCommentView( - admin_purge_comment = this.toUni(d = d.admin_purge_comment), - admin = d.admin?.let { this.toUni(d = it) }, - post = this.toUni(d = d.post, counts = X5DatatypesPostAggregates(-1, -1, -1, -1, -1, -1, "", "", "", false, false, -1, -1)), - ) - - override fun toUni(d: X5DatatypesAdminPurgeCommunity): LemmyapiDatatypesAdminPurgeCommunity = - LemmyapiDatatypesAdminPurgeCommunity( - id = d.id, - admin_person_id = d.admin_person_id, - reason = d.reason ?: "", - published_at = addTimezoneOffset(d.when_), - ) - - override fun toUni(d: X5DatatypesAdminPurgeCommunityView): LemmyapiDatatypesAdminPurgeCommunityView = LemmyapiDatatypesAdminPurgeCommunityView( - admin_purge_community = this.toUni(d = d.admin_purge_community), - admin = d.admin?.let { this.toUni(d = it) }, - ) - - override fun toUni(d: X5DatatypesAdminPurgePerson): LemmyapiDatatypesAdminPurgePerson = - LemmyapiDatatypesAdminPurgePerson( - id = d.id, - admin_person_id = d.admin_person_id, - reason = d.reason ?: "", - published_at = addTimezoneOffset(d.when_), - ) - - override fun toUni(d: X5DatatypesAdminPurgePersonView): LemmyapiDatatypesAdminPurgePersonView = - LemmyapiDatatypesAdminPurgePersonView( - admin_purge_person = this.toUni(d = d.admin_purge_person), - admin = d.admin?.let { this.toUni(d = it) }, - ) - - override fun toUni(d: X5DatatypesAdminPurgePost): LemmyapiDatatypesAdminPurgePost = - LemmyapiDatatypesAdminPurgePost( - id = d.id, - admin_person_id = d.admin_person_id, - community_id = d.community_id, - reason = d.reason ?: "", - published_at = addTimezoneOffset(d.when_), - ) - - override fun toUni(d: X5DatatypesAdminPurgePostView): LemmyapiDatatypesAdminPurgePostView = - LemmyapiDatatypesAdminPurgePostView( - admin_purge_post = this.toUni(d = d.admin_purge_post), - admin = d.admin?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community, counts = X5DatatypesCommunityAggregates(-1, -1, -1, -1, -1, "", -1, -1, -1, -1, -1)), - ) - - override fun toUni(d: X5DatatypesBanFromCommunityResponse): LemmyapiDatatypesBanFromCommunityResponse = LemmyapiDatatypesBanFromCommunityResponse( + override fun toUni(d: X5DatatypesBanFromCommunityResponse): LemmyapiDatatypesPersonResponse = LemmyapiDatatypesPersonResponse( person_view = this.toUni(d = d.person_view), - banned = d.banned, - ) - - override fun toUni(d: X5DatatypesBannedPersonsResponse): LemmyapiDatatypesBannedPersonsResponse = - LemmyapiDatatypesBannedPersonsResponse( - banned = d.banned.map { this.toUni(d = it) }, - ) - - override fun toUni(d: X5DatatypesBanPersonResponse): LemmyapiDatatypesBanPersonResponse = - LemmyapiDatatypesBanPersonResponse( - person_view = this.toUni(d = d.person_view), - banned = d.banned, - ) - - override fun toUni(d: X5DatatypesBlockCommunityResponse): LemmyapiDatatypesBlockCommunityResponse = LemmyapiDatatypesBlockCommunityResponse( - community_view = this.toUni(d = d.community_view), - blocked = d.blocked, ) - override fun toUni(d: X5DatatypesBlockPersonResponse): LemmyapiDatatypesBlockPersonResponse = - LemmyapiDatatypesBlockPersonResponse( - person_view = this.toUni(d = d.person_view), - blocked = d.blocked, - ) - override fun toUni(d: X5DatatypesCaptchaResponse): LemmyapiDatatypesCaptchaResponse = LemmyapiDatatypesCaptchaResponse( png = d.png, @@ -832,23 +655,11 @@ internal class Transformer(var auth: String) : MapperGenerator { keywords = d.keywords.map { this.toUni(d = it) }, ) - override fun toUni(d: X5DatatypesFederatedInstances): LemmyapiDatatypesFederatedInstances = - LemmyapiDatatypesFederatedInstances( - linked = d.linked.map { this.toUniF(d = it) }, - allowed = d.allowed.map { this.toUniF(d = it) }, - blocked = d.blocked.map { this.toUniF(d = it) }, - ) - override fun toUni(d: X5DatatypesGetCaptchaResponse): LemmyapiDatatypesGetCaptchaResponse = LemmyapiDatatypesGetCaptchaResponse( ok = d.ok?.let { this.toUni(d = it) }, ) - override fun toUni(d: X5DatatypesGetCommentsResponse): LemmyapiDatatypesGetCommentsResponse = - LemmyapiDatatypesGetCommentsResponse( - comments = d.comments.map { this.toUni(d = it) }, - ) - override fun toUni(d: X5DatatypesGetCommunityResponse): LemmyapiDatatypesGetCommunityResponse = LemmyapiDatatypesGetCommunityResponse( community_view = this.toUni(d = d.community_view), @@ -857,116 +668,12 @@ internal class Transformer(var auth: String) : MapperGenerator { discussion_languages = d.discussion_languages, ) - override fun toUni(d: X5DatatypesGetFederatedInstancesResponse): LemmyapiDatatypesGetFederatedInstancesResponse = - LemmyapiDatatypesGetFederatedInstancesResponse( - federated_instances = d.federated_instances?.let { this.toUni(d = it) }, - ) - - override fun toUni(d: X5DatatypesGetModlogResponse): LemmyapiDatatypesGetModlogResponse { - val modlogList = mutableListOf() - - modlogList.addAll( - d.removed_posts.map { view -> - ModlogCombinedView.ModRemovePost(mod_remove_post = this.toUni(d = view)) - }, - ) - - modlogList.addAll( - d.locked_posts.map { view -> - ModlogCombinedView.ModLockPost(mod_lock_post = this.toUni(d = view)) - }, - ) - - modlogList.addAll( - d.featured_posts.map { view -> - ModlogCombinedView.ModFeaturePost(mod_feature_post = this.toUni(d = view)) - }, - ) - - modlogList.addAll( - d.removed_comments.map { view -> - ModlogCombinedView.ModRemoveComment(mod_remove_comment = this.toUni(d = view)) - }, - ) - - modlogList.addAll( - d.removed_communities.map { view -> - ModlogCombinedView.AdminRemoveCommunity(admin_remove_community = this.toUni(d = view)) - }, - ) - - modlogList.addAll( - d.banned_from_community.map { view -> - ModlogCombinedView.ModBanFromCommunity(mod_ban_from_community = this.toUni(d = view)) - }, - ) - - modlogList.addAll( - d.banned.map { view -> - ModlogCombinedView.AdminBan(admin_ban = this.toUni(d = view)) - }, - ) - - modlogList.addAll( - d.added_to_community.map { view -> - ModlogCombinedView.ModAddToCommunity(mod_add_to_community = this.toUni(d = view)) - }, - ) - - modlogList.addAll( - d.transferred_to_community.map { view -> - ModlogCombinedView.ModTransferCommunity(mod_transfer_community = this.toUni(d = view)) - }, - ) - - modlogList.addAll( - d.added.map { view -> - ModlogCombinedView.AdminAdd(admin_add = this.toUni(d = view)) - }, - ) - - modlogList.addAll( - d.admin_purged_persons.map { view -> - ModlogCombinedView.AdminPurgePerson(admin_purge_person = this.toUni(d = view)) - }, - ) - - modlogList.addAll( - d.admin_purged_communities.map { view -> - ModlogCombinedView.AdminPurgeCommunity(admin_purge_community = this.toUni(d = view)) - }, - ) - - modlogList.addAll( - d.admin_purged_posts.map { view -> - ModlogCombinedView.AdminPurgePost(admin_purge_post = this.toUni(d = view)) - }, - ) - - modlogList.addAll( - d.admin_purged_comments.map { view -> - ModlogCombinedView.AdminPurgeComment(admin_purge_comment = this.toUni(d = view)) - }, - ) - - modlogList.addAll( - d.hidden_communities.map { view -> - ModlogCombinedView.ModChangeCommunityVisibility(mod_change_community_visibility = this.toUni(d = view)) - }, - ) - - return GetModlogResponse( - modlog = modlogList, - next_page = null, - prev_page = null, - ) - } - override fun toUni(d: X5DatatypesGetPersonDetailsResponse): LemmyapiDatatypesGetPersonDetailsResponse = LemmyapiDatatypesGetPersonDetailsResponse( person_view = this.toUni(d = d.person_view), comments = d.comments.map { this.toUni(d = it) }, posts = d.posts.map { this.toUni(d = it) }, moderates = d.moderates.map { this.toUni(d = it) }, + multi_communities_created = emptyList() ) override fun toUni(d: X5DatatypesGetPostResponse): LemmyapiDatatypesGetPostResponse = @@ -977,16 +684,6 @@ internal class Transformer(var auth: String) : MapperGenerator { cross_posts = d.cross_posts.map { this.toUni(d = it) }, ) - override fun toUni(d: X5DatatypesGetPostsResponse): LemmyapiDatatypesGetPostsResponse = - LemmyapiDatatypesGetPostsResponse( - posts = d.posts.map { this.toUni(d = it) }, - ) - - fun toUni(d: X5DatatypesGetRepliesResponse): LemmyapiDatatypesListNotificationsResponse = - ListNotificationsResponse( - notifications = d.replies.map { this.toUni(d = it) }, - ) - fun toUni(d: X5DatatypesCommentReplyView): NotificationView = NotificationView( notification = Notification( @@ -998,9 +695,7 @@ internal class Transformer(var auth: String) : MapperGenerator { kind = NotificationType.Reply, post_id = d.post.id, ), - data = NotificationData.Comment( - comment = this.toUniCV(d), - ), + data = this.toUniCV(d), ) fun toUniCV(d: X5DatatypesCommentReplyView): LemmyapiDatatypesCommentView = @@ -1012,7 +707,7 @@ internal class Transformer(var auth: String) : MapperGenerator { creator_banned_from_community = d.creator_banned_from_community, creator_is_moderator = false, creator_is_admin = false, - post_tags = emptyList(), + tags = emptyList(), creator_banned = d.creator.banned, creator_ban_expires_at = addTimezoneOffsetNullable(d.creator.ban_expires), can_mod = false, @@ -1021,10 +716,6 @@ internal class Transformer(var auth: String) : MapperGenerator { community_actions = CommunityActions(null, CommunityFollowerState.from(d.subscribed)), ) - fun toUni(d: X5DatatypesGetPersonMentionsResponse): LemmyapiDatatypesListNotificationsResponse = - LemmyapiDatatypesListNotificationsResponse( - notifications = d.mentions.map { this.toUni(d = it) }, - ) fun toUni(d: X5DatatypesPersonMentionView): NotificationView = NotificationView( @@ -1037,9 +728,7 @@ internal class Transformer(var auth: String) : MapperGenerator { kind = NotificationType.Mention, post_id = d.post.id, ), - data = NotificationData.Comment( - comment = this.toUniPV(d), - ), + data = this.toUniPV(d), ) fun toUniPV(d: X5DatatypesPersonMentionView): LemmyapiDatatypesCommentView = @@ -1051,7 +740,7 @@ internal class Transformer(var auth: String) : MapperGenerator { creator_banned_from_community = d.creator_banned_from_community, creator_is_moderator = false, creator_is_admin = false, - post_tags = emptyList(), + tags = emptyList(), creator_banned = d.creator.banned, creator_ban_expires_at = addTimezoneOffsetNullable(d.creator.ban_expires), can_mod = false, @@ -1060,11 +749,6 @@ internal class Transformer(var auth: String) : MapperGenerator { community_actions = CommunityActions(null, CommunityFollowerState.from(d.subscribed)), ) - fun toUni(d: X5DatatypesPrivateMessagesResponse): LemmyapiDatatypesListNotificationsResponse = - LemmyapiDatatypesListNotificationsResponse( - notifications = d.private_messages.map { this.toUniPMV(d = it) }, - ) - fun toUniPMV(d: X5DatatypesPrivateMessageView): NotificationView = NotificationView( notification = Notification( @@ -1074,27 +758,13 @@ internal class Transformer(var auth: String) : MapperGenerator { published_at = addTimezoneOffset(d.private_message.published), kind = NotificationType.PrivateMessage, ), - data = NotificationData.PrivateMessage( - private_message = this.toUni(d), - ), + data = this.toUni(d), ) - override fun toUni(d: X5DatatypesGetReportCountResponse): LemmyapiDatatypesGetReportCountResponse = LemmyapiDatatypesGetReportCountResponse( - count = d.post_reports + d.comment_reports + (d.private_message_reports ?: 0), - ) - override fun toUni(d: X5DatatypesGetSiteMetadataResponse): LemmyapiDatatypesGetSiteMetadataResponse = LemmyapiDatatypesGetSiteMetadataResponse( metadata = this.toUni(d = d.metadata), ) - override fun toUni(d: X5DatatypesGetUnreadCountResponse): LemmyapiDatatypesGetUnreadCountResponse = LemmyapiDatatypesGetUnreadCountResponse( - count = d.replies + d.mentions + d.private_messages, - ) - - override fun toUni(d: X5DatatypesGetUnreadRegistrationApplicationCountResponse): LemmyapiDatatypesGetUnreadRegistrationApplicationCountResponse = - LemmyapiDatatypesGetUnreadRegistrationApplicationCountResponse( - registration_applications = d.registration_applications, - ) override fun toUni(d: X5DatatypesInstance): LemmyapiDatatypesInstance = LemmyapiDatatypesInstance( id = d.id, @@ -1111,15 +781,6 @@ internal class Transformer(var auth: String) : MapperGenerator { name = d.name, ) - override fun toUni(d: X5DatatypesListCommunitiesResponse): LemmyapiDatatypesListCommunitiesResponse = LemmyapiDatatypesListCommunitiesResponse( - communities = d.communities.map { this.toUni(d = it) }, - ) - - override fun toUni(d: X5DatatypesListRegistrationApplicationsResponse): LemmyapiDatatypesListRegistrationApplicationsResponse = - LemmyapiDatatypesListRegistrationApplicationsResponse( - registration_applications = d.registration_applications.map { this.toUni(d = it) }, - ) - override fun toUni(d: X5DatatypesLocalUserView): LemmyapiDatatypesLocalUserView = LemmyapiDatatypesLocalUserView( local_user = this.toUni(d = d.local_user), @@ -1135,202 +796,6 @@ internal class Transformer(var auth: String) : MapperGenerator { verify_email_sent = d.verify_email_sent, ) - override fun toUni(d: X5DatatypesModAdd): LemmyapiDatatypesModAdd = LemmyapiDatatypesModAdd( - id = d.id, - mod_person_id = d.mod_person_id, - other_person_id = d.other_person_id, - removed = d.removed, - published_at = addTimezoneOffset(d.when_), - ) - - override fun toUni(d: X5DatatypesModAddCommunity): LemmyapiDatatypesModAddCommunity = - LemmyapiDatatypesModAddCommunity( - id = d.id, - mod_person_id = d.mod_person_id, - other_person_id = d.other_person_id, - community_id = d.community_id, - removed = d.removed, - published_at = addTimezoneOffset(d.when_), - ) - - override fun toUni(d: X5DatatypesModAddCommunityView): LemmyapiDatatypesModAddCommunityView = - LemmyapiDatatypesModAddCommunityView( - mod_add_to_community = this.toUni(d = d.mod_add_community), - moderator = d.moderator?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community, counts = X5DatatypesCommunityAggregates(-1, -1, -1, -1, -1, "", -1, -1, -1, -1, -1)), - other_person = this.toUni(d = d.modded_person), - ) - - override fun toUni(d: X5DatatypesModAddView): LemmyapiDatatypesModAddView = - LemmyapiDatatypesModAddView( - admin_add = this.toUni(d = d.mod_add), - moderator = d.moderator?.let { this.toUni(d = it) }, - other_person = this.toUni(d = d.modded_person), - ) - - override fun toUni(d: X5DatatypesModBan): LemmyapiDatatypesModBan = LemmyapiDatatypesModBan( - id = d.id, - mod_person_id = d.mod_person_id, - other_person_id = d.other_person_id, - reason = d.reason, - banned = d.banned, - expires_at = addTimezoneOffsetNullable(d.expires), - published_at = addTimezoneOffset(d.when_), - instance_id = -1, - ) - - override fun toUni(d: X5DatatypesModBanFromCommunity): LemmyapiDatatypesModBanFromCommunity = - LemmyapiDatatypesModBanFromCommunity( - id = d.id, - mod_person_id = d.mod_person_id, - other_person_id = d.other_person_id, - community_id = d.community_id, - reason = d.reason ?: "", - banned = d.banned, - expires_at = addTimezoneOffsetNullable(d.expires), - published_at = addTimezoneOffset(d.when_), - ) - - override fun toUni(d: X5DatatypesModBanFromCommunityView): LemmyapiDatatypesModBanFromCommunityView = LemmyapiDatatypesModBanFromCommunityView( - mod_ban_from_community = this.toUni(d = d.mod_ban_from_community), - moderator = d.moderator?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community, counts = X5DatatypesCommunityAggregates(-1, -1, -1, -1, -1, "", -1, -1, -1, -1, -1)), - other_person = this.toUni(d = d.banned_person), - ) - - override fun toUni(d: X5DatatypesModBanView): LemmyapiDatatypesModBanView = - LemmyapiDatatypesModBanView( - admin_ban = this.toUni(d = d.mod_ban), - moderator = d.moderator?.let { this.toUni(d = it) }, - other_person = this.toUni(d = d.banned_person), - ) - - override fun toUni(d: X5DatatypesModFeaturePost): LemmyapiDatatypesModFeaturePost = - LemmyapiDatatypesModFeaturePost( - id = d.id, - mod_person_id = d.mod_person_id, - post_id = d.post_id, - featured = d.featured, - published_at = addTimezoneOffset(d.when_), - is_featured_community = d.is_featured_community, - ) - - override fun toUni(d: X5DatatypesModFeaturePostView): LemmyapiDatatypesModFeaturePostView = - LemmyapiDatatypesModFeaturePostView( - mod_feature_post = this.toUni(d = d.mod_feature_post), - moderator = d.moderator?.let { this.toUni(d = it) }, - post = this.toUni(d = d.post, counts = X5DatatypesPostAggregates(-1, -1, -1, -1, -1, -1, "", "", "", false, false, -1, -1)), - community = this.toUni(d = d.community, counts = X5DatatypesCommunityAggregates(-1, -1, -1, -1, -1, "", -1, -1, -1, -1, -1)), - ) - - override fun toUni(d: X5DatatypesModHideCommunity): LemmyapiDatatypesModChangeCommunityVisibility = - LemmyapiDatatypesModChangeCommunityVisibility( - id = d.id, - community_id = d.community_id, - mod_person_id = d.mod_person_id, - published_at = addTimezoneOffset(d.when_), - reason = d.reason, - visibility = if (d.hidden) { - CommunityVisibility.Unlisted - } else { - CommunityVisibility.Public - }, - ) - - override fun toUni(d: X5DatatypesModHideCommunityView): LemmyapiDatatypesModChangeCommunityVisibilityView = - LemmyapiDatatypesModChangeCommunityVisibilityView( - mod_change_community_visibility = this.toUni(d = d.mod_hide_community), - moderator = d.admin?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community, counts = X5DatatypesCommunityAggregates(-1, -1, -1, -1, -1, "", -1, -1, -1, -1, -1)), - ) - - override fun toUni(d: X5DatatypesModLockPost): LemmyapiDatatypesModLockPost = - LemmyapiDatatypesModLockPost( - id = d.id, - mod_person_id = d.mod_person_id, - post_id = d.post_id, - locked = d.locked, - reason = "", - published_at = addTimezoneOffset(d.when_), - ) - - override fun toUni(d: X5DatatypesModLockPostView): LemmyapiDatatypesModLockPostView = - LemmyapiDatatypesModLockPostView( - mod_lock_post = this.toUni(d = d.mod_lock_post), - moderator = d.moderator?.let { this.toUni(d = it) }, - post = this.toUni(d = d.post, counts = X5DatatypesPostAggregates(-1, -1, -1, -1, -1, -1, "", "", "", false, false, -1, -1)), - community = this.toUni(d = d.community, counts = X5DatatypesCommunityAggregates(-1, -1, -1, -1, -1, "", -1, -1, -1, -1, -1)), - ) - - override fun toUni(d: X5DatatypesModRemoveComment): LemmyapiDatatypesModRemoveComment = - LemmyapiDatatypesModRemoveComment( - id = d.id, - mod_person_id = d.mod_person_id, - comment_id = d.comment_id, - reason = d.reason ?: "", - removed = d.removed, - published_at = addTimezoneOffset(d.when_), - ) - - override fun toUni(d: X5DatatypesModRemoveCommentView): LemmyapiDatatypesModRemoveCommentView = - LemmyapiDatatypesModRemoveCommentView( - mod_remove_comment = this.toUni(d = d.mod_remove_comment), - moderator = d.moderator?.let { this.toUni(d = it) }, - comment = this.toUni(d = d.comment, X5DatatypesCommentAggregates(-1, -1, -1, -1, -1, "", -1, -1)), - other_person = this.toUni(d = d.commenter), - post = this.toUni(d = d.post, counts = X5DatatypesPostAggregates(-1, -1, -1, -1, -1, -1, "", "", "", false, false, -1, -1)), - community = this.toUni(d = d.community, counts = X5DatatypesCommunityAggregates(-1, -1, -1, -1, -1, "", -1, -1, -1, -1, -1)), - ) - - override fun toUni(d: X5DatatypesModRemoveCommunity): LemmyapiDatatypesModRemoveCommunity = - LemmyapiDatatypesModRemoveCommunity( - id = d.id, - mod_person_id = d.mod_person_id, - community_id = d.community_id, - reason = d.reason, - removed = d.removed, - published_at = addTimezoneOffset(d.when_), - ) - - override fun toUni(d: X5DatatypesModRemoveCommunityView): LemmyapiDatatypesModRemoveCommunityView = LemmyapiDatatypesModRemoveCommunityView( - admin_remove_community = this.toUni(d = d.mod_remove_community), - moderator = d.moderator?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community, counts = X5DatatypesCommunityAggregates(-1, -1, -1, -1, -1, "", -1, -1, -1, -1, -1)), - ) - - override fun toUni(d: X5DatatypesModRemovePost): LemmyapiDatatypesModRemovePost = - LemmyapiDatatypesModRemovePost( - id = d.id, - mod_person_id = d.mod_person_id, - post_id = d.post_id, - reason = d.reason ?: "", - removed = d.removed, - published_at = addTimezoneOffset(d.when_), - ) - - override fun toUni(d: X5DatatypesModRemovePostView): LemmyapiDatatypesModRemovePostView = - LemmyapiDatatypesModRemovePostView( - mod_remove_post = this.toUni(d = d.mod_remove_post), - moderator = d.moderator?.let { this.toUni(d = it) }, - post = this.toUni(d = d.post, counts = X5DatatypesPostAggregates(-1, -1, -1, -1, -1, -1, "", "", "", false, false, -1, -1)), - community = this.toUni(d = d.community, counts = X5DatatypesCommunityAggregates(-1, -1, -1, -1, -1, "", -1, -1, -1, -1, -1)), - ) - - override fun toUni(d: X5DatatypesModTransferCommunity): LemmyapiDatatypesModTransferCommunity = - LemmyapiDatatypesModTransferCommunity( - id = d.id, - mod_person_id = d.mod_person_id, - other_person_id = d.other_person_id, - community_id = d.community_id, - published_at = addTimezoneOffset(d.when_), - ) - - override fun toUni(d: X5DatatypesModTransferCommunityView): LemmyapiDatatypesModTransferCommunityView = LemmyapiDatatypesModTransferCommunityView( - mod_transfer_community = this.toUni(d = d.mod_transfer_community), - moderator = d.moderator?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community, counts = X5DatatypesCommunityAggregates(-1, -1, -1, -1, -1, "", -1, -1, -1, -1, -1)), - other_person = this.toUni(d = d.modded_person), - ) fun toUni(d: X5DatatypesPerson) = this.toUni(d, X5DatatypesPersonAggregates(-1, -1, -1, -1, -1, -1)) @@ -1341,6 +806,7 @@ internal class Transformer(var auth: String) : MapperGenerator { avatar = d.avatar, published_at = addTimezoneOffset(d.published), updated_at = addTimezoneOffsetNullable(d.updated), + last_refreshed_at = "", ap_id = d.actor_id, bio = d.bio, local = d.local, @@ -1450,6 +916,8 @@ internal class Transformer(var auth: String) : MapperGenerator { private_message_creator = this.toUni(d = d.private_message_creator), creator = this.toUni(d = d.creator), resolver = d.resolver?.let { this.toUni(d = it) }, + creator_is_admin = d.creator.admin, + creator_banned = d.creator.banned, ) override fun toUni(d: X5DatatypesPrivateMessageResponse): LemmyapiDatatypesPrivateMessageResponse = LemmyapiDatatypesPrivateMessageResponse( @@ -1494,7 +962,7 @@ internal class Transformer(var auth: String) : MapperGenerator { override fun toUni(d: X5DatatypesSearchResponse): LemmyapiDatatypesSearchResponse = LemmyapiDatatypesSearchResponse( - results = buildList { + search = buildList { addAll(d.comments.map { LemmyapiDatatypesSearchCombinedView.Comment(comment = this@Transformer.toUni(d = it)) }) addAll(d.posts.map { LemmyapiDatatypesSearchCombinedView.Post(post = this@Transformer.toUni(d = it)) }) addAll(d.communities.map { LemmyapiDatatypesSearchCombinedView.Community(community = this@Transformer.toUni(d = it)) }) @@ -1510,7 +978,7 @@ internal class Transformer(var auth: String) : MapperGenerator { updated_at = addTimezoneOffsetNullable(d.updated), icon = d.icon, banner = d.banner, - description = d.description, + summary = d.description, ap_id = d.actor_id, last_refreshed_at = addTimezoneOffset(d.last_refreshed_at), inbox_url = d.inbox_url, @@ -1628,7 +1096,7 @@ internal class Transformer(var auth: String) : MapperGenerator { X5DatatypesCreateCommunity( name = d.name, title = d.title, - description = d.description, + description = d.summary, icon = d.icon, banner = d.banner, nsfw = d.nsfw, @@ -1690,7 +1158,7 @@ internal class Transformer(var auth: String) : MapperGenerator { X5DatatypesCreateSite( name = d.name, sidebar = d.sidebar, - description = d.description, + description = d.summary, icon = d.icon, banner = d.banner, enable_downvotes = when (d.post_downvotes) { @@ -1790,7 +1258,7 @@ internal class Transformer(var auth: String) : MapperGenerator { X5DatatypesEditCommunity( community_id = d.community_id, title = d.title, - description = d.description, + description = d.summary, icon = d.icon, banner = d.banner, nsfw = d.nsfw, @@ -1802,10 +1270,10 @@ internal class Transformer(var auth: String) : MapperGenerator { override fun fromUni(d: LemmyapiDatatypesEditCustomEmoji): X5DatatypesEditCustomEmoji = X5DatatypesEditCustomEmoji( id = d.id, - category = d.category, - image_url = d.image_url, - alt_text = d.alt_text, - keywords = d.keywords, + category = d.category!!, + image_url = d.image_url!!, + alt_text = d.alt_text!!, + keywords = d.keywords ?: emptyList(), auth = auth, ) @@ -1829,7 +1297,7 @@ internal class Transformer(var auth: String) : MapperGenerator { override fun fromUni(d: LemmyapiDatatypesEditSite): X5DatatypesEditSite = X5DatatypesEditSite( name = d.name, sidebar = d.sidebar, - description = d.description, + description = d.summary, icon = d.icon, banner = d.banner, enable_downvotes = d.enable_downvotes, @@ -1976,12 +1444,6 @@ internal class Transformer(var auth: String) : MapperGenerator { auth = auth, ) - override fun fromUni(d: LemmyapiDatatypesGetReportCount): X5DatatypesGetReportCount = - X5DatatypesGetReportCount( - community_id = d.community_id, - auth = auth, - ) - override fun fromUni(d: LemmyapiDatatypesGetSiteMetadata): X5DatatypesGetSiteMetadata = X5DatatypesGetSiteMetadata( url = d.url, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt index 35173124..21876a86 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt @@ -907,8 +907,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * @POST("user/totp/update") */ override suspend fun updateTotp( - form: it.vercruysse.lemmyapi.datatypes.UpdateTotp, - ): Result = + form: it.vercruysse.lemmyapi.datatypes.EditTotp, + ): Result = api.updateTotp(transformer.fromUni(form)).map(transformer::toUni) /** diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt index e5d8644b..8270732d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt @@ -127,7 +127,7 @@ internal interface MapperGenerator { fun toUni(d: PrivateMessageReportView): it.vercruysse.lemmyapi.datatypes.PrivateMessageReportView fun toUni(d: PrivateMessageResponse): it.vercruysse.lemmyapi.datatypes.PrivateMessageResponse fun toUni(d: PrivateMessageView): it.vercruysse.lemmyapi.datatypes.PrivateMessageView - fun toUni(d: ReadableFederationState): it.vercruysse.lemmyapi.datatypes.ReadableFederationState + fun toUni(d: ReadableFederationState): it.vercruysse.lemmyapi.datatypes.FederationQueueState fun toUni(d: RegistrationApplication): it.vercruysse.lemmyapi.datatypes.RegistrationApplication fun toUni(d: RegistrationApplicationResponse): it.vercruysse.lemmyapi.datatypes.RegistrationApplicationResponse fun toUni(d: RegistrationApplicationView): it.vercruysse.lemmyapi.datatypes.RegistrationApplicationView @@ -137,7 +137,7 @@ internal interface MapperGenerator { fun toUni(d: SiteResponse): it.vercruysse.lemmyapi.datatypes.SiteResponse fun toUni(d: SiteView): it.vercruysse.lemmyapi.datatypes.SiteView fun toUni(d: Tagline): it.vercruysse.lemmyapi.datatypes.Tagline - fun toUni(d: UpdateTotpResponse): it.vercruysse.lemmyapi.datatypes.UpdateTotpResponse + fun toUni(d: UpdateTotpResponse): it.vercruysse.lemmyapi.datatypes.EditTotpResponse // body mappings fun fromUni(d: it.vercruysse.lemmyapi.datatypes.AddAdmin): AddAdmin @@ -214,6 +214,6 @@ internal interface MapperGenerator { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.SaveUserSettings): SaveUserSettings fun fromUni(d: it.vercruysse.lemmyapi.datatypes.Search): Search fun fromUni(d: it.vercruysse.lemmyapi.datatypes.TransferCommunity): TransferCommunity - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.UpdateTotp): UpdateTotp + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.EditTotp): UpdateTotp fun fromUni(d: it.vercruysse.lemmyapi.datatypes.VerifyEmail): VerifyEmail } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt index 4237e375..0b758833 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt @@ -169,7 +169,7 @@ import it.vercruysse.lemmyapi.datatypes.PurgeComment as LemmyapiDatatypesPurgeCo import it.vercruysse.lemmyapi.datatypes.PurgeCommunity as LemmyapiDatatypesPurgeCommunity import it.vercruysse.lemmyapi.datatypes.PurgePerson as LemmyapiDatatypesPurgePerson import it.vercruysse.lemmyapi.datatypes.PurgePost as LemmyapiDatatypesPurgePost -import it.vercruysse.lemmyapi.datatypes.ReadableFederationState as LemmyapiDatatypesReadableFederationState +import it.vercruysse.lemmyapi.datatypes.FederationQueueState as LemmyapiDatatypesReadableFederationState import it.vercruysse.lemmyapi.datatypes.Register as LemmyapiDatatypesRegister import it.vercruysse.lemmyapi.datatypes.RegistrationApplication as LemmyapiDatatypesRegistrationApplication import it.vercruysse.lemmyapi.datatypes.RegistrationApplicationResponse as LemmyapiDatatypesRegistrationApplicationResponse @@ -193,8 +193,8 @@ import it.vercruysse.lemmyapi.datatypes.SiteResponse as LemmyapiDatatypesSiteRes import it.vercruysse.lemmyapi.datatypes.SiteView as LemmyapiDatatypesSiteView import it.vercruysse.lemmyapi.datatypes.Tagline as LemmyapiDatatypesTagline import it.vercruysse.lemmyapi.datatypes.TransferCommunity as LemmyapiDatatypesTransferCommunity -import it.vercruysse.lemmyapi.datatypes.UpdateTotp as LemmyapiDatatypesUpdateTotp -import it.vercruysse.lemmyapi.datatypes.UpdateTotpResponse as LemmyapiDatatypesUpdateTotpResponse +import it.vercruysse.lemmyapi.datatypes.EditTotp as LemmyapiDatatypesUpdateTotp +import it.vercruysse.lemmyapi.datatypes.EditTotpResponse as LemmyapiDatatypesUpdateTotpResponse import it.vercruysse.lemmyapi.datatypes.UserBlockInstanceCommunitiesParams as LemmyapiDatatypesBlockInstance import it.vercruysse.lemmyapi.datatypes.VerifyEmail as LemmyapiDatatypesVerifyEmail import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.AddAdmin as X0DatatypesAddAdmin @@ -420,7 +420,7 @@ internal class Transformer : MapperGenerator { creator_banned_from_community = d.creator_banned_from_community, creator_is_moderator = false, creator_is_admin = d.creator_is_admin, - post_tags = emptyList(), + tags = emptyList(), creator_banned = d.creator.banned, creator_ban_expires_at = d.creator.ban_expires, can_mod = false, @@ -434,7 +434,7 @@ internal class Transformer : MapperGenerator { id = d.id, name = d.name, title = d.title, - description = d.description, + summary = d.description, removed = d.removed, published_at = d.published, updated_at = d.updated, @@ -465,7 +465,7 @@ internal class Transformer : MapperGenerator { LemmyapiDatatypesCommunityView( community = this.toUni(d = d.community, d.counts), can_mod = false, - post_tags = emptyList(), + tags = emptyList(), community_actions = CommunityActions(null, CommunityFollowerState.from(d.subscribed), if (d.blocked) "" else null), ) @@ -507,11 +507,11 @@ internal class Transformer : MapperGenerator { reports_email_admins = d.reports_email_admins, federation_signed_fetch = d.federation_signed_fetch, default_post_listing_mode = PostListingMode.Card, - default_sort_type = SortType.Active, + default_post_sort_type = SortType.Active, disallow_nsfw_content = !d.enable_nsfw, oauth_registration = false, disable_email_notifications = false, - suggested_communities = null, + suggested_multi_community_id = null, default_comment_sort_type = SortType.Active, default_post_time_range_seconds = null, post_upvotes = FederationMode.All, @@ -957,7 +957,7 @@ internal class Transformer : MapperGenerator { creator_banned_from_community = d.creator_banned_from_community, creator_is_moderator = false, creator_is_admin = false, - post_tags = emptyList(), + tags = emptyList(), creator_banned = d.creator.banned, creator_ban_expires_at = d.creator.ban_expires, can_mod = false, @@ -996,7 +996,7 @@ internal class Transformer : MapperGenerator { creator_banned_from_community = d.creator_banned_from_community, creator_is_moderator = false, creator_is_admin = false, - post_tags = emptyList(), + tags = emptyList(), creator_banned = d.creator.banned, creator_ban_expires_at = d.creator.ban_expires, can_mod = false, @@ -1361,8 +1361,8 @@ internal class Transformer : MapperGenerator { follows = d.follows.map { this.toUni(d = it) }, moderates = d.moderates.map { this.toUni(d = it) }, community_blocks = d.community_blocks.map { this.toUni(d = it.community, counts = X0DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)) }, - instance_community_blocks = d.instance_blocks.map { this.toUni(d = it.instance) }, - instance_person_blocks = emptyList(), + instance_communities_blocks = d.instance_blocks.map { this.toUni(d = it.instance) }, + instance_persons_blocks = emptyList(), person_blocks = d.person_blocks.map { this.toUni(d = it.target) }, discussion_languages = d.discussion_languages, ) @@ -1563,7 +1563,7 @@ internal class Transformer : MapperGenerator { updated_at = d.updated, icon = d.icon, banner = d.banner, - description = d.description, + summary = d.description, ap_id = d.actor_id, last_refreshed_at = d.last_refreshed_at, inbox_url = d.inbox_url, @@ -1679,7 +1679,7 @@ internal class Transformer : MapperGenerator { X0DatatypesCreateCommunity( name = d.name, title = d.title, - description = d.description, + description = d.summary, icon = d.icon, banner = d.banner, nsfw = d.nsfw, @@ -1734,7 +1734,7 @@ internal class Transformer : MapperGenerator { X0DatatypesCreateSite( name = d.name, sidebar = d.sidebar, - description = d.description, + description = d.summary, icon = d.icon, banner = d.banner, enable_downvotes = when (d.post_downvotes) { @@ -1826,7 +1826,7 @@ internal class Transformer : MapperGenerator { X0DatatypesEditCommunity( community_id = d.community_id, title = d.title, - description = d.description, + description = d.summary, icon = d.icon, banner = d.banner, nsfw = d.nsfw, @@ -1861,7 +1861,7 @@ internal class Transformer : MapperGenerator { override fun fromUni(d: LemmyapiDatatypesEditSite): X0DatatypesEditSite = X0DatatypesEditSite( name = d.name, sidebar = d.sidebar, - description = d.description, + description = d.summary, icon = d.icon, banner = d.banner, enable_downvotes = d.enable_downvotes, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt index 852fc72c..9d6905b5 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt @@ -901,8 +901,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * @POST("user/totp/update") */ override suspend fun updateTotp( - form: it.vercruysse.lemmyapi.datatypes.UpdateTotp, - ): Result = + form: it.vercruysse.lemmyapi.datatypes.EditTotp, + ): Result = api.updateTotp(transformer.fromUni(form)).map(transformer::toUni) /** diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt index 03e60afb..050d903f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt @@ -106,7 +106,7 @@ internal interface MapperGenerator { fun toUni(d: PrivateMessageReportView): it.vercruysse.lemmyapi.datatypes.PrivateMessageReportView fun toUni(d: PrivateMessageResponse): it.vercruysse.lemmyapi.datatypes.PrivateMessageResponse fun toUni(d: PrivateMessageView): it.vercruysse.lemmyapi.datatypes.PrivateMessageView - fun toUni(d: ReadableFederationState): it.vercruysse.lemmyapi.datatypes.ReadableFederationState + fun toUni(d: ReadableFederationState): it.vercruysse.lemmyapi.datatypes.FederationQueueState fun toUni(d: RegistrationApplication): it.vercruysse.lemmyapi.datatypes.RegistrationApplication fun toUni(d: RegistrationApplicationResponse): it.vercruysse.lemmyapi.datatypes.RegistrationApplicationResponse fun toUni(d: RegistrationApplicationView): it.vercruysse.lemmyapi.datatypes.RegistrationApplicationView @@ -116,7 +116,7 @@ internal interface MapperGenerator { fun toUni(d: SiteResponse): it.vercruysse.lemmyapi.datatypes.SiteResponse fun toUni(d: SiteView): it.vercruysse.lemmyapi.datatypes.SiteView fun toUni(d: Tagline): it.vercruysse.lemmyapi.datatypes.Tagline - fun toUni(d: UpdateTotpResponse): it.vercruysse.lemmyapi.datatypes.UpdateTotpResponse + fun toUni(d: UpdateTotpResponse): it.vercruysse.lemmyapi.datatypes.EditTotpResponse fun toUni(d: VoteView): it.vercruysse.lemmyapi.datatypes.VoteView // body mappings @@ -197,6 +197,6 @@ internal interface MapperGenerator { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.SaveUserSettings): SaveUserSettings fun fromUni(d: it.vercruysse.lemmyapi.datatypes.Search): Search fun fromUni(d: it.vercruysse.lemmyapi.datatypes.TransferCommunity): TransferCommunity - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.UpdateTotp): UpdateTotp + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.EditTotp): UpdateTotp fun fromUni(d: it.vercruysse.lemmyapi.datatypes.VerifyEmail): VerifyEmail } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt index d89d4ad6..380bbf72 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt @@ -180,7 +180,7 @@ import it.vercruysse.lemmyapi.datatypes.PurgeComment as LemmyapiDatatypesPurgeCo import it.vercruysse.lemmyapi.datatypes.PurgeCommunity as LemmyapiDatatypesPurgeCommunity import it.vercruysse.lemmyapi.datatypes.PurgePerson as LemmyapiDatatypesPurgePerson import it.vercruysse.lemmyapi.datatypes.PurgePost as LemmyapiDatatypesPurgePost -import it.vercruysse.lemmyapi.datatypes.ReadableFederationState as LemmyapiDatatypesReadableFederationState +import it.vercruysse.lemmyapi.datatypes.FederationQueueState as LemmyapiDatatypesReadableFederationState import it.vercruysse.lemmyapi.datatypes.Register as LemmyapiDatatypesRegister import it.vercruysse.lemmyapi.datatypes.RegistrationApplication as LemmyapiDatatypesRegistrationApplication import it.vercruysse.lemmyapi.datatypes.RegistrationApplicationResponse as LemmyapiDatatypesRegistrationApplicationResponse @@ -204,8 +204,8 @@ import it.vercruysse.lemmyapi.datatypes.SiteResponse as LemmyapiDatatypesSiteRes import it.vercruysse.lemmyapi.datatypes.SiteView as LemmyapiDatatypesSiteView import it.vercruysse.lemmyapi.datatypes.Tagline as LemmyapiDatatypesTagline import it.vercruysse.lemmyapi.datatypes.TransferCommunity as LemmyapiDatatypesTransferCommunity -import it.vercruysse.lemmyapi.datatypes.UpdateTotp as LemmyapiDatatypesUpdateTotp -import it.vercruysse.lemmyapi.datatypes.UpdateTotpResponse as LemmyapiDatatypesUpdateTotpResponse +import it.vercruysse.lemmyapi.datatypes.EditTotp as LemmyapiDatatypesUpdateTotp +import it.vercruysse.lemmyapi.datatypes.EditTotpResponse as LemmyapiDatatypesUpdateTotpResponse import it.vercruysse.lemmyapi.datatypes.UserBlockInstanceCommunitiesParams as LemmyapiDatatypesBlockInstance import it.vercruysse.lemmyapi.datatypes.VerifyEmail as LemmyapiDatatypesVerifyEmail import it.vercruysse.lemmyapi.datatypes.VoteView as LemmyapiDatatypesVoteView @@ -597,7 +597,7 @@ internal class Transformer : MapperGenerator { creator_banned_from_community = d.creator_banned_from_community, creator_is_moderator = d.creator_is_moderator, creator_is_admin = d.creator_is_admin, - post_tags = emptyList(), + tags = emptyList(), creator_banned = d.creator.banned, creator_ban_expires_at = d.creator.ban_expires, can_mod = false, @@ -611,7 +611,7 @@ internal class Transformer : MapperGenerator { id = d.id, name = d.name, title = d.title, - description = d.description, + summary = d.description, removed = d.removed, published_at = d.published, updated_at = d.updated, @@ -659,7 +659,7 @@ internal class Transformer : MapperGenerator { LemmyapiDatatypesCommunityView( community = this.toUni(d = d.community, d.counts), can_mod = false, - post_tags = emptyList(), + tags = emptyList(), community_actions = CommunityActions(null, CommunityFollowerState.from(d.subscribed), if (d.blocked) "" else null, null, if (d.banned_from_community) "" else null, if (d.banned_from_community) "" else null), ) @@ -892,7 +892,7 @@ internal class Transformer : MapperGenerator { creator_banned_from_community = d.creator_banned_from_community, creator_is_moderator = d.creator_is_moderator, creator_is_admin = d.creator_is_admin, - post_tags = emptyList(), + tags = emptyList(), creator_banned = d.creator.banned, creator_ban_expires_at = d.creator.ban_expires, can_mod = false, @@ -931,7 +931,7 @@ internal class Transformer : MapperGenerator { creator_banned_from_community = d.creator_banned_from_community, creator_is_moderator = d.creator_is_moderator, creator_is_admin = d.creator_is_admin, - post_tags = emptyList(), + tags = emptyList(), creator_banned = d.creator.banned, creator_ban_expires_at = d.creator.ban_expires, can_mod = false, @@ -1095,11 +1095,11 @@ internal class Transformer : MapperGenerator { reports_email_admins = d.reports_email_admins, federation_signed_fetch = d.federation_signed_fetch, default_post_listing_mode = d.default_post_listing_mode, - default_sort_type = d.default_sort_type, + default_post_sort_type = d.default_sort_type, disallow_nsfw_content = !d.enable_nsfw, oauth_registration = false, disable_email_notifications = false, - suggested_communities = null, + suggested_multi_community_id = null, default_comment_sort_type = SortType.Active, default_post_time_range_seconds = null, post_upvotes = FederationMode.All, @@ -1412,8 +1412,8 @@ internal class Transformer : MapperGenerator { follows = d.follows.map { this.toUni(d = it) }, moderates = d.moderates.map { this.toUni(d = it) }, community_blocks = d.community_blocks.map { this.toUni(d = it.community, counts = X11DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)) }, - instance_community_blocks = d.instance_blocks.map { this.toUni(d = it.instance) }, - instance_person_blocks = emptyList(), + instance_communities_blocks = d.instance_blocks.map { this.toUni(d = it.instance) }, + instance_persons_blocks = emptyList(), person_blocks = d.person_blocks.map { this.toUni(d = it.target) }, discussion_languages = d.discussion_languages, ) @@ -1650,7 +1650,7 @@ internal class Transformer : MapperGenerator { updated_at = d.updated, icon = d.icon, banner = d.banner, - description = d.description, + summary = d.description, ap_id = d.actor_id, last_refreshed_at = d.last_refreshed_at, inbox_url = d.inbox_url, @@ -1777,7 +1777,7 @@ internal class Transformer : MapperGenerator { X11DatatypesCreateCommunity( name = d.name, title = d.title, - description = d.description, + description = d.summary, icon = d.icon, banner = d.banner, nsfw = d.nsfw, @@ -1835,7 +1835,7 @@ internal class Transformer : MapperGenerator { X11DatatypesCreateSite( name = d.name, sidebar = d.sidebar, - description = d.description, + description = d.summary, icon = d.icon, banner = d.banner, enable_downvotes = when (d.post_downvotes) { @@ -1930,7 +1930,7 @@ internal class Transformer : MapperGenerator { X11DatatypesEditCommunity( community_id = d.community_id, title = d.title, - description = d.description, + description = d.summary, icon = d.icon, banner = d.banner, nsfw = d.nsfw, @@ -1968,7 +1968,7 @@ internal class Transformer : MapperGenerator { override fun fromUni(d: LemmyapiDatatypesEditSite): X11DatatypesEditSite = X11DatatypesEditSite( name = d.name, sidebar = d.sidebar, - description = d.description, + description = d.summary, icon = d.icon, banner = d.banner, enable_downvotes = d.enable_downvotes, @@ -1979,7 +1979,7 @@ internal class Transformer : MapperGenerator { private_instance = d.private_instance, default_theme = d.default_theme, default_post_listing_type = d.default_post_listing_type, - default_sort_type = d.default_sort_type, + default_sort_type = d.default_post_sort_type, legal_information = d.legal_information, application_email_admins = d.application_email_admins, hide_modlog_mod_names = d.hide_modlog_mod_names, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt index e28bf1db..0254e6b1 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt @@ -901,8 +901,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * @POST("user/totp/update") */ override suspend fun updateTotp( - form: it.vercruysse.lemmyapi.datatypes.UpdateTotp, - ): Result = + form: it.vercruysse.lemmyapi.datatypes.EditTotp, + ): Result = api.updateTotp(transformer.fromUni(form)).map(transformer::toUni) /** diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt index ef92fdfb..28cf38e5 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt @@ -124,7 +124,7 @@ internal interface MapperGenerator { fun toUni(d: PrivateMessageReportView): it.vercruysse.lemmyapi.datatypes.PrivateMessageReportView fun toUni(d: PrivateMessageResponse): it.vercruysse.lemmyapi.datatypes.PrivateMessageResponse fun toUni(d: PrivateMessageView): it.vercruysse.lemmyapi.datatypes.PrivateMessageView - fun toUni(d: ReadableFederationState): it.vercruysse.lemmyapi.datatypes.ReadableFederationState + fun toUni(d: ReadableFederationState): it.vercruysse.lemmyapi.datatypes.FederationQueueState fun toUni(d: RegistrationApplication): it.vercruysse.lemmyapi.datatypes.RegistrationApplication fun toUni(d: RegistrationApplicationResponse): it.vercruysse.lemmyapi.datatypes.RegistrationApplicationResponse fun toUni(d: RegistrationApplicationView): it.vercruysse.lemmyapi.datatypes.RegistrationApplicationView @@ -134,7 +134,7 @@ internal interface MapperGenerator { fun toUni(d: SiteResponse): it.vercruysse.lemmyapi.datatypes.SiteResponse fun toUni(d: SiteView): it.vercruysse.lemmyapi.datatypes.SiteView fun toUni(d: Tagline): it.vercruysse.lemmyapi.datatypes.Tagline - fun toUni(d: UpdateTotpResponse): it.vercruysse.lemmyapi.datatypes.UpdateTotpResponse + fun toUni(d: UpdateTotpResponse): it.vercruysse.lemmyapi.datatypes.EditTotpResponse // body mappings fun fromUni(d: it.vercruysse.lemmyapi.datatypes.AddAdmin): AddAdmin @@ -211,6 +211,6 @@ internal interface MapperGenerator { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.SaveUserSettings): SaveUserSettings fun fromUni(d: it.vercruysse.lemmyapi.datatypes.Search): Search fun fromUni(d: it.vercruysse.lemmyapi.datatypes.TransferCommunity): TransferCommunity - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.UpdateTotp): UpdateTotp + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.EditTotp): UpdateTotp fun fromUni(d: it.vercruysse.lemmyapi.datatypes.VerifyEmail): VerifyEmail } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt index aaf9c316..cb86f9ef 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt @@ -175,7 +175,7 @@ import it.vercruysse.lemmyapi.datatypes.PurgeComment as LemmyapiDatatypesPurgeCo import it.vercruysse.lemmyapi.datatypes.PurgeCommunity as LemmyapiDatatypesPurgeCommunity import it.vercruysse.lemmyapi.datatypes.PurgePerson as LemmyapiDatatypesPurgePerson import it.vercruysse.lemmyapi.datatypes.PurgePost as LemmyapiDatatypesPurgePost -import it.vercruysse.lemmyapi.datatypes.ReadableFederationState as LemmyapiDatatypesReadableFederationState +import it.vercruysse.lemmyapi.datatypes.FederationQueueState as LemmyapiDatatypesReadableFederationState import it.vercruysse.lemmyapi.datatypes.Register as LemmyapiDatatypesRegister import it.vercruysse.lemmyapi.datatypes.RegistrationApplication as LemmyapiDatatypesRegistrationApplication import it.vercruysse.lemmyapi.datatypes.RegistrationApplicationResponse as LemmyapiDatatypesRegistrationApplicationResponse @@ -199,8 +199,8 @@ import it.vercruysse.lemmyapi.datatypes.SiteResponse as LemmyapiDatatypesSiteRes import it.vercruysse.lemmyapi.datatypes.SiteView as LemmyapiDatatypesSiteView import it.vercruysse.lemmyapi.datatypes.Tagline as LemmyapiDatatypesTagline import it.vercruysse.lemmyapi.datatypes.TransferCommunity as LemmyapiDatatypesTransferCommunity -import it.vercruysse.lemmyapi.datatypes.UpdateTotp as LemmyapiDatatypesUpdateTotp -import it.vercruysse.lemmyapi.datatypes.UpdateTotpResponse as LemmyapiDatatypesUpdateTotpResponse +import it.vercruysse.lemmyapi.datatypes.EditTotp as LemmyapiDatatypesUpdateTotp +import it.vercruysse.lemmyapi.datatypes.EditTotpResponse as LemmyapiDatatypesUpdateTotpResponse import it.vercruysse.lemmyapi.datatypes.UserBlockInstanceCommunitiesParams as LemmyapiDatatypesBlockInstance import it.vercruysse.lemmyapi.datatypes.VerifyEmail as LemmyapiDatatypesVerifyEmail import it.vercruysse.lemmyapi.datatypes.VoteView as LemmyapiDatatypesVoteView @@ -431,7 +431,7 @@ internal class Transformer : MapperGenerator { creator_banned_from_community = d.creator_banned_from_community, creator_is_moderator = d.creator_is_moderator, creator_is_admin = d.creator_is_admin, - post_tags = emptyList(), + tags = emptyList(), creator_banned = d.creator.banned, creator_ban_expires_at = d.creator.ban_expires, can_mod = false, @@ -445,7 +445,7 @@ internal class Transformer : MapperGenerator { id = d.id, name = d.name, title = d.title, - description = d.description, + summary = d.description, removed = d.removed, published_at = d.published, updated_at = d.updated, @@ -476,7 +476,7 @@ internal class Transformer : MapperGenerator { LemmyapiDatatypesCommunityView( community = this.toUni(d = d.community, d.counts), can_mod = false, - post_tags = emptyList(), + tags = emptyList(), community_actions = CommunityActions(null, CommunityFollowerState.from(d.subscribed), if (d.blocked) "" else null), ) @@ -525,11 +525,11 @@ internal class Transformer : MapperGenerator { reports_email_admins = d.reports_email_admins, federation_signed_fetch = d.federation_signed_fetch, default_post_listing_mode = PostListingMode.Card, - default_sort_type = SortType.Active, + default_post_sort_type = SortType.Active, disallow_nsfw_content = !d.enable_nsfw, oauth_registration = false, disable_email_notifications = false, - suggested_communities = null, + suggested_multi_community_id = null, default_comment_sort_type = SortType.Active, default_post_time_range_seconds = null, post_upvotes = FederationMode.All, @@ -980,7 +980,7 @@ internal class Transformer : MapperGenerator { creator_banned_from_community = d.creator_banned_from_community, creator_is_moderator = d.creator_is_moderator, creator_is_admin = d.creator_is_admin, - post_tags = emptyList(), + tags = emptyList(), creator_banned = d.creator.banned, creator_ban_expires_at = d.creator.ban_expires, can_mod = false, @@ -1019,7 +1019,7 @@ internal class Transformer : MapperGenerator { creator_banned_from_community = d.creator_banned_from_community, creator_is_moderator = d.creator_is_moderator, creator_is_admin = d.creator_is_admin, - post_tags = emptyList(), + tags = emptyList(), creator_banned = d.creator.banned, creator_ban_expires_at = d.creator.ban_expires, can_mod = false, @@ -1393,8 +1393,8 @@ internal class Transformer : MapperGenerator { follows = d.follows.map { this.toUni(d = it) }, moderates = d.moderates.map { this.toUni(d = it) }, community_blocks = d.community_blocks.map { this.toUni(d = it.community, counts = X3DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)) }, - instance_community_blocks = d.instance_blocks.map { this.toUni(d = it.instance) }, - instance_person_blocks = emptyList(), + instance_communities_blocks = d.instance_blocks.map { this.toUni(d = it.instance) }, + instance_persons_blocks = emptyList(), person_blocks = d.person_blocks.map { this.toUni(d = it.target) }, discussion_languages = d.discussion_languages, ) @@ -1594,7 +1594,7 @@ internal class Transformer : MapperGenerator { updated_at = d.updated, icon = d.icon, banner = d.banner, - description = d.description, + summary = d.description, ap_id = d.actor_id, last_refreshed_at = d.last_refreshed_at, inbox_url = d.inbox_url, @@ -1710,7 +1710,7 @@ internal class Transformer : MapperGenerator { X3DatatypesCreateCommunity( name = d.name, title = d.title, - description = d.description, + description = d.summary, icon = d.icon, banner = d.banner, nsfw = d.nsfw, @@ -1765,7 +1765,7 @@ internal class Transformer : MapperGenerator { X3DatatypesCreateSite( name = d.name, sidebar = d.sidebar, - description = d.description, + description = d.summary, icon = d.icon, banner = d.banner, enable_downvotes = when (d.post_downvotes) { @@ -1857,7 +1857,7 @@ internal class Transformer : MapperGenerator { X3DatatypesEditCommunity( community_id = d.community_id, title = d.title, - description = d.description, + description = d.summary, icon = d.icon, banner = d.banner, nsfw = d.nsfw, @@ -1892,7 +1892,7 @@ internal class Transformer : MapperGenerator { override fun fromUni(d: LemmyapiDatatypesEditSite): X3DatatypesEditSite = X3DatatypesEditSite( name = d.name, sidebar = d.sidebar, - description = d.description, + description = d.summary, icon = d.icon, banner = d.banner, enable_downvotes = d.enable_downvotes, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt index 3bb6b373..cbd4a3bf 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt @@ -900,8 +900,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * @POST("user/totp/update") */ override suspend fun updateTotp( - form: it.vercruysse.lemmyapi.datatypes.UpdateTotp, - ): Result = + form: it.vercruysse.lemmyapi.datatypes.EditTotp, + ): Result = api.updateTotp(transformer.fromUni(form)).map(transformer::toUni) /** diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt index 5d899350..d797c5ee 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt @@ -106,7 +106,7 @@ internal interface MapperGenerator { fun toUni(d: PrivateMessageReportView): it.vercruysse.lemmyapi.datatypes.PrivateMessageReportView fun toUni(d: PrivateMessageResponse): it.vercruysse.lemmyapi.datatypes.PrivateMessageResponse fun toUni(d: PrivateMessageView): it.vercruysse.lemmyapi.datatypes.PrivateMessageView - fun toUni(d: ReadableFederationState): it.vercruysse.lemmyapi.datatypes.ReadableFederationState + fun toUni(d: ReadableFederationState): it.vercruysse.lemmyapi.datatypes.FederationQueueState fun toUni(d: RegistrationApplication): it.vercruysse.lemmyapi.datatypes.RegistrationApplication fun toUni(d: RegistrationApplicationResponse): it.vercruysse.lemmyapi.datatypes.RegistrationApplicationResponse fun toUni(d: RegistrationApplicationView): it.vercruysse.lemmyapi.datatypes.RegistrationApplicationView @@ -116,7 +116,7 @@ internal interface MapperGenerator { fun toUni(d: SiteResponse): it.vercruysse.lemmyapi.datatypes.SiteResponse fun toUni(d: SiteView): it.vercruysse.lemmyapi.datatypes.SiteView fun toUni(d: Tagline): it.vercruysse.lemmyapi.datatypes.Tagline - fun toUni(d: UpdateTotpResponse): it.vercruysse.lemmyapi.datatypes.UpdateTotpResponse + fun toUni(d: UpdateTotpResponse): it.vercruysse.lemmyapi.datatypes.EditTotpResponse fun toUni(d: VoteView): it.vercruysse.lemmyapi.datatypes.VoteView // body mappings @@ -196,6 +196,6 @@ internal interface MapperGenerator { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.SaveUserSettings): SaveUserSettings fun fromUni(d: it.vercruysse.lemmyapi.datatypes.Search): Search fun fromUni(d: it.vercruysse.lemmyapi.datatypes.TransferCommunity): TransferCommunity - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.UpdateTotp): UpdateTotp + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.EditTotp): UpdateTotp fun fromUni(d: it.vercruysse.lemmyapi.datatypes.VerifyEmail): VerifyEmail } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt index f37b38ca..141ace36 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt @@ -178,7 +178,7 @@ import it.vercruysse.lemmyapi.datatypes.PurgeComment as LemmyapiDatatypesPurgeCo import it.vercruysse.lemmyapi.datatypes.PurgeCommunity as LemmyapiDatatypesPurgeCommunity import it.vercruysse.lemmyapi.datatypes.PurgePerson as LemmyapiDatatypesPurgePerson import it.vercruysse.lemmyapi.datatypes.PurgePost as LemmyapiDatatypesPurgePost -import it.vercruysse.lemmyapi.datatypes.ReadableFederationState as LemmyapiDatatypesReadableFederationState +import it.vercruysse.lemmyapi.datatypes.FederationQueueState as LemmyapiDatatypesReadableFederationState import it.vercruysse.lemmyapi.datatypes.Register as LemmyapiDatatypesRegister import it.vercruysse.lemmyapi.datatypes.RegistrationApplication as LemmyapiDatatypesRegistrationApplication import it.vercruysse.lemmyapi.datatypes.RegistrationApplicationResponse as LemmyapiDatatypesRegistrationApplicationResponse @@ -202,8 +202,8 @@ import it.vercruysse.lemmyapi.datatypes.SiteResponse as LemmyapiDatatypesSiteRes import it.vercruysse.lemmyapi.datatypes.SiteView as LemmyapiDatatypesSiteView import it.vercruysse.lemmyapi.datatypes.Tagline as LemmyapiDatatypesTagline import it.vercruysse.lemmyapi.datatypes.TransferCommunity as LemmyapiDatatypesTransferCommunity -import it.vercruysse.lemmyapi.datatypes.UpdateTotp as LemmyapiDatatypesUpdateTotp -import it.vercruysse.lemmyapi.datatypes.UpdateTotpResponse as LemmyapiDatatypesUpdateTotpResponse +import it.vercruysse.lemmyapi.datatypes.EditTotp as LemmyapiDatatypesUpdateTotp +import it.vercruysse.lemmyapi.datatypes.EditTotpResponse as LemmyapiDatatypesUpdateTotpResponse import it.vercruysse.lemmyapi.datatypes.UserBlockInstanceCommunitiesParams as LemmyapiDatatypesBlockInstance import it.vercruysse.lemmyapi.datatypes.VerifyEmail as LemmyapiDatatypesVerifyEmail import it.vercruysse.lemmyapi.datatypes.VoteView as LemmyapiDatatypesVoteView @@ -595,7 +595,7 @@ internal class Transformer : MapperGenerator { creator_banned_from_community = d.creator_banned_from_community, creator_is_moderator = d.creator_is_moderator, creator_is_admin = d.creator_is_admin, - post_tags = emptyList(), + tags = emptyList(), creator_banned = d.creator.banned, creator_ban_expires_at = d.creator.ban_expires, can_mod = false, @@ -609,7 +609,7 @@ internal class Transformer : MapperGenerator { id = d.id, name = d.name, title = d.title, - description = d.description, + summary = d.description, removed = d.removed, published_at = d.published, updated_at = d.updated, @@ -658,7 +658,7 @@ internal class Transformer : MapperGenerator { LemmyapiDatatypesCommunityView( community = this.toUni(d = d.community, d.counts), can_mod = false, - post_tags = emptyList(), + tags = emptyList(), community_actions = CommunityActions(null, CommunityFollowerState.from(d.subscribed), if (d.blocked) "" else null, null, if (d.banned_from_community) "" else null, if (d.banned_from_community) "" else null), ) @@ -891,7 +891,7 @@ internal class Transformer : MapperGenerator { creator_banned_from_community = d.creator_banned_from_community, creator_is_moderator = d.creator_is_moderator, creator_is_admin = d.creator_is_admin, - post_tags = emptyList(), + tags = emptyList(), creator_banned = d.creator.banned, creator_ban_expires_at = d.creator.ban_expires, can_mod = false, @@ -930,7 +930,7 @@ internal class Transformer : MapperGenerator { creator_banned_from_community = d.creator_banned_from_community, creator_is_moderator = d.creator_is_moderator, creator_is_admin = d.creator_is_admin, - post_tags = emptyList(), + tags = emptyList(), creator_banned = d.creator.banned, creator_ban_expires_at = d.creator.ban_expires, can_mod = false, @@ -1086,11 +1086,11 @@ internal class Transformer : MapperGenerator { reports_email_admins = d.reports_email_admins, federation_signed_fetch = d.federation_signed_fetch, default_post_listing_mode = d.default_post_listing_mode, - default_sort_type = d.default_sort_type, + default_post_sort_type = d.default_sort_type, disallow_nsfw_content = !d.enable_nsfw, oauth_registration = false, disable_email_notifications = false, - suggested_communities = null, + suggested_multi_community_id = null, default_comment_sort_type = SortType.Active, default_post_time_range_seconds = null, post_upvotes = FederationMode.All, @@ -1404,8 +1404,8 @@ internal class Transformer : MapperGenerator { follows = d.follows.map { this.toUni(d = it) }, moderates = d.moderates.map { this.toUni(d = it) }, community_blocks = d.community_blocks.map { this.toUni(d = it.community, counts = X4DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)) }, - instance_community_blocks = d.instance_blocks.map { this.toUni(d = it.instance) }, - instance_person_blocks = emptyList(), + instance_communities_blocks = d.instance_blocks.map { this.toUni(d = it.instance) }, + instance_persons_blocks = emptyList(), person_blocks = d.person_blocks.map { this.toUni(d = it.target) }, discussion_languages = d.discussion_languages, ) @@ -1641,7 +1641,7 @@ internal class Transformer : MapperGenerator { updated_at = d.updated, icon = d.icon, banner = d.banner, - description = d.description, + summary = d.description, ap_id = d.actor_id, last_refreshed_at = d.last_refreshed_at, inbox_url = d.inbox_url, @@ -1765,7 +1765,7 @@ internal class Transformer : MapperGenerator { X4DatatypesCreateCommunity( name = d.name, title = d.title, - description = d.description, + description = d.summary, icon = d.icon, banner = d.banner, nsfw = d.nsfw, @@ -1823,7 +1823,7 @@ internal class Transformer : MapperGenerator { X4DatatypesCreateSite( name = d.name, sidebar = d.sidebar, - description = d.description, + description = d.summary, icon = d.icon, banner = d.banner, enable_downvotes = when (d.post_downvotes) { @@ -1918,7 +1918,7 @@ internal class Transformer : MapperGenerator { X4DatatypesEditCommunity( community_id = d.community_id, title = d.title, - description = d.description, + description = d.summary, icon = d.icon, banner = d.banner, nsfw = d.nsfw, @@ -1956,7 +1956,7 @@ internal class Transformer : MapperGenerator { override fun fromUni(d: LemmyapiDatatypesEditSite): X4DatatypesEditSite = X4DatatypesEditSite( name = d.name, sidebar = d.sidebar, - description = d.description, + description = d.summary, icon = d.icon, banner = d.banner, enable_downvotes = d.enable_downvotes, @@ -1967,7 +1967,7 @@ internal class Transformer : MapperGenerator { private_instance = d.private_instance, default_theme = d.default_theme, default_post_listing_type = d.default_post_listing_type, - default_sort_type = d.default_sort_type, + default_sort_type = d.default_post_sort_type, legal_information = d.legal_information, application_email_admins = d.application_email_admins, hide_modlog_mod_names = d.hide_modlog_mod_names, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt index c9325c16..461f2b0e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt @@ -8,6 +8,7 @@ import it.vercruysse.lemmyapi.datatypes.ListCustomEmojisResponse import it.vercruysse.lemmyapi.datatypes.ListNotifications import it.vercruysse.lemmyapi.datatypes.ListNotificationsResponse import it.vercruysse.lemmyapi.datatypes.MarkNotificationAsRead +import it.vercruysse.lemmyapi.datatypes.ModlogView import it.vercruysse.lemmyapi.datatypes.MyUserInfo import it.vercruysse.lemmyapi.dto.ExportUserSettingsResponse import it.vercruysse.lemmyapi.dto.ImportUserSettings @@ -57,8 +58,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun getModlog( form: it.vercruysse.lemmyapi.datatypes.GetModlog, - ): Result = - api.getModlog(transformer.fromUni(form)).map(transformer::toUni) + ): Result> = notSupported() /** * Search lemmy. @@ -898,8 +898,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * @POST("user/totp/update") */ override suspend fun updateTotp( - form: it.vercruysse.lemmyapi.datatypes.UpdateTotp, - ): Result = + form: it.vercruysse.lemmyapi.datatypes.EditTotp, + ): Result = api.updateTotp(transformer.fromUni(form)).map(transformer::toUni) /** diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt index 4927d149..8f8d9638 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt @@ -108,7 +108,7 @@ internal interface MapperGenerator { fun toUni(d: PrivateMessageReportView): it.vercruysse.lemmyapi.datatypes.PrivateMessageReportView fun toUni(d: PrivateMessageResponse): it.vercruysse.lemmyapi.datatypes.PrivateMessageResponse fun toUni(d: PrivateMessageView): it.vercruysse.lemmyapi.datatypes.PrivateMessageView - fun toUni(d: ReadableFederationState): it.vercruysse.lemmyapi.datatypes.ReadableFederationState + fun toUni(d: ReadableFederationState): it.vercruysse.lemmyapi.datatypes.FederationQueueState fun toUni(d: RegistrationApplication): it.vercruysse.lemmyapi.datatypes.RegistrationApplication fun toUni(d: RegistrationApplicationResponse): it.vercruysse.lemmyapi.datatypes.RegistrationApplicationResponse fun toUni(d: RegistrationApplicationView): it.vercruysse.lemmyapi.datatypes.RegistrationApplicationView @@ -118,7 +118,7 @@ internal interface MapperGenerator { fun toUni(d: SiteResponse): it.vercruysse.lemmyapi.datatypes.SiteResponse fun toUni(d: SiteView): it.vercruysse.lemmyapi.datatypes.SiteView fun toUni(d: Tagline): it.vercruysse.lemmyapi.datatypes.Tagline - fun toUni(d: UpdateTotpResponse): it.vercruysse.lemmyapi.datatypes.UpdateTotpResponse + fun toUni(d: UpdateTotpResponse): it.vercruysse.lemmyapi.datatypes.EditTotpResponse fun toUni(d: VoteView): it.vercruysse.lemmyapi.datatypes.VoteView // body mappings @@ -199,6 +199,6 @@ internal interface MapperGenerator { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.SaveUserSettings): SaveUserSettings fun fromUni(d: it.vercruysse.lemmyapi.datatypes.Search): Search fun fromUni(d: it.vercruysse.lemmyapi.datatypes.TransferCommunity): TransferCommunity - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.UpdateTotp): UpdateTotp + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.EditTotp): UpdateTotp fun fromUni(d: it.vercruysse.lemmyapi.datatypes.VerifyEmail): VerifyEmail } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt index 5b825562..98e93ccd 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt @@ -180,7 +180,7 @@ import it.vercruysse.lemmyapi.datatypes.PurgeComment as LemmyapiDatatypesPurgeCo import it.vercruysse.lemmyapi.datatypes.PurgeCommunity as LemmyapiDatatypesPurgeCommunity import it.vercruysse.lemmyapi.datatypes.PurgePerson as LemmyapiDatatypesPurgePerson import it.vercruysse.lemmyapi.datatypes.PurgePost as LemmyapiDatatypesPurgePost -import it.vercruysse.lemmyapi.datatypes.ReadableFederationState as LemmyapiDatatypesReadableFederationState +import it.vercruysse.lemmyapi.datatypes.FederationQueueState as LemmyapiDatatypesReadableFederationState import it.vercruysse.lemmyapi.datatypes.Register as LemmyapiDatatypesRegister import it.vercruysse.lemmyapi.datatypes.RegistrationApplication as LemmyapiDatatypesRegistrationApplication import it.vercruysse.lemmyapi.datatypes.RegistrationApplicationResponse as LemmyapiDatatypesRegistrationApplicationResponse @@ -204,8 +204,8 @@ import it.vercruysse.lemmyapi.datatypes.SiteResponse as LemmyapiDatatypesSiteRes import it.vercruysse.lemmyapi.datatypes.SiteView as LemmyapiDatatypesSiteView import it.vercruysse.lemmyapi.datatypes.Tagline as LemmyapiDatatypesTagline import it.vercruysse.lemmyapi.datatypes.TransferCommunity as LemmyapiDatatypesTransferCommunity -import it.vercruysse.lemmyapi.datatypes.UpdateTotp as LemmyapiDatatypesUpdateTotp -import it.vercruysse.lemmyapi.datatypes.UpdateTotpResponse as LemmyapiDatatypesUpdateTotpResponse +import it.vercruysse.lemmyapi.datatypes.EditTotp as LemmyapiDatatypesUpdateTotp +import it.vercruysse.lemmyapi.datatypes.EditTotpResponse as LemmyapiDatatypesUpdateTotpResponse import it.vercruysse.lemmyapi.datatypes.UserBlockInstanceCommunitiesParams as LemmyapiDatatypesBlockInstance import it.vercruysse.lemmyapi.datatypes.VerifyEmail as LemmyapiDatatypesVerifyEmail import it.vercruysse.lemmyapi.datatypes.VoteView as LemmyapiDatatypesVoteView @@ -598,7 +598,7 @@ internal class Transformer : MapperGenerator { creator_banned_from_community = d.creator_banned_from_community, creator_is_moderator = d.creator_is_moderator, creator_is_admin = d.creator_is_admin, - post_tags = emptyList(), + tags = emptyList(), creator_banned = d.creator.banned, creator_ban_expires_at = d.creator.ban_expires, can_mod = false, @@ -612,7 +612,7 @@ internal class Transformer : MapperGenerator { id = d.id, name = d.name, title = d.title, - description = d.description, + summary = d.description, removed = d.removed, published_at = d.published, updated_at = d.updated, @@ -660,7 +660,7 @@ internal class Transformer : MapperGenerator { LemmyapiDatatypesCommunityView( community = this.toUni(d = d.community, d.counts), can_mod = false, - post_tags = emptyList(), + tags = emptyList(), community_actions = CommunityActions(null, CommunityFollowerState.from(d.subscribed), if (d.blocked) "" else null, null, if (d.banned_from_community) "" else null, if (d.banned_from_community) "" else null), ) @@ -893,7 +893,7 @@ internal class Transformer : MapperGenerator { creator_banned_from_community = d.creator_banned_from_community, creator_is_moderator = d.creator_is_moderator, creator_is_admin = d.creator_is_admin, - post_tags = emptyList(), + tags = emptyList(), creator_banned = d.creator.banned, creator_ban_expires_at = d.creator.ban_expires, can_mod = false, @@ -932,7 +932,7 @@ internal class Transformer : MapperGenerator { creator_banned_from_community = d.creator_banned_from_community, creator_is_moderator = d.creator_is_moderator, creator_is_admin = d.creator_is_admin, - post_tags = emptyList(), + tags = emptyList(), creator_banned = d.creator.banned, creator_ban_expires_at = d.creator.ban_expires, can_mod = false, @@ -1094,11 +1094,11 @@ internal class Transformer : MapperGenerator { reports_email_admins = d.reports_email_admins, federation_signed_fetch = d.federation_signed_fetch, default_post_listing_mode = d.default_post_listing_mode, - default_sort_type = d.default_sort_type, + default_post_sort_type = d.default_sort_type, disallow_nsfw_content = !d.enable_nsfw, oauth_registration = false, disable_email_notifications = false, - suggested_communities = null, + suggested_multi_community_id = null, default_comment_sort_type = SortType.Active, default_post_time_range_seconds = null, post_upvotes = FederationMode.All, @@ -1410,8 +1410,8 @@ internal class Transformer : MapperGenerator { follows = d.follows.map { this.toUni(d = it) }, moderates = d.moderates.map { this.toUni(d = it) }, community_blocks = d.community_blocks.map { this.toUni(d = it.community, counts = X6DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)) }, - instance_community_blocks = d.instance_blocks.map { this.toUni(d = it.instance) }, - instance_person_blocks = emptyList(), + instance_communities_blocks = d.instance_blocks.map { this.toUni(d = it.instance) }, + instance_persons_blocks = emptyList(), person_blocks = d.person_blocks.map { this.toUni(d = it.target) }, discussion_languages = d.discussion_languages, ) @@ -1647,7 +1647,7 @@ internal class Transformer : MapperGenerator { updated_at = d.updated, icon = d.icon, banner = d.banner, - description = d.description, + summary = d.description, ap_id = d.actor_id, last_refreshed_at = d.last_refreshed_at, inbox_url = d.inbox_url, @@ -1771,7 +1771,7 @@ internal class Transformer : MapperGenerator { X6DatatypesCreateCommunity( name = d.name, title = d.title, - description = d.description, + description = d.summary, icon = d.icon, banner = d.banner, nsfw = d.nsfw, @@ -1829,7 +1829,7 @@ internal class Transformer : MapperGenerator { X6DatatypesCreateSite( name = d.name, sidebar = d.sidebar, - description = d.description, + description = d.summary, icon = d.icon, banner = d.banner, enable_downvotes = when (d.post_downvotes) { @@ -1924,7 +1924,7 @@ internal class Transformer : MapperGenerator { X6DatatypesEditCommunity( community_id = d.community_id, title = d.title, - description = d.description, + description = d.summary, icon = d.icon, banner = d.banner, nsfw = d.nsfw, @@ -1962,7 +1962,7 @@ internal class Transformer : MapperGenerator { override fun fromUni(d: LemmyapiDatatypesEditSite): X6DatatypesEditSite = X6DatatypesEditSite( name = d.name, sidebar = d.sidebar, - description = d.description, + description = d.summary, icon = d.icon, banner = d.banner, enable_downvotes = d.enable_downvotes, @@ -1973,7 +1973,7 @@ internal class Transformer : MapperGenerator { private_instance = d.private_instance, default_theme = d.default_theme, default_post_listing_type = d.default_post_listing_type, - default_sort_type = d.default_sort_type, + default_sort_type = d.default_post_sort_type, legal_information = d.legal_information, application_email_admins = d.application_email_admins, hide_modlog_mod_names = d.hide_modlog_mod_names, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/ModlogCombinedView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/ModlogCombinedView.kt deleted file mode 100644 index dd0b949a..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/ModlogCombinedView.kt +++ /dev/null @@ -1,137 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.combinedtypes - -import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.AdminAddView -import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.AdminAllowInstanceView -import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.AdminBanView -import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.AdminBlockInstanceView -import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.AdminPurgeCommentView -import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.AdminPurgeCommunityView -import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.AdminPurgePersonView -import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.AdminPurgePostView -import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.AdminRemoveCommunityView -import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ModAddToCommunityView -import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ModBanFromCommunityView -import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ModChangeCommunityVisibilityView -import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ModFeaturePostView -import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ModLockCommentView -import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ModLockPostView -import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ModRemoveCommentView -import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ModRemovePostView -import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ModTransferCommunityView -import kotlinx.serialization.ExperimentalSerializationApi -import kotlinx.serialization.SerialName -import kotlinx.serialization.Serializable -import kotlinx.serialization.json.JsonClassDiscriminator - -@Serializable -@OptIn(ExperimentalSerializationApi::class) -@JsonClassDiscriminator("type_") -internal sealed class ModlogCombinedView { - @Serializable - @SerialName("AdminAllowInstance") - internal data class AdminAllowInstance( - val admin_allow_instance: AdminAllowInstanceView, - ) : ModlogCombinedView() - - @Serializable - @SerialName("AdminBlockInstance") - internal data class AdminBlockInstance( - val admin_block_instance: AdminBlockInstanceView, - ) : ModlogCombinedView() - - @Serializable - @SerialName("AdminPurgeComment") - internal data class AdminPurgeComment( - val admin_purge_comment: AdminPurgeCommentView, - ) : ModlogCombinedView() - - @Serializable - @SerialName("AdminPurgeCommunity") - internal data class AdminPurgeCommunity( - val admin_purge_community: AdminPurgeCommunityView, - ) : ModlogCombinedView() - - @Serializable - @SerialName("AdminPurgePerson") - internal data class AdminPurgePerson( - val admin_purge_person: AdminPurgePersonView, - ) : ModlogCombinedView() - - @Serializable - @SerialName("AdminPurgePost") - internal data class AdminPurgePost( - val admin_purge_post: AdminPurgePostView, - ) : ModlogCombinedView() - - @Serializable - @SerialName("AdminAdd") - internal data class AdminAdd( - val admin_add: AdminAddView, - ) : ModlogCombinedView() - - @Serializable - @SerialName("ModAddToCommunity") - internal data class ModAddToCommunity( - val mod_add_to_community: ModAddToCommunityView, - ) : ModlogCombinedView() - - @Serializable - @SerialName("AdminBan") - internal data class AdminBan( - val admin_ban: AdminBanView, - ) : ModlogCombinedView() - - @Serializable - @SerialName("ModBanFromCommunity") - internal data class ModBanFromCommunity( - val mod_ban_from_community: ModBanFromCommunityView, - ) : ModlogCombinedView() - - @Serializable - @SerialName("ModFeaturePost") - internal data class ModFeaturePost( - val mod_feature_post: ModFeaturePostView, - ) : ModlogCombinedView() - - @Serializable - @SerialName("ModChangeCommunityVisibility") - internal data class ModChangeCommunityVisibility( - val mod_change_community_visibility: ModChangeCommunityVisibilityView, - ) : ModlogCombinedView() - - @Serializable - @SerialName("ModLockPost") - internal data class ModLockPost( - val mod_lock_post: ModLockPostView, - ) : ModlogCombinedView() - - @Serializable - @SerialName("ModRemoveComment") - internal data class ModRemoveComment( - val mod_remove_comment: ModRemoveCommentView, - ) : ModlogCombinedView() - - @Serializable - @SerialName("AdminRemoveCommunity") - internal data class AdminRemoveCommunity( - val admin_remove_community: AdminRemoveCommunityView, - ) : ModlogCombinedView() - - @Serializable - @SerialName("ModRemovePost") - internal data class ModRemovePost( - val mod_remove_post: ModRemovePostView, - ) : ModlogCombinedView() - - @Serializable - @SerialName("ModTransferCommunity") - internal data class ModTransferCommunity( - val mod_transfer_community: ModTransferCommunityView, - ) : ModlogCombinedView() - - @Serializable - @SerialName("ModLockComment") - internal data class ModLockComment( - val mod_lock_comment: ModLockCommentView, - ) : ModlogCombinedView() -} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/SearchCombinedView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/SearchCombinedView.kt index e004d9aa..d7906db1 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/SearchCombinedView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/SearchCombinedView.kt @@ -10,6 +10,8 @@ import kotlinx.serialization.SerialName import kotlinx.serialization.Serializable import kotlinx.serialization.json.JsonClassDiscriminator +// TODO: wrong serialization + @Serializable @OptIn(ExperimentalSerializationApi::class) @JsonClassDiscriminator("type_") diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAdd.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAdd.kt deleted file mode 100644 index 5159cbc8..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAdd.kt +++ /dev/null @@ -1,12 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class AdminAdd( - val id: AdminAddId, - val mod_person_id: PersonId, - val other_person_id: PersonId, - val removed: Boolean, - val published_at: String, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAddView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAddView.kt deleted file mode 100644 index d829827a..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAddView.kt +++ /dev/null @@ -1,10 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class AdminAddView( - val admin_add: AdminAdd, - val moderator: Person? = null, - val other_person: Person, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAllowInstance.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAllowInstance.kt deleted file mode 100644 index ab761045..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAllowInstance.kt +++ /dev/null @@ -1,13 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class AdminAllowInstance( - val id: AdminAllowInstanceId, - val instance_id: InstanceId, - val admin_person_id: PersonId, - val allowed: Boolean, - val reason: String, - val published_at: String, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAllowInstanceId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAllowInstanceId.kt deleted file mode 100644 index f4a8777f..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAllowInstanceId.kt +++ /dev/null @@ -1,3 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -internal typealias AdminAllowInstanceId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAllowInstanceView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAllowInstanceView.kt deleted file mode 100644 index 4b447608..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAllowInstanceView.kt +++ /dev/null @@ -1,10 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class AdminAllowInstanceView( - val admin_allow_instance: AdminAllowInstance, - val instance: Instance, - val admin: Person? = null, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBan.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBan.kt deleted file mode 100644 index d67f7fa6..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBan.kt +++ /dev/null @@ -1,15 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class AdminBan( - val id: AdminBanId, - val mod_person_id: PersonId, - val other_person_id: PersonId, - val reason: String, - val banned: Boolean, - val expires_at: String? = null, - val published_at: String, - val instance_id: InstanceId, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBanId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBanId.kt deleted file mode 100644 index 10de95df..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBanId.kt +++ /dev/null @@ -1,3 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -internal typealias AdminBanId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBanView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBanView.kt deleted file mode 100644 index 4f692075..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBanView.kt +++ /dev/null @@ -1,10 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class AdminBanView( - val admin_ban: AdminBan, - val moderator: Person? = null, - val other_person: Person, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBlockInstance.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBlockInstance.kt deleted file mode 100644 index 37a60e8a..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBlockInstance.kt +++ /dev/null @@ -1,14 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class AdminBlockInstance( - val id: AdminBlockInstanceId, - val instance_id: InstanceId, - val admin_person_id: PersonId, - val blocked: Boolean, - val reason: String, - val expires_at: String? = null, - val published_at: String, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBlockInstanceId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBlockInstanceId.kt deleted file mode 100644 index a0322edf..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBlockInstanceId.kt +++ /dev/null @@ -1,3 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -internal typealias AdminBlockInstanceId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBlockInstanceParams.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBlockInstanceParams.kt index d32df7da..d004cdcb 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBlockInstanceParams.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBlockInstanceParams.kt @@ -7,5 +7,6 @@ internal data class AdminBlockInstanceParams( val instance: String, val block: Boolean, val reason: String, - val expires_at: String? = null, + // TODO: type change + val expires_at: Long? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBlockInstanceView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBlockInstanceView.kt deleted file mode 100644 index 9d4b4987..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBlockInstanceView.kt +++ /dev/null @@ -1,10 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class AdminBlockInstanceView( - val admin_block_instance: AdminBlockInstance, - val instance: Instance, - val admin: Person? = null, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminListUsers.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminListUsers.kt index c04fe763..9ed78bfa 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminListUsers.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminListUsers.kt @@ -6,6 +6,7 @@ import kotlinx.serialization.Serializable internal data class AdminListUsers( val banned_only: Boolean? = null, val page_cursor: PaginationCursor? = null, - val page_back: Boolean? = null, + // TODO: AdminListSortType + val sort: String? /* "new" | "old" */ = null, val limit: Long? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminListUsersResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminListUsersResponse.kt deleted file mode 100644 index bb157c32..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminListUsersResponse.kt +++ /dev/null @@ -1,10 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class AdminListUsersResponse( - val users: List, - val next_page: PaginationCursor? = null, - val prev_page: PaginationCursor? = null, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/OAuthProvider.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminOAuthProvider.kt similarity index 93% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/OAuthProvider.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminOAuthProvider.kt index ee3bacde..ece5654e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/OAuthProvider.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminOAuthProvider.kt @@ -3,7 +3,7 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes import kotlinx.serialization.Serializable @Serializable -internal data class OAuthProvider( +internal data class AdminOAuthProvider( val id: OAuthProviderId, val display_name: String, val issuer: String, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeCommentId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeCommentId.kt deleted file mode 100644 index f74b0457..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeCommentId.kt +++ /dev/null @@ -1,3 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -internal typealias AdminPurgeCommentId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeCommentView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeCommentView.kt deleted file mode 100644 index 9dd3f532..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeCommentView.kt +++ /dev/null @@ -1,10 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class AdminPurgeCommentView( - val admin_purge_comment: AdminPurgeComment, - val admin: Person? = null, - val post: Post, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeCommunity.kt deleted file mode 100644 index f1d9a681..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeCommunity.kt +++ /dev/null @@ -1,11 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class AdminPurgeCommunity( - val id: AdminPurgeCommunityId, - val admin_person_id: PersonId, - val reason: String, - val published_at: String, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeCommunityId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeCommunityId.kt deleted file mode 100644 index ca598359..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeCommunityId.kt +++ /dev/null @@ -1,3 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -internal typealias AdminPurgeCommunityId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeCommunityView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeCommunityView.kt deleted file mode 100644 index 8dcbb965..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeCommunityView.kt +++ /dev/null @@ -1,9 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class AdminPurgeCommunityView( - val admin_purge_community: AdminPurgeCommunity, - val admin: Person? = null, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePersonId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePersonId.kt deleted file mode 100644 index bf59ef26..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePersonId.kt +++ /dev/null @@ -1,3 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -internal typealias AdminPurgePersonId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePersonView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePersonView.kt deleted file mode 100644 index 847ae742..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePersonView.kt +++ /dev/null @@ -1,9 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class AdminPurgePersonView( - val admin_purge_person: AdminPurgePerson, - val admin: Person? = null, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePost.kt deleted file mode 100644 index 8c297e1c..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePost.kt +++ /dev/null @@ -1,12 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class AdminPurgePost( - val id: AdminPurgePostId, - val admin_person_id: PersonId, - val community_id: CommunityId, - val reason: String, - val published_at: String, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePostId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePostId.kt deleted file mode 100644 index bb76c57b..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePostId.kt +++ /dev/null @@ -1,3 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -internal typealias AdminPurgePostId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePostView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePostView.kt deleted file mode 100644 index a09c9ae2..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePostView.kt +++ /dev/null @@ -1,10 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class AdminPurgePostView( - val admin_purge_post: AdminPurgePost, - val admin: Person? = null, - val community: Community, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminRemoveCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminRemoveCommunity.kt deleted file mode 100644 index 8289e5cd..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminRemoveCommunity.kt +++ /dev/null @@ -1,13 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class AdminRemoveCommunity( - val id: AdminRemoveCommunityId, - val mod_person_id: PersonId, - val community_id: CommunityId, - val reason: String, - val removed: Boolean, - val published_at: String, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminRemoveCommunityId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminRemoveCommunityId.kt deleted file mode 100644 index b3a77c36..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminRemoveCommunityId.kt +++ /dev/null @@ -1,3 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -internal typealias AdminRemoveCommunityId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminRemoveCommunityView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminRemoveCommunityView.kt deleted file mode 100644 index 916296c7..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminRemoveCommunityView.kt +++ /dev/null @@ -1,10 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class AdminRemoveCommunityView( - val admin_remove_community: AdminRemoveCommunity, - val moderator: Person? = null, - val community: Community, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AuthenticateWithOauth.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AuthenticateWithOauth.kt index 7dfaa907..428c5bb6 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AuthenticateWithOauth.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AuthenticateWithOauth.kt @@ -11,4 +11,5 @@ internal data class AuthenticateWithOauth( val username: String? = null, val answer: String? = null, val pkce_code_verifier: String? = null, + val stay_logged_in: Boolean? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BanFromCommunityResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BanFromCommunityResponse.kt deleted file mode 100644 index 7a8f4ed7..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BanFromCommunityResponse.kt +++ /dev/null @@ -1,9 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class BanFromCommunityResponse( - val person_view: PersonView, - val banned: Boolean, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BlockCommunityResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BlockCommunityResponse.kt deleted file mode 100644 index 37e100c6..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BlockCommunityResponse.kt +++ /dev/null @@ -1,9 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class BlockCommunityResponse( - val community_view: CommunityView, - val blocked: Boolean, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BlockPersonResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BlockPersonResponse.kt deleted file mode 100644 index 64d5f0e0..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BlockPersonResponse.kt +++ /dev/null @@ -1,9 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class BlockPersonResponse( - val person_view: PersonView, - val blocked: Boolean, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ChangePassword.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ChangePassword.kt index fb101837..918f8c93 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ChangePassword.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ChangePassword.kt @@ -7,4 +7,5 @@ internal data class ChangePassword( val new_password: SensitiveString, val new_password_verify: SensitiveString, val old_password: SensitiveString, + val stay_logged_in: Boolean? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentActions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentActions.kt index 002aeb14..8d5e16e7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentActions.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentActions.kt @@ -2,9 +2,10 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes import kotlinx.serialization.Serializable +// TODO: Change @Serializable internal data class CommentActions( - val like_score: Long? = null, - val liked_at: String? = null, + val voted_at: String? = null, val saved_at: String? = null, + val vote_is_upvote: Boolean? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReportView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReportView.kt index b5359dcc..d864b6e9 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReportView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReportView.kt @@ -2,7 +2,6 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes import kotlinx.serialization.Serializable - @Serializable internal data class CommentReportView( val comment_report: CommentReport, @@ -18,5 +17,7 @@ internal data class CommentReportView( val creator_is_admin: Boolean, val creator_is_moderator: Boolean, val creator_banned: Boolean, + val creator_ban_expires_at: String? = null, val creator_banned_from_community: Boolean, + val creator_community_ban_expires_at: String? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentView.kt index 565a186f..00a990fb 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentView.kt @@ -12,7 +12,7 @@ internal data class CommentView( val comment_actions: CommentActions? = null, val person_actions: PersonActions? = null, val creator_is_admin: Boolean, - val post_tags: TagsView, + val tags: CommunityTagsView, val can_mod: Boolean, val creator_banned: Boolean, val creator_ban_expires_at: String? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Community.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Community.kt index 491043d0..51db0472 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Community.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Community.kt @@ -16,12 +16,13 @@ internal data class Community( val nsfw: Boolean, val ap_id: DbUrl, val local: Boolean, + val last_refreshed_at: String, val icon: DbUrl? = null, val banner: DbUrl? = null, val posting_restricted_to_mods: Boolean, val instance_id: InstanceId, - val visibility: CommunityVisibility /* "Public" | "Unlisted" | "LocalOnlyPublic" | "LocalOnlyPrivate" | "Private" */, - val description: String? = null, + val visibility: CommunityVisibility /* "public" | "unlisted" | "local_only_public" | "local_only_private" | "private" */, + val summary: String? = null, val subscribers: Long, val posts: Long, val comments: Long, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityActions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityActions.kt index feba210c..e4d549d6 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityActions.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityActions.kt @@ -7,10 +7,10 @@ import kotlinx.serialization.Serializable @Serializable internal data class CommunityActions( val followed_at: String? = null, - val follow_state: CommunityFollowerState? /* "Accepted" | "Pending" | "ApprovalRequired" */ = null, val blocked_at: String? = null, val became_moderator_at: String? = null, val received_ban_at: String? = null, val ban_expires_at: String? = null, - val notifications: CommunityNotificationsMode? /* "AllPostsAndComments" | "AllPosts" | "RepliesAndMentions" | "Mute" */ = null, + val follow_state: CommunityFollowerState? /* "accepted" | "pending" | "approval_required" | "denied" */ = null, + val notifications: CommunityNotificationsMode? /* "all_posts_and_comments" | "all_posts" | "replies_and_mentions" | "mute" */ = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityReport.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityReport.kt index 03dcd2b9..4f46e928 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityReport.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityReport.kt @@ -9,7 +9,7 @@ internal data class CommunityReport( val community_id: CommunityId, val original_community_name: String, val original_community_title: String, - val original_community_description: String? = null, + val original_community_summary: String? = null, val original_community_sidebar: String? = null, val original_community_icon: String? = null, val original_community_banner: String? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityReportView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityReportView.kt index ea34f024..0ee60109 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityReportView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityReportView.kt @@ -11,5 +11,7 @@ internal data class CommunityReportView( val creator_is_admin: Boolean, val creator_is_moderator: Boolean, val creator_banned: Boolean, + val creator_ban_expires_at: String? = null, val creator_banned_from_community: Boolean, + val creator_community_ban_expires_at: String? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Tag.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityTag.kt similarity index 56% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Tag.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityTag.kt index 01740b4a..691f856f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Tag.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityTag.kt @@ -3,14 +3,15 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes import kotlinx.serialization.Serializable @Serializable -internal data class Tag( - val id: TagId, +internal data class CommunityTag( + val id: CommunityTagId, val ap_id: DbUrl, val name: String, val display_name: String? = null, - val description: String? = null, + val summary: String? = null, val community_id: CommunityId, val published_at: String, val updated_at: String? = null, val deleted: Boolean, + val color: String /* "color01" | "color02" | "color03" | "color04" | "color05" | "color06" | "color07" | "color08" | "color09" | "color10" */, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAddId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityTagId.kt similarity index 55% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAddId.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityTagId.kt index c38d94c5..45228c03 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminAddId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityTagId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -internal typealias AdminAddId = Long +internal typealias CommunityTagId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityTagsView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityTagsView.kt new file mode 100644 index 00000000..30fe198b --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityTagsView.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +internal typealias CommunityTagsView = List diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityView.kt index 712fc34a..6cde97a3 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityView.kt @@ -7,5 +7,5 @@ internal data class CommunityView( val community: Community, val community_actions: CommunityActions? = null, val can_mod: Boolean, - val post_tags: TagsView, + val tags: CommunityTagsView, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCommentLike.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCommentLike.kt index c025e85e..720400a3 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCommentLike.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCommentLike.kt @@ -5,5 +5,5 @@ import kotlinx.serialization.Serializable @Serializable internal data class CreateCommentLike( val comment_id: CommentId, - val score: Int, + val is_upvote: Boolean? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockComment.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCommentWarning.kt similarity index 51% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockComment.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCommentWarning.kt index 8e114995..889ffc88 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockComment.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCommentWarning.kt @@ -2,12 +2,10 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes import kotlinx.serialization.Serializable +// TODO no endpoint yet + @Serializable -internal data class ModLockComment( - val id: ModLockCommentId, - val mod_person_id: PersonId, +internal data class CreateCommentWarning( val comment_id: CommentId, - val locked: Boolean, val reason: String, - val published_at: String, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCommunity.kt index 14c0a507..ae8189a8 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCommunity.kt @@ -8,11 +8,11 @@ internal data class CreateCommunity( val name: String, val title: String, val sidebar: String? = null, - val description: String? = null, + val summary: String? = null, val icon: String? = null, val banner: String? = null, val nsfw: Boolean? = null, val posting_restricted_to_mods: Boolean? = null, val discussion_languages: List? = null, - val visibility: CommunityVisibility? /* "Public" | "Unlisted" | "LocalOnlyPublic" | "LocalOnlyPrivate" | "Private" */ = null, + val visibility: CommunityVisibility? /* "public" | "unlisted" | "local_only_public" | "local_only_private" | "private" */ = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCommunityTag.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCommunityTag.kt index 0e2b4893..a8a20820 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCommunityTag.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCommunityTag.kt @@ -7,5 +7,6 @@ internal data class CreateCommunityTag( val community_id: CommunityId, val name: String, val display_name: String? = null, - val description: String? = null, + val summary: String? = null, + val color: String? /* "color01" | "color02" | "color03" | "color04" | "color05" | "color06" | "color07" | "color08" | "color09" | "color10" */ = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateMultiCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateMultiCommunity.kt index 6cd9135a..99f99964 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateMultiCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateMultiCommunity.kt @@ -6,5 +6,5 @@ import kotlinx.serialization.Serializable internal data class CreateMultiCommunity( val name: String, val title: String? = null, - val description: String? = null, + val summary: String? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreatePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreatePost.kt index 4e7a67cb..a97479ca 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreatePost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreatePost.kt @@ -13,6 +13,6 @@ internal data class CreatePost( val nsfw: Boolean? = null, val language_id: LanguageId? = null, val custom_thumbnail: String? = null, - val tags: List? = null, + val tags: List? = null, val scheduled_publish_time_at: Long? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreatePostLike.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreatePostLike.kt index abe9f64e..3336e6aa 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreatePostLike.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreatePostLike.kt @@ -5,5 +5,6 @@ import kotlinx.serialization.Serializable @Serializable internal data class CreatePostLike( val post_id: PostId, - val score: Int, + // TODO: update + val is_upvote: Boolean? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeComment.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreatePostWarning.kt similarity index 53% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeComment.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreatePostWarning.kt index fe94bc3d..b52f21f0 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgeComment.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreatePostWarning.kt @@ -2,11 +2,10 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes import kotlinx.serialization.Serializable +// TODO create UNI + @Serializable -internal data class AdminPurgeComment( - val id: AdminPurgeCommentId, - val admin_person_id: PersonId, +internal data class CreatePostWarning( val post_id: PostId, val reason: String, - val published_at: String, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateSite.kt index 2a38dd21..19064afd 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateSite.kt @@ -11,17 +11,17 @@ import kotlinx.serialization.Serializable internal data class CreateSite( val name: String, val sidebar: String? = null, - val description: String? = null, + val summary: String? = null, val community_creation_admin_only: Boolean? = null, val require_email_verification: Boolean? = null, val application_question: String? = null, val private_instance: Boolean? = null, val default_theme: String? = null, - val default_post_listing_type: ListingType? /* "All" | "Local" | "Subscribed" | "ModeratorView" | "Suggested" */ = null, - val default_post_listing_mode: PostListingMode? /* "List" | "Card" | "SmallCard" */ = null, - val default_post_sort_type: SortType? /* "Active" | "Hot" | "New" | "Old" | "Top" | "MostComments" | "NewComments" | "Controversial" | "Scaled" */ = null, + val default_post_listing_type: ListingType? /* "all" | "local" | "subscribed" | "moderator_view" | "suggested" */ = null, + val default_post_listing_mode: PostListingMode? /* "list" | "card" | "small_card" */ = null, + val default_post_sort_type: SortType? /* "active" | "hot" | "new" | "old" | "top" | "most_comments" | "new_comments" | "controversial" | "scaled" */ = null, val default_post_time_range_seconds: Long? = null, - val default_comment_sort_type: SortType? /* "Hot" | "Top" | "New" | "Old" | "Controversial" */ = null, + val default_comment_sort_type: SortType? /* "hot" | "top" | "new" | "old" | "controversial" */ = null, val legal_information: String? = null, val application_email_admins: Boolean? = null, val discussion_languages: List? = null, @@ -43,14 +43,14 @@ internal data class CreateSite( val federation_enabled: Boolean? = null, val captcha_enabled: Boolean? = null, val captcha_difficulty: String? = null, - val registration_mode: RegistrationMode? /* "Closed" | "RequireApplication" | "Open" */ = null, + val registration_mode: RegistrationMode? /* "closed" | "require_application" | "open" */ = null, val oauth_registration: Boolean? = null, val content_warning: String? = null, - val post_upvotes: FederationMode? /* "All" | "Local" | "Disable" */ = null, - val post_downvotes: FederationMode? /* "All" | "Local" | "Disable" */ = null, - val comment_upvotes: FederationMode? /* "All" | "Local" | "Disable" */ = null, - val comment_downvotes: FederationMode? /* "All" | "Local" | "Disable" */ = null, + val post_upvotes: FederationMode? /* "all" | "local" | "disable" */ = null, + val post_downvotes: FederationMode? /* "all" | "local" | "disable" */ = null, + val comment_upvotes: FederationMode? /* "all" | "local" | "disable" */ = null, + val comment_downvotes: FederationMode? /* "all" | "local" | "disable" */ = null, val disallow_nsfw_content: Boolean? = null, val disable_email_notifications: Boolean? = null, - val suggested_communities: MultiCommunityId? = null, + val suggested_multi_community_id: MultiCommunityId? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/DeleteCommunityTag.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/DeleteCommunityTag.kt index b9f6b9f8..83829d3c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/DeleteCommunityTag.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/DeleteCommunityTag.kt @@ -4,5 +4,6 @@ import kotlinx.serialization.Serializable @Serializable internal data class DeleteCommunityTag( - val tag_id: TagId, + val tag_id: CommunityTagId, + val delete: Boolean, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditCommunity.kt index 7ad7aced..5caa773e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditCommunity.kt @@ -8,9 +8,9 @@ internal data class EditCommunity( val community_id: CommunityId, val title: String? = null, val sidebar: String? = null, - val description: String? = null, + val summary: String? = null, val nsfw: Boolean? = null, val posting_restricted_to_mods: Boolean? = null, val discussion_languages: List? = null, - val visibility: CommunityVisibility? /* "Public" | "Unlisted" | "LocalOnlyPublic" | "LocalOnlyPrivate" | "Private" */ = null, + val visibility: CommunityVisibility? /* "public" | "unlisted" | "local_only_public" | "local_only_private" | "private" */ = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UpdateCommunityNotifications.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditCommunityNotifications.kt similarity index 54% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UpdateCommunityNotifications.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditCommunityNotifications.kt index f7c77b29..4eab5020 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UpdateCommunityNotifications.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditCommunityNotifications.kt @@ -4,7 +4,7 @@ import it.vercruysse.lemmyapi.dto.CommunityNotificationsMode import kotlinx.serialization.Serializable @Serializable -internal data class UpdateCommunityNotifications( +internal data class EditCommunityNotifications( val community_id: CommunityId, - val mode: CommunityNotificationsMode /* "AllPostsAndComments" | "AllPosts" | "RepliesAndMentions" | "Mute" */, + val mode: CommunityNotificationsMode /* "all_posts_and_comments" | "all_posts" | "replies_and_mentions" | "mute" */, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditCommunityTag.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditCommunityTag.kt new file mode 100644 index 00000000..4c9d18ff --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditCommunityTag.kt @@ -0,0 +1,11 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class EditCommunityTag( + val tag_id: CommunityTagId, + val display_name: String? = null, + val summary: String? = null, + val color: String? /* "color01" | "color02" | "color03" | "color04" | "color05" | "color06" | "color07" | "color08" | "color09" | "color10" */ = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditCustomEmoji.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditCustomEmoji.kt index 52459c58..946e82bf 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditCustomEmoji.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditCustomEmoji.kt @@ -5,8 +5,9 @@ import kotlinx.serialization.Serializable @Serializable internal data class EditCustomEmoji( val id: CustomEmojiId, - val category: String, - val image_url: String, - val alt_text: String, - val keywords: List, + val category: String? = null, + val shortcode: String? = null, + val image_url: DbUrl? = null, + val alt_text: String? = null, + val keywords: List? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UpdateMultiCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditMultiCommunity.kt similarity index 72% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UpdateMultiCommunity.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditMultiCommunity.kt index 7c4917b9..968014ec 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UpdateMultiCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditMultiCommunity.kt @@ -3,9 +3,9 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes import kotlinx.serialization.Serializable @Serializable -internal data class UpdateMultiCommunity( +internal data class EditMultiCommunity( val id: MultiCommunityId, val title: String? = null, - val description: String? = null, + val summary: String? = null, val deleted: Boolean? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditPost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditPost.kt index db8d218e..f3a0a4a3 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditPost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditPost.kt @@ -13,5 +13,5 @@ internal data class EditPost( val language_id: LanguageId? = null, val custom_thumbnail: String? = null, val scheduled_publish_time_at: Long? = null, - val tags: List? = null, + val tags: List? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditPostNotifications.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditPostNotifications.kt new file mode 100644 index 00000000..51c450cc --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditPostNotifications.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import it.vercruysse.lemmyapi.dto.PostNotificationsMode +import kotlinx.serialization.Serializable + +@Serializable +internal data class EditPostNotifications( + val post_id: PostId, + val mode: PostNotificationsMode /* "all_comments" | "replies_and_mentions" | "mute" */, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditSite.kt index 8d29765f..b5eaebc6 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditSite.kt @@ -1,6 +1,5 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -import it.vercruysse.lemmyapi.dto.FederationMode import it.vercruysse.lemmyapi.dto.RegistrationMode import it.vercruysse.lemmyapi.dto.SortType import it.vercruysse.lemmyapi.dto.PostListingMode @@ -11,18 +10,18 @@ import kotlinx.serialization.Serializable internal data class EditSite( val name: String? = null, val sidebar: String? = null, - val description: String? = null, + val summary: String? = null, val community_creation_admin_only: Boolean? = null, val require_email_verification: Boolean? = null, val application_question: String? = null, val private_instance: Boolean? = null, val default_theme: String? = null, - val default_post_listing_type: ListingType? /* "All" | "Local" | "Subscribed" | "ModeratorView" | "Suggested" */ = null, - val default_post_listing_mode: PostListingMode? /* "List" | "Card" | "SmallCard" */ = null, - val default_post_sort_type: SortType? /* "Active" | "Hot" | "New" | "Old" | "Top" | "MostComments" | "NewComments" | "Controversial" | "Scaled" */ = null, + val default_post_listing_type: ListingType? /* "all" | "local" | "subscribed" | "moderator_view" | "suggested" */ = null, + val default_post_listing_mode: PostListingMode? /* "list" | "card" | "small_card" */ = null, + val default_post_sort_type: SortType? /* "active" | "hot" | "new" | "old" | "top" | "most_comments" | "new_comments" | "controversial" | "scaled" */ = null, val default_post_time_range_seconds: Long? = null, val default_items_per_page: Long? = null, - val default_comment_sort_type: SortType? /* "Hot" | "Top" | "New" | "Old" | "Controversial" */ = null, + val default_comment_sort_type: SortType? /* "hot" | "top" | "new" | "old" | "controversial" */ = null, val legal_information: String? = null, val application_email_admins: Boolean? = null, val discussion_languages: List? = null, @@ -45,15 +44,15 @@ internal data class EditSite( val captcha_enabled: Boolean? = null, val captcha_difficulty: String? = null, val blocked_urls: List? = null, - val registration_mode: RegistrationMode? /* "Closed" | "RequireApplication" | "Open" */ = null, + val registration_mode: RegistrationMode? /* "closed" | "require_application" | "open" */ = null, val reports_email_admins: Boolean? = null, val content_warning: String? = null, val oauth_registration: Boolean? = null, - val post_upvotes: FederationMode? /* "All" | "Local" | "Disable" */ = null, - val post_downvotes: FederationMode? /* "All" | "Local" | "Disable" */ = null, - val comment_upvotes: FederationMode? /* "All" | "Local" | "Disable" */ = null, - val comment_downvotes: FederationMode? /* "All" | "Local" | "Disable" */ = null, + val post_upvotes: RegistrationMode? /* "all" | "local" | "disable" */ = null, + val post_downvotes: RegistrationMode? /* "all" | "local" | "disable" */ = null, + val comment_upvotes: RegistrationMode? /* "all" | "local" | "disable" */ = null, + val comment_downvotes: RegistrationMode? /* "all" | "local" | "disable" */ = null, val disallow_nsfw_content: Boolean? = null, val disable_email_notifications: Boolean? = null, - val suggested_communities: MultiCommunityId? = null, + val suggested_multi_community_id: MultiCommunityId? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UpdateTagline.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditTagline.kt similarity index 81% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UpdateTagline.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditTagline.kt index 4493957f..fea6d2b3 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UpdateTagline.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditTagline.kt @@ -3,7 +3,7 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes import kotlinx.serialization.Serializable @Serializable -internal data class UpdateTagline( +internal data class EditTagline( val id: TaglineId, val content: String, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UpdateTotp.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditTotp.kt similarity index 83% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UpdateTotp.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditTotp.kt index c801a4a3..13e48495 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UpdateTotp.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditTotp.kt @@ -3,7 +3,7 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes import kotlinx.serialization.Serializable @Serializable -internal data class UpdateTotp( +internal data class EditTotp( val totp_token: String, val enabled: Boolean, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UpdateTotpResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditTotpResponse.kt similarity index 77% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UpdateTotpResponse.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditTotpResponse.kt index a56646e1..ff04e5d8 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UpdateTotpResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditTotpResponse.kt @@ -3,6 +3,6 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes import kotlinx.serialization.Serializable @Serializable -internal data class UpdateTotpResponse( +internal data class EditTotpResponse( val enabled: Boolean, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/FeaturePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/FeaturePost.kt index 5ce35d64..7a76da5a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/FeaturePost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/FeaturePost.kt @@ -7,5 +7,5 @@ import kotlinx.serialization.Serializable internal data class FeaturePost( val post_id: PostId, val featured: Boolean, - val feature_type: PostFeatureType /* "Local" | "Community" */, + val feature_type: PostFeatureType /* "local" | "community" */, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/FederatedInstanceView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/FederatedInstanceView.kt new file mode 100644 index 00000000..bd61f4ed --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/FederatedInstanceView.kt @@ -0,0 +1,12 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class FederatedInstanceView( + val instance: Instance, + val site: Site? = null, + val queue_state: FederationQueueState? = null, + val blocked: FederationBlockList? = null, + val allowed: FederationAllowList? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/FederatedInstances.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/FederatedInstances.kt deleted file mode 100644 index e057f007..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/FederatedInstances.kt +++ /dev/null @@ -1,10 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class FederatedInstances( - val linked: List, - val allowed: List, - val blocked: List, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePerson.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/FederationAllowList.kt similarity index 52% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePerson.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/FederationAllowList.kt index 42824095..99cc1c47 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminPurgePerson.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/FederationAllowList.kt @@ -3,9 +3,7 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes import kotlinx.serialization.Serializable @Serializable -internal data class AdminPurgePerson( - val id: AdminPurgePersonId, - val admin_person_id: PersonId, - val reason: String, +internal data class FederationAllowList( val published_at: String, + val updated_at: String? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/FederationBlockList.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/FederationBlockList.kt index 76aec696..34bcfab9 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/FederationBlockList.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/FederationBlockList.kt @@ -4,7 +4,6 @@ import kotlinx.serialization.Serializable @Serializable internal data class FederationBlockList( - val instance_id: InstanceId, val published_at: String, val updated_at: String? = null, val expires_at: String? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ReadableFederationState.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/FederationQueueState.kt similarity index 78% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ReadableFederationState.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/FederationQueueState.kt index aa458b31..bbd1eef4 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ReadableFederationState.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/FederationQueueState.kt @@ -3,8 +3,7 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes import kotlinx.serialization.Serializable @Serializable -internal data class ReadableFederationState( - val next_retry_at: String? = null, +internal data class FederationQueueState( val instance_id: InstanceId, val last_successful_id: ActivityId? = null, val last_successful_published_time_at: String? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetComments.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetComments.kt index 289e58b0..06e725ee 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetComments.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetComments.kt @@ -6,12 +6,11 @@ import kotlinx.serialization.Serializable @Serializable internal data class GetComments( - val type_: ListingType? /* "All" | "Local" | "Subscribed" | "ModeratorView" | "Suggested" */ = null, - val sort: CommentSortType? /* "Hot" | "Top" | "New" | "Old" | "Controversial" */ = null, + val type_: ListingType? /* "all" | "local" | "subscribed" | "moderator_view" | "suggested" */ = null, + val sort: CommentSortType? /* "hot" | "top" | "new" | "old" | "controversial" */ = null, val time_range_seconds: Long? = null, val max_depth: Long? = null, val page_cursor: PaginationCursor? = null, - val page_back: Boolean? = null, val limit: Long? = null, val community_id: CommunityId? = null, val community_name: String? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetCommentsResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetCommentsResponse.kt deleted file mode 100644 index bd21e883..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetCommentsResponse.kt +++ /dev/null @@ -1,10 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class GetCommentsResponse( - val comments: List, - val next_page: PaginationCursor? = null, - val prev_page: PaginationCursor? = null, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetCommentsSlimResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetCommentsSlimResponse.kt deleted file mode 100644 index 59b2d2ac..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetCommentsSlimResponse.kt +++ /dev/null @@ -1,10 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class GetCommentsSlimResponse( - val comments: List, - val next_page: PaginationCursor? = null, - val prev_page: PaginationCursor? = null, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetFederatedInstances.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetFederatedInstances.kt new file mode 100644 index 00000000..b1c02175 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetFederatedInstances.kt @@ -0,0 +1,12 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import it.vercruysse.lemmyapi.enums.GetFederatedInstancesKind +import kotlinx.serialization.Serializable + +@Serializable +internal data class GetFederatedInstances( + val domain_filter: String? = null, + val kind: GetFederatedInstancesKind /* "all" | "linked" | "allowed" | "blocked" */, + val page_cursor: PaginationCursor? = null, + val limit: Long? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetFederatedInstancesResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetFederatedInstancesResponse.kt deleted file mode 100644 index 72f8d6fc..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetFederatedInstancesResponse.kt +++ /dev/null @@ -1,8 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class GetFederatedInstancesResponse( - val federated_instances: FederatedInstances? = null, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetModlog.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetModlog.kt index 5e91abc5..fbcb0808 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetModlog.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetModlog.kt @@ -8,12 +8,11 @@ import kotlinx.serialization.Serializable internal data class GetModlog( val mod_person_id: PersonId? = null, val community_id: CommunityId? = null, - val type_: ModlogActionType? /* "All" | "ModRemovePost" | "ModLockPost" | "ModFeaturePost" | "ModRemoveComment" | "ModLockComment" | "AdminRemoveCommunity" | "ModBanFromCommunity" | "ModAddToCommunity" | "ModTransferCommunity" | "AdminAdd" | "AdminBan" | "ModChangeCommunityVisibility" | "AdminPurgePerson" | "AdminPurgeCommunity" | "AdminPurgePost" | "AdminPurgeComment" | "AdminBlockInstance" | "AdminAllowInstance" */ = null, - val listing_type: ListingType? /* "All" | "Local" | "Subscribed" | "ModeratorView" | "Suggested" */ = null, + val type_: ModlogActionType? /* "all" | "admin_add" | "admin_ban" | "admin_allow_instance" | "admin_block_instance" | "admin_purge_comment" | "admin_purge_community" | "admin_purge_person" | "admin_purge_post" | "mod_add_to_community" | "mod_ban_from_community" | "admin_feature_post_site" | "mod_feature_post_community" | "mod_change_community_visibility" | "mod_lock_post" | "mod_remove_comment" | "admin_remove_community" | "mod_remove_post" | "mod_transfer_community" | "mod_lock_comment" | "mod_warn_comment" | "mod_warn_post" */ = null, + val listing_type: ListingType? /* "all" | "local" | "subscribed" | "moderator_view" | "suggested" */ = null, val other_person_id: PersonId? = null, val post_id: PostId? = null, val comment_id: CommentId? = null, val page_cursor: PaginationCursor? = null, - val page_back: Boolean? = null, val limit: Long? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetModlogResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetModlogResponse.kt deleted file mode 100644 index 83b62a27..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetModlogResponse.kt +++ /dev/null @@ -1,11 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import it.vercruysse.lemmyapi.v1.x0.x0.combinedtypes.ModlogCombinedView -import kotlinx.serialization.Serializable - -@Serializable -internal data class GetModlogResponse( - val modlog: List, - val next_page: PaginationCursor? = null, - val prev_page: PaginationCursor? = null, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetMultiCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetMultiCommunity.kt index 9f09b0c0..07148734 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetMultiCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetMultiCommunity.kt @@ -4,5 +4,6 @@ import kotlinx.serialization.Serializable @Serializable internal data class GetMultiCommunity( - val id: MultiCommunityId, + val id: MultiCommunityId? = null, + val name: String? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetPersonDetailsResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetPersonDetailsResponse.kt index d87b4d33..0a5f8d7e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetPersonDetailsResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetPersonDetailsResponse.kt @@ -7,4 +7,5 @@ internal data class GetPersonDetailsResponse( val person_view: PersonView, val site: Site? = null, val moderates: List, + val multi_communities_created: List, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetPosts.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetPosts.kt index fc4781fe..904dbf91 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetPosts.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetPosts.kt @@ -6,12 +6,13 @@ import kotlinx.serialization.Serializable @Serializable internal data class GetPosts( - val type_: ListingType? /* "All" | "Local" | "Subscribed" | "ModeratorView" | "Suggested" */ = null, - val sort: SortType? /* "Active" | "Hot" | "New" | "Old" | "Top" | "MostComments" | "NewComments" | "Controversial" | "Scaled" */ = null, + val type_: ListingType? /* "all" | "local" | "subscribed" | "moderator_view" | "suggested" */ = null, + val sort: SortType? /* "active" | "hot" | "new" | "old" | "top" | "most_comments" | "new_comments" | "controversial" | "scaled" */ = null, val time_range_seconds: Long? = null, val community_id: CommunityId? = null, val community_name: String? = null, val multi_community_id: MultiCommunityId? = null, + val multi_community_name: String? = null, val show_hidden: Boolean? = null, val show_read: Boolean? = null, val show_nsfw: Boolean? = null, @@ -19,6 +20,5 @@ internal data class GetPosts( val mark_as_read: Boolean? = null, val no_comments_only: Boolean? = null, val page_cursor: PaginationCursor? = null, - val page_back: Boolean? = null, val limit: Long? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetRandomCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetRandomCommunity.kt index ae78a033..019dd9b7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetRandomCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetRandomCommunity.kt @@ -5,6 +5,6 @@ import kotlinx.serialization.Serializable @Serializable internal data class GetRandomCommunity( - val type_: ListingType? /* "All" | "Local" | "Subscribed" | "ModeratorView" | "Suggested" */ = null, + val type_: ListingType? /* "all" | "local" | "subscribed" | "moderator_view" | "suggested" */ = null, val show_nsfw: Boolean? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetReportCount.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetReportCount.kt deleted file mode 100644 index f875770f..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetReportCount.kt +++ /dev/null @@ -1,8 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class GetReportCount( - val community_id: CommunityId? = null, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetReportCountResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetReportCountResponse.kt deleted file mode 100644 index aae9a3c6..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetReportCountResponse.kt +++ /dev/null @@ -1,8 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class GetReportCountResponse( - val count: Long, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetSiteResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetSiteResponse.kt index 3852de89..a54219c8 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetSiteResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetSiteResponse.kt @@ -11,8 +11,9 @@ internal data class GetSiteResponse( val discussion_languages: List, val tagline: Tagline? = null, val oauth_providers: List, - val admin_oauth_providers: List, + val admin_oauth_providers: List, val blocked_urls: List, val image_upload_disabled: Boolean, val active_plugins: List, + val last_application_duration_seconds: Long? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetUnreadCountResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetUnreadCountResponse.kt deleted file mode 100644 index 39dcf2ba..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetUnreadCountResponse.kt +++ /dev/null @@ -1,8 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class GetUnreadCountResponse( - val count: Long, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetUnreadRegistrationApplicationCountResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetUnreadRegistrationApplicationCountResponse.kt deleted file mode 100644 index 0dbd59e5..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetUnreadRegistrationApplicationCountResponse.kt +++ /dev/null @@ -1,8 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class GetUnreadRegistrationApplicationCountResponse( - val registration_applications: Long, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/InstanceWithFederationState.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/InstanceWithFederationState.kt deleted file mode 100644 index f7f5d6b7..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/InstanceWithFederationState.kt +++ /dev/null @@ -1,14 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class InstanceWithFederationState( - val federation_state: ReadableFederationState? = null, - val id: InstanceId, - val domain: String, - val published_at: String, - val updated_at: String? = null, - val software: String? = null, - val version: String? = null, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommentLikes.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommentLikes.kt index c44946f0..cf66d0a8 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommentLikes.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommentLikes.kt @@ -6,6 +6,5 @@ import kotlinx.serialization.Serializable internal data class ListCommentLikes( val comment_id: CommentId, val page_cursor: PaginationCursor? = null, - val page_back: Boolean? = null, val limit: Long? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommentLikesResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommentLikesResponse.kt deleted file mode 100644 index 4c414960..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommentLikesResponse.kt +++ /dev/null @@ -1,10 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class ListCommentLikesResponse( - val comment_likes: List, - val next_page: PaginationCursor? = null, - val prev_page: PaginationCursor? = null, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommunities.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommunities.kt index 4bef5ae6..46e5c163 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommunities.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommunities.kt @@ -6,11 +6,10 @@ import kotlinx.serialization.Serializable @Serializable internal data class ListCommunities( - val type_: ListingType? /* "All" | "Local" | "Subscribed" | "ModeratorView" | "Suggested" */ = null, - val sort: SortType? /* "ActiveSixMonths" | "ActiveMonthly" | "ActiveWeekly" | "ActiveDaily" | "Hot" | "New" | "Old" | "NameAsc" | "NameDesc" | "Comments" | "Posts" | "Subscribers" | "SubscribersLocal" */ = null, + val type_: ListingType? /* "all" | "local" | "subscribed" | "moderator_view" | "suggested" */ = null, + val sort: SortType? /* "active_six_months" | "active_monthly" | "active_weekly" | "active_daily" | "hot" | "new" | "old" | "name_asc" | "name_desc" | "comments" | "posts" | "subscribers" | "subscribers_local" */ = null, val time_range_seconds: Long? = null, val show_nsfw: Boolean? = null, val page_cursor: PaginationCursor? = null, - val page_back: Boolean? = null, val limit: Long? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommunitiesResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommunitiesResponse.kt deleted file mode 100644 index 30d712d6..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommunitiesResponse.kt +++ /dev/null @@ -1,10 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class ListCommunitiesResponse( - val communities: List, - val next_page: PaginationCursor? = null, - val prev_page: PaginationCursor? = null, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommunityPendingFollows.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommunityPendingFollows.kt index d6bf00b7..650cb445 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommunityPendingFollows.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommunityPendingFollows.kt @@ -4,9 +4,8 @@ import kotlinx.serialization.Serializable @Serializable internal data class ListCommunityPendingFollows( - val pending_only: Boolean? = null, + val unread_only: Boolean? = null, val all_communities: Boolean? = null, val page_cursor: PaginationCursor? = null, - val page_back: Boolean? = null, val limit: Long? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommunityPendingFollowsResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommunityPendingFollowsResponse.kt index 917e6f41..bdf49489 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommunityPendingFollowsResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommunityPendingFollowsResponse.kt @@ -1,10 +1,13 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes +package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable +@CommonParcelize @Serializable -internal data class ListCommunityPendingFollowsResponse( +data class ListCommunityPendingFollowsResponse( val items: List, val next_page: PaginationCursor? = null, val prev_page: PaginationCursor? = null, -) +): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListMedia.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListMedia.kt index 7ff104e6..9ab2ad02 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListMedia.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListMedia.kt @@ -5,6 +5,5 @@ import kotlinx.serialization.Serializable @Serializable internal data class ListMedia( val page_cursor: PaginationCursor? = null, - val page_back: Boolean? = null, val limit: Long? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListMediaResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListMediaResponse.kt deleted file mode 100644 index 77650509..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListMediaResponse.kt +++ /dev/null @@ -1,10 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class ListMediaResponse( - val images: List, - val next_page: PaginationCursor? = null, - val prev_page: PaginationCursor? = null, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListMultiCommunities.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListMultiCommunities.kt index ad84799b..a8286fc2 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListMultiCommunities.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListMultiCommunities.kt @@ -1,9 +1,16 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes +import it.vercruysse.lemmyapi.dto.ListingType +import it.vercruysse.lemmyapi.enums.MultiCommunityListingType import kotlinx.serialization.Serializable @Serializable internal data class ListMultiCommunities( + val type_: MultiCommunityListingType? /* "all" | "local" | "subscribed" */ = null, + // TODO: custom sort type + val sort: String? /* "new" | "old" | "name_asc" | "name_desc" | "communities" | "subscribers" | "subscribers_local" */ = null, val creator_id: PersonId? = null, - val followed_only: Boolean? = null, + val time_range_seconds: Long? = null, + val page_cursor: PaginationCursor? = null, + val limit: Long? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListMultiCommunitiesResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListMultiCommunitiesResponse.kt deleted file mode 100644 index 835037ab..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListMultiCommunitiesResponse.kt +++ /dev/null @@ -1,8 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class ListMultiCommunitiesResponse( - val multi_communities: List, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListNotifications.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListNotifications.kt index 9b149e79..c09d3fd1 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListNotifications.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListNotifications.kt @@ -5,9 +5,8 @@ import kotlinx.serialization.Serializable @Serializable internal data class ListNotifications( - val type_: NotificationDataType? /* "All" | "Reply" | "Mention" | "PrivateMessage" | "Subscribed" */ = null, + val type_: NotificationDataType? /* "all" | "mention" | "reply" | "subscribed" | "private_message" | "mod_action" */ = null, val unread_only: Boolean? = null, val page_cursor: PaginationCursor? = null, - val page_back: Boolean? = null, val limit: Long? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListNotificationsResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListNotificationsResponse.kt deleted file mode 100644 index b4585373..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListNotificationsResponse.kt +++ /dev/null @@ -1,10 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class ListNotificationsResponse( - val notifications: List, - val next_page: PaginationCursor? = null, - val prev_page: PaginationCursor? = null, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonContent.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonContent.kt index 3a063196..95d98157 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonContent.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonContent.kt @@ -1,14 +1,13 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -import it.vercruysse.lemmyapi.dto.ListingType import kotlinx.serialization.Serializable @Serializable internal data class ListPersonContent( - val type_: ListingType? /* "All" | "Comments" | "Posts" */ = null, + // TODO: custom enum + val type_: String? /* "all" | "comments" | "posts" */ = null, val person_id: PersonId? = null, val username: String? = null, val page_cursor: PaginationCursor? = null, - val page_back: Boolean? = null, val limit: Long? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonContentResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonContentResponse.kt deleted file mode 100644 index e89806a3..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonContentResponse.kt +++ /dev/null @@ -1,11 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import it.vercruysse.lemmyapi.v1.x0.x0.combinedtypes.PersonContentCombinedView -import kotlinx.serialization.Serializable - -@Serializable -internal data class ListPersonContentResponse( - val content: List, - val next_page: PaginationCursor? = null, - val prev_page: PaginationCursor? = null, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonHidden.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonHidden.kt index 11e9e55b..a56d8f7d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonHidden.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonHidden.kt @@ -5,6 +5,5 @@ import kotlinx.serialization.Serializable @Serializable internal data class ListPersonHidden( val page_cursor: PaginationCursor? = null, - val page_back: Boolean? = null, val limit: Long? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonHiddenResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonHiddenResponse.kt deleted file mode 100644 index 05fbb2df..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonHiddenResponse.kt +++ /dev/null @@ -1,10 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class ListPersonHiddenResponse( - val hidden: List, - val next_page: PaginationCursor? = null, - val prev_page: PaginationCursor? = null, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonLiked.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonLiked.kt index 131c30a9..3f7f63a0 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonLiked.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonLiked.kt @@ -1,14 +1,11 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -import it.vercruysse.lemmyapi.dto.LikeType -import it.vercruysse.lemmyapi.dto.ListingType import kotlinx.serialization.Serializable @Serializable internal data class ListPersonLiked( - val type_: ListingType? /* "All" | "Comments" | "Posts" */ = null, - val like_type: LikeType? /* "All" | "LikedOnly" | "DislikedOnly" */ = null, + val type_: String? /* "all" | "comments" | "posts" */ = null, + val like_type: String? /* "all" | "liked_only" | "disliked_only" */ = null, val page_cursor: PaginationCursor? = null, - val page_back: Boolean? = null, val limit: Long? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonLikedResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonLikedResponse.kt deleted file mode 100644 index 25a1cd1b..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonLikedResponse.kt +++ /dev/null @@ -1,11 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import it.vercruysse.lemmyapi.v1.x0.x0.combinedtypes.PersonLikedCombinedView -import kotlinx.serialization.Serializable - -@Serializable -internal data class ListPersonLikedResponse( - val liked: List, - val next_page: PaginationCursor? = null, - val prev_page: PaginationCursor? = null, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonRead.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonRead.kt index 555b7eb7..2e5156a7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonRead.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonRead.kt @@ -5,6 +5,5 @@ import kotlinx.serialization.Serializable @Serializable internal data class ListPersonRead( val page_cursor: PaginationCursor? = null, - val page_back: Boolean? = null, val limit: Long? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonReadResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonReadResponse.kt deleted file mode 100644 index 59ac1d96..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonReadResponse.kt +++ /dev/null @@ -1,10 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class ListPersonReadResponse( - val read: List, - val next_page: PaginationCursor? = null, - val prev_page: PaginationCursor? = null, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonSaved.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonSaved.kt index 8a726d0e..70a32e33 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonSaved.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonSaved.kt @@ -1,12 +1,11 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -import it.vercruysse.lemmyapi.dto.ListingType import kotlinx.serialization.Serializable @Serializable internal data class ListPersonSaved( - val type_: ListingType? /* "All" | "Comments" | "Posts" */ = null, + // TODO: enum + val type_: String? /* "all" | "comments" | "posts" */ = null, val page_cursor: PaginationCursor? = null, - val page_back: Boolean? = null, val limit: Long? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonSavedResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonSavedResponse.kt deleted file mode 100644 index 19dba5fc..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonSavedResponse.kt +++ /dev/null @@ -1,11 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import it.vercruysse.lemmyapi.v1.x0.x0.combinedtypes.PersonSavedCombinedView -import kotlinx.serialization.Serializable - -@Serializable -internal data class ListPersonSavedResponse( - val saved: List, - val next_page: PaginationCursor? = null, - val prev_page: PaginationCursor? = null, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPostLikes.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPostLikes.kt index bd95e296..e78917c8 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPostLikes.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPostLikes.kt @@ -6,6 +6,5 @@ import kotlinx.serialization.Serializable internal data class ListPostLikes( val post_id: PostId, val page_cursor: PaginationCursor? = null, - val page_back: Boolean? = null, val limit: Long? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPostLikesResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPostLikesResponse.kt deleted file mode 100644 index 340708a1..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPostLikesResponse.kt +++ /dev/null @@ -1,10 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class ListPostLikesResponse( - val post_likes: List, - val next_page: PaginationCursor? = null, - val prev_page: PaginationCursor? = null, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListRegistrationApplications.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListRegistrationApplications.kt index d3a004ec..b2e31a83 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListRegistrationApplications.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListRegistrationApplications.kt @@ -6,6 +6,5 @@ import kotlinx.serialization.Serializable internal data class ListRegistrationApplications( val unread_only: Boolean? = null, val page_cursor: PaginationCursor? = null, - val page_back: Boolean? = null, val limit: Long? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListRegistrationApplicationsResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListRegistrationApplicationsResponse.kt deleted file mode 100644 index 46d81ce9..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListRegistrationApplicationsResponse.kt +++ /dev/null @@ -1,10 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class ListRegistrationApplicationsResponse( - val registration_applications: List, - val next_page: PaginationCursor? = null, - val prev_page: PaginationCursor? = null, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListReports.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListReports.kt index 44fcb12f..7f94434e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListReports.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListReports.kt @@ -6,11 +6,10 @@ import kotlinx.serialization.Serializable @Serializable internal data class ListReports( val unresolved_only: Boolean? = null, - val type_: ReportType? /* "All" | "Posts" | "Comments" | "PrivateMessages" | "Communities" */ = null, + val type_: ReportType? /* "all" | "posts" | "comments" | "private_messages" | "communities" */ = null, val post_id: PostId? = null, val community_id: CommunityId? = null, val page_cursor: PaginationCursor? = null, - val page_back: Boolean? = null, val limit: Long? = null, val show_community_rule_violations: Boolean? = null, val my_reports_only: Boolean? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListReportsResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListReportsResponse.kt deleted file mode 100644 index 4de85597..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListReportsResponse.kt +++ /dev/null @@ -1,11 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import it.vercruysse.lemmyapi.v1.x0.x0.combinedtypes.ReportCombinedView -import kotlinx.serialization.Serializable - -@Serializable -internal data class ListReportsResponse( - val reports: List, - val next_page: PaginationCursor? = null, - val prev_page: PaginationCursor? = null, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListTaglines.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListTaglines.kt index ac0564d0..ab2374dc 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListTaglines.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListTaglines.kt @@ -5,6 +5,5 @@ import kotlinx.serialization.Serializable @Serializable internal data class ListTaglines( val page_cursor: PaginationCursor? = null, - val page_back: Boolean? = null, val limit: Long? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListTaglinesResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListTaglinesResponse.kt deleted file mode 100644 index 217e2677..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListTaglinesResponse.kt +++ /dev/null @@ -1,10 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class ListTaglinesResponse( - val taglines: List, - val next_page: PaginationCursor? = null, - val prev_page: PaginationCursor? = null, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSite.kt index cac0796d..91cc3cfd 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSite.kt @@ -17,7 +17,7 @@ internal data class LocalSite( val application_question: String? = null, val private_instance: Boolean, val default_theme: String, - val default_post_listing_type: ListingType /* "All" | "Local" | "Subscribed" | "ModeratorView" | "Suggested" */, + val default_post_listing_type: ListingType /* "all" | "local" | "subscribed" | "moderator_view" | "suggested" */, val legal_information: String? = null, val application_email_admins: Boolean, val slur_filter_regex: String? = null, @@ -26,17 +26,17 @@ internal data class LocalSite( val captcha_difficulty: String, val published_at: String, val updated_at: String? = null, - val registration_mode: RegistrationMode /* "Closed" | "RequireApplication" | "Open" */, + val registration_mode: RegistrationMode /* "closed" | "require_application" | "open" */, val reports_email_admins: Boolean, val federation_signed_fetch: Boolean, - val default_post_listing_mode: PostListingMode /* "List" | "Card" | "SmallCard" */, - val default_post_sort_type: SortType /* "Active" | "Hot" | "New" | "Old" | "Top" | "MostComments" | "NewComments" | "Controversial" | "Scaled" */, - val default_comment_sort_type: SortType /* "Hot" | "Top" | "New" | "Old" | "Controversial" */, + val default_post_listing_mode: PostListingMode /* "list" | "card" | "small_card" */, + val default_post_sort_type: SortType /* "active" | "hot" | "new" | "old" | "top" | "most_comments" | "new_comments" | "controversial" | "scaled" */, + val default_comment_sort_type: SortType /* "hot" | "top" | "new" | "old" | "controversial" */, val oauth_registration: Boolean, - val post_upvotes: FederationMode /* "All" | "Local" | "Disable" */, - val post_downvotes: FederationMode /* "All" | "Local" | "Disable" */, - val comment_upvotes: FederationMode /* "All" | "Local" | "Disable" */, - val comment_downvotes: FederationMode /* "All" | "Local" | "Disable" */, + val post_upvotes: FederationMode /* "all" | "local" | "disable" */, + val post_downvotes: FederationMode /* "all" | "local" | "disable" */, + val comment_upvotes: FederationMode /* "all" | "local" | "disable" */, + val comment_downvotes: FederationMode /* "all" | "local" | "disable" */, val default_post_time_range_seconds: Long? = null, val disallow_nsfw_content: Boolean, val users: Long, @@ -48,6 +48,6 @@ internal data class LocalSite( val users_active_month: Long, val users_active_half_year: Long, val disable_email_notifications: Boolean, - val suggested_communities: MultiCommunityId? = null, + val suggested_multi_community_id: MultiCommunityId? = null, val default_items_per_page: Long, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUser.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUser.kt index f4aeb9e1..43c9c537 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUser.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUser.kt @@ -3,6 +3,7 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes import it.vercruysse.lemmyapi.dto.PostListingMode import it.vercruysse.lemmyapi.dto.ListingType import it.vercruysse.lemmyapi.dto.SortType +import it.vercruysse.lemmyapi.dto.VoteShow import kotlinx.serialization.Serializable @Serializable @@ -12,8 +13,8 @@ internal data class LocalUser( val email: SensitiveString? = null, val show_nsfw: Boolean, val theme: String, - val default_post_sort_type: SortType /* "Active" | "Hot" | "New" | "Old" | "Top" | "MostComments" | "NewComments" | "Controversial" | "Scaled" */, - val default_listing_type: ListingType /* "All" | "Local" | "Subscribed" | "ModeratorView" | "Suggested" */, + val default_post_sort_type: SortType /* "active" | "hot" | "new" | "old" | "top" | "most_comments" | "new_comments" | "controversial" | "scaled" */, + val default_listing_type: ListingType /* "all" | "local" | "subscribed" | "moderator_view" | "suggested" */, val interface_language: String, val show_avatars: Boolean, val send_notifications_to_email: Boolean, @@ -25,20 +26,19 @@ internal data class LocalUser( val blur_nsfw: Boolean, val infinite_scroll_enabled: Boolean, val admin: Boolean, - val post_listing_mode: PostListingMode /* "List" | "Card" | "SmallCard" */, + val post_listing_mode: PostListingMode /* "list" | "card" | "small_card" */, val totp_2fa_enabled: Boolean, - val enable_keyboard_navigation: Boolean, val enable_animated_images: Boolean, val collapse_bot_comments: Boolean, val last_donation_notification_at: String, val enable_private_messages: Boolean, - val default_comment_sort_type: SortType /* "Hot" | "Top" | "New" | "Old" | "Controversial" */, + val default_comment_sort_type: SortType /* "hot" | "top" | "new" | "old" | "controversial" */, val auto_mark_fetched_posts_as_read: Boolean, val hide_media: Boolean, val default_post_time_range_seconds: Long? = null, val show_score: Boolean, val show_upvotes: Boolean, - val show_downvotes: String /* "Show" | "ShowForOthers" | "Hide" */, + val show_downvotes: VoteShow /* "show" | "show_for_others" | "hide" */, val show_upvote_percentage: Boolean, val show_person_votes: Boolean, val default_items_per_page: Long, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Login.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Login.kt index d5da4fb5..cb815c1a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Login.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Login.kt @@ -7,4 +7,5 @@ internal data class Login( val username_or_email: SensitiveString, val password: SensitiveString, val totp_2fa_token: String? = null, + val stay_logged_in: Boolean? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MarkManyPostsAsRead.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MarkManyPostsAsRead.kt index 8f9bd706..ca127b27 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MarkManyPostsAsRead.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MarkManyPostsAsRead.kt @@ -5,5 +5,5 @@ import kotlinx.serialization.Serializable @Serializable internal data class MarkManyPostsAsRead( val post_ids: List, - val read: Boolean + val read: Boolean, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddToCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddToCommunity.kt deleted file mode 100644 index e44815aa..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddToCommunity.kt +++ /dev/null @@ -1,13 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class ModAddToCommunity( - val id: ModAddToCommunityId, - val mod_person_id: PersonId, - val other_person_id: PersonId, - val community_id: CommunityId, - val removed: Boolean, - val published_at: String, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddToCommunityId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddToCommunityId.kt deleted file mode 100644 index 543f9af0..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddToCommunityId.kt +++ /dev/null @@ -1,3 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -internal typealias ModAddToCommunityId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddToCommunityView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddToCommunityView.kt deleted file mode 100644 index 782c4da0..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModAddToCommunityView.kt +++ /dev/null @@ -1,11 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class ModAddToCommunityView( - val mod_add_to_community: ModAddToCommunity, - val moderator: Person? = null, - val community: Community, - val other_person: Person, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanFromCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanFromCommunity.kt deleted file mode 100644 index 834d12f9..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanFromCommunity.kt +++ /dev/null @@ -1,15 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class ModBanFromCommunity( - val id: ModBanFromCommunityId, - val mod_person_id: PersonId, - val other_person_id: PersonId, - val community_id: CommunityId, - val reason: String, - val banned: Boolean, - val expires_at: String? = null, - val published_at: String, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanFromCommunityId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanFromCommunityId.kt deleted file mode 100644 index 2408402f..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanFromCommunityId.kt +++ /dev/null @@ -1,3 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -internal typealias ModBanFromCommunityId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanFromCommunityView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanFromCommunityView.kt deleted file mode 100644 index 7640916f..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModBanFromCommunityView.kt +++ /dev/null @@ -1,11 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class ModBanFromCommunityView( - val mod_ban_from_community: ModBanFromCommunity, - val moderator: Person? = null, - val community: Community, - val other_person: Person, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModChangeCommunityVisibility.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModChangeCommunityVisibility.kt deleted file mode 100644 index 939e2e9c..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModChangeCommunityVisibility.kt +++ /dev/null @@ -1,13 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import it.vercruysse.lemmyapi.dto.CommunityVisibility -import kotlinx.serialization.Serializable - -@Serializable -internal data class ModChangeCommunityVisibility( - val id: ModChangeCommunityVisibilityId, - val community_id: CommunityId, - val mod_person_id: PersonId, - val published_at: String, - val visibility: CommunityVisibility /* "Public" | "Unlisted" | "LocalOnlyPublic" | "LocalOnlyPrivate" | "Private" */, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModChangeCommunityVisibilityId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModChangeCommunityVisibilityId.kt deleted file mode 100644 index 08b7d005..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModChangeCommunityVisibilityId.kt +++ /dev/null @@ -1,3 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -internal typealias ModChangeCommunityVisibilityId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModChangeCommunityVisibilityView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModChangeCommunityVisibilityView.kt deleted file mode 100644 index 15cc9699..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModChangeCommunityVisibilityView.kt +++ /dev/null @@ -1,10 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class ModChangeCommunityVisibilityView( - val mod_change_community_visibility: ModChangeCommunityVisibility, - val moderator: Person? = null, - val community: Community, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModEditPost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModEditPost.kt index 69654dd8..36f5a6fb 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModEditPost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModEditPost.kt @@ -6,5 +6,5 @@ import kotlinx.serialization.Serializable internal data class ModEditPost( val post_id: PostId, val nsfw: Boolean? = null, - val tags: List? = null, + val tags: List? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModFeaturePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModFeaturePost.kt deleted file mode 100644 index 816baf99..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModFeaturePost.kt +++ /dev/null @@ -1,13 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class ModFeaturePost( - val id: ModFeaturePostId, - val mod_person_id: PersonId, - val post_id: PostId, - val featured: Boolean, - val published_at: String, - val is_featured_community: Boolean, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModFeaturePostId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModFeaturePostId.kt deleted file mode 100644 index b9ce8874..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModFeaturePostId.kt +++ /dev/null @@ -1,3 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -internal typealias ModFeaturePostId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModFeaturePostView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModFeaturePostView.kt deleted file mode 100644 index 5805a311..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModFeaturePostView.kt +++ /dev/null @@ -1,12 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class ModFeaturePostView( - val mod_feature_post: ModFeaturePost, - val moderator: Person? = null, - val other_person: Person, - val post: Post, - val community: Community, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockCommentId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockCommentId.kt deleted file mode 100644 index c8e118dc..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockCommentId.kt +++ /dev/null @@ -1,3 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -internal typealias ModLockCommentId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockCommentView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockCommentView.kt deleted file mode 100644 index 841c290a..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockCommentView.kt +++ /dev/null @@ -1,13 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class ModLockCommentView( - val mod_lock_comment: ModLockComment, - val moderator: Person? = null, - val other_person: Person, - val comment: Comment, - val post: Post, - val community: Community, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockPost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockPost.kt deleted file mode 100644 index 1cffab17..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockPost.kt +++ /dev/null @@ -1,13 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class ModLockPost( - val id: ModLockPostId, - val mod_person_id: PersonId, - val post_id: PostId, - val locked: Boolean, - val published_at: String, - val reason: String, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockPostId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockPostId.kt deleted file mode 100644 index e1999e72..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockPostId.kt +++ /dev/null @@ -1,3 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -internal typealias ModLockPostId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockPostView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockPostView.kt deleted file mode 100644 index 0a26b344..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModLockPostView.kt +++ /dev/null @@ -1,12 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class ModLockPostView( - val mod_lock_post: ModLockPost, - val moderator: Person? = null, - val other_person: Person, - val post: Post, - val community: Community, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveComment.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveComment.kt deleted file mode 100644 index a989830f..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveComment.kt +++ /dev/null @@ -1,13 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class ModRemoveComment( - val id: ModRemoveCommentId, - val mod_person_id: PersonId, - val comment_id: CommentId, - val reason: String, - val removed: Boolean, - val published_at: String, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveCommentId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveCommentId.kt deleted file mode 100644 index 62777bdd..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveCommentId.kt +++ /dev/null @@ -1,3 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -internal typealias ModRemoveCommentId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveCommentView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveCommentView.kt deleted file mode 100644 index e5531307..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemoveCommentView.kt +++ /dev/null @@ -1,13 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class ModRemoveCommentView( - val mod_remove_comment: ModRemoveComment, - val moderator: Person? = null, - val other_person: Person, - val comment: Comment, - val post: Post, - val community: Community, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemovePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemovePost.kt deleted file mode 100644 index 21c814f7..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemovePost.kt +++ /dev/null @@ -1,13 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class ModRemovePost( - val id: ModRemovePostId, - val mod_person_id: PersonId, - val post_id: PostId, - val reason: String, - val removed: Boolean, - val published_at: String, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemovePostId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemovePostId.kt deleted file mode 100644 index 8346d797..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemovePostId.kt +++ /dev/null @@ -1,3 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -internal typealias ModRemovePostId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemovePostView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemovePostView.kt deleted file mode 100644 index 97a402f9..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModRemovePostView.kt +++ /dev/null @@ -1,12 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class ModRemovePostView( - val mod_remove_post: ModRemovePost, - val moderator: Person? = null, - val other_person: Person, - val post: Post, - val community: Community, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModTransferCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModTransferCommunity.kt deleted file mode 100644 index 876709ba..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModTransferCommunity.kt +++ /dev/null @@ -1,12 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class ModTransferCommunity( - val id: ModTransferCommunityId, - val mod_person_id: PersonId, - val other_person_id: PersonId, - val community_id: CommunityId, - val published_at: String, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModTransferCommunityId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModTransferCommunityId.kt deleted file mode 100644 index c7a776d4..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModTransferCommunityId.kt +++ /dev/null @@ -1,3 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -internal typealias ModTransferCommunityId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModTransferCommunityView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModTransferCommunityView.kt deleted file mode 100644 index 6a97d32b..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModTransferCommunityView.kt +++ /dev/null @@ -1,11 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class ModTransferCommunityView( - val mod_transfer_community: ModTransferCommunity, - val moderator: Person? = null, - val community: Community, - val other_person: Person, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Modlog.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Modlog.kt new file mode 100644 index 00000000..fe28af11 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Modlog.kt @@ -0,0 +1,14 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import it.vercruysse.lemmyapi.enums.ModlogKind +import kotlinx.serialization.Serializable + +@Serializable +internal data class Modlog( + val id: ModlogId, + val kind: ModlogKind /* "admin_add" | "admin_ban" | "admin_allow_instance" | "admin_block_instance" | "admin_purge_comment" | "admin_purge_community" | "admin_purge_person" | "admin_purge_post" | "mod_add_to_community" | "mod_ban_from_community" | "admin_feature_post_site" | "mod_feature_post_community" | "mod_change_community_visibility" | "mod_lock_post" | "mod_remove_comment" | "admin_remove_community" | "mod_remove_post" | "mod_transfer_community" | "mod_lock_comment" | "mod_warn_comment" | "mod_warn_post" */, + val is_revert: Boolean, + val reason: String? = null, + val expires_at: String? = null, + val published_at: String, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/TagId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModlogId.kt similarity index 59% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/TagId.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModlogId.kt index 16be36e8..a618f6be 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/TagId.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModlogId.kt @@ -1,3 +1,3 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -internal typealias TagId = Long +internal typealias ModlogId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModlogView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModlogView.kt new file mode 100644 index 00000000..a1a7ca73 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModlogView.kt @@ -0,0 +1,14 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ModlogView( + val modlog: Modlog, + val moderator: Person? = null, + val target_person: Person? = null, + val target_instance: Instance? = null, + val target_community: Community? = null, + val target_post: Post? = null, + val target_comment: Comment? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MultiCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MultiCommunity.kt index e50adfdf..2d66576d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MultiCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MultiCommunity.kt @@ -9,10 +9,14 @@ internal data class MultiCommunity( val instance_id: InstanceId, val name: String, val title: String? = null, - val description: String? = null, + val summary: String? = null, val local: Boolean, val deleted: Boolean, val ap_id: DbUrl, + val last_refreshed_at: String, val published_at: String, val updated_at: String? = null, + val subscribers: Long, + val subscribers_local: Long, + val communities: Long, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetCommunityPendingFollowsCount.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MultiCommunityEntry.kt similarity index 62% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetCommunityPendingFollowsCount.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MultiCommunityEntry.kt index 8dc46707..76751b2f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetCommunityPendingFollowsCount.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MultiCommunityEntry.kt @@ -3,6 +3,7 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes import kotlinx.serialization.Serializable @Serializable -internal data class GetCommunityPendingFollowsCount( +internal data class MultiCommunityEntry( + val multi_community_id: MultiCommunityId, val community_id: CommunityId, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MultiCommunityFollow.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MultiCommunityFollow.kt index bb0990c8..719f6673 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MultiCommunityFollow.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MultiCommunityFollow.kt @@ -7,5 +7,5 @@ import kotlinx.serialization.Serializable internal data class MultiCommunityFollow( val multi_community_id: MultiCommunityId, val person_id: PersonId, - val follow_state: CommunityFollowerState /* "Accepted" | "Pending" | "ApprovalRequired" */, + val follow_state: CommunityFollowerState /* "accepted" | "pending" | "approval_required" | "denied" */, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetCommunityPendingFollowsCountResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MultiCommunityResponse.kt similarity index 53% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetCommunityPendingFollowsCountResponse.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MultiCommunityResponse.kt index b37859b1..03971f12 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetCommunityPendingFollowsCountResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MultiCommunityResponse.kt @@ -3,6 +3,6 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes import kotlinx.serialization.Serializable @Serializable -internal data class GetCommunityPendingFollowsCountResponse( - val count: Long, +internal data class MultiCommunityResponse( + val multi_community_view: MultiCommunityView, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MultiCommunityView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MultiCommunityView.kt index af54730a..81bb758d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MultiCommunityView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MultiCommunityView.kt @@ -1,9 +1,11 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes +import it.vercruysse.lemmyapi.dto.CommunityFollowerState import kotlinx.serialization.Serializable @Serializable internal data class MultiCommunityView( val multi: MultiCommunity, + val follow_state: CommunityFollowerState? /* "accepted" | "pending" | "approval_required" | "denied" */ = null, val owner: Person, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MyUserInfo.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MyUserInfo.kt index 23846845..0807f60f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MyUserInfo.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MyUserInfo.kt @@ -7,6 +7,7 @@ internal data class MyUserInfo( val local_user_view: LocalUserView, val follows: List, val moderates: List, + val multi_community_follows: List, val community_blocks: List, val instance_communities_blocks: List, val instance_persons_blocks: List, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Notification.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Notification.kt index db37cdc1..a5d7ae1a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Notification.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Notification.kt @@ -10,7 +10,8 @@ internal data class Notification( val comment_id: CommentId? = null, val read: Boolean, val published_at: String, - val kind: NotificationType /* "Mention" | "Reply" | "Subscribed" | "PrivateMessage" */, + val kind: NotificationType /* "mention" | "reply" | "subscribed" | "private_message" | "mod_action" */, val post_id: PostId? = null, val private_message_id: PrivateMessageId? = null, + val modlog_id: ModlogId? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetPostsResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PagedResponse.kt similarity index 74% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetPostsResponse.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PagedResponse.kt index d8e38532..8cbc8df6 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetPostsResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PagedResponse.kt @@ -3,8 +3,8 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes import kotlinx.serialization.Serializable @Serializable -internal data class GetPostsResponse( - val posts: List, +internal data class PagedResponse( + val items: List, val next_page: PaginationCursor? = null, val prev_page: PaginationCursor? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PendingFollow.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PendingFollow.kt index cbbea39d..703209c4 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PendingFollow.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PendingFollow.kt @@ -1,5 +1,6 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes +import it.vercruysse.lemmyapi.dto.CommunityFollowerState import kotlinx.serialization.Serializable @Serializable @@ -7,5 +8,5 @@ internal data class PendingFollow( val person: Person, val community: Community, val is_new_instance: Boolean, - val follow_state: String? /* "Accepted" | "Pending" | "ApprovalRequired" */ = null, + val follow_state: CommunityFollowerState? /* "accepted" | "pending" | "approval_required" | "denied" */ = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PendingFollowerView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PendingFollowerView.kt new file mode 100644 index 00000000..60725186 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PendingFollowerView.kt @@ -0,0 +1,12 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import it.vercruysse.lemmyapi.dto.CommunityFollowerState +import kotlinx.serialization.Serializable + +@Serializable +internal data class PendingFollowerView( + val person: Person, + val community: Community, + val is_new_instance: Boolean, + val follow_state: CommunityFollowerState? /* "accepted" | "pending" | "approval_required" | "denied" */ = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Person.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Person.kt index dfccfd38..ddc0c8fc 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Person.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Person.kt @@ -13,6 +13,7 @@ internal data class Person( val ap_id: DbUrl, val bio: String? = null, val local: Boolean, + val last_refreshed_at: String, val banner: DbUrl? = null, val deleted: Boolean, val matrix_user_id: String? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BanPersonResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonResponse.kt similarity index 69% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BanPersonResponse.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonResponse.kt index 24872c7a..094c4800 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/BanPersonResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonResponse.kt @@ -3,7 +3,6 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes import kotlinx.serialization.Serializable @Serializable -internal data class BanPersonResponse( +internal data class PersonResponse( val person_view: PersonView, - val banned: Boolean, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PluginMetadata.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PluginMetadata.kt index 347961f4..37c64e48 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PluginMetadata.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PluginMetadata.kt @@ -5,6 +5,6 @@ import kotlinx.serialization.Serializable @Serializable internal data class PluginMetadata( val name: String, - val url: String, - val description: String, + val url: String? = null, + val description: String? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Post.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Post.kt index c112c102..117579a6 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Post.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Post.kt @@ -28,11 +28,11 @@ internal data class Post( val url_content_type: String? = null, val alt_text: String? = null, val scheduled_publish_time_at: String? = null, + val newest_comment_time_at: String? = null, val comments: Long, val score: Long, val upvotes: Long, val downvotes: Long, - val newest_comment_time_at: String, val report_count: Long, val unresolved_report_count: Long, val federation_pending: Boolean, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostActions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostActions.kt index dfec232d..813b01d2 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostActions.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostActions.kt @@ -3,14 +3,16 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes import it.vercruysse.lemmyapi.dto.PostNotificationsMode import kotlinx.serialization.Serializable +// TODO: refactor + @Serializable internal data class PostActions( val read_at: String? = null, val read_comments_at: String? = null, - val read_comments_amount: Long? = null, val saved_at: String? = null, - val liked_at: String? = null, - val like_score: Int? = null, + val voted_at: String? = null, val hidden_at: String? = null, - val notifications: PostNotificationsMode? /* "AllComments" | "RepliesAndMentions" | "Mute" */ = null, + val read_comments_amount: Long? = null, + val vote_is_upvote: Boolean? = null, + val notifications: PostNotificationsMode? /* "all_comments" | "replies_and_mentions" | "mute" */ = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostReportView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostReportView.kt index e4b9c3cc..ffb9f9cc 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostReportView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostReportView.kt @@ -16,5 +16,7 @@ internal data class PostReportView( val creator_is_admin: Boolean, val creator_is_moderator: Boolean, val creator_banned: Boolean, + val creator_ban_expires_at: String? = null, val creator_banned_from_community: Boolean, + val creator_community_ban_expires_at: String? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostView.kt index 182299f4..62a2bc9a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostView.kt @@ -12,7 +12,7 @@ internal data class PostView( val person_actions: PersonActions? = null, val post_actions: PostActions? = null, val creator_is_admin: Boolean, - val tags: TagsView, + val tags: CommunityTagsView, val can_mod: Boolean, val creator_banned: Boolean, val creator_ban_expires_at: String? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessageReportView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessageReportView.kt index 1b51ba92..e45ae0f5 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessageReportView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessageReportView.kt @@ -11,4 +11,5 @@ internal data class PrivateMessageReportView( val resolver: Person? = null, val creator_is_admin: Boolean, val creator_banned: Boolean, + val creator_ban_expires_at: String? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PublicOAuthProvider.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PublicOAuthProvider.kt index 4f0cf388..20204115 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PublicOAuthProvider.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PublicOAuthProvider.kt @@ -1,3 +1,13 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -internal typealias PublicOAuthProvider = OAuthProvider +import kotlinx.serialization.Serializable + +@Serializable +internal data class PublicOAuthProvider( + val id: OAuthProviderId, + val display_name: String, + val authorization_endpoint: String, + val client_id: String, + val scopes: String, + val use_pkce: Boolean, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Register.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Register.kt index 29ed6ea7..4accdc6e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Register.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Register.kt @@ -13,4 +13,5 @@ internal data class Register( val captcha_answer: String? = null, val honeypot: String? = null, val answer: String? = null, + val stay_logged_in: Boolean? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RegistrationApplication.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RegistrationApplication.kt index ad8cb1d0..52c56acf 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RegistrationApplication.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RegistrationApplication.kt @@ -10,4 +10,5 @@ internal data class RegistrationApplication( val admin_id: PersonId? = null, val deny_reason: String? = null, val published_at: String, + val updated_at: String? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgeCommentView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ResolveObjectResponse.kt similarity index 52% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgeCommentView.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ResolveObjectResponse.kt index 4390155c..c31145ea 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminPurgeCommentView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ResolveObjectResponse.kt @@ -5,10 +5,13 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: is removed + @CommonParcelize @Serializable -data class AdminPurgeCommentView( - val admin_purge_comment: AdminPurgeComment, - val admin: Person? = null, - val post: Post, +data class ResolveObjectResponse( + val comment: CommentView? = null, + val post: PostView? = null, + val community: CommunityView? = null, + val person: PersonView? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SaveUserSettings.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SaveUserSettings.kt index 684aaab5..0ceab651 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SaveUserSettings.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SaveUserSettings.kt @@ -11,12 +11,12 @@ internal data class SaveUserSettings( val show_nsfw: Boolean? = null, val blur_nsfw: Boolean? = null, val theme: String? = null, - val default_listing_type: ListingType? /* "All" | "Local" | "Subscribed" | "ModeratorView" | "Suggested" */ = null, - val post_listing_mode: PostListingMode? /* "List" | "Card" | "SmallCard" */ = null, - val default_post_sort_type: SortType? /* "Active" | "Hot" | "New" | "Old" | "Top" | "MostComments" | "NewComments" | "Controversial" | "Scaled" */ = null, + val default_listing_type: ListingType? /* "all" | "local" | "subscribed" | "moderator_view" | "suggested" */ = null, + val post_listing_mode: PostListingMode? /* "list" | "card" | "small_card" */ = null, + val default_post_sort_type: SortType? /* "active" | "hot" | "new" | "old" | "top" | "most_comments" | "new_comments" | "controversial" | "scaled" */ = null, val default_post_time_range_seconds: Long? = null, val default_items_per_page: Long? = null, - val default_comment_sort_type: SortType? /* "Hot" | "Top" | "New" | "Old" | "Controversial" */ = null, + val default_comment_sort_type: SortType? /* "hot" | "top" | "new" | "old" | "controversial" */ = null, val interface_language: String? = null, val display_name: String? = null, val email: SensitiveString? = null, @@ -31,13 +31,12 @@ internal data class SaveUserSettings( val blocking_keywords: List? = null, val open_links_in_new_tab: Boolean? = null, val infinite_scroll_enabled: Boolean? = null, - val enable_keyboard_navigation: Boolean? = null, val enable_animated_images: Boolean? = null, val enable_private_messages: Boolean? = null, val collapse_bot_comments: Boolean? = null, val show_score: Boolean? = null, val show_upvotes: Boolean? = null, - val show_downvotes: VoteShow? /* "Show" | "ShowForOthers" | "Hide" */ = null, + val show_downvotes: VoteShow? /* "show" | "show_for_others" | "hide" */ = null, val show_upvote_percentage: Boolean? = null, val auto_mark_fetched_posts_as_read: Boolean? = null, val hide_media: Boolean? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Search.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Search.kt index 358bbc6e..d3f97f01 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Search.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Search.kt @@ -11,16 +11,15 @@ internal data class Search( val community_id: CommunityId? = null, val community_name: String? = null, val creator_id: PersonId? = null, - val type_: SearchType? /* "All" | "Comments" | "Posts" | "Communities" | "Users" | "MultiCommunities" */ = null, - val sort: SortType? /* "New" | "Top" | "Old" */ = null, + val type_: SearchType? /* "all" | "comments" | "posts" | "communities" | "users" | "multi_communities" */ = null, + val sort: SortType? /* "new" | "top" | "old" */ = null, val time_range_seconds: Long? = null, - val listing_type: ListingType? /* "All" | "Local" | "Subscribed" | "ModeratorView" | "Suggested" */ = null, + val listing_type: ListingType? /* "all" | "local" | "subscribed" | "moderator_view" | "suggested" */ = null, val title_only: Boolean? = null, val post_url_only: Boolean? = null, val liked_only: Boolean? = null, val disliked_only: Boolean? = null, val show_nsfw: Boolean? = null, val page_cursor: PaginationCursor? = null, - val page_back: Boolean? = null, val limit: Long? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SearchResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SearchResponse.kt index c73a3098..78ab6d51 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SearchResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SearchResponse.kt @@ -5,7 +5,8 @@ import kotlinx.serialization.Serializable @Serializable internal data class SearchResponse( - val results: List, + val resolve: SearchCombinedView? = null, + val search: List, val next_page: PaginationCursor? = null, val prev_page: PaginationCursor? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Site.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Site.kt index ca55b295..6476b75a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Site.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Site.kt @@ -11,7 +11,7 @@ internal data class Site( val updated_at: String? = null, val icon: DbUrl? = null, val banner: DbUrl? = null, - val description: String? = null, + val summary: String? = null, val ap_id: DbUrl, val last_refreshed_at: String, val inbox_url: DbUrl, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/TagsView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/TagsView.kt deleted file mode 100644 index e9e14424..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/TagsView.kt +++ /dev/null @@ -1,3 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -internal typealias TagsView = List diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UnreadCountsResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UnreadCountsResponse.kt new file mode 100644 index 00000000..cbc44624 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UnreadCountsResponse.kt @@ -0,0 +1,11 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class UnreadCountsResponse( + val notification_count: Long, + val report_count: Long? = null, + val pending_follow_count: Long? = null, + val registration_application_count: Long? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UpdateCommunityTag.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UpdateCommunityTag.kt deleted file mode 100644 index ebb12880..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UpdateCommunityTag.kt +++ /dev/null @@ -1,10 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class UpdateCommunityTag( - val tag_id: TagId, - val display_name: String? = null, - val description: String? = null, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UpdatePostNotifications.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UpdatePostNotifications.kt deleted file mode 100644 index c06320a4..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UpdatePostNotifications.kt +++ /dev/null @@ -1,9 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -internal data class UpdatePostNotifications( - val post_id: PostId, - val mode: String /* "AllComments" | "RepliesAndMentions" | "Mute" */, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UserSettingsBackup.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UserSettingsBackup.kt index 7b57a5b7..b99c8a9b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UserSettingsBackup.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/UserSettingsBackup.kt @@ -18,4 +18,6 @@ internal data class UserSettingsBackup( val blocked_users: List, val blocked_instances_communities: List, val blocked_instances_persons: List, + val blocking_keywords: List, + val discussion_languages: List, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/VoteView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/VoteView.kt index 89217c84..f83289f8 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/VoteView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/VoteView.kt @@ -7,5 +7,5 @@ internal data class VoteView( val creator: Person, val creator_banned: Boolean, val creator_banned_from_community: Boolean, - val score: Int, + val is_upvote: Boolean, ) From 2560e01f4052fe8b123a87eb5bdf5d5f29c0f557 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Tue, 3 Mar 2026 03:28:18 +0100 Subject: [PATCH 037/110] Refactor enums infra --- .../src/main/kotlin/MapperGenerator0x19x0.kt | 44 --- .../src/main/kotlin/MapperGenerator0x19x3.kt | 46 --- .../src/main/kotlin/MapperGenerator0x19x4.kt | 47 --- .../src/main/kotlin/MapperGenerator0x19x6.kt | 47 --- .../it/vercruysse/lemmyapi/LemmyApiBase.kt | 2 +- .../lemmyapi/datatypes/Community.kt | 2 +- .../lemmyapi/datatypes/CommunityActions.kt | 4 +- .../lemmyapi/datatypes/CreateCommunity.kt | 2 +- .../lemmyapi/datatypes/CreateSite.kt | 10 +- .../lemmyapi/datatypes/EditCommunity.kt | 2 +- .../datatypes/EditCommunityNotifications.kt | 2 +- .../datatypes/EditPostNotifications.kt | 2 +- .../vercruysse/lemmyapi/datatypes/EditSite.kt | 8 +- .../lemmyapi/datatypes/FeaturePost.kt | 2 +- .../lemmyapi/datatypes/GetComments.kt | 4 +- .../lemmyapi/datatypes/GetModlog.kt | 4 +- .../lemmyapi/datatypes/GetPersonDetails.kt | 2 +- .../vercruysse/lemmyapi/datatypes/GetPosts.kt | 4 +- .../lemmyapi/datatypes/GetRandomCommunity.kt | 2 +- .../lemmyapi/datatypes/ListCommunities.kt | 4 +- .../lemmyapi/datatypes/ListNotifications.kt | 2 +- .../lemmyapi/datatypes/ListPersonContent.kt | 2 +- .../lemmyapi/datatypes/ListPersonSaved.kt | 2 +- .../lemmyapi/datatypes/ListReports.kt | 2 +- .../lemmyapi/datatypes/LocalSite.kt | 10 +- .../lemmyapi/datatypes/LocalUser.kt | 8 +- .../datatypes/MarkNotificationAsRead.kt | 2 +- .../datatypes/MultiCommunityFollow.kt | 2 +- .../lemmyapi/datatypes/MultiCommunityView.kt | 2 +- .../lemmyapi/datatypes/Notification.kt | 2 +- .../lemmyapi/datatypes/PendingFollow.kt | 2 +- .../lemmyapi/datatypes/PendingFollowerView.kt | 2 +- .../lemmyapi/datatypes/PostActions.kt | 2 +- .../lemmyapi/datatypes/SaveUserSettings.kt | 8 +- .../vercruysse/lemmyapi/datatypes/Search.kt | 6 +- .../lemmyapi/dto/CustomDataTypes.kt | 235 +----------- .../lemmyapi/enums/CommentSortType.kt | 16 + .../lemmyapi/enums/CommunityFollowerState.kt | 23 ++ .../enums/CommunityNotificationsMode.kt | 13 + .../lemmyapi/enums/CommunityVisibility.kt | 17 + .../lemmyapi/enums/FederationMode.kt | 12 + .../enums/GetFederatedInstancesKind.kt | 2 +- .../it/vercruysse/lemmyapi/enums/LikeType.kt | 12 + .../vercruysse/lemmyapi/enums/ListingType.kt | 17 + .../lemmyapi/enums/ModlogActionType.kt | 44 +++ .../vercruysse/lemmyapi/enums/ModlogKind.kt | 2 +- .../enums/MultiCommunityListingType.kt | 2 +- .../lemmyapi/enums/NotificationDataType.kt | 14 + .../lemmyapi/enums/NotificationType.kt | 15 + .../lemmyapi/enums/PostFeatureType.kt | 9 + .../lemmyapi/enums/PostListingMode.kt | 12 + .../lemmyapi/enums/PostNotificationsMode.kt | 12 + .../lemmyapi/enums/RegistrationMode.kt | 13 + .../vercruysse/lemmyapi/enums/ReportType.kt | 15 + .../vercruysse/lemmyapi/enums/SearchType.kt | 16 + .../it/vercruysse/lemmyapi/enums/SortType.kt | 35 ++ .../lemmyapi/enums/SubscribedType.kt | 10 + .../lemmyapi/enums/VersionTracker.kt | 18 + .../it/vercruysse/lemmyapi/enums/VoteShow.kt | 14 + .../lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt | 4 +- .../lemmyapi/v0/x18/x5/Transformer.kt | 16 +- .../v0/x18/x5/datatypes/CommentReplyView.kt | 2 +- .../v0/x18/x5/datatypes/CommentView.kt | 2 +- .../v0/x18/x5/datatypes/CommunityView.kt | 2 +- .../v0/x18/x5/datatypes/CreateSite.kt | 4 +- .../lemmyapi/v0/x18/x5/datatypes/EditSite.kt | 4 +- .../v0/x18/x5/datatypes/FeaturePost.kt | 2 +- .../v0/x18/x5/datatypes/GetComments.kt | 4 +- .../lemmyapi/v0/x18/x5/datatypes/GetModlog.kt | 2 +- .../v0/x18/x5/datatypes/GetPersonDetails.kt | 2 +- .../v0/x18/x5/datatypes/GetPersonMentions.kt | 2 +- .../lemmyapi/v0/x18/x5/datatypes/GetPosts.kt | 4 +- .../v0/x18/x5/datatypes/GetReplies.kt | 2 +- .../v0/x18/x5/datatypes/ListCommunities.kt | 4 +- .../lemmyapi/v0/x18/x5/datatypes/LocalSite.kt | 4 +- .../lemmyapi/v0/x18/x5/datatypes/LocalUser.kt | 4 +- .../v0/x18/x5/datatypes/PersonMentionView.kt | 2 +- .../lemmyapi/v0/x18/x5/datatypes/PostView.kt | 2 +- .../v0/x18/x5/datatypes/SaveUserSettings.kt | 4 +- .../lemmyapi/v0/x18/x5/datatypes/Search.kt | 6 +- .../v0/x18/x5/datatypes/SearchResponse.kt | 2 +- .../lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt | 154 +++----- .../lemmyapi/v0/x19/x0/MapperGenerator.kt | 23 +- .../lemmyapi/v0/x19/x0/Transformer.kt | 259 ++----------- .../v0/x19/x0/datatypes/CommentReplyView.kt | 2 +- .../v0/x19/x0/datatypes/CommentView.kt | 2 +- .../v0/x19/x0/datatypes/CommunityView.kt | 2 +- .../v0/x19/x0/datatypes/CreateSite.kt | 4 +- .../lemmyapi/v0/x19/x0/datatypes/EditSite.kt | 4 +- .../v0/x19/x0/datatypes/FeaturePost.kt | 2 +- .../v0/x19/x0/datatypes/GetComments.kt | 4 +- .../lemmyapi/v0/x19/x0/datatypes/GetModlog.kt | 2 +- .../v0/x19/x0/datatypes/GetPersonDetails.kt | 2 +- .../v0/x19/x0/datatypes/GetPersonMentions.kt | 2 +- .../lemmyapi/v0/x19/x0/datatypes/GetPosts.kt | 4 +- .../v0/x19/x0/datatypes/GetReplies.kt | 2 +- .../v0/x19/x0/datatypes/ListCommunities.kt | 4 +- .../lemmyapi/v0/x19/x0/datatypes/LocalSite.kt | 4 +- .../lemmyapi/v0/x19/x0/datatypes/LocalUser.kt | 6 +- .../v0/x19/x0/datatypes/PersonMentionView.kt | 2 +- .../lemmyapi/v0/x19/x0/datatypes/PostView.kt | 2 +- .../v0/x19/x0/datatypes/SaveUserSettings.kt | 6 +- .../lemmyapi/v0/x19/x0/datatypes/Search.kt | 6 +- .../v0/x19/x0/datatypes/SearchResponse.kt | 2 +- .../lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt | 165 ++++----- .../lemmyapi/v0/x19/x11/MapperGenerator.kt | 54 +-- .../lemmyapi/v0/x19/x11/Transformer.kt | 275 ++------------ .../v0/x19/x11/datatypes/CommentReplyView.kt | 2 +- .../v0/x19/x11/datatypes/CommentReportView.kt | 2 +- .../v0/x19/x11/datatypes/CommentView.kt | 2 +- .../v0/x19/x11/datatypes/Community.kt | 2 +- .../v0/x19/x11/datatypes/CommunityView.kt | 2 +- .../v0/x19/x11/datatypes/CreateCommunity.kt | 2 +- .../v0/x19/x11/datatypes/CreateSite.kt | 8 +- .../v0/x19/x11/datatypes/EditCommunity.kt | 2 +- .../lemmyapi/v0/x19/x11/datatypes/EditSite.kt | 8 +- .../v0/x19/x11/datatypes/FeaturePost.kt | 2 +- .../v0/x19/x11/datatypes/GetComments.kt | 4 +- .../v0/x19/x11/datatypes/GetModlog.kt | 2 +- .../v0/x19/x11/datatypes/GetPersonDetails.kt | 2 +- .../v0/x19/x11/datatypes/GetPersonMentions.kt | 2 +- .../lemmyapi/v0/x19/x11/datatypes/GetPosts.kt | 4 +- .../v0/x19/x11/datatypes/GetReplies.kt | 2 +- .../v0/x19/x11/datatypes/ListCommunities.kt | 4 +- .../v0/x19/x11/datatypes/LocalSite.kt | 8 +- .../v0/x19/x11/datatypes/LocalUser.kt | 6 +- .../v0/x19/x11/datatypes/PersonMentionView.kt | 2 +- .../v0/x19/x11/datatypes/PostReportView.kt | 2 +- .../lemmyapi/v0/x19/x11/datatypes/PostView.kt | 2 +- .../v0/x19/x11/datatypes/SaveUserSettings.kt | 6 +- .../lemmyapi/v0/x19/x11/datatypes/Search.kt | 6 +- .../v0/x19/x11/datatypes/SearchResponse.kt | 2 +- .../lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt | 165 ++++----- .../lemmyapi/v0/x19/x3/MapperGenerator.kt | 26 +- .../lemmyapi/v0/x19/x3/Transformer.kt | 275 ++------------ .../v0/x19/x3/datatypes/CommentReplyView.kt | 2 +- .../v0/x19/x3/datatypes/CommentView.kt | 2 +- .../v0/x19/x3/datatypes/CommunityView.kt | 2 +- .../v0/x19/x3/datatypes/CreateSite.kt | 4 +- .../lemmyapi/v0/x19/x3/datatypes/EditSite.kt | 4 +- .../v0/x19/x3/datatypes/FeaturePost.kt | 2 +- .../v0/x19/x3/datatypes/GetComments.kt | 4 +- .../lemmyapi/v0/x19/x3/datatypes/GetModlog.kt | 2 +- .../v0/x19/x3/datatypes/GetPersonDetails.kt | 2 +- .../v0/x19/x3/datatypes/GetPersonMentions.kt | 2 +- .../lemmyapi/v0/x19/x3/datatypes/GetPosts.kt | 4 +- .../v0/x19/x3/datatypes/GetReplies.kt | 2 +- .../v0/x19/x3/datatypes/ListCommunities.kt | 4 +- .../lemmyapi/v0/x19/x3/datatypes/LocalSite.kt | 4 +- .../lemmyapi/v0/x19/x3/datatypes/LocalUser.kt | 6 +- .../v0/x19/x3/datatypes/PersonMentionView.kt | 2 +- .../lemmyapi/v0/x19/x3/datatypes/PostView.kt | 2 +- .../v0/x19/x3/datatypes/SaveUserSettings.kt | 6 +- .../lemmyapi/v0/x19/x3/datatypes/Search.kt | 6 +- .../v0/x19/x3/datatypes/SearchResponse.kt | 2 +- .../lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt | 166 ++++----- .../lemmyapi/v0/x19/x4/MapperGenerator.kt | 56 +-- .../lemmyapi/v0/x19/x4/Transformer.kt | 341 ++---------------- .../v0/x19/x4/datatypes/CommentReplyView.kt | 2 +- .../v0/x19/x4/datatypes/CommentReportView.kt | 2 +- .../v0/x19/x4/datatypes/CommentView.kt | 2 +- .../lemmyapi/v0/x19/x4/datatypes/Community.kt | 2 +- .../v0/x19/x4/datatypes/CommunityView.kt | 2 +- .../v0/x19/x4/datatypes/CreateCommunity.kt | 2 +- .../v0/x19/x4/datatypes/CreateSite.kt | 8 +- .../v0/x19/x4/datatypes/EditCommunity.kt | 2 +- .../lemmyapi/v0/x19/x4/datatypes/EditSite.kt | 8 +- .../v0/x19/x4/datatypes/FeaturePost.kt | 2 +- .../v0/x19/x4/datatypes/GetComments.kt | 4 +- .../lemmyapi/v0/x19/x4/datatypes/GetModlog.kt | 2 +- .../v0/x19/x4/datatypes/GetPersonDetails.kt | 2 +- .../v0/x19/x4/datatypes/GetPersonMentions.kt | 2 +- .../lemmyapi/v0/x19/x4/datatypes/GetPosts.kt | 4 +- .../v0/x19/x4/datatypes/GetReplies.kt | 2 +- .../v0/x19/x4/datatypes/ListCommunities.kt | 4 +- .../lemmyapi/v0/x19/x4/datatypes/LocalSite.kt | 8 +- .../lemmyapi/v0/x19/x4/datatypes/LocalUser.kt | 6 +- .../v0/x19/x4/datatypes/PersonMentionView.kt | 2 +- .../v0/x19/x4/datatypes/PostReportView.kt | 2 +- .../lemmyapi/v0/x19/x4/datatypes/PostView.kt | 2 +- .../v0/x19/x4/datatypes/SaveUserSettings.kt | 6 +- .../lemmyapi/v0/x19/x4/datatypes/Search.kt | 6 +- .../v0/x19/x4/datatypes/SearchResponse.kt | 2 +- .../lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt | 167 ++++----- .../lemmyapi/v0/x19/x6/MapperGenerator.kt | 56 +-- .../lemmyapi/v0/x19/x6/Transformer.kt | 275 ++------------ .../v0/x19/x6/datatypes/CommentReplyView.kt | 2 +- .../v0/x19/x6/datatypes/CommentReportView.kt | 2 +- .../v0/x19/x6/datatypes/CommentView.kt | 2 +- .../lemmyapi/v0/x19/x6/datatypes/Community.kt | 2 +- .../v0/x19/x6/datatypes/CommunityView.kt | 2 +- .../v0/x19/x6/datatypes/CreateCommunity.kt | 2 +- .../v0/x19/x6/datatypes/CreateSite.kt | 8 +- .../v0/x19/x6/datatypes/EditCommunity.kt | 2 +- .../lemmyapi/v0/x19/x6/datatypes/EditSite.kt | 8 +- .../v0/x19/x6/datatypes/FeaturePost.kt | 2 +- .../v0/x19/x6/datatypes/GetComments.kt | 4 +- .../lemmyapi/v0/x19/x6/datatypes/GetModlog.kt | 2 +- .../v0/x19/x6/datatypes/GetPersonDetails.kt | 2 +- .../v0/x19/x6/datatypes/GetPersonMentions.kt | 2 +- .../lemmyapi/v0/x19/x6/datatypes/GetPosts.kt | 4 +- .../v0/x19/x6/datatypes/GetReplies.kt | 2 +- .../v0/x19/x6/datatypes/ListCommunities.kt | 4 +- .../lemmyapi/v0/x19/x6/datatypes/LocalSite.kt | 8 +- .../lemmyapi/v0/x19/x6/datatypes/LocalUser.kt | 6 +- .../v0/x19/x6/datatypes/PersonMentionView.kt | 2 +- .../v0/x19/x6/datatypes/PostReportView.kt | 2 +- .../lemmyapi/v0/x19/x6/datatypes/PostView.kt | 2 +- .../v0/x19/x6/datatypes/SaveUserSettings.kt | 6 +- .../lemmyapi/v0/x19/x6/datatypes/Search.kt | 6 +- .../v0/x19/x6/datatypes/SearchResponse.kt | 2 +- .../lemmyapi/v1/x0/x0/datatypes/Community.kt | 2 +- .../v1/x0/x0/datatypes/CommunityActions.kt | 4 +- .../v1/x0/x0/datatypes/CreateCommunity.kt | 2 +- .../lemmyapi/v1/x0/x0/datatypes/CreateSite.kt | 10 +- .../v1/x0/x0/datatypes/EditCommunity.kt | 2 +- .../datatypes/EditCommunityNotifications.kt | 2 +- .../x0/x0/datatypes/EditPostNotifications.kt | 2 +- .../lemmyapi/v1/x0/x0/datatypes/EditSite.kt | 8 +- .../v1/x0/x0/datatypes/FeaturePost.kt | 2 +- .../v1/x0/x0/datatypes/GetComments.kt | 4 +- .../lemmyapi/v1/x0/x0/datatypes/GetModlog.kt | 4 +- .../lemmyapi/v1/x0/x0/datatypes/GetPosts.kt | 4 +- .../v1/x0/x0/datatypes/GetRandomCommunity.kt | 2 +- .../v1/x0/x0/datatypes/ListCommunities.kt | 4 +- .../x0/x0/datatypes/ListMultiCommunities.kt | 2 +- .../v1/x0/x0/datatypes/ListNotifications.kt | 2 +- .../v1/x0/x0/datatypes/ListReports.kt | 2 +- .../lemmyapi/v1/x0/x0/datatypes/LocalSite.kt | 10 +- .../lemmyapi/v1/x0/x0/datatypes/LocalUser.kt | 8 +- .../x0/x0/datatypes/MultiCommunityFollow.kt | 2 +- .../v1/x0/x0/datatypes/MultiCommunityView.kt | 2 +- .../v1/x0/x0/datatypes/Notification.kt | 2 +- .../v1/x0/x0/datatypes/PendingFollow.kt | 2 +- .../v1/x0/x0/datatypes/PendingFollowerView.kt | 2 +- .../v1/x0/x0/datatypes/PostActions.kt | 2 +- .../v1/x0/x0/datatypes/SaveUserSettings.kt | 8 +- .../lemmyapi/v1/x0/x0/datatypes/Search.kt | 6 +- app/src/commonTest/kotlin/utils/UtilTest.kt | 2 +- 239 files changed, 1127 insertions(+), 2772 deletions(-) create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/CommentSortType.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/CommunityFollowerState.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/CommunityNotificationsMode.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/CommunityVisibility.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/FederationMode.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/LikeType.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/ListingType.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/ModlogActionType.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/NotificationDataType.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/NotificationType.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/PostFeatureType.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/PostListingMode.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/PostNotificationsMode.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/RegistrationMode.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/ReportType.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/SearchType.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/SortType.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/SubscribedType.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/VersionTracker.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/VoteShow.kt diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x0.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x0.kt index 788cefe0..6b80489a 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x0.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x0.kt @@ -94,19 +94,6 @@ internal interface MapperGenerator0x19x0 { // GENERATED fun toUni(d: AddAdminResponse): it.vercruysse.lemmyapi.datatypes.AddAdminResponse fun toUni(d: AddModToCommunityResponse): it.vercruysse.lemmyapi.datatypes.AddModToCommunityResponse - fun toUni(d: AdminPurgeComment): it.vercruysse.lemmyapi.datatypes.AdminPurgeComment - fun toUni(d: AdminPurgeCommentView): it.vercruysse.lemmyapi.datatypes.AdminPurgeCommentView - fun toUni(d: AdminPurgeCommunity): it.vercruysse.lemmyapi.datatypes.AdminPurgeCommunity - fun toUni(d: AdminPurgeCommunityView): it.vercruysse.lemmyapi.datatypes.AdminPurgeCommunityView - fun toUni(d: AdminPurgePerson): it.vercruysse.lemmyapi.datatypes.AdminPurgePerson - fun toUni(d: AdminPurgePersonView): it.vercruysse.lemmyapi.datatypes.AdminPurgePersonView - fun toUni(d: AdminPurgePost): it.vercruysse.lemmyapi.datatypes.AdminPurgePost - fun toUni(d: AdminPurgePostView): it.vercruysse.lemmyapi.datatypes.AdminPurgePostView - fun toUni(d: BanFromCommunityResponse): it.vercruysse.lemmyapi.datatypes.BanFromCommunityResponse - fun toUni(d: BannedPersonsResponse): it.vercruysse.lemmyapi.datatypes.BannedPersonsResponse - fun toUni(d: BanPersonResponse): it.vercruysse.lemmyapi.datatypes.BanPersonResponse - fun toUni(d: BlockCommunityResponse): it.vercruysse.lemmyapi.datatypes.BlockCommunityResponse - fun toUni(d: BlockPersonResponse): it.vercruysse.lemmyapi.datatypes.BlockPersonResponse fun toUni(d: CaptchaResponse): it.vercruysse.lemmyapi.datatypes.CaptchaResponse fun toUni(d: Comment): it.vercruysse.lemmyapi.datatypes.Comment @@ -125,52 +112,22 @@ internal interface MapperGenerator0x19x0 { fun toUni(d: CustomEmojiKeyword): it.vercruysse.lemmyapi.datatypes.CustomEmojiKeyword fun toUni(d: CustomEmojiResponse): it.vercruysse.lemmyapi.datatypes.CustomEmojiResponse fun toUni(d: CustomEmojiView): it.vercruysse.lemmyapi.datatypes.CustomEmojiView - fun toUni(d: FederatedInstances): it.vercruysse.lemmyapi.datatypes.FederatedInstances fun toUni(d: GenerateTotpSecretResponse): it.vercruysse.lemmyapi.datatypes.GenerateTotpSecretResponse fun toUni(d: GetCaptchaResponse): it.vercruysse.lemmyapi.datatypes.GetCaptchaResponse - fun toUni(d: GetCommentsResponse): it.vercruysse.lemmyapi.datatypes.GetCommentsResponse fun toUni(d: GetCommunityResponse): it.vercruysse.lemmyapi.datatypes.GetCommunityResponse - fun toUni(d: GetFederatedInstancesResponse): it.vercruysse.lemmyapi.datatypes.GetFederatedInstancesResponse - fun toUni(d: GetModlogResponse): it.vercruysse.lemmyapi.datatypes.GetModlogResponse fun toUni(d: GetPersonDetailsResponse): it.vercruysse.lemmyapi.datatypes.GetPersonDetailsResponse fun toUni(d: GetPostResponse): it.vercruysse.lemmyapi.datatypes.GetPostResponse - fun toUni(d: GetPostsResponse): it.vercruysse.lemmyapi.datatypes.GetPostsResponse - fun toUni(d: GetReportCountResponse): it.vercruysse.lemmyapi.datatypes.GetReportCountResponse fun toUni(d: GetSiteMetadataResponse): it.vercruysse.lemmyapi.datatypes.GetSiteMetadataResponse - fun toUni(d: GetUnreadCountResponse): it.vercruysse.lemmyapi.datatypes.GetUnreadCountResponse - fun toUni(d: GetUnreadRegistrationApplicationCountResponse): it.vercruysse.lemmyapi.datatypes.GetUnreadRegistrationApplicationCountResponse fun toUni(d: Instance): it.vercruysse.lemmyapi.datatypes.Instance fun toUni(d: InstanceWithFederationState): it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState fun toUni(d: Language): it.vercruysse.lemmyapi.datatypes.Language - fun toUni(d: ListCommunitiesResponse): it.vercruysse.lemmyapi.datatypes.ListCommunitiesResponse - fun toUni(d: ListRegistrationApplicationsResponse): it.vercruysse.lemmyapi.datatypes.ListRegistrationApplicationsResponse fun toUni(d: LocalSiteRateLimit): it.vercruysse.lemmyapi.datatypes.LocalSiteRateLimit fun toUni(d: LocalUser): it.vercruysse.lemmyapi.datatypes.LocalUser fun toUni(d: LocalUserView): it.vercruysse.lemmyapi.datatypes.LocalUserView fun toUni(d: LoginResponse): it.vercruysse.lemmyapi.datatypes.LoginResponse fun toUni(d: LoginToken): it.vercruysse.lemmyapi.datatypes.LoginToken - fun toUni(d: ModAdd): it.vercruysse.lemmyapi.datatypes.AdminAdd - fun toUni(d: ModAddCommunity): it.vercruysse.lemmyapi.datatypes.ModAddToCommunity - fun toUni(d: ModAddCommunityView): it.vercruysse.lemmyapi.datatypes.ModAddToCommunityView - fun toUni(d: ModAddView): it.vercruysse.lemmyapi.datatypes.AdminAddView - fun toUni(d: ModBan): it.vercruysse.lemmyapi.datatypes.AdminBan - fun toUni(d: ModBanFromCommunity): it.vercruysse.lemmyapi.datatypes.ModBanFromCommunity - fun toUni(d: ModBanFromCommunityView): it.vercruysse.lemmyapi.datatypes.ModBanFromCommunityView - fun toUni(d: ModBanView): it.vercruysse.lemmyapi.datatypes.AdminBanView - fun toUni(d: ModFeaturePost): it.vercruysse.lemmyapi.datatypes.ModFeaturePost - fun toUni(d: ModFeaturePostView): it.vercruysse.lemmyapi.datatypes.ModFeaturePostView - fun toUni(d: ModLockPost): it.vercruysse.lemmyapi.datatypes.ModLockPost - fun toUni(d: ModLockPostView): it.vercruysse.lemmyapi.datatypes.ModLockPostView - fun toUni(d: ModRemoveComment): it.vercruysse.lemmyapi.datatypes.ModRemoveComment - fun toUni(d: ModRemoveCommentView): it.vercruysse.lemmyapi.datatypes.ModRemoveCommentView - fun toUni(d: ModRemoveCommunity): it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunity - fun toUni(d: ModRemoveCommunityView): it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunityView - fun toUni(d: ModRemovePost): it.vercruysse.lemmyapi.datatypes.ModRemovePost - fun toUni(d: ModRemovePostView): it.vercruysse.lemmyapi.datatypes.ModRemovePostView - fun toUni(d: ModTransferCommunity): it.vercruysse.lemmyapi.datatypes.ModTransferCommunity - fun toUni(d: ModTransferCommunityView): it.vercruysse.lemmyapi.datatypes.ModTransferCommunityView fun toUni(d: MyUserInfo): it.vercruysse.lemmyapi.datatypes.MyUserInfo fun toUni(d: Person): it.vercruysse.lemmyapi.datatypes.Person @@ -243,7 +200,6 @@ internal interface MapperGenerator0x19x0 { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPersonDetails): GetPersonDetails fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPost): GetPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPosts): GetPosts - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetReportCount): GetReportCount fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetSiteMetadata): GetSiteMetadata fun fromUni(d: it.vercruysse.lemmyapi.datatypes.HideCommunity): HideCommunity fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListCommunities): ListCommunities diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x3.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x3.kt index f76f3588..5d1e348f 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x3.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x3.kt @@ -94,19 +94,6 @@ internal interface MapperGenerator0x19x3 { // Generated fun toUni(d: AddAdminResponse): it.vercruysse.lemmyapi.datatypes.AddAdminResponse fun toUni(d: AddModToCommunityResponse): it.vercruysse.lemmyapi.datatypes.AddModToCommunityResponse - fun toUni(d: AdminPurgeComment): it.vercruysse.lemmyapi.datatypes.AdminPurgeComment - fun toUni(d: AdminPurgeCommentView): it.vercruysse.lemmyapi.datatypes.AdminPurgeCommentView - fun toUni(d: AdminPurgeCommunity): it.vercruysse.lemmyapi.datatypes.AdminPurgeCommunity - fun toUni(d: AdminPurgeCommunityView): it.vercruysse.lemmyapi.datatypes.AdminPurgeCommunityView - fun toUni(d: AdminPurgePerson): it.vercruysse.lemmyapi.datatypes.AdminPurgePerson - fun toUni(d: AdminPurgePersonView): it.vercruysse.lemmyapi.datatypes.AdminPurgePersonView - fun toUni(d: AdminPurgePost): it.vercruysse.lemmyapi.datatypes.AdminPurgePost - fun toUni(d: AdminPurgePostView): it.vercruysse.lemmyapi.datatypes.AdminPurgePostView - fun toUni(d: BanFromCommunityResponse): it.vercruysse.lemmyapi.datatypes.BanFromCommunityResponse - fun toUni(d: BannedPersonsResponse): it.vercruysse.lemmyapi.datatypes.BannedPersonsResponse - fun toUni(d: BanPersonResponse): it.vercruysse.lemmyapi.datatypes.BanPersonResponse - fun toUni(d: BlockCommunityResponse): it.vercruysse.lemmyapi.datatypes.BlockCommunityResponse - fun toUni(d: BlockPersonResponse): it.vercruysse.lemmyapi.datatypes.BlockPersonResponse fun toUni(d: CaptchaResponse): it.vercruysse.lemmyapi.datatypes.CaptchaResponse fun toUni(d: Comment): it.vercruysse.lemmyapi.datatypes.Comment @@ -125,54 +112,22 @@ internal interface MapperGenerator0x19x3 { fun toUni(d: CustomEmojiKeyword): it.vercruysse.lemmyapi.datatypes.CustomEmojiKeyword fun toUni(d: CustomEmojiResponse): it.vercruysse.lemmyapi.datatypes.CustomEmojiResponse fun toUni(d: CustomEmojiView): it.vercruysse.lemmyapi.datatypes.CustomEmojiView - fun toUni(d: FederatedInstances): it.vercruysse.lemmyapi.datatypes.FederatedInstances fun toUni(d: GenerateTotpSecretResponse): it.vercruysse.lemmyapi.datatypes.GenerateTotpSecretResponse fun toUni(d: GetCaptchaResponse): it.vercruysse.lemmyapi.datatypes.GetCaptchaResponse - fun toUni(d: GetCommentsResponse): it.vercruysse.lemmyapi.datatypes.GetCommentsResponse fun toUni(d: GetCommunityResponse): it.vercruysse.lemmyapi.datatypes.GetCommunityResponse - fun toUni(d: GetFederatedInstancesResponse): it.vercruysse.lemmyapi.datatypes.GetFederatedInstancesResponse - fun toUni(d: GetModlogResponse): it.vercruysse.lemmyapi.datatypes.GetModlogResponse fun toUni(d: GetPersonDetailsResponse): it.vercruysse.lemmyapi.datatypes.GetPersonDetailsResponse fun toUni(d: GetPostResponse): it.vercruysse.lemmyapi.datatypes.GetPostResponse - fun toUni(d: GetPostsResponse): it.vercruysse.lemmyapi.datatypes.GetPostsResponse - fun toUni(d: GetReportCountResponse): it.vercruysse.lemmyapi.datatypes.GetReportCountResponse fun toUni(d: GetSiteMetadataResponse): it.vercruysse.lemmyapi.datatypes.GetSiteMetadataResponse - fun toUni(d: GetUnreadCountResponse): it.vercruysse.lemmyapi.datatypes.GetUnreadCountResponse - fun toUni(d: GetUnreadRegistrationApplicationCountResponse): it.vercruysse.lemmyapi.datatypes.GetUnreadRegistrationApplicationCountResponse fun toUni(d: Instance): it.vercruysse.lemmyapi.datatypes.Instance fun toUni(d: InstanceWithFederationState): it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState fun toUni(d: Language): it.vercruysse.lemmyapi.datatypes.Language - fun toUni(d: ListCommentLikesResponse): it.vercruysse.lemmyapi.datatypes.ListCommentLikesResponse - fun toUni(d: ListCommunitiesResponse): it.vercruysse.lemmyapi.datatypes.ListCommunitiesResponse - fun toUni(d: ListPostLikesResponse): it.vercruysse.lemmyapi.datatypes.ListPostLikesResponse - fun toUni(d: ListRegistrationApplicationsResponse): it.vercruysse.lemmyapi.datatypes.ListRegistrationApplicationsResponse fun toUni(d: LocalSiteRateLimit): it.vercruysse.lemmyapi.datatypes.LocalSiteRateLimit fun toUni(d: LocalUser): it.vercruysse.lemmyapi.datatypes.LocalUser fun toUni(d: LocalUserView): it.vercruysse.lemmyapi.datatypes.LocalUserView fun toUni(d: LoginResponse): it.vercruysse.lemmyapi.datatypes.LoginResponse fun toUni(d: LoginToken): it.vercruysse.lemmyapi.datatypes.LoginToken - fun toUni(d: ModAdd): it.vercruysse.lemmyapi.datatypes.AdminAdd - fun toUni(d: ModAddCommunity): it.vercruysse.lemmyapi.datatypes.ModAddToCommunity - fun toUni(d: ModAddCommunityView): it.vercruysse.lemmyapi.datatypes.ModAddToCommunityView - fun toUni(d: ModAddView): it.vercruysse.lemmyapi.datatypes.AdminAddView - fun toUni(d: ModBan): it.vercruysse.lemmyapi.datatypes.AdminBan - fun toUni(d: ModBanFromCommunity): it.vercruysse.lemmyapi.datatypes.ModBanFromCommunity - fun toUni(d: ModBanFromCommunityView): it.vercruysse.lemmyapi.datatypes.ModBanFromCommunityView - fun toUni(d: ModBanView): it.vercruysse.lemmyapi.datatypes.AdminBanView - fun toUni(d: ModFeaturePost): it.vercruysse.lemmyapi.datatypes.ModFeaturePost - fun toUni(d: ModFeaturePostView): it.vercruysse.lemmyapi.datatypes.ModFeaturePostView - fun toUni(d: ModLockPost): it.vercruysse.lemmyapi.datatypes.ModLockPost - fun toUni(d: ModLockPostView): it.vercruysse.lemmyapi.datatypes.ModLockPostView - fun toUni(d: ModRemoveComment): it.vercruysse.lemmyapi.datatypes.ModRemoveComment - fun toUni(d: ModRemoveCommentView): it.vercruysse.lemmyapi.datatypes.ModRemoveCommentView - fun toUni(d: ModRemoveCommunity): it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunity - fun toUni(d: ModRemoveCommunityView): it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunityView - fun toUni(d: ModRemovePost): it.vercruysse.lemmyapi.datatypes.ModRemovePost - fun toUni(d: ModRemovePostView): it.vercruysse.lemmyapi.datatypes.ModRemovePostView - fun toUni(d: ModTransferCommunity): it.vercruysse.lemmyapi.datatypes.ModTransferCommunity - fun toUni(d: ModTransferCommunityView): it.vercruysse.lemmyapi.datatypes.ModTransferCommunityView fun toUni(d: MyUserInfo): it.vercruysse.lemmyapi.datatypes.MyUserInfo fun toUni(d: Person): it.vercruysse.lemmyapi.datatypes.Person @@ -244,7 +199,6 @@ internal interface MapperGenerator0x19x3 { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPersonDetails): GetPersonDetails fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPost): GetPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPosts): GetPosts - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetReportCount): GetReportCount fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetSiteMetadata): GetSiteMetadata fun fromUni(d: it.vercruysse.lemmyapi.datatypes.HideCommunity): HideCommunity fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListCommentLikes): ListCommentLikes diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt index d79fe1d4..7792d496 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt @@ -13,19 +13,6 @@ internal interface MapperGenerator0x19x4 { fun toUni(d: AddAdminResponse): it.vercruysse.lemmyapi.datatypes.AddAdminResponse fun toUni(d: AddModToCommunityResponse): it.vercruysse.lemmyapi.datatypes.AddModToCommunityResponse - fun toUni(d: AdminPurgeComment): it.vercruysse.lemmyapi.datatypes.AdminPurgeComment - fun toUni(d: AdminPurgeCommentView): it.vercruysse.lemmyapi.datatypes.AdminPurgeCommentView - fun toUni(d: AdminPurgeCommunity): it.vercruysse.lemmyapi.datatypes.AdminPurgeCommunity - fun toUni(d: AdminPurgeCommunityView): it.vercruysse.lemmyapi.datatypes.AdminPurgeCommunityView - fun toUni(d: AdminPurgePerson): it.vercruysse.lemmyapi.datatypes.AdminPurgePerson - fun toUni(d: AdminPurgePersonView): it.vercruysse.lemmyapi.datatypes.AdminPurgePersonView - fun toUni(d: AdminPurgePost): it.vercruysse.lemmyapi.datatypes.AdminPurgePost - fun toUni(d: AdminPurgePostView): it.vercruysse.lemmyapi.datatypes.AdminPurgePostView - fun toUni(d: BanFromCommunityResponse): it.vercruysse.lemmyapi.datatypes.BanFromCommunityResponse - fun toUni(d: BannedPersonsResponse): it.vercruysse.lemmyapi.datatypes.BannedPersonsResponse - fun toUni(d: BanPersonResponse): it.vercruysse.lemmyapi.datatypes.BanPersonResponse - fun toUni(d: BlockCommunityResponse): it.vercruysse.lemmyapi.datatypes.BlockCommunityResponse - fun toUni(d: BlockPersonResponse): it.vercruysse.lemmyapi.datatypes.BlockPersonResponse fun toUni(d: CaptchaResponse): it.vercruysse.lemmyapi.datatypes.CaptchaResponse fun toUni(d: Comment): it.vercruysse.lemmyapi.datatypes.Comment fun toUni(d: CommentReport): it.vercruysse.lemmyapi.datatypes.CommentReport @@ -42,30 +29,17 @@ internal interface MapperGenerator0x19x4 { fun toUni(d: CustomEmojiKeyword): it.vercruysse.lemmyapi.datatypes.CustomEmojiKeyword fun toUni(d: CustomEmojiResponse): it.vercruysse.lemmyapi.datatypes.CustomEmojiResponse fun toUni(d: CustomEmojiView): it.vercruysse.lemmyapi.datatypes.CustomEmojiView - fun toUni(d: FederatedInstances): it.vercruysse.lemmyapi.datatypes.FederatedInstances fun toUni(d: GenerateTotpSecretResponse): it.vercruysse.lemmyapi.datatypes.GenerateTotpSecretResponse fun toUni(d: GetCaptchaResponse): it.vercruysse.lemmyapi.datatypes.GetCaptchaResponse - fun toUni(d: GetCommentsResponse): it.vercruysse.lemmyapi.datatypes.GetCommentsResponse fun toUni(d: GetCommunityResponse): it.vercruysse.lemmyapi.datatypes.GetCommunityResponse - fun toUni(d: GetFederatedInstancesResponse): it.vercruysse.lemmyapi.datatypes.GetFederatedInstancesResponse - fun toUni(d: GetModlogResponse): it.vercruysse.lemmyapi.datatypes.GetModlogResponse fun toUni(d: GetPersonDetailsResponse): it.vercruysse.lemmyapi.datatypes.GetPersonDetailsResponse fun toUni(d: GetPostResponse): it.vercruysse.lemmyapi.datatypes.GetPostResponse - fun toUni(d: GetPostsResponse): it.vercruysse.lemmyapi.datatypes.GetPostsResponse - fun toUni(d: GetReportCountResponse): it.vercruysse.lemmyapi.datatypes.GetReportCountResponse fun toUni(d: GetSiteMetadataResponse): it.vercruysse.lemmyapi.datatypes.GetSiteMetadataResponse fun toUni(d: GetSiteResponse): it.vercruysse.lemmyapi.datatypes.GetSiteResponse - fun toUni(d: GetUnreadCountResponse): it.vercruysse.lemmyapi.datatypes.GetUnreadCountResponse - fun toUni(d: GetUnreadRegistrationApplicationCountResponse): it.vercruysse.lemmyapi.datatypes.GetUnreadRegistrationApplicationCountResponse fun toUni(d: Instance): it.vercruysse.lemmyapi.datatypes.Instance fun toUni(d: InstanceWithFederationState): it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState fun toUni(d: Language): it.vercruysse.lemmyapi.datatypes.Language fun toUni(d: LinkMetadata): it.vercruysse.lemmyapi.datatypes.LinkMetadata - fun toUni(d: ListCommentLikesResponse): it.vercruysse.lemmyapi.datatypes.ListCommentLikesResponse - fun toUni(d: ListCommunitiesResponse): it.vercruysse.lemmyapi.datatypes.ListCommunitiesResponse - fun toUni(d: ListMediaResponse): it.vercruysse.lemmyapi.datatypes.ListMediaResponse - fun toUni(d: ListPostLikesResponse): it.vercruysse.lemmyapi.datatypes.ListPostLikesResponse - fun toUni(d: ListRegistrationApplicationsResponse): it.vercruysse.lemmyapi.datatypes.ListRegistrationApplicationsResponse fun toUni(d: LocalImage): it.vercruysse.lemmyapi.datatypes.LocalImage fun toUni(d: LocalImageView): it.vercruysse.lemmyapi.datatypes.LocalImageView fun toUni(d: LocalSite): it.vercruysse.lemmyapi.datatypes.LocalSite @@ -75,26 +49,6 @@ internal interface MapperGenerator0x19x4 { fun toUni(d: LocalUserView): it.vercruysse.lemmyapi.datatypes.LocalUserView fun toUni(d: LoginResponse): it.vercruysse.lemmyapi.datatypes.LoginResponse fun toUni(d: LoginToken): it.vercruysse.lemmyapi.datatypes.LoginToken - fun toUni(d: ModAdd): it.vercruysse.lemmyapi.datatypes.AdminAdd - fun toUni(d: ModAddCommunity): it.vercruysse.lemmyapi.datatypes.ModAddToCommunity - fun toUni(d: ModAddCommunityView): it.vercruysse.lemmyapi.datatypes.ModAddToCommunityView - fun toUni(d: ModAddView): it.vercruysse.lemmyapi.datatypes.AdminAddView - fun toUni(d: ModBan): it.vercruysse.lemmyapi.datatypes.AdminBan - fun toUni(d: ModBanFromCommunity): it.vercruysse.lemmyapi.datatypes.ModBanFromCommunity - fun toUni(d: ModBanFromCommunityView): it.vercruysse.lemmyapi.datatypes.ModBanFromCommunityView - fun toUni(d: ModBanView): it.vercruysse.lemmyapi.datatypes.AdminBanView - fun toUni(d: ModFeaturePost): it.vercruysse.lemmyapi.datatypes.ModFeaturePost - fun toUni(d: ModFeaturePostView): it.vercruysse.lemmyapi.datatypes.ModFeaturePostView - fun toUni(d: ModLockPost): it.vercruysse.lemmyapi.datatypes.ModLockPost - fun toUni(d: ModLockPostView): it.vercruysse.lemmyapi.datatypes.ModLockPostView - fun toUni(d: ModRemoveComment): it.vercruysse.lemmyapi.datatypes.ModRemoveComment - fun toUni(d: ModRemoveCommentView): it.vercruysse.lemmyapi.datatypes.ModRemoveCommentView - fun toUni(d: ModRemoveCommunity): it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunity - fun toUni(d: ModRemoveCommunityView): it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunityView - fun toUni(d: ModRemovePost): it.vercruysse.lemmyapi.datatypes.ModRemovePost - fun toUni(d: ModRemovePostView): it.vercruysse.lemmyapi.datatypes.ModRemovePostView - fun toUni(d: ModTransferCommunity): it.vercruysse.lemmyapi.datatypes.ModTransferCommunity - fun toUni(d: ModTransferCommunityView): it.vercruysse.lemmyapi.datatypes.ModTransferCommunityView fun toUni(d: MyUserInfo): it.vercruysse.lemmyapi.datatypes.MyUserInfo fun toUni(d: Person): it.vercruysse.lemmyapi.datatypes.Person fun toUni(d: PersonView): it.vercruysse.lemmyapi.datatypes.PersonView @@ -166,7 +120,6 @@ internal interface MapperGenerator0x19x4 { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPersonDetails): GetPersonDetails fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPost): GetPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPosts): GetPosts - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetReportCount): GetReportCount fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetSiteMetadata): GetSiteMetadata fun fromUni(d: it.vercruysse.lemmyapi.datatypes.HideCommunity): HideCommunity fun fromUni(d: it.vercruysse.lemmyapi.datatypes.HidePost): HidePost diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt index 7d87c418..0cb22a70 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt @@ -13,19 +13,6 @@ internal interface MapperGenerator0x19x6 { fun toUni(d: AddAdminResponse): it.vercruysse.lemmyapi.datatypes.AddAdminResponse fun toUni(d: AddModToCommunityResponse): it.vercruysse.lemmyapi.datatypes.AddModToCommunityResponse - fun toUni(d: AdminPurgeComment): it.vercruysse.lemmyapi.datatypes.AdminPurgeComment - fun toUni(d: AdminPurgeCommentView): it.vercruysse.lemmyapi.datatypes.AdminPurgeCommentView - fun toUni(d: AdminPurgeCommunity): it.vercruysse.lemmyapi.datatypes.AdminPurgeCommunity - fun toUni(d: AdminPurgeCommunityView): it.vercruysse.lemmyapi.datatypes.AdminPurgeCommunityView - fun toUni(d: AdminPurgePerson): it.vercruysse.lemmyapi.datatypes.AdminPurgePerson - fun toUni(d: AdminPurgePersonView): it.vercruysse.lemmyapi.datatypes.AdminPurgePersonView - fun toUni(d: AdminPurgePost): it.vercruysse.lemmyapi.datatypes.AdminPurgePost - fun toUni(d: AdminPurgePostView): it.vercruysse.lemmyapi.datatypes.AdminPurgePostView - fun toUni(d: BanFromCommunityResponse): it.vercruysse.lemmyapi.datatypes.BanFromCommunityResponse - fun toUni(d: BannedPersonsResponse): it.vercruysse.lemmyapi.datatypes.BannedPersonsResponse - fun toUni(d: BanPersonResponse): it.vercruysse.lemmyapi.datatypes.BanPersonResponse - fun toUni(d: BlockCommunityResponse): it.vercruysse.lemmyapi.datatypes.BlockCommunityResponse - fun toUni(d: BlockPersonResponse): it.vercruysse.lemmyapi.datatypes.BlockPersonResponse fun toUni(d: CaptchaResponse): it.vercruysse.lemmyapi.datatypes.CaptchaResponse fun toUni(d: Comment): it.vercruysse.lemmyapi.datatypes.Comment fun toUni(d: CommentReport): it.vercruysse.lemmyapi.datatypes.CommentReport @@ -42,31 +29,18 @@ internal interface MapperGenerator0x19x6 { fun toUni(d: CustomEmojiKeyword): it.vercruysse.lemmyapi.datatypes.CustomEmojiKeyword fun toUni(d: CustomEmojiResponse): it.vercruysse.lemmyapi.datatypes.CustomEmojiResponse fun toUni(d: CustomEmojiView): it.vercruysse.lemmyapi.datatypes.CustomEmojiView - fun toUni(d: FederatedInstances): it.vercruysse.lemmyapi.datatypes.FederatedInstances fun toUni(d: GenerateTotpSecretResponse): it.vercruysse.lemmyapi.datatypes.GenerateTotpSecretResponse fun toUni(d: GetCaptchaResponse): it.vercruysse.lemmyapi.datatypes.GetCaptchaResponse - fun toUni(d: GetCommentsResponse): it.vercruysse.lemmyapi.datatypes.GetCommentsResponse fun toUni(d: GetCommunityResponse): it.vercruysse.lemmyapi.datatypes.GetCommunityResponse - fun toUni(d: GetFederatedInstancesResponse): it.vercruysse.lemmyapi.datatypes.GetFederatedInstancesResponse - fun toUni(d: GetModlogResponse): it.vercruysse.lemmyapi.datatypes.GetModlogResponse fun toUni(d: GetPersonDetailsResponse): it.vercruysse.lemmyapi.datatypes.GetPersonDetailsResponse fun toUni(d: GetPostResponse): it.vercruysse.lemmyapi.datatypes.GetPostResponse - fun toUni(d: GetPostsResponse): it.vercruysse.lemmyapi.datatypes.GetPostsResponse - fun toUni(d: GetReportCountResponse): it.vercruysse.lemmyapi.datatypes.GetReportCountResponse fun toUni(d: GetSiteMetadataResponse): it.vercruysse.lemmyapi.datatypes.GetSiteMetadataResponse fun toUni(d: GetSiteResponse): it.vercruysse.lemmyapi.datatypes.GetSiteResponse - fun toUni(d: GetUnreadCountResponse): it.vercruysse.lemmyapi.datatypes.GetUnreadCountResponse - fun toUni(d: GetUnreadRegistrationApplicationCountResponse): it.vercruysse.lemmyapi.datatypes.GetUnreadRegistrationApplicationCountResponse fun toUni(d: ImageDetails): it.vercruysse.lemmyapi.datatypes.ImageDetails fun toUni(d: Instance): it.vercruysse.lemmyapi.datatypes.Instance fun toUni(d: InstanceWithFederationState): it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState fun toUni(d: Language): it.vercruysse.lemmyapi.datatypes.Language fun toUni(d: LinkMetadata): it.vercruysse.lemmyapi.datatypes.LinkMetadata - fun toUni(d: ListCommentLikesResponse): it.vercruysse.lemmyapi.datatypes.ListCommentLikesResponse - fun toUni(d: ListCommunitiesResponse): it.vercruysse.lemmyapi.datatypes.ListCommunitiesResponse - fun toUni(d: ListMediaResponse): it.vercruysse.lemmyapi.datatypes.ListMediaResponse - fun toUni(d: ListPostLikesResponse): it.vercruysse.lemmyapi.datatypes.ListPostLikesResponse - fun toUni(d: ListRegistrationApplicationsResponse): it.vercruysse.lemmyapi.datatypes.ListRegistrationApplicationsResponse fun toUni(d: LocalImage): it.vercruysse.lemmyapi.datatypes.LocalImage fun toUni(d: LocalImageView): it.vercruysse.lemmyapi.datatypes.LocalImageView fun toUni(d: LocalSite): it.vercruysse.lemmyapi.datatypes.LocalSite @@ -76,26 +50,6 @@ internal interface MapperGenerator0x19x6 { fun toUni(d: LocalUserView): it.vercruysse.lemmyapi.datatypes.LocalUserView fun toUni(d: LoginResponse): it.vercruysse.lemmyapi.datatypes.LoginResponse fun toUni(d: LoginToken): it.vercruysse.lemmyapi.datatypes.LoginToken - fun toUni(d: ModAdd): it.vercruysse.lemmyapi.datatypes.AdminAdd - fun toUni(d: ModAddCommunity): it.vercruysse.lemmyapi.datatypes.ModAddToCommunity - fun toUni(d: ModAddCommunityView): it.vercruysse.lemmyapi.datatypes.ModAddToCommunityView - fun toUni(d: ModAddView): it.vercruysse.lemmyapi.datatypes.AdminAddView - fun toUni(d: ModBan): it.vercruysse.lemmyapi.datatypes.AdminBan - fun toUni(d: ModBanFromCommunity): it.vercruysse.lemmyapi.datatypes.ModBanFromCommunity - fun toUni(d: ModBanFromCommunityView): it.vercruysse.lemmyapi.datatypes.ModBanFromCommunityView - fun toUni(d: ModBanView): it.vercruysse.lemmyapi.datatypes.AdminBanView - fun toUni(d: ModFeaturePost): it.vercruysse.lemmyapi.datatypes.ModFeaturePost - fun toUni(d: ModFeaturePostView): it.vercruysse.lemmyapi.datatypes.ModFeaturePostView - fun toUni(d: ModLockPost): it.vercruysse.lemmyapi.datatypes.ModLockPost - fun toUni(d: ModLockPostView): it.vercruysse.lemmyapi.datatypes.ModLockPostView - fun toUni(d: ModRemoveComment): it.vercruysse.lemmyapi.datatypes.ModRemoveComment - fun toUni(d: ModRemoveCommentView): it.vercruysse.lemmyapi.datatypes.ModRemoveCommentView - fun toUni(d: ModRemoveCommunity): it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunity - fun toUni(d: ModRemoveCommunityView): it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunityView - fun toUni(d: ModRemovePost): it.vercruysse.lemmyapi.datatypes.ModRemovePost - fun toUni(d: ModRemovePostView): it.vercruysse.lemmyapi.datatypes.ModRemovePostView - fun toUni(d: ModTransferCommunity): it.vercruysse.lemmyapi.datatypes.ModTransferCommunity - fun toUni(d: ModTransferCommunityView): it.vercruysse.lemmyapi.datatypes.ModTransferCommunityView fun toUni(d: MyUserInfo): it.vercruysse.lemmyapi.datatypes.MyUserInfo fun toUni(d: Person): it.vercruysse.lemmyapi.datatypes.Person fun toUni(d: PersonView): it.vercruysse.lemmyapi.datatypes.PersonView @@ -168,7 +122,6 @@ internal interface MapperGenerator0x19x6 { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPost): GetPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPosts): GetPosts fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetRegistrationApplication): GetRegistrationApplication - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetReportCount): GetReportCount fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetSiteMetadata): GetSiteMetadata fun fromUni(d: it.vercruysse.lemmyapi.datatypes.HideCommunity): HideCommunity fun fromUni(d: it.vercruysse.lemmyapi.datatypes.HidePost): HidePost diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBase.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBase.kt index 1ab9a181..eee957d7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBase.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBase.kt @@ -3,7 +3,7 @@ package it.vercruysse.lemmyapi import io.github.z4kn4fein.semver.Version import io.ktor.client.* import it.vercruysse.lemmyapi.dto.NodeInfo -import it.vercruysse.lemmyapi.dto.VersionTracker +import it.vercruysse.lemmyapi.enums.VersionTracker import it.vercruysse.lemmyapi.dto.getSupportedEntries import it.vercruysse.lemmyapi.exception.NotSupportedException import it.vercruysse.lemmyapi.pictrs.PictrsService diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Community.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Community.kt index 90944931..1d7a0ddd 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Community.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Community.kt @@ -2,7 +2,7 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.DatatypeRoot import it.vercruysse.lemmyapi.Identity -import it.vercruysse.lemmyapi.dto.CommunityVisibility +import it.vercruysse.lemmyapi.enums.CommunityVisibility import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityActions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityActions.kt index 86e06eeb..2d976856 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityActions.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityActions.kt @@ -2,8 +2,8 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.dto.CommunityFollowerState -import it.vercruysse.lemmyapi.dto.CommunityNotificationsMode +import it.vercruysse.lemmyapi.enums.CommunityFollowerState +import it.vercruysse.lemmyapi.enums.CommunityNotificationsMode import kotlinx.serialization.Serializable @CommonParcelize diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommunity.kt index e31e9b75..c2307317 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommunity.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.dto.CommunityVisibility +import it.vercruysse.lemmyapi.enums.CommunityVisibility import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateSite.kt index 03b3adac..d5152cfc 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateSite.kt @@ -1,14 +1,14 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.dto.PostListingMode -import it.vercruysse.lemmyapi.dto.RegistrationMode -import it.vercruysse.lemmyapi.dto.SortType -import it.vercruysse.lemmyapi.dto.ListingType +import it.vercruysse.lemmyapi.enums.PostListingMode +import it.vercruysse.lemmyapi.enums.RegistrationMode +import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.enums.ListingType import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize -import it.vercruysse.lemmyapi.dto.FederationMode +import it.vercruysse.lemmyapi.enums.FederationMode @CommonParcelize @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditCommunity.kt index c577fb7c..2635ae4e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditCommunity.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.dto.CommunityVisibility +import it.vercruysse.lemmyapi.enums.CommunityVisibility import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditCommunityNotifications.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditCommunityNotifications.kt index e144548b..edaf9ec3 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditCommunityNotifications.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditCommunityNotifications.kt @@ -2,7 +2,7 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.dto.CommunityNotificationsMode +import it.vercruysse.lemmyapi.enums.CommunityNotificationsMode import kotlinx.serialization.Serializable @CommonParcelize diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditPostNotifications.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditPostNotifications.kt index cc9cf241..b67ce441 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditPostNotifications.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditPostNotifications.kt @@ -2,7 +2,7 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.dto.PostNotificationsMode +import it.vercruysse.lemmyapi.enums.PostNotificationsMode import kotlinx.serialization.Serializable @CommonParcelize diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt index 40187992..cbc4fb5d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt @@ -1,10 +1,10 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.dto.PostListingMode -import it.vercruysse.lemmyapi.dto.RegistrationMode -import it.vercruysse.lemmyapi.dto.SortType -import it.vercruysse.lemmyapi.dto.ListingType +import it.vercruysse.lemmyapi.enums.PostListingMode +import it.vercruysse.lemmyapi.enums.RegistrationMode +import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.enums.ListingType import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/FeaturePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/FeaturePost.kt index a3ec0af0..404c8342 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/FeaturePost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/FeaturePost.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.dto.PostFeatureType +import it.vercruysse.lemmyapi.enums.PostFeatureType import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetComments.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetComments.kt index e0548d17..fb50821e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetComments.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetComments.kt @@ -1,8 +1,8 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.dto.CommentSortType -import it.vercruysse.lemmyapi.dto.ListingType +import it.vercruysse.lemmyapi.enums.CommentSortType +import it.vercruysse.lemmyapi.enums.ListingType import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetModlog.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetModlog.kt index 9530cc01..ec698f52 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetModlog.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetModlog.kt @@ -1,11 +1,11 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.dto.ModlogActionType +import it.vercruysse.lemmyapi.enums.ModlogActionType import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize -import it.vercruysse.lemmyapi.dto.ListingType +import it.vercruysse.lemmyapi.enums.ListingType @CommonParcelize @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPersonDetails.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPersonDetails.kt index 7ea8271c..a56d9a47 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPersonDetails.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPersonDetails.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.dto.SortType +import it.vercruysse.lemmyapi.enums.SortType import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPosts.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPosts.kt index df8a8ab4..18435c00 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPosts.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPosts.kt @@ -1,8 +1,8 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.dto.SortType -import it.vercruysse.lemmyapi.dto.ListingType +import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.enums.ListingType import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetRandomCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetRandomCommunity.kt index 184aa172..da3abc53 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetRandomCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetRandomCommunity.kt @@ -2,7 +2,7 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.dto.ListingType +import it.vercruysse.lemmyapi.enums.ListingType import kotlinx.serialization.Serializable @CommonParcelize diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommunities.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommunities.kt index a013b47e..f6a4e84c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommunities.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommunities.kt @@ -1,8 +1,8 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.dto.SortType -import it.vercruysse.lemmyapi.dto.ListingType +import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.enums.ListingType import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListNotifications.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListNotifications.kt index d699a3b2..7afb3784 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListNotifications.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListNotifications.kt @@ -2,7 +2,7 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.dto.NotificationDataType +import it.vercruysse.lemmyapi.enums.NotificationDataType import kotlinx.serialization.Serializable @CommonParcelize diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonContent.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonContent.kt index 0066b370..67d65e8f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonContent.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonContent.kt @@ -2,7 +2,7 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.dto.ListingType +import it.vercruysse.lemmyapi.enums.ListingType import kotlinx.serialization.Serializable @CommonParcelize diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonSaved.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonSaved.kt index 3584c1b4..8c5d3a67 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonSaved.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonSaved.kt @@ -2,7 +2,7 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.dto.ListingType +import it.vercruysse.lemmyapi.enums.ListingType import kotlinx.serialization.Serializable @CommonParcelize diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListReports.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListReports.kt index 460a3f91..d05eb920 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListReports.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListReports.kt @@ -2,7 +2,7 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.dto.ReportType +import it.vercruysse.lemmyapi.enums.ReportType import kotlinx.serialization.Serializable @CommonParcelize diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalSite.kt index 7634ff92..8d6fea03 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalSite.kt @@ -2,14 +2,14 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.DatatypeRoot import it.vercruysse.lemmyapi.Identity -import it.vercruysse.lemmyapi.dto.SortType -import it.vercruysse.lemmyapi.dto.PostListingMode -import it.vercruysse.lemmyapi.dto.RegistrationMode -import it.vercruysse.lemmyapi.dto.ListingType +import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.enums.PostListingMode +import it.vercruysse.lemmyapi.enums.RegistrationMode +import it.vercruysse.lemmyapi.enums.ListingType import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize -import it.vercruysse.lemmyapi.dto.FederationMode +import it.vercruysse.lemmyapi.enums.FederationMode @CommonParcelize @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUser.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUser.kt index e2dc293e..e700aa54 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUser.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUser.kt @@ -2,13 +2,13 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.DatatypeRoot import it.vercruysse.lemmyapi.Identity -import it.vercruysse.lemmyapi.dto.PostListingMode -import it.vercruysse.lemmyapi.dto.ListingType -import it.vercruysse.lemmyapi.dto.SortType +import it.vercruysse.lemmyapi.enums.PostListingMode +import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.enums.SortType import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize -import it.vercruysse.lemmyapi.dto.VoteShow +import it.vercruysse.lemmyapi.enums.VoteShow @CommonParcelize @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkNotificationAsRead.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkNotificationAsRead.kt index 7531987c..fcd65e69 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkNotificationAsRead.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkNotificationAsRead.kt @@ -2,7 +2,7 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.dto.NotificationType +import it.vercruysse.lemmyapi.enums.NotificationType import kotlinx.serialization.Serializable @CommonParcelize diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MultiCommunityFollow.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MultiCommunityFollow.kt index b904623f..98b8c020 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MultiCommunityFollow.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MultiCommunityFollow.kt @@ -2,7 +2,7 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.dto.CommunityFollowerState +import it.vercruysse.lemmyapi.enums.CommunityFollowerState import kotlinx.serialization.Serializable @CommonParcelize diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MultiCommunityView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MultiCommunityView.kt index 1c06f9f2..0225301c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MultiCommunityView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MultiCommunityView.kt @@ -2,7 +2,7 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.dto.CommunityFollowerState +import it.vercruysse.lemmyapi.enums.CommunityFollowerState import kotlinx.serialization.Serializable @CommonParcelize diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Notification.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Notification.kt index b6f2d6fa..688e22eb 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Notification.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Notification.kt @@ -2,7 +2,7 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.dto.NotificationType +import it.vercruysse.lemmyapi.enums.NotificationType import kotlinx.serialization.Serializable @CommonParcelize diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PendingFollow.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PendingFollow.kt index 0cbc24d7..d1644b6f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PendingFollow.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PendingFollow.kt @@ -2,7 +2,7 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.dto.CommunityFollowerState +import it.vercruysse.lemmyapi.enums.CommunityFollowerState import kotlinx.serialization.Serializable @CommonParcelize diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PendingFollowerView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PendingFollowerView.kt index 9b83c6e2..aff2b3ee 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PendingFollowerView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PendingFollowerView.kt @@ -2,7 +2,7 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.dto.CommunityFollowerState +import it.vercruysse.lemmyapi.enums.CommunityFollowerState import kotlinx.serialization.Serializable @CommonParcelize diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostActions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostActions.kt index 0a27243c..14bb0100 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostActions.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostActions.kt @@ -2,7 +2,7 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.dto.PostNotificationsMode +import it.vercruysse.lemmyapi.enums.PostNotificationsMode import kotlinx.serialization.Serializable // TODO: voting changes diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SaveUserSettings.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SaveUserSettings.kt index 4a18374a..1979bdb5 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SaveUserSettings.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SaveUserSettings.kt @@ -1,13 +1,13 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.dto.PostListingMode -import it.vercruysse.lemmyapi.dto.ListingType -import it.vercruysse.lemmyapi.dto.SortType +import it.vercruysse.lemmyapi.enums.PostListingMode +import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.enums.SortType import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize -import it.vercruysse.lemmyapi.dto.VoteShow +import it.vercruysse.lemmyapi.enums.VoteShow @CommonParcelize @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Search.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Search.kt index 06afbc45..3d369924 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Search.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Search.kt @@ -1,9 +1,9 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.dto.ListingType -import it.vercruysse.lemmyapi.dto.SortType -import it.vercruysse.lemmyapi.dto.SearchType +import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.enums.SearchType import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/dto/CustomDataTypes.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/dto/CustomDataTypes.kt index 4c0a934c..305b306f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/dto/CustomDataTypes.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/dto/CustomDataTypes.kt @@ -5,9 +5,8 @@ package it.vercruysse.lemmyapi.dto import io.github.z4kn4fein.semver.Version import io.github.z4kn4fein.semver.toVersion import io.github.z4kn4fein.semver.withoutSuffixes -import it.vercruysse.lemmyapi.* +import it.vercruysse.lemmyapi.enums.VersionTracker import it.vercruysse.lemmyapi.utils.isBetweenVersions -import kotlinx.serialization.Serializable /* * Contains the datatypes that can't be autogenerated, bc Dukat doesn't support unions. @@ -19,238 +18,6 @@ import kotlinx.serialization.Serializable * */ -// GROUP 1 - -@Serializable -enum class SubscribedType { - Subscribed, - NotSubscribed, - Pending, -} -// TODO: denied -@Serializable -enum class CommunityFollowerState { - Accepted, - Pending, - ApprovalRequired, - ; - - companion object { - fun from(d: SubscribedType): CommunityFollowerState? = - when (d) { - SubscribedType.Subscribed -> Accepted - SubscribedType.NotSubscribed -> null - SubscribedType.Pending -> Pending - } - } -} - -@Serializable -enum class PostFeatureType { - Local, - Community, -} - -// GROUP 2 - -@Serializable -enum class ListingType(override val minimumVersion: Version = MINIMUM_API_VERSION, override val maximumVersion: Version? = null) : - VersionTracker { - All, - Local, - Subscribed, - ModeratorView(V0_19_0), - Suggested(V1_0_0), -} - -@Serializable -enum class RegistrationMode(override val minimumVersion: Version = MINIMUM_API_VERSION, override val maximumVersion: Version? = null) : - VersionTracker { - Closed, - RequireApplication, - Open, -} - -@Serializable -enum class SearchType(override val minimumVersion: Version = MINIMUM_API_VERSION, override val maximumVersion: Version? = null) : - VersionTracker { - All, - Comments, - Posts, - Communities, - Users, - Url, -} - -// TODO: changes -@Serializable -enum class ModlogActionType(override val minimumVersion: Version = MINIMUM_API_VERSION, override val maximumVersion: Version? = null) : - VersionTracker { - All, - ModRemovePost, - ModLockPost, - ModFeaturePost, - ModRemoveComment, - ModLockComment(V1_0_0), - - /** Deprecated alias for AdminRemoveCommunity */ - ModRemoveCommunity(MINIMUM_API_VERSION, V1_0_0), - AdminRemoveCommunity(V1_0_0), - ModBanFromCommunity, - - /** Deprecated alias for ModAddToCommunity */ - ModAddCommunity(MINIMUM_API_VERSION, V1_0_0), - ModAddToCommunity(V1_0_0), - ModTransferCommunity, - - /** Deprecated alias for AdminAdd */ - ModAdd(MINIMUM_API_VERSION, V1_0_0), - - /** Deprecated alias for AdminBan */ - ModBan(MINIMUM_API_VERSION, V1_0_0), - AdminAdd(V1_0_0), - AdminBan(V1_0_0), - ModHideCommunity(MINIMUM_API_VERSION, V1_0_0), - ModChangeCommunityVisibility(V1_0_0), - AdminPurgePerson, - AdminPurgeCommunity, - AdminPurgePost, - AdminPurgeComment, - AdminBlockInstance(V1_0_0), - AdminAllowInstance(V1_0_0), -} - -// TODO: fix -// now only "Active" | "Hot" | "New" | "Old" | "Top" | "MostComments" | "NewComments" | "Controversial" | "Scaled" - -@Serializable -enum class SortType(override val minimumVersion: Version = MINIMUM_API_VERSION, override val maximumVersion: Version? = null) : - VersionTracker { - Active, - Hot, - New, - Old, - TopDay, - TopWeek, - TopMonth, - TopYear, - TopAll, - MostComments, - NewComments, - TopHour(V0_18_0), - TopSixHour(V0_18_0), - TopTwelveHour(V0_18_0), - TopThreeMonths("0.18.1".toVersion()), - TopSixMonths("0.18.1".toVersion()), - TopNineMonths("0.18.1".toVersion()), - Controversial(V0_19_0), - Scaled(V0_19_0), -} - -@Serializable -enum class CommentSortType(override val minimumVersion: Version = MINIMUM_API_VERSION, override val maximumVersion: Version? = null) : - VersionTracker { - Hot, - Top, - New, - Old, - Controversial(V0_19_0), -} - -@Serializable -enum class PostListingMode(override val minimumVersion: Version = V0_19_0, override val maximumVersion: Version? = null) : VersionTracker { - List, - Card, - SmallCard, -} - -@Serializable -enum class CommunityVisibility(override val minimumVersion: Version = V0_19_4, override val maximumVersion: Version? = null) : - VersionTracker { - Public, - LocalOnly(V0_19_4, V1_0_0), - Unlisted(V1_0_0), - LocalOnlyPublic(V1_0_0), - LocalOnlyPrivate(V1_0_0), - Private(V1_0_0), -} - -@Serializable -enum class CommunityNotificationsMode(override val minimumVersion: Version = V1_0_0, override val maximumVersion: Version? = null) : VersionTracker { - AllPostsAndComments, - AllPosts, - RepliesAndMentions, - Mute, -} - -@Serializable -enum class PostNotificationsMode(override val minimumVersion: Version = V1_0_0, override val maximumVersion: Version? = null) : VersionTracker { - AllComments, - RepliesAndMentions, - Mute, -} - -@Serializable -enum class VoteShow(override val minimumVersion: Version = MINIMUM_API_VERSION, override val maximumVersion: Version? = null) : VersionTracker { - Show, - ShowForOthers(V1_0_0), - Hide(V0_19_4), -} - -@Serializable -enum class LikeType(override val minimumVersion: Version = V1_0_0, override val maximumVersion: Version? = null) : VersionTracker { - All, - LikedOnly, - DislikedOnly, -} - -@Serializable -enum class FederationMode(override val minimumVersion: Version = V1_0_0, override val maximumVersion: Version? = null) : VersionTracker { - All, - Local, - Disable, -} - -@Serializable -enum class NotificationType(override val minimumVersion: Version = MINIMUM_API_VERSION, override val maximumVersion: Version? = null) : VersionTracker { - Mention, - Reply, - PrivateMessage, - Subscribed(V1_0_0), - ModAction(V1_0_0), -} - -@Serializable -enum class ReportType(override val minimumVersion: Version = V1_0_0, override val maximumVersion: Version? = null) : - VersionTracker { - All, - Posts, - Comments, - PrivateMessages, - Communities, -} - -@Serializable -enum class NotificationDataType(override val minimumVersion: Version = V1_0_0, override val maximumVersion: Version? = null) : VersionTracker { - All, - Reply, - Mention, - PrivateMessage, - Subscribed, -} - -/** - * Tracks the version of the supported entries from this enum - * Use this in conjunction with [getSupportedEntries] - * - * @property minimumVersion The version this entry was added - * @property maximumVersion The version this entry was removed, if null, it is still supported - */ -@Serializable -sealed interface VersionTracker { - val minimumVersion: Version - val maximumVersion: Version? -} /** * Returns the supported entries for the given version. diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/CommentSortType.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/CommentSortType.kt new file mode 100644 index 00000000..dbbf01ef --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/CommentSortType.kt @@ -0,0 +1,16 @@ +package it.vercruysse.lemmyapi.enums + +import io.github.z4kn4fein.semver.Version +import it.vercruysse.lemmyapi.MINIMUM_API_VERSION +import it.vercruysse.lemmyapi.V0_19_0 +import kotlinx.serialization.Serializable + +@Serializable +enum class CommentSortType(override val minimumVersion: Version = MINIMUM_API_VERSION, override val maximumVersion: Version? = null) : + VersionTracker { + Hot, + Top, + New, + Old, + Controversial(V0_19_0), +} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/CommunityFollowerState.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/CommunityFollowerState.kt new file mode 100644 index 00000000..75b8d139 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/CommunityFollowerState.kt @@ -0,0 +1,23 @@ +package it.vercruysse.lemmyapi.enums + +import kotlinx.serialization.Serializable + +// TODO: mapped from previous version + +@Serializable +enum class CommunityFollowerState { + Accepted, + Pending, + ApprovalRequired, + Denied + ; + + companion object { + fun from(d: SubscribedType): CommunityFollowerState? = + when (d) { + SubscribedType.Subscribed -> Accepted + SubscribedType.NotSubscribed -> null + SubscribedType.Pending -> Pending + } + } +} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/CommunityNotificationsMode.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/CommunityNotificationsMode.kt new file mode 100644 index 00000000..5a53f0fd --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/CommunityNotificationsMode.kt @@ -0,0 +1,13 @@ +package it.vercruysse.lemmyapi.enums + +import io.github.z4kn4fein.semver.Version +import it.vercruysse.lemmyapi.V1_0_0 +import kotlinx.serialization.Serializable + +@Serializable +enum class CommunityNotificationsMode(override val minimumVersion: Version = V1_0_0, override val maximumVersion: Version? = null) : VersionTracker { + AllPostsAndComments, + AllPosts, + RepliesAndMentions, + Mute, +} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/CommunityVisibility.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/CommunityVisibility.kt new file mode 100644 index 00000000..84eb8a90 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/CommunityVisibility.kt @@ -0,0 +1,17 @@ +package it.vercruysse.lemmyapi.enums + +import io.github.z4kn4fein.semver.Version +import it.vercruysse.lemmyapi.V0_19_4 +import it.vercruysse.lemmyapi.V1_0_0 +import kotlinx.serialization.Serializable + +@Serializable +enum class CommunityVisibility(override val minimumVersion: Version = V0_19_4, override val maximumVersion: Version? = null) : + VersionTracker { + Public, + LocalOnly(V0_19_4, V1_0_0), + Unlisted(V1_0_0), + LocalOnlyPublic(V1_0_0), + LocalOnlyPrivate(V1_0_0), + Private(V1_0_0), +} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/FederationMode.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/FederationMode.kt new file mode 100644 index 00000000..e6bde343 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/FederationMode.kt @@ -0,0 +1,12 @@ +package it.vercruysse.lemmyapi.enums + +import io.github.z4kn4fein.semver.Version +import it.vercruysse.lemmyapi.V1_0_0 +import kotlinx.serialization.Serializable + +@Serializable +enum class FederationMode(override val minimumVersion: Version = V1_0_0, override val maximumVersion: Version? = null) : VersionTracker { + All, + Local, + Disable, +} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/GetFederatedInstancesKind.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/GetFederatedInstancesKind.kt index 214c959d..62aa81c7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/GetFederatedInstancesKind.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/GetFederatedInstancesKind.kt @@ -2,7 +2,7 @@ package it.vercruysse.lemmyapi.enums import io.github.z4kn4fein.semver.Version import it.vercruysse.lemmyapi.V1_0_0 -import it.vercruysse.lemmyapi.dto.VersionTracker +import it.vercruysse.lemmyapi.enums.VersionTracker import kotlinx.serialization.Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/LikeType.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/LikeType.kt new file mode 100644 index 00000000..de5c2b84 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/LikeType.kt @@ -0,0 +1,12 @@ +package it.vercruysse.lemmyapi.enums + +import io.github.z4kn4fein.semver.Version +import it.vercruysse.lemmyapi.V1_0_0 +import kotlinx.serialization.Serializable + +@Serializable +enum class LikeType(override val minimumVersion: Version = V1_0_0, override val maximumVersion: Version? = null) : VersionTracker { + All, + LikedOnly, + DislikedOnly, +} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/ListingType.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/ListingType.kt new file mode 100644 index 00000000..9664f070 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/ListingType.kt @@ -0,0 +1,17 @@ +package it.vercruysse.lemmyapi.enums + +import io.github.z4kn4fein.semver.Version +import it.vercruysse.lemmyapi.MINIMUM_API_VERSION +import it.vercruysse.lemmyapi.V0_19_0 +import it.vercruysse.lemmyapi.V1_0_0 +import kotlinx.serialization.Serializable + +@Serializable +enum class ListingType(override val minimumVersion: Version = MINIMUM_API_VERSION, override val maximumVersion: Version? = null) : + VersionTracker { + All, + Local, + Subscribed, + ModeratorView(V0_19_0), + Suggested(V1_0_0), +} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/ModlogActionType.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/ModlogActionType.kt new file mode 100644 index 00000000..9198e3e2 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/ModlogActionType.kt @@ -0,0 +1,44 @@ +package it.vercruysse.lemmyapi.enums + +import io.github.z4kn4fein.semver.Version +import it.vercruysse.lemmyapi.MINIMUM_API_VERSION +import it.vercruysse.lemmyapi.V1_0_0 +import kotlinx.serialization.Serializable + +// TODO: changes +@Serializable +enum class ModlogActionType(override val minimumVersion: Version = MINIMUM_API_VERSION, override val maximumVersion: Version? = null) : + VersionTracker { + All, + ModRemovePost, + ModLockPost, + ModFeaturePost, + ModRemoveComment, + ModLockComment(V1_0_0), + + /** Deprecated alias for AdminRemoveCommunity */ + ModRemoveCommunity(MINIMUM_API_VERSION, V1_0_0), + AdminRemoveCommunity(V1_0_0), + ModBanFromCommunity, + + /** Deprecated alias for ModAddToCommunity */ + ModAddCommunity(MINIMUM_API_VERSION, V1_0_0), + ModAddToCommunity(V1_0_0), + ModTransferCommunity, + + /** Deprecated alias for AdminAdd */ + ModAdd(MINIMUM_API_VERSION, V1_0_0), + + /** Deprecated alias for AdminBan */ + ModBan(MINIMUM_API_VERSION, V1_0_0), + AdminAdd(V1_0_0), + AdminBan(V1_0_0), + ModHideCommunity(MINIMUM_API_VERSION, V1_0_0), + ModChangeCommunityVisibility(V1_0_0), + AdminPurgePerson, + AdminPurgeCommunity, + AdminPurgePost, + AdminPurgeComment, + AdminBlockInstance(V1_0_0), + AdminAllowInstance(V1_0_0), +} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/ModlogKind.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/ModlogKind.kt index 487d9f20..2c6d59c7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/ModlogKind.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/ModlogKind.kt @@ -2,7 +2,7 @@ package it.vercruysse.lemmyapi.enums import io.github.z4kn4fein.semver.Version import it.vercruysse.lemmyapi.V1_0_0 -import it.vercruysse.lemmyapi.dto.VersionTracker +import it.vercruysse.lemmyapi.enums.VersionTracker import kotlinx.serialization.Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/MultiCommunityListingType.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/MultiCommunityListingType.kt index 121abdb7..02fe6634 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/MultiCommunityListingType.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/MultiCommunityListingType.kt @@ -2,7 +2,7 @@ package it.vercruysse.lemmyapi.enums import io.github.z4kn4fein.semver.Version import it.vercruysse.lemmyapi.V1_0_0 -import it.vercruysse.lemmyapi.dto.VersionTracker +import it.vercruysse.lemmyapi.enums.VersionTracker import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/NotificationDataType.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/NotificationDataType.kt new file mode 100644 index 00000000..d933aca0 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/NotificationDataType.kt @@ -0,0 +1,14 @@ +package it.vercruysse.lemmyapi.enums + +import io.github.z4kn4fein.semver.Version +import it.vercruysse.lemmyapi.V1_0_0 +import kotlinx.serialization.Serializable + +@Serializable +enum class NotificationDataType(override val minimumVersion: Version = V1_0_0, override val maximumVersion: Version? = null) : VersionTracker { + All, + Reply, + Mention, + PrivateMessage, + Subscribed, +} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/NotificationType.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/NotificationType.kt new file mode 100644 index 00000000..1d86d882 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/NotificationType.kt @@ -0,0 +1,15 @@ +package it.vercruysse.lemmyapi.enums + +import io.github.z4kn4fein.semver.Version +import it.vercruysse.lemmyapi.MINIMUM_API_VERSION +import it.vercruysse.lemmyapi.V1_0_0 +import kotlinx.serialization.Serializable + +@Serializable +enum class NotificationType(override val minimumVersion: Version = MINIMUM_API_VERSION, override val maximumVersion: Version? = null) : VersionTracker { + Mention, + Reply, + PrivateMessage, + Subscribed(V1_0_0), + ModAction(V1_0_0), +} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/PostFeatureType.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/PostFeatureType.kt new file mode 100644 index 00000000..dfba17d7 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/PostFeatureType.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.enums + +import kotlinx.serialization.Serializable + +@Serializable +enum class PostFeatureType { + Local, + Community, +} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/PostListingMode.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/PostListingMode.kt new file mode 100644 index 00000000..e650a60d --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/PostListingMode.kt @@ -0,0 +1,12 @@ +package it.vercruysse.lemmyapi.enums + +import io.github.z4kn4fein.semver.Version +import it.vercruysse.lemmyapi.V0_19_0 +import kotlinx.serialization.Serializable + +@Serializable +enum class PostListingMode(override val minimumVersion: Version = V0_19_0, override val maximumVersion: Version? = null) : VersionTracker { + List, + Card, + SmallCard, +} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/PostNotificationsMode.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/PostNotificationsMode.kt new file mode 100644 index 00000000..f9f2a7c2 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/PostNotificationsMode.kt @@ -0,0 +1,12 @@ +package it.vercruysse.lemmyapi.enums + +import io.github.z4kn4fein.semver.Version +import it.vercruysse.lemmyapi.V1_0_0 +import kotlinx.serialization.Serializable + +@Serializable +enum class PostNotificationsMode(override val minimumVersion: Version = V1_0_0, override val maximumVersion: Version? = null) : VersionTracker { + AllComments, + RepliesAndMentions, + Mute, +} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/RegistrationMode.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/RegistrationMode.kt new file mode 100644 index 00000000..d4ffdb16 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/RegistrationMode.kt @@ -0,0 +1,13 @@ +package it.vercruysse.lemmyapi.enums + +import io.github.z4kn4fein.semver.Version +import it.vercruysse.lemmyapi.MINIMUM_API_VERSION +import kotlinx.serialization.Serializable + +@Serializable +enum class RegistrationMode(override val minimumVersion: Version = MINIMUM_API_VERSION, override val maximumVersion: Version? = null) : + VersionTracker { + Closed, + RequireApplication, + Open, +} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/ReportType.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/ReportType.kt new file mode 100644 index 00000000..70ac9ee6 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/ReportType.kt @@ -0,0 +1,15 @@ +package it.vercruysse.lemmyapi.enums + +import io.github.z4kn4fein.semver.Version +import it.vercruysse.lemmyapi.V1_0_0 +import kotlinx.serialization.Serializable + +@Serializable +enum class ReportType(override val minimumVersion: Version = V1_0_0, override val maximumVersion: Version? = null) : + VersionTracker { + All, + Posts, + Comments, + PrivateMessages, + Communities, +} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/SearchType.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/SearchType.kt new file mode 100644 index 00000000..7dd89685 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/SearchType.kt @@ -0,0 +1,16 @@ +package it.vercruysse.lemmyapi.enums + +import io.github.z4kn4fein.semver.Version +import it.vercruysse.lemmyapi.MINIMUM_API_VERSION +import kotlinx.serialization.Serializable + +@Serializable +enum class SearchType(override val minimumVersion: Version = MINIMUM_API_VERSION, override val maximumVersion: Version? = null) : + VersionTracker { + All, + Comments, + Posts, + Communities, + Users, + Url, +} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/SortType.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/SortType.kt new file mode 100644 index 00000000..013a3a36 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/SortType.kt @@ -0,0 +1,35 @@ +package it.vercruysse.lemmyapi.enums + +import io.github.z4kn4fein.semver.Version +import io.github.z4kn4fein.semver.toVersion +import it.vercruysse.lemmyapi.MINIMUM_API_VERSION +import it.vercruysse.lemmyapi.V0_18_0 +import it.vercruysse.lemmyapi.V0_19_0 +import kotlinx.serialization.Serializable + +// TODO: fix +// now only "Active" | "Hot" | "New" | "Old" | "Top" | "MostComments" | "NewComments" | "Controversial" | "Scaled" + +@Serializable +enum class SortType(override val minimumVersion: Version = MINIMUM_API_VERSION, override val maximumVersion: Version? = null) : + VersionTracker { + Active, + Hot, + New, + Old, + TopDay, + TopWeek, + TopMonth, + TopYear, + TopAll, + MostComments, + NewComments, + TopHour(V0_18_0), + TopSixHour(V0_18_0), + TopTwelveHour(V0_18_0), + TopThreeMonths("0.18.1".toVersion()), + TopSixMonths("0.18.1".toVersion()), + TopNineMonths("0.18.1".toVersion()), + Controversial(V0_19_0), + Scaled(V0_19_0), +} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/SubscribedType.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/SubscribedType.kt new file mode 100644 index 00000000..55e4571b --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/SubscribedType.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.enums + +import kotlinx.serialization.Serializable + +@Serializable +enum class SubscribedType { + Subscribed, + NotSubscribed, + Pending, +} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/VersionTracker.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/VersionTracker.kt new file mode 100644 index 00000000..f63a6ea8 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/VersionTracker.kt @@ -0,0 +1,18 @@ +package it.vercruysse.lemmyapi.enums + +import io.github.z4kn4fein.semver.Version +import it.vercruysse.lemmyapi.dto.getSupportedEntries +import kotlinx.serialization.Serializable + +/** + * Tracks the version of the supported entries from this enum + * Use this in conjunction with [getSupportedEntries] + * + * @property minimumVersion The version this entry was added + * @property maximumVersion The version this entry was removed, if null, it is still supported + */ +@Serializable +sealed interface VersionTracker { + val minimumVersion: Version + val maximumVersion: Version? +} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/VoteShow.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/VoteShow.kt new file mode 100644 index 00000000..8cfa2794 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/VoteShow.kt @@ -0,0 +1,14 @@ +package it.vercruysse.lemmyapi.enums + +import io.github.z4kn4fein.semver.Version +import it.vercruysse.lemmyapi.MINIMUM_API_VERSION +import it.vercruysse.lemmyapi.V0_19_4 +import it.vercruysse.lemmyapi.V1_0_0 +import kotlinx.serialization.Serializable + +@Serializable +enum class VoteShow(override val minimumVersion: Version = MINIMUM_API_VERSION, override val maximumVersion: Version? = null) : VersionTracker { + Show, + ShowForOthers(V1_0_0), + Hide(V0_19_4), +} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt index 6467a72f..bcd4bd71 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt @@ -12,8 +12,8 @@ import it.vercruysse.lemmyapi.datatypes.PagedResponse import it.vercruysse.lemmyapi.datatypes.UnreadCountsResponse import it.vercruysse.lemmyapi.dto.ExportUserSettingsResponse import it.vercruysse.lemmyapi.dto.ImportUserSettings -import it.vercruysse.lemmyapi.dto.NotificationDataType -import it.vercruysse.lemmyapi.dto.NotificationType +import it.vercruysse.lemmyapi.enums.NotificationDataType +import it.vercruysse.lemmyapi.enums.NotificationType import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.GetCaptcha import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.GetReportCount import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.GetUnreadCount diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt index 619b9abf..0358964e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt @@ -8,14 +8,14 @@ import it.vercruysse.lemmyapi.datatypes.Notification import it.vercruysse.lemmyapi.datatypes.NotificationView import it.vercruysse.lemmyapi.datatypes.PersonActions import it.vercruysse.lemmyapi.datatypes.PostActions -import it.vercruysse.lemmyapi.dto.CommentSortType -import it.vercruysse.lemmyapi.dto.CommunityFollowerState -import it.vercruysse.lemmyapi.dto.CommunityVisibility -import it.vercruysse.lemmyapi.dto.FederationMode -import it.vercruysse.lemmyapi.dto.NotificationType -import it.vercruysse.lemmyapi.dto.PostListingMode -import it.vercruysse.lemmyapi.dto.SortType -import it.vercruysse.lemmyapi.dto.VoteShow +import it.vercruysse.lemmyapi.enums.CommentSortType +import it.vercruysse.lemmyapi.enums.CommunityFollowerState +import it.vercruysse.lemmyapi.enums.CommunityVisibility +import it.vercruysse.lemmyapi.enums.FederationMode +import it.vercruysse.lemmyapi.enums.NotificationType +import it.vercruysse.lemmyapi.enums.PostListingMode +import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.enums.VoteShow import it.vercruysse.lemmyapi.utils.toAt import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.LocalUser import it.vercruysse.lemmyapi.datatypes.AddAdmin as LemmyapiDatatypesAddAdmin diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/CommentReplyView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/CommentReplyView.kt index 47db25cc..f9af77e2 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/CommentReplyView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/CommentReplyView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x18.x5.datatypes -import it.vercruysse.lemmyapi.dto.SubscribedType +import it.vercruysse.lemmyapi.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/CommentView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/CommentView.kt index 1fd11a75..eed7b01a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/CommentView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/CommentView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x18.x5.datatypes -import it.vercruysse.lemmyapi.dto.SubscribedType +import it.vercruysse.lemmyapi.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/CommunityView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/CommunityView.kt index e341a8c7..ba44e2c9 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/CommunityView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/CommunityView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x18.x5.datatypes -import it.vercruysse.lemmyapi.dto.SubscribedType +import it.vercruysse.lemmyapi.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/CreateSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/CreateSite.kt index b136b5e2..ee97e3c4 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/CreateSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/CreateSite.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x18.x5.datatypes -import it.vercruysse.lemmyapi.dto.ListingType -import it.vercruysse.lemmyapi.dto.RegistrationMode +import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.enums.RegistrationMode import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/EditSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/EditSite.kt index 52548b07..acbf2a8d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/EditSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/EditSite.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x18.x5.datatypes -import it.vercruysse.lemmyapi.dto.ListingType -import it.vercruysse.lemmyapi.dto.RegistrationMode +import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.enums.RegistrationMode import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/FeaturePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/FeaturePost.kt index ee38d365..03753378 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/FeaturePost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/FeaturePost.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x18.x5.datatypes -import it.vercruysse.lemmyapi.dto.PostFeatureType +import it.vercruysse.lemmyapi.enums.PostFeatureType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/GetComments.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/GetComments.kt index 59cb08a9..1fada4cb 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/GetComments.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/GetComments.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x18.x5.datatypes -import it.vercruysse.lemmyapi.dto.CommentSortType -import it.vercruysse.lemmyapi.dto.ListingType +import it.vercruysse.lemmyapi.enums.CommentSortType +import it.vercruysse.lemmyapi.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/GetModlog.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/GetModlog.kt index 66dcb35c..15f08a12 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/GetModlog.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/GetModlog.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x18.x5.datatypes -import it.vercruysse.lemmyapi.dto.ModlogActionType +import it.vercruysse.lemmyapi.enums.ModlogActionType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/GetPersonDetails.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/GetPersonDetails.kt index 0bea6c7e..81e291e7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/GetPersonDetails.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/GetPersonDetails.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x18.x5.datatypes -import it.vercruysse.lemmyapi.dto.SortType +import it.vercruysse.lemmyapi.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/GetPersonMentions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/GetPersonMentions.kt index b712576d..1dcb4cc2 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/GetPersonMentions.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/GetPersonMentions.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x18.x5.datatypes -import it.vercruysse.lemmyapi.dto.CommentSortType +import it.vercruysse.lemmyapi.enums.CommentSortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/GetPosts.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/GetPosts.kt index 652fa490..cc370e97 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/GetPosts.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/GetPosts.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x18.x5.datatypes -import it.vercruysse.lemmyapi.dto.ListingType -import it.vercruysse.lemmyapi.dto.SortType +import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/GetReplies.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/GetReplies.kt index c51a2cf9..183aabed 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/GetReplies.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/GetReplies.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x18.x5.datatypes -import it.vercruysse.lemmyapi.dto.CommentSortType +import it.vercruysse.lemmyapi.enums.CommentSortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/ListCommunities.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/ListCommunities.kt index ecbf5dc8..9e736786 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/ListCommunities.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/ListCommunities.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x18.x5.datatypes -import it.vercruysse.lemmyapi.dto.ListingType -import it.vercruysse.lemmyapi.dto.SortType +import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/LocalSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/LocalSite.kt index e172fe7c..2d2be074 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/LocalSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/LocalSite.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x18.x5.datatypes -import it.vercruysse.lemmyapi.dto.ListingType -import it.vercruysse.lemmyapi.dto.RegistrationMode +import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.enums.RegistrationMode import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/LocalUser.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/LocalUser.kt index 42711eea..4c11a952 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/LocalUser.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/LocalUser.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x18.x5.datatypes -import it.vercruysse.lemmyapi.dto.ListingType -import it.vercruysse.lemmyapi.dto.SortType +import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/PersonMentionView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/PersonMentionView.kt index 8bef3237..bff817af 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/PersonMentionView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/PersonMentionView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x18.x5.datatypes -import it.vercruysse.lemmyapi.dto.SubscribedType +import it.vercruysse.lemmyapi.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/PostView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/PostView.kt index c640c214..18148d3c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/PostView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/PostView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x18.x5.datatypes -import it.vercruysse.lemmyapi.dto.SubscribedType +import it.vercruysse.lemmyapi.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/SaveUserSettings.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/SaveUserSettings.kt index 5e4cac9c..4fb39c35 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/SaveUserSettings.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/SaveUserSettings.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x18.x5.datatypes -import it.vercruysse.lemmyapi.dto.ListingType -import it.vercruysse.lemmyapi.dto.SortType +import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/Search.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/Search.kt index c9c4d9d4..720920a4 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/Search.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/Search.kt @@ -1,8 +1,8 @@ package it.vercruysse.lemmyapi.v0.x18.x5.datatypes -import it.vercruysse.lemmyapi.dto.ListingType -import it.vercruysse.lemmyapi.dto.SearchType -import it.vercruysse.lemmyapi.dto.SortType +import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.enums.SearchType +import it.vercruysse.lemmyapi.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/SearchResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/SearchResponse.kt index 6cab4926..f123d10d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/SearchResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/SearchResponse.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x18.x5.datatypes -import it.vercruysse.lemmyapi.dto.SearchType +import it.vercruysse.lemmyapi.enums.SearchType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt index 21876a86..66ed27a9 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt @@ -6,13 +6,14 @@ import it.vercruysse.lemmyapi.LemmyApiBaseController import it.vercruysse.lemmyapi.datatypes.ListCustomEmojis import it.vercruysse.lemmyapi.datatypes.ListCustomEmojisResponse import it.vercruysse.lemmyapi.datatypes.ListNotifications -import it.vercruysse.lemmyapi.datatypes.ListNotificationsResponse import it.vercruysse.lemmyapi.datatypes.MarkNotificationAsRead import it.vercruysse.lemmyapi.datatypes.MyUserInfo +import it.vercruysse.lemmyapi.datatypes.PagedResponse +import it.vercruysse.lemmyapi.datatypes.UnreadCountsResponse import it.vercruysse.lemmyapi.dto.ExportUserSettingsResponse import it.vercruysse.lemmyapi.dto.ImportUserSettings -import it.vercruysse.lemmyapi.dto.NotificationDataType -import it.vercruysse.lemmyapi.dto.NotificationType +import it.vercruysse.lemmyapi.enums.NotificationDataType +import it.vercruysse.lemmyapi.enums.NotificationType internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, baseUrl: String, auth: String?) : LemmyApiBaseController(client, actualVersion, baseUrl, auth) { @@ -57,8 +58,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun getModlog( form: it.vercruysse.lemmyapi.datatypes.GetModlog, - ): Result = - api.getModlog(transformer.fromUni(form)).map(transformer::toUni) + ): Result> = notSupported() /** * Search lemmy. @@ -123,8 +123,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun listCommunities( form: it.vercruysse.lemmyapi.datatypes.ListCommunities, - ): Result = - api.listCommunities(transformer.fromUni(form)).map(transformer::toUni) + ): Result> = + api.listCommunities(transformer.fromUni(form)).map { PagedResponse(it.communities.map(transformer::toUni)) } /** * Follow / subscribe to a community. @@ -143,7 +143,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun blockCommunity( form: it.vercruysse.lemmyapi.datatypes.BlockCommunity, - ): Result = + ): Result = api.blockCommunity(transformer.fromUni(form)).map(transformer::toUni) /** @@ -183,7 +183,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun banFromCommunity( form: it.vercruysse.lemmyapi.datatypes.BanFromCommunity, - ): Result = + ): Result = api.banFromCommunity(transformer.fromUni(form)).map(transformer::toUni) /** @@ -201,8 +201,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @GET("federated_instances") */ - override suspend fun getFederatedInstances(): Result = - api.getFederatedInstances().map(transformer::toUni) + override suspend fun getFederatedInstances(form: it.vercruysse.lemmyapi.datatypes.GetFederatedInstances): Result> = notSupported() /** * Get / fetch a post. @@ -237,8 +236,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun getPosts( form: it.vercruysse.lemmyapi.datatypes.GetPosts, - ): Result = - api.getPosts(transformer.fromUni(form.toValidatedForm())).map(transformer::toUni) + ): Result> = + api.getPosts(transformer.fromUni(form.toValidatedForm())).map { PagedResponse(it.posts.map(transformer::toUni)) } /** * Delete a post. @@ -329,39 +328,24 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun listReports( form: it.vercruysse.lemmyapi.datatypes.ListReports, - ): Result = + ): Result> = when (form.type_) { it.vercruysse.lemmyapi.dto.ReportType.Communities -> notSupported() it.vercruysse.lemmyapi.dto.ReportType.Posts -> { api.listPostReports(transformer.fromUniP(form)).map { resp -> - val items = resp.post_reports.map { r -> - it.vercruysse.lemmyapi.datatypes.ReportCombinedView.Post( - transformer.toUni(r), - ) - } - it.vercruysse.lemmyapi.datatypes.ListReportsResponse(items) + PagedResponse(resp.post_reports.map(transformer::toUni)) } } it.vercruysse.lemmyapi.dto.ReportType.Comments -> { api.listCommentReports(transformer.fromUniC(form)).map { resp -> - val items = resp.comment_reports.map { r -> - it.vercruysse.lemmyapi.datatypes.ReportCombinedView.Comment( - transformer.toUni(r), - ) - } - it.vercruysse.lemmyapi.datatypes.ListReportsResponse(items) + PagedResponse(resp.comment_reports.map(transformer::toUni)) } } it.vercruysse.lemmyapi.dto.ReportType.PrivateMessages -> { api.listPrivateMessageReports(transformer.fromUniPm(form)).map { resp -> - val items = resp.private_message_reports.map { r -> - it.vercruysse.lemmyapi.datatypes.ReportCombinedView.PrivateMessage( - transformer.toUni(r), - ) - } - it.vercruysse.lemmyapi.datatypes.ListReportsResponse(items) + PagedResponse(resp.private_message_reports.map(transformer::toUni)) } } @@ -374,30 +358,18 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba val allReports = mutableListOf() allReports.addAll( - postsResp.post_reports.map { r -> - it.vercruysse.lemmyapi.datatypes.ReportCombinedView.Post( - transformer.toUni(r), - ) - }, + postsResp.post_reports.map(transformer::toUni) ) allReports.addAll( - commentsResp.comment_reports.map { r -> - it.vercruysse.lemmyapi.datatypes.ReportCombinedView.Comment( - transformer.toUni(r), - ) - }, + commentsResp.comment_reports.map(transformer::toUni) ) allReports.addAll( - privateMessagesResp.private_message_reports.map { r -> - it.vercruysse.lemmyapi.datatypes.ReportCombinedView.PrivateMessage( - transformer.toUni(r), - ) - }, + privateMessagesResp.private_message_reports.map(transformer::toUni) ) - it.vercruysse.lemmyapi.datatypes.ListReportsResponse(allReports) + PagedResponse(allReports) } } } @@ -449,8 +421,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun getComments( form: it.vercruysse.lemmyapi.datatypes.GetComments, - ): Result = - api.getComments(transformer.fromUni(form)).map(transformer::toUni) + ): Result> = + api.getComments(transformer.fromUni(form)).map { PagedResponse(it.comments.map(transformer::toUni)) } /** * Delete a comment. @@ -606,40 +578,39 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba NotificationType.Mention -> api.markPersonMentionAsRead(transformer.fromUniM(form)).map { } NotificationType.Reply -> api.markCommentReplyAsRead(transformer.fromUniR(form)).map { } NotificationType.PrivateMessage -> api.markPrivateMessageAsRead(transformer.fromUniP(form)).map { } - NotificationType.Subscribed -> notSupported() + NotificationType.Subscribed, NotificationType.ModAction -> notSupported() null -> notSupported() } /** * List notifications. */ - override suspend fun listNotifications(form: ListNotifications): Result = + override suspend fun listNotifications(form: ListNotifications): Result> = when (form.type_) { NotificationDataType.All -> runCatching { - val resReplies = api.getReplies(transformer.fromUniR(form)).map(transformer::toUni).getOrThrow() - val mentionReplies = api.getPersonMentions(transformer.fromUniM(form)).map(transformer::toUni).getOrThrow() - val privateMessages = api.getPrivateMessages(transformer.fromUniP(form)).map(transformer::toUni).getOrThrow() - - ListNotificationsResponse( + val replies = api.getReplies(transformer.fromUniR(form)).getOrThrow().replies.map(transformer::toUni) + val mentionReplies = api.getPersonMentions(transformer.fromUniM(form)).getOrThrow().mentions.map(transformer::toUni) + val privateMessages = api.getPrivateMessages(transformer.fromUniP(form)).getOrThrow().private_messages.map(transformer::toUniPMV) + PagedResponse( buildList { - addAll(resReplies.notifications) - addAll(mentionReplies.notifications) - addAll(privateMessages.notifications) + addAll(replies) + addAll(mentionReplies) + addAll(privateMessages) }, ) } NotificationDataType.Reply -> - api.getReplies(transformer.fromUniR(form)).map(transformer::toUni) + api.getReplies(transformer.fromUniR(form)).map { resp -> PagedResponse(resp.replies.map(transformer::toUni)) } NotificationDataType.Mention -> - api.getPersonMentions(transformer.fromUniM(form)).map(transformer::toUni) + api.getPersonMentions(transformer.fromUniM(form)).map { resp -> PagedResponse(resp.mentions.map(transformer::toUni)) } NotificationDataType.PrivateMessage -> - api.getPrivateMessages(transformer.fromUniP(form)).map(transformer::toUni) + api.getPrivateMessages(transformer.fromUniP(form)).map { resp -> PagedResponse(resp.private_messages.map(transformer::toUniPMV)) } - NotificationDataType.Subscribed -> Result.success(ListNotificationsResponse(emptyList())) + NotificationDataType.Subscribed -> Result.success(PagedResponse(emptyList())) } /** @@ -649,7 +620,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun banPerson( form: it.vercruysse.lemmyapi.datatypes.BanPerson, - ): Result = + ): Result = api.banPerson(transformer.fromUni(form)).map(transformer::toUni) /** @@ -657,8 +628,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @GET("user/banned") */ - override suspend fun getBannedPersons(): Result = - api.getBannedPersons().map(transformer::toUni) + override suspend fun getBannedPersons(): Result> = + api.getBannedPersons().map { resp -> PagedResponse(resp.banned.map(transformer::toUni)) } /** * Block a person. @@ -667,7 +638,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun blockPerson( form: it.vercruysse.lemmyapi.datatypes.BlockPerson, - ): Result = + ): Result = api.blockPerson(transformer.fromUni(form)).map(transformer::toUni) /** @@ -728,23 +699,16 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba ): Result = api.changePassword(transformer.fromUni(form)).map(transformer::toUni) - /** - * Get counts for your reports - * - * @GET("user/report_count") - */ - override suspend fun getReportCount( - form: it.vercruysse.lemmyapi.datatypes.GetReportCount, - ): Result = - api.getReportCount(transformer.fromUni(form)).map(transformer::toUni) - - /** - * Get your unread counts - * - * @GET("user/unread_count") - */ - override suspend fun getUnreadCount(): Result = - api.getUnreadCount().map(transformer::toUni) + override suspend fun getUnreadCounts(): Result = runCatching { + val d = api.getUnreadCount().getOrThrow() + val reportCount = api.getReportCount(it.vercruysse.lemmyapi.v0.x19.x0.datatypes.GetReportCount()).getOrNull() + val applicationCount = api.getUnreadRegistrationApplicationCount().getOrNull() + UnreadCountsResponse( + notification_count = d.replies + d.mentions + d.private_messages, + report_count = (reportCount?.post_reports ?: 0L) + (reportCount?.comment_reports ?: 0L) + (reportCount?.private_message_reports ?: 0L), + registration_application_count = applicationCount?.registration_applications, + ) + } /** * Verify your email @@ -779,14 +743,6 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba ): Result = api.addAdmin(transformer.fromUni(form)).map(transformer::toUni) - /** - * Get the unread registration applications count. - * - * @GET("admin/registration_application/count") - */ - override suspend fun getUnreadRegistrationApplicationCount(): Result = - api.getUnreadRegistrationApplicationCount().map(transformer::toUni) - /** * List the registration applications. * @@ -794,8 +750,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun listRegistrationApplications( form: it.vercruysse.lemmyapi.datatypes.ListRegistrationApplications, - ): Result = - api.listRegistrationApplications(transformer.fromUni(form)).map(transformer::toUni) + ): Result> = + api.listRegistrationApplications(transformer.fromUni(form)).map { resp -> PagedResponse(resp.registration_applications.map(transformer::toUni)) } /** * Approve a registration application @@ -957,7 +913,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun listPostLikes( form: it.vercruysse.lemmyapi.datatypes.ListPostLikes, - ): Result = + ): Result> = notSupported() /** @@ -967,7 +923,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun listCommentLikes( form: it.vercruysse.lemmyapi.datatypes.ListCommentLikes, - ): Result = + ): Result> = notSupported() /** @@ -977,7 +933,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun listMedia( form: it.vercruysse.lemmyapi.datatypes.ListMedia, - ): Result = + ): Result> = notSupported() /** @@ -987,7 +943,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun listAllMedia( form: it.vercruysse.lemmyapi.datatypes.ListMedia, - ): Result = + ): Result> = notSupported() /** diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt index 8270732d..251d2b35 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt @@ -39,11 +39,10 @@ internal interface MapperGenerator { fun toUni(d: AdminPurgePersonView): it.vercruysse.lemmyapi.datatypes.AdminPurgePersonView fun toUni(d: AdminPurgePost): it.vercruysse.lemmyapi.datatypes.AdminPurgePost fun toUni(d: AdminPurgePostView): it.vercruysse.lemmyapi.datatypes.AdminPurgePostView - fun toUni(d: BanFromCommunityResponse): it.vercruysse.lemmyapi.datatypes.BanFromCommunityResponse - fun toUni(d: BannedPersonsResponse): it.vercruysse.lemmyapi.datatypes.BannedPersonsResponse - fun toUni(d: BanPersonResponse): it.vercruysse.lemmyapi.datatypes.BanPersonResponse - fun toUni(d: BlockCommunityResponse): it.vercruysse.lemmyapi.datatypes.BlockCommunityResponse - fun toUni(d: BlockPersonResponse): it.vercruysse.lemmyapi.datatypes.BlockPersonResponse + fun toUni(d: BanFromCommunityResponse): it.vercruysse.lemmyapi.datatypes.PersonResponse + fun toUni(d: BanPersonResponse): it.vercruysse.lemmyapi.datatypes.PersonResponse + fun toUni(d: BlockCommunityResponse): it.vercruysse.lemmyapi.datatypes.CommunityResponse + fun toUni(d: BlockPersonResponse): it.vercruysse.lemmyapi.datatypes.PersonResponse fun toUni(d: CaptchaResponse): it.vercruysse.lemmyapi.datatypes.CaptchaResponse fun toUni(d: Comment, counts: CommentAggregates): it.vercruysse.lemmyapi.datatypes.Comment @@ -63,25 +62,13 @@ internal interface MapperGenerator { fun toUni(d: FederatedInstances): it.vercruysse.lemmyapi.datatypes.FederatedInstances fun toUni(d: GenerateTotpSecretResponse): it.vercruysse.lemmyapi.datatypes.GenerateTotpSecretResponse fun toUni(d: GetCaptchaResponse): it.vercruysse.lemmyapi.datatypes.GetCaptchaResponse - fun toUni(d: GetCommentsResponse): it.vercruysse.lemmyapi.datatypes.GetCommentsResponse fun toUni(d: GetCommunityResponse): it.vercruysse.lemmyapi.datatypes.GetCommunityResponse - fun toUni(d: GetFederatedInstancesResponse): it.vercruysse.lemmyapi.datatypes.GetFederatedInstancesResponse - fun toUni(d: GetModlogResponse): it.vercruysse.lemmyapi.datatypes.GetModlogResponse fun toUni(d: GetPersonDetailsResponse): it.vercruysse.lemmyapi.datatypes.GetPersonDetailsResponse fun toUni(d: GetPostResponse): it.vercruysse.lemmyapi.datatypes.GetPostResponse - fun toUni(d: GetPostsResponse): it.vercruysse.lemmyapi.datatypes.GetPostsResponse - fun toUni(d: GetReportCountResponse): it.vercruysse.lemmyapi.datatypes.GetReportCountResponse fun toUni(d: GetSiteMetadataResponse): it.vercruysse.lemmyapi.datatypes.GetSiteMetadataResponse - - fun toUni(d: GetUnreadCountResponse): it.vercruysse.lemmyapi.datatypes.GetUnreadCountResponse - fun toUni( - d: GetUnreadRegistrationApplicationCountResponse, - ): it.vercruysse.lemmyapi.datatypes.GetUnreadRegistrationApplicationCountResponse fun toUni(d: Instance): it.vercruysse.lemmyapi.datatypes.Instance fun toUni(d: InstanceWithFederationState): it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState fun toUni(d: Language): it.vercruysse.lemmyapi.datatypes.Language - fun toUni(d: ListCommunitiesResponse): it.vercruysse.lemmyapi.datatypes.ListCommunitiesResponse - fun toUni(d: ListRegistrationApplicationsResponse): it.vercruysse.lemmyapi.datatypes.ListRegistrationApplicationsResponse fun toUni(d: LocalSiteRateLimit): it.vercruysse.lemmyapi.datatypes.LocalSiteRateLimit fun toUni(d: LocalUser): it.vercruysse.lemmyapi.datatypes.LocalUser @@ -182,7 +169,7 @@ internal interface MapperGenerator { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPersonDetails): GetPersonDetails fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPost): GetPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPosts): GetPosts - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetReportCount): GetReportCount + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetSiteMetadata): GetSiteMetadata fun fromUni(d: it.vercruysse.lemmyapi.datatypes.HideCommunity): HideCommunity fun fromUniC(d: it.vercruysse.lemmyapi.datatypes.ListReports): ListCommentReports diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt index 0b758833..b93bb8c6 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt @@ -2,21 +2,20 @@ package it.vercruysse.lemmyapi.v0.x19.x0 import it.vercruysse.lemmyapi.datatypes.CommentActions import it.vercruysse.lemmyapi.datatypes.CommunityActions -import it.vercruysse.lemmyapi.datatypes.ListNotificationsResponse import it.vercruysse.lemmyapi.datatypes.MarkNotificationAsRead import it.vercruysse.lemmyapi.datatypes.Notification import it.vercruysse.lemmyapi.datatypes.NotificationData import it.vercruysse.lemmyapi.datatypes.NotificationView import it.vercruysse.lemmyapi.datatypes.PersonActions import it.vercruysse.lemmyapi.datatypes.PostActions -import it.vercruysse.lemmyapi.dto.CommentSortType -import it.vercruysse.lemmyapi.dto.CommunityFollowerState -import it.vercruysse.lemmyapi.dto.CommunityVisibility -import it.vercruysse.lemmyapi.dto.FederationMode -import it.vercruysse.lemmyapi.dto.NotificationType -import it.vercruysse.lemmyapi.dto.PostListingMode -import it.vercruysse.lemmyapi.dto.SortType -import it.vercruysse.lemmyapi.dto.VoteShow +import it.vercruysse.lemmyapi.enums.CommentSortType +import it.vercruysse.lemmyapi.enums.CommunityFollowerState +import it.vercruysse.lemmyapi.enums.CommunityVisibility +import it.vercruysse.lemmyapi.enums.FederationMode +import it.vercruysse.lemmyapi.enums.NotificationType +import it.vercruysse.lemmyapi.enums.PostListingMode +import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.enums.VoteShow import it.vercruysse.lemmyapi.utils.toAt import it.vercruysse.lemmyapi.datatypes.AddAdmin as LemmyapiDatatypesAddAdmin import it.vercruysse.lemmyapi.datatypes.AddAdminResponse as LemmyapiDatatypesAddAdminResponse @@ -38,14 +37,9 @@ import it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunity as LemmyapiDatatype import it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunityView as LemmyapiDatatypesModRemoveCommunityView import it.vercruysse.lemmyapi.datatypes.ApproveRegistrationApplication as LemmyapiDatatypesApproveRegistrationApplication import it.vercruysse.lemmyapi.datatypes.BanFromCommunity as LemmyapiDatatypesBanFromCommunity -import it.vercruysse.lemmyapi.datatypes.BanFromCommunityResponse as LemmyapiDatatypesBanFromCommunityResponse import it.vercruysse.lemmyapi.datatypes.BanPerson as LemmyapiDatatypesBanPerson -import it.vercruysse.lemmyapi.datatypes.BanPersonResponse as LemmyapiDatatypesBanPersonResponse -import it.vercruysse.lemmyapi.datatypes.BannedPersonsResponse as LemmyapiDatatypesBannedPersonsResponse import it.vercruysse.lemmyapi.datatypes.BlockCommunity as LemmyapiDatatypesBlockCommunity -import it.vercruysse.lemmyapi.datatypes.BlockCommunityResponse as LemmyapiDatatypesBlockCommunityResponse import it.vercruysse.lemmyapi.datatypes.BlockPerson as LemmyapiDatatypesBlockPerson -import it.vercruysse.lemmyapi.datatypes.BlockPersonResponse as LemmyapiDatatypesBlockPersonResponse import it.vercruysse.lemmyapi.datatypes.CaptchaResponse as LemmyapiDatatypesCaptchaResponse import it.vercruysse.lemmyapi.datatypes.ChangePassword as LemmyapiDatatypesChangePassword import it.vercruysse.lemmyapi.datatypes.Comment as LemmyapiDatatypesComment @@ -94,35 +88,24 @@ import it.vercruysse.lemmyapi.datatypes.GenerateTotpSecretResponse as LemmyapiDa import it.vercruysse.lemmyapi.datatypes.GetCaptchaResponse as LemmyapiDatatypesGetCaptchaResponse import it.vercruysse.lemmyapi.datatypes.GetComment as LemmyapiDatatypesGetComment import it.vercruysse.lemmyapi.datatypes.GetComments as LemmyapiDatatypesGetComments -import it.vercruysse.lemmyapi.datatypes.GetCommentsResponse as LemmyapiDatatypesGetCommentsResponse import it.vercruysse.lemmyapi.datatypes.GetCommunity as LemmyapiDatatypesGetCommunity import it.vercruysse.lemmyapi.datatypes.GetCommunityResponse as LemmyapiDatatypesGetCommunityResponse -import it.vercruysse.lemmyapi.datatypes.GetFederatedInstancesResponse as LemmyapiDatatypesGetFederatedInstancesResponse import it.vercruysse.lemmyapi.datatypes.GetModlog as LemmyapiDatatypesGetModlog -import it.vercruysse.lemmyapi.datatypes.GetModlogResponse as LemmyapiDatatypesGetModlogResponse import it.vercruysse.lemmyapi.datatypes.GetPersonDetails as LemmyapiDatatypesGetPersonDetails import it.vercruysse.lemmyapi.datatypes.GetPersonDetailsResponse as LemmyapiDatatypesGetPersonDetailsResponse import it.vercruysse.lemmyapi.datatypes.GetPost as LemmyapiDatatypesGetPost import it.vercruysse.lemmyapi.datatypes.GetPostResponse as LemmyapiDatatypesGetPostResponse import it.vercruysse.lemmyapi.datatypes.GetPosts as LemmyapiDatatypesGetPosts -import it.vercruysse.lemmyapi.datatypes.GetPostsResponse as LemmyapiDatatypesGetPostsResponse -import it.vercruysse.lemmyapi.datatypes.GetReportCount as LemmyapiDatatypesGetReportCount -import it.vercruysse.lemmyapi.datatypes.GetReportCountResponse as LemmyapiDatatypesGetReportCountResponse import it.vercruysse.lemmyapi.datatypes.GetSiteMetadata as LemmyapiDatatypesGetSiteMetadata import it.vercruysse.lemmyapi.datatypes.GetSiteMetadataResponse as LemmyapiDatatypesGetSiteMetadataResponse import it.vercruysse.lemmyapi.datatypes.GetSiteResponse as LemmyapiDatatypesGetSiteResponse -import it.vercruysse.lemmyapi.datatypes.GetUnreadCountResponse as LemmyapiDatatypesGetUnreadCountResponse -import it.vercruysse.lemmyapi.datatypes.GetUnreadRegistrationApplicationCountResponse as LemmyapiDatatypesGetUnreadRegistrationApplicationCountResponse import it.vercruysse.lemmyapi.datatypes.HideCommunity as LemmyapiDatatypesHideCommunity import it.vercruysse.lemmyapi.datatypes.Instance as LemmyapiDatatypesInstance import it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState as LemmyapiDatatypesInstanceWithFederationState import it.vercruysse.lemmyapi.datatypes.Language as LemmyapiDatatypesLanguage import it.vercruysse.lemmyapi.datatypes.ListCommunities as LemmyapiDatatypesListCommunities -import it.vercruysse.lemmyapi.datatypes.ListCommunitiesResponse as LemmyapiDatatypesListCommunitiesResponse import it.vercruysse.lemmyapi.datatypes.ListNotifications as LemmyapiDatatypesListNotifications -import it.vercruysse.lemmyapi.datatypes.ListNotificationsResponse as LemmyapiDatatypesListNotificationsResponse import it.vercruysse.lemmyapi.datatypes.ListRegistrationApplications as LemmyapiDatatypesListRegistrationApplications -import it.vercruysse.lemmyapi.datatypes.ListRegistrationApplicationsResponse as LemmyapiDatatypesListRegistrationApplicationsResponse import it.vercruysse.lemmyapi.datatypes.LocalSite as LemmyapiDatatypesLocalSite import it.vercruysse.lemmyapi.datatypes.LocalSiteRateLimit as LemmyapiDatatypesLocalSiteRateLimit import it.vercruysse.lemmyapi.datatypes.LocalUser as LemmyapiDatatypesLocalUser @@ -214,7 +197,6 @@ import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.BanFromCommunity as X0Datatype import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.BanFromCommunityResponse as X0DatatypesBanFromCommunityResponse import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.BanPerson as X0DatatypesBanPerson import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.BanPersonResponse as X0DatatypesBanPersonResponse -import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.BannedPersonsResponse as X0DatatypesBannedPersonsResponse import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.BlockCommunity as X0DatatypesBlockCommunity import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.BlockCommunityResponse as X0DatatypesBlockCommunityResponse import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.BlockInstance as X0DatatypesBlockInstance @@ -271,12 +253,9 @@ import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.GenerateTotpSecretResponse as import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.GetCaptchaResponse as X0DatatypesGetCaptchaResponse import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.GetComment as X0DatatypesGetComment import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.GetComments as X0DatatypesGetComments -import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.GetCommentsResponse as X0DatatypesGetCommentsResponse import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.GetCommunity as X0DatatypesGetCommunity import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.GetCommunityResponse as X0DatatypesGetCommunityResponse -import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.GetFederatedInstancesResponse as X0DatatypesGetFederatedInstancesResponse import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.GetModlog as X0DatatypesGetModlog -import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.GetModlogResponse as X0DatatypesGetModlogResponse import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.GetPersonDetails as X0DatatypesGetPersonDetails import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.GetPersonDetailsResponse as X0DatatypesGetPersonDetailsResponse import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.GetPersonMentions as X0DatatypesGetPersonMentions @@ -284,28 +263,21 @@ import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.GetPersonMentionsResponse as X import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.GetPost as X0DatatypesGetPost import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.GetPostResponse as X0DatatypesGetPostResponse import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.GetPosts as X0DatatypesGetPosts -import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.GetPostsResponse as X0DatatypesGetPostsResponse import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.GetPrivateMessages as X0DatatypesGetPrivateMessages import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.GetReplies as X0DatatypesGetReplies import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.GetRepliesResponse as X0DatatypesGetRepliesResponse -import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.GetReportCount as X0DatatypesGetReportCount -import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.GetReportCountResponse as X0DatatypesGetReportCountResponse import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.GetSiteMetadata as X0DatatypesGetSiteMetadata import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.GetSiteMetadataResponse as X0DatatypesGetSiteMetadataResponse import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.GetSiteResponse as X0DatatypesGetSiteResponse -import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.GetUnreadCountResponse as X0DatatypesGetUnreadCountResponse -import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.GetUnreadRegistrationApplicationCountResponse as X0DatatypesGetUnreadRegistrationApplicationCountResponse import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.HideCommunity as X0DatatypesHideCommunity import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.Instance as X0DatatypesInstance import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.InstanceWithFederationState as X0DatatypesInstanceWithFederationState import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.Language as X0DatatypesLanguage import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.ListCommentReports as X0DatatypesListCommentReports import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.ListCommunities as X0DatatypesListCommunities -import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.ListCommunitiesResponse as X0DatatypesListCommunitiesResponse import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.ListPostReports as X0DatatypesListPostReports import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.ListPrivateMessageReports as X0DatatypesListPrivateMessageReports import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.ListRegistrationApplications as X0DatatypesListRegistrationApplications -import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.ListRegistrationApplicationsResponse as X0DatatypesListRegistrationApplicationsResponse import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.LocalSite as X0DatatypesLocalSite import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.LocalSiteRateLimit as X0DatatypesLocalSiteRateLimit import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.LocalUser as X0DatatypesLocalUser @@ -459,6 +431,7 @@ internal class Transformer : MapperGenerator { report_count = -1, unresolved_report_count = -1, local_removed = false, + last_refreshed_at = "", ) override fun toUni(d: X0DatatypesCommunityView): LemmyapiDatatypesCommunityView = @@ -631,32 +604,17 @@ internal class Transformer : MapperGenerator { community = this.toUni(d = d.community, counts = X0DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), ) - override fun toUni(d: X0DatatypesBanFromCommunityResponse): LemmyapiDatatypesBanFromCommunityResponse = LemmyapiDatatypesBanFromCommunityResponse( - person_view = this.toUni(d = d.person_view), - banned = d.banned, - ) + override fun toUni(d: X0DatatypesBanFromCommunityResponse): it.vercruysse.lemmyapi.datatypes.PersonResponse = + it.vercruysse.lemmyapi.datatypes.PersonResponse(person_view = this.toUni(d = d.person_view)) - override fun toUni(d: X0DatatypesBannedPersonsResponse): LemmyapiDatatypesBannedPersonsResponse = - LemmyapiDatatypesBannedPersonsResponse( - banned = d.banned.map { this.toUni(d = it) }, - ) + override fun toUni(d: X0DatatypesBanPersonResponse): it.vercruysse.lemmyapi.datatypes.PersonResponse = + it.vercruysse.lemmyapi.datatypes.PersonResponse(person_view = this.toUni(d = d.person_view)) - override fun toUni(d: X0DatatypesBanPersonResponse): LemmyapiDatatypesBanPersonResponse = - LemmyapiDatatypesBanPersonResponse( - person_view = this.toUni(d = d.person_view), - banned = d.banned, - ) + override fun toUni(d: X0DatatypesBlockCommunityResponse): it.vercruysse.lemmyapi.datatypes.CommunityResponse = + it.vercruysse.lemmyapi.datatypes.CommunityResponse(community_view = this.toUni(d = d.community_view), moderators = emptyList()) - override fun toUni(d: X0DatatypesBlockCommunityResponse): LemmyapiDatatypesBlockCommunityResponse = LemmyapiDatatypesBlockCommunityResponse( - community_view = this.toUni(d = d.community_view), - blocked = d.blocked, - ) - - override fun toUni(d: X0DatatypesBlockPersonResponse): LemmyapiDatatypesBlockPersonResponse = - LemmyapiDatatypesBlockPersonResponse( - person_view = this.toUni(d = d.person_view), - blocked = d.blocked, - ) + override fun toUni(d: X0DatatypesBlockPersonResponse): it.vercruysse.lemmyapi.datatypes.PersonResponse = + it.vercruysse.lemmyapi.datatypes.PersonResponse(person_view = this.toUni(d = d.person_view)) override fun toUni(d: X0DatatypesCaptchaResponse): LemmyapiDatatypesCaptchaResponse = LemmyapiDatatypesCaptchaResponse( @@ -773,11 +731,6 @@ internal class Transformer : MapperGenerator { ok = d.ok?.let { this.toUni(d = it) }, ) - override fun toUni(d: X0DatatypesGetCommentsResponse): LemmyapiDatatypesGetCommentsResponse = - LemmyapiDatatypesGetCommentsResponse( - comments = d.comments.map { this.toUni(d = it) }, - ) - override fun toUni(d: X0DatatypesGetCommunityResponse): LemmyapiDatatypesGetCommunityResponse = LemmyapiDatatypesGetCommunityResponse( community_view = this.toUni(d = d.community_view), @@ -786,131 +739,12 @@ internal class Transformer : MapperGenerator { discussion_languages = d.discussion_languages, ) - override fun toUni(d: X0DatatypesGetFederatedInstancesResponse): LemmyapiDatatypesGetFederatedInstancesResponse = - LemmyapiDatatypesGetFederatedInstancesResponse( - federated_instances = d.federated_instances?.let { this.toUni(d = it) }, - ) - - override fun toUni(d: X0DatatypesGetModlogResponse): LemmyapiDatatypesGetModlogResponse { - val modlogList = mutableListOf() - - // Add ModRemovePost entries - modlogList.addAll( - d.removed_posts.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemovePost(mod_remove_post = this.toUni(d = view)) - }, - ) - - // Add ModLockPost entries - modlogList.addAll( - d.locked_posts.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModLockPost(mod_lock_post = this.toUni(d = view)) - }, - ) - - // Add ModFeaturePost entries - modlogList.addAll( - d.featured_posts.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModFeaturePost(mod_feature_post = this.toUni(d = view)) - }, - ) - - // Add ModRemoveComment entries - modlogList.addAll( - d.removed_comments.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemoveComment(mod_remove_comment = this.toUni(d = view)) - }, - ) - - // Add ModRemoveCommunity entries - modlogList.addAll( - d.removed_communities.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminRemoveCommunity(admin_remove_community = this.toUni(d = view)) - }, - ) - - // Add ModBanFromCommunity entries - modlogList.addAll( - d.banned_from_community.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModBanFromCommunity(mod_ban_from_community = this.toUni(d = view)) - }, - ) - - // Add ModBan entries - modlogList.addAll( - d.banned.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminBan(admin_ban = this.toUni(d = view)) - }, - ) - - // Add ModAddCommunity entries - modlogList.addAll( - d.added_to_community.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModAddToCommunity(mod_add_to_community = this.toUni(d = view)) - }, - ) - - // Add ModTransferCommunity entries - modlogList.addAll( - d.transferred_to_community.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModTransferCommunity(mod_transfer_community = this.toUni(d = view)) - }, - ) - - // Add ModAdd entries - modlogList.addAll( - d.added.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminAdd(admin_add = this.toUni(d = view)) - }, - ) - - // Add AdminPurgePerson entries - modlogList.addAll( - d.admin_purged_persons.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgePerson(admin_purge_person = this.toUni(d = view)) - }, - ) - - // Add AdminPurgeCommunity entries - modlogList.addAll( - d.admin_purged_communities.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgeCommunity(admin_purge_community = this.toUni(d = view)) - }, - ) - - // Add AdminPurgePost entries - modlogList.addAll( - d.admin_purged_posts.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgePost(admin_purge_post = this.toUni(d = view)) - }, - ) - - // Add AdminPurgeComment entries - modlogList.addAll( - d.admin_purged_comments.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgeComment(admin_purge_comment = this.toUni(d = view)) - }, - ) - - // Add ModHideCommunity entries (mapped to ModChangeCommunityVisibility) - modlogList.addAll( - d.hidden_communities.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModChangeCommunityVisibility(mod_change_community_visibility = this.toUni(d = view)) - }, - ) - - return it.vercruysse.lemmyapi.datatypes.GetModlogResponse( - modlog = modlogList, - next_page = null, - prev_page = null, - ) - } - override fun toUni(d: X0DatatypesGetPersonDetailsResponse): LemmyapiDatatypesGetPersonDetailsResponse = LemmyapiDatatypesGetPersonDetailsResponse( person_view = this.toUni(d = d.person_view), comments = d.comments.map { this.toUni(d = it) }, posts = d.posts.map { this.toUni(d = it) }, moderates = d.moderates.map { this.toUni(d = it) }, + multi_communities_created = emptyList() ) override fun toUni(d: X0DatatypesGetPostResponse): LemmyapiDatatypesGetPostResponse = @@ -921,17 +755,6 @@ internal class Transformer : MapperGenerator { cross_posts = d.cross_posts.map { this.toUni(d = it) }, ) - override fun toUni(d: X0DatatypesGetPostsResponse): LemmyapiDatatypesGetPostsResponse = - LemmyapiDatatypesGetPostsResponse( - posts = d.posts.map { this.toUni(d = it) }, - next_page = d.next_page, - ) - - fun toUni(d: X0DatatypesGetRepliesResponse): LemmyapiDatatypesListNotificationsResponse = - ListNotificationsResponse( - notifications = d.replies.map { this.toUni(d = it) }, - ) - fun toUni(d: X0DatatypesCommentReplyView): NotificationView = NotificationView( notification = Notification( @@ -966,11 +789,6 @@ internal class Transformer : MapperGenerator { community_actions = CommunityActions(null, CommunityFollowerState.from(d.subscribed)), ) - fun toUni(d: X0DatatypesGetPersonMentionsResponse): LemmyapiDatatypesListNotificationsResponse = - LemmyapiDatatypesListNotificationsResponse( - notifications = d.mentions.map { this.toUni(d = it) }, - ) - fun toUni(d: X0DatatypesPersonMentionView): NotificationView = NotificationView( notification = Notification( @@ -1005,11 +823,6 @@ internal class Transformer : MapperGenerator { community_actions = CommunityActions(null, CommunityFollowerState.from(d.subscribed)), ) - fun toUni(d: X0DatatypesPrivateMessagesResponse): LemmyapiDatatypesListNotificationsResponse = - LemmyapiDatatypesListNotificationsResponse( - notifications = d.private_messages.map { this.toUniPMV(d = it) }, - ) - fun toUniPMV(d: X0DatatypesPrivateMessageView): NotificationView = NotificationView( notification = Notification( @@ -1024,23 +837,10 @@ internal class Transformer : MapperGenerator { ), ) - override fun toUni(d: X0DatatypesGetReportCountResponse): LemmyapiDatatypesGetReportCountResponse = LemmyapiDatatypesGetReportCountResponse( - count = d.post_reports + d.comment_reports + (d.private_message_reports ?: 0), - ) - override fun toUni(d: X0DatatypesGetSiteMetadataResponse): LemmyapiDatatypesGetSiteMetadataResponse = LemmyapiDatatypesGetSiteMetadataResponse( metadata = this.toUni(d = d.metadata), ) - override fun toUni(d: X0DatatypesGetUnreadCountResponse): LemmyapiDatatypesGetUnreadCountResponse = LemmyapiDatatypesGetUnreadCountResponse( - count = d.replies + d.mentions + d.private_messages, - ) - - override fun toUni(d: X0DatatypesGetUnreadRegistrationApplicationCountResponse): LemmyapiDatatypesGetUnreadRegistrationApplicationCountResponse = - LemmyapiDatatypesGetUnreadRegistrationApplicationCountResponse( - registration_applications = d.registration_applications, - ) - override fun toUni(d: X0DatatypesInstance): LemmyapiDatatypesInstance = LemmyapiDatatypesInstance( id = d.id, domain = d.domain, @@ -1066,15 +866,6 @@ internal class Transformer : MapperGenerator { name = d.name, ) - override fun toUni(d: X0DatatypesListCommunitiesResponse): LemmyapiDatatypesListCommunitiesResponse = LemmyapiDatatypesListCommunitiesResponse( - communities = d.communities.map { this.toUni(d = it) }, - ) - - override fun toUni(d: X0DatatypesListRegistrationApplicationsResponse): LemmyapiDatatypesListRegistrationApplicationsResponse = - LemmyapiDatatypesListRegistrationApplicationsResponse( - registration_applications = d.registration_applications.map { this.toUni(d = it) }, - ) - override fun toUni(d: X0DatatypesLocalSiteRateLimit): LemmyapiDatatypesLocalSiteRateLimit = LemmyapiDatatypesLocalSiteRateLimit( local_site_id = d.local_site_id, @@ -1118,7 +909,6 @@ internal class Transformer : MapperGenerator { admin = d.admin, post_listing_mode = d.post_listing_mode, totp_2fa_enabled = d.totp_2fa_enabled, - enable_keyboard_navigation = d.enable_keyboard_navigation, enable_animated_images = d.enable_animated_images, collapse_bot_comments = d.collapse_bot_comments, last_donation_notification_at = "", @@ -1365,6 +1155,7 @@ internal class Transformer : MapperGenerator { instance_persons_blocks = emptyList(), person_blocks = d.person_blocks.map { this.toUni(d = it.target) }, discussion_languages = d.discussion_languages, + multi_community_follows = emptyList(), ) fun toUni(d: X0DatatypesPerson) = this.toUni(d, X0DatatypesPersonAggregates(-1, -1, -1)) @@ -1387,6 +1178,7 @@ internal class Transformer : MapperGenerator { instance_id = d.instance_id, comment_count = counts.comment_count, post_count = counts.post_count, + last_refreshed_at = "", ) override fun toUni(d: X0DatatypesPersonView): LemmyapiDatatypesPersonView = @@ -1494,6 +1286,9 @@ internal class Transformer : MapperGenerator { private_message_creator = this.toUni(d = d.private_message_creator), creator = this.toUni(d = d.creator), resolver = d.resolver?.let { this.toUni(d = it) }, + creator_is_admin = false, + creator_banned = d.creator.banned, + creator_ban_expires_at = d.creator.ban_expires, ) override fun toUni(d: X0DatatypesPrivateMessageResponse): LemmyapiDatatypesPrivateMessageResponse = LemmyapiDatatypesPrivateMessageResponse( @@ -1547,7 +1342,7 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X0DatatypesSearchResponse): LemmyapiDatatypesSearchResponse = LemmyapiDatatypesSearchResponse( - results = buildList { + search = buildList { addAll(d.comments.map { LemmyapiDatatypesSearchCombinedView.Comment(comment = this@Transformer.toUni(d = it)) }) addAll(d.posts.map { LemmyapiDatatypesSearchCombinedView.Post(post = this@Transformer.toUni(d = it)) }) addAll(d.communities.map { LemmyapiDatatypesSearchCombinedView.Community(community = this@Transformer.toUni(d = it)) }) @@ -1998,10 +1793,7 @@ internal class Transformer : MapperGenerator { unread_only = d.unread_only, ) - override fun fromUni(d: LemmyapiDatatypesGetReportCount): X0DatatypesGetReportCount = - X0DatatypesGetReportCount( - community_id = d.community_id, - ) + override fun fromUni(d: LemmyapiDatatypesGetSiteMetadata): X0DatatypesGetSiteMetadata = X0DatatypesGetSiteMetadata( @@ -2209,7 +2001,6 @@ internal class Transformer : MapperGenerator { open_links_in_new_tab = d.open_links_in_new_tab, infinite_scroll_enabled = d.infinite_scroll_enabled, post_listing_mode = d.post_listing_mode, - enable_keyboard_navigation = d.enable_keyboard_navigation, enable_animated_images = d.enable_animated_images, collapse_bot_comments = d.collapse_bot_comments, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/CommentReplyView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/CommentReplyView.kt index 7638340a..1c0c6ae4 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/CommentReplyView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/CommentReplyView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -import it.vercruysse.lemmyapi.dto.SubscribedType +import it.vercruysse.lemmyapi.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/CommentView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/CommentView.kt index 02dd77ae..f1d55197 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/CommentView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/CommentView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -import it.vercruysse.lemmyapi.dto.SubscribedType +import it.vercruysse.lemmyapi.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/CommunityView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/CommunityView.kt index edf8764c..c7147b1c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/CommunityView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/CommunityView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -import it.vercruysse.lemmyapi.dto.SubscribedType +import it.vercruysse.lemmyapi.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/CreateSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/CreateSite.kt index f24644bd..9cb158a6 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/CreateSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/CreateSite.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -import it.vercruysse.lemmyapi.dto.RegistrationMode -import it.vercruysse.lemmyapi.dto.ListingType +import it.vercruysse.lemmyapi.enums.RegistrationMode +import it.vercruysse.lemmyapi.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/EditSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/EditSite.kt index 262fb63d..c5c6bc69 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/EditSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/EditSite.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -import it.vercruysse.lemmyapi.dto.RegistrationMode -import it.vercruysse.lemmyapi.dto.ListingType +import it.vercruysse.lemmyapi.enums.RegistrationMode +import it.vercruysse.lemmyapi.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/FeaturePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/FeaturePost.kt index 6781eb91..ce967faf 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/FeaturePost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/FeaturePost.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -import it.vercruysse.lemmyapi.dto.PostFeatureType +import it.vercruysse.lemmyapi.enums.PostFeatureType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/GetComments.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/GetComments.kt index 42b65cf8..3fa97eed 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/GetComments.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/GetComments.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -import it.vercruysse.lemmyapi.dto.CommentSortType -import it.vercruysse.lemmyapi.dto.ListingType +import it.vercruysse.lemmyapi.enums.CommentSortType +import it.vercruysse.lemmyapi.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/GetModlog.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/GetModlog.kt index 94fd563d..1d952a3e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/GetModlog.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/GetModlog.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -import it.vercruysse.lemmyapi.dto.ModlogActionType +import it.vercruysse.lemmyapi.enums.ModlogActionType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/GetPersonDetails.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/GetPersonDetails.kt index 9eb27491..67fd2ddb 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/GetPersonDetails.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/GetPersonDetails.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -import it.vercruysse.lemmyapi.dto.SortType +import it.vercruysse.lemmyapi.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/GetPersonMentions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/GetPersonMentions.kt index 95da041e..69f4b6d8 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/GetPersonMentions.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/GetPersonMentions.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -import it.vercruysse.lemmyapi.dto.CommentSortType +import it.vercruysse.lemmyapi.enums.CommentSortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/GetPosts.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/GetPosts.kt index 1c30680c..fd42e765 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/GetPosts.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/GetPosts.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -import it.vercruysse.lemmyapi.dto.SortType -import it.vercruysse.lemmyapi.dto.ListingType +import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/GetReplies.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/GetReplies.kt index 83e92417..6940457b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/GetReplies.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/GetReplies.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -import it.vercruysse.lemmyapi.dto.CommentSortType +import it.vercruysse.lemmyapi.enums.CommentSortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/ListCommunities.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/ListCommunities.kt index 9b5b0058..b4c5b6cc 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/ListCommunities.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/ListCommunities.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -import it.vercruysse.lemmyapi.dto.SortType -import it.vercruysse.lemmyapi.dto.ListingType +import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/LocalSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/LocalSite.kt index 0cb8aba4..b7053abc 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/LocalSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/LocalSite.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -import it.vercruysse.lemmyapi.dto.RegistrationMode -import it.vercruysse.lemmyapi.dto.ListingType +import it.vercruysse.lemmyapi.enums.RegistrationMode +import it.vercruysse.lemmyapi.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/LocalUser.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/LocalUser.kt index 4862254f..22809a46 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/LocalUser.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/LocalUser.kt @@ -1,8 +1,8 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -import it.vercruysse.lemmyapi.dto.PostListingMode -import it.vercruysse.lemmyapi.dto.ListingType -import it.vercruysse.lemmyapi.dto.SortType +import it.vercruysse.lemmyapi.enums.PostListingMode +import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/PersonMentionView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/PersonMentionView.kt index ca570db0..806ce50d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/PersonMentionView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/PersonMentionView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -import it.vercruysse.lemmyapi.dto.SubscribedType +import it.vercruysse.lemmyapi.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/PostView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/PostView.kt index 4a71d2f0..a56bb1fc 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/PostView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/PostView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -import it.vercruysse.lemmyapi.dto.SubscribedType +import it.vercruysse.lemmyapi.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/SaveUserSettings.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/SaveUserSettings.kt index 39734c44..291746ec 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/SaveUserSettings.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/SaveUserSettings.kt @@ -1,8 +1,8 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -import it.vercruysse.lemmyapi.dto.PostListingMode -import it.vercruysse.lemmyapi.dto.ListingType -import it.vercruysse.lemmyapi.dto.SortType +import it.vercruysse.lemmyapi.enums.PostListingMode +import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/Search.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/Search.kt index 2f637ed3..236ce4c4 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/Search.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/Search.kt @@ -1,8 +1,8 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -import it.vercruysse.lemmyapi.dto.ListingType -import it.vercruysse.lemmyapi.dto.SortType -import it.vercruysse.lemmyapi.dto.SearchType +import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.enums.SearchType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/SearchResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/SearchResponse.kt index a22849b9..64d51fb2 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/SearchResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/SearchResponse.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -import it.vercruysse.lemmyapi.dto.SearchType +import it.vercruysse.lemmyapi.enums.SearchType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt index 9d6905b5..9f0e8f0f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt @@ -6,13 +6,14 @@ import it.vercruysse.lemmyapi.LemmyApiBaseController import it.vercruysse.lemmyapi.datatypes.ListCustomEmojis import it.vercruysse.lemmyapi.datatypes.ListCustomEmojisResponse import it.vercruysse.lemmyapi.datatypes.ListNotifications -import it.vercruysse.lemmyapi.datatypes.ListNotificationsResponse import it.vercruysse.lemmyapi.datatypes.MarkNotificationAsRead import it.vercruysse.lemmyapi.datatypes.MyUserInfo +import it.vercruysse.lemmyapi.datatypes.PagedResponse +import it.vercruysse.lemmyapi.datatypes.UnreadCountsResponse import it.vercruysse.lemmyapi.dto.ExportUserSettingsResponse import it.vercruysse.lemmyapi.dto.ImportUserSettings -import it.vercruysse.lemmyapi.dto.NotificationDataType -import it.vercruysse.lemmyapi.dto.NotificationType +import it.vercruysse.lemmyapi.enums.NotificationDataType +import it.vercruysse.lemmyapi.enums.NotificationType internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, baseUrl: String, auth: String?) : LemmyApiBaseController(client, actualVersion, baseUrl, auth) { @@ -57,8 +58,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun getModlog( form: it.vercruysse.lemmyapi.datatypes.GetModlog, - ): Result = - api.getModlog(transformer.fromUni(form)).map(transformer::toUni) + ): Result> = notSupported() /** * Search lemmy. @@ -123,8 +123,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun listCommunities( form: it.vercruysse.lemmyapi.datatypes.ListCommunities, - ): Result = - api.listCommunities(transformer.fromUni(form)).map(transformer::toUni) + ): Result> = + api.listCommunities(transformer.fromUni(form)).map { PagedResponse(it.communities.map(transformer::toUni)) } /** * Follow / subscribe to a community. @@ -143,7 +143,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun blockCommunity( form: it.vercruysse.lemmyapi.datatypes.BlockCommunity, - ): Result = + ): Result = api.blockCommunity(transformer.fromUni(form)).map(transformer::toUni) /** @@ -183,7 +183,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun banFromCommunity( form: it.vercruysse.lemmyapi.datatypes.BanFromCommunity, - ): Result = + ): Result = api.banFromCommunity(transformer.fromUni(form)).map(transformer::toUni) /** @@ -201,8 +201,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @GET("federated_instances") */ - override suspend fun getFederatedInstances(): Result = - api.getFederatedInstances().map(transformer::toUni) + override suspend fun getFederatedInstances(form: it.vercruysse.lemmyapi.datatypes.GetFederatedInstances): Result> = notSupported() /** * Get / fetch a post. @@ -237,8 +236,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun getPosts( form: it.vercruysse.lemmyapi.datatypes.GetPosts, - ): Result = - api.getPosts(transformer.fromUni(form.toValidatedForm())).map(transformer::toUni) + ): Result> = + api.getPosts(transformer.fromUni(form.toValidatedForm())).map { PagedResponse(it.posts.map(transformer::toUni)) } /** * Delete a post. @@ -329,39 +328,27 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun listReports( form: it.vercruysse.lemmyapi.datatypes.ListReports, - ): Result = + ): Result> = when (form.type_) { it.vercruysse.lemmyapi.dto.ReportType.Communities -> notSupported() it.vercruysse.lemmyapi.dto.ReportType.Posts -> { api.listPostReports(transformer.fromUniP(form)).map { resp -> - val items = resp.post_reports.map { r -> - it.vercruysse.lemmyapi.datatypes.ReportCombinedView.Post( - transformer.toUni(r), - ) - } - it.vercruysse.lemmyapi.datatypes.ListReportsResponse(items) + PagedResponse(resp.post_reports.map(transformer::toUni)) } } + it.vercruysse.lemmyapi.dto.ReportType.Comments -> { api.listCommentReports(transformer.fromUniC(form)).map { resp -> - val items = resp.comment_reports.map { r -> - it.vercruysse.lemmyapi.datatypes.ReportCombinedView.Comment( - transformer.toUni(r), - ) - } - it.vercruysse.lemmyapi.datatypes.ListReportsResponse(items) + PagedResponse(resp.comment_reports.map(transformer::toUni)) } } + it.vercruysse.lemmyapi.dto.ReportType.PrivateMessages -> { api.listPrivateMessageReports(transformer.fromUniPm(form)).map { resp -> - val items = resp.private_message_reports.map { r -> - it.vercruysse.lemmyapi.datatypes.ReportCombinedView.PrivateMessage( - transformer.toUni(r), - ) - } - it.vercruysse.lemmyapi.datatypes.ListReportsResponse(items) + PagedResponse(resp.private_message_reports.map(transformer::toUni)) } } + it.vercruysse.lemmyapi.dto.ReportType.All -> { runCatching { val postsResp = api.listPostReports(transformer.fromUniP(form)).getOrThrow() @@ -371,30 +358,18 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba val allReports = mutableListOf() allReports.addAll( - postsResp.post_reports.map { r -> - it.vercruysse.lemmyapi.datatypes.ReportCombinedView.Post( - transformer.toUni(r), - ) - }, + postsResp.post_reports.map(transformer::toUni) ) allReports.addAll( - commentsResp.comment_reports.map { r -> - it.vercruysse.lemmyapi.datatypes.ReportCombinedView.Comment( - transformer.toUni(r), - ) - }, + commentsResp.comment_reports.map(transformer::toUni) ) allReports.addAll( - privateMessagesResp.private_message_reports.map { r -> - it.vercruysse.lemmyapi.datatypes.ReportCombinedView.PrivateMessage( - transformer.toUni(r), - ) - }, + privateMessagesResp.private_message_reports.map(transformer::toUni) ) - it.vercruysse.lemmyapi.datatypes.ListReportsResponse(allReports) + PagedResponse(allReports) } } } @@ -446,8 +421,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun getComments( form: it.vercruysse.lemmyapi.datatypes.GetComments, - ): Result = - api.getComments(transformer.fromUni(form)).map(transformer::toUni) + ): Result> = + api.getComments(transformer.fromUni(form)).map { PagedResponse(it.comments.map(transformer::toUni)) } /** * Delete a comment. @@ -603,36 +578,39 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba NotificationType.Mention -> api.markPersonMentionAsRead(transformer.fromUniM(form)).map { } NotificationType.Reply -> api.markCommentReplyAsRead(transformer.fromUniR(form)).map { } NotificationType.PrivateMessage -> api.markPrivateMessageAsRead(transformer.fromUniP(form)).map { } - NotificationType.Subscribed -> notSupported() + NotificationType.Subscribed, NotificationType.ModAction -> notSupported() null -> notSupported() } /** * List notifications. */ - override suspend fun listNotifications(form: ListNotifications): Result = + override suspend fun listNotifications(form: ListNotifications): Result> = when (form.type_) { NotificationDataType.All -> runCatching { - val resReplies = api.getReplies(transformer.fromUniR(form)).map(transformer::toUni).getOrThrow() - val mentionReplies = api.getPersonMentions(transformer.fromUniM(form)).map(transformer::toUni).getOrThrow() - val privateMessages = api.getPrivateMessages(transformer.fromUniP(form)).map(transformer::toUni).getOrThrow() - - ListNotificationsResponse( + val replies = api.getReplies(transformer.fromUniR(form)).getOrThrow().replies.map(transformer::toUni) + val mentionReplies = api.getPersonMentions(transformer.fromUniM(form)).getOrThrow().mentions.map(transformer::toUni) + val privateMessages = api.getPrivateMessages(transformer.fromUniP(form)).getOrThrow().private_messages.map(transformer::toUniPMV) + PagedResponse( buildList { - addAll(resReplies.notifications) - addAll(mentionReplies.notifications) - addAll(privateMessages.notifications) + addAll(replies) + addAll(mentionReplies) + addAll(privateMessages) }, ) } + NotificationDataType.Reply -> - api.getReplies(transformer.fromUniR(form)).map(transformer::toUni) + api.getReplies(transformer.fromUniR(form)).map { resp -> PagedResponse(resp.replies.map(transformer::toUni)) } + NotificationDataType.Mention -> - api.getPersonMentions(transformer.fromUniM(form)).map(transformer::toUni) + api.getPersonMentions(transformer.fromUniM(form)).map { resp -> PagedResponse(resp.mentions.map(transformer::toUni)) } + NotificationDataType.PrivateMessage -> - api.getPrivateMessages(transformer.fromUniP(form)).map(transformer::toUni) - NotificationDataType.Subscribed -> Result.success(ListNotificationsResponse(emptyList())) + api.getPrivateMessages(transformer.fromUniP(form)).map { resp -> PagedResponse(resp.private_messages.map(transformer::toUniPMV)) } + + NotificationDataType.Subscribed -> Result.success(PagedResponse(emptyList())) } /** @@ -642,7 +620,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun banPerson( form: it.vercruysse.lemmyapi.datatypes.BanPerson, - ): Result = + ): Result = api.banPerson(transformer.fromUni(form)).map(transformer::toUni) /** @@ -650,8 +628,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @GET("user/banned") */ - override suspend fun getBannedPersons(): Result = - api.getBannedPersons().map(transformer::toUni) + override suspend fun getBannedPersons(): Result> = + api.getBannedPersons().map { resp -> PagedResponse(resp.banned.map(transformer::toUni)) } /** * Block a person. @@ -660,7 +638,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun blockPerson( form: it.vercruysse.lemmyapi.datatypes.BlockPerson, - ): Result = + ): Result = api.blockPerson(transformer.fromUni(form)).map(transformer::toUni) /** @@ -721,23 +699,16 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba ): Result = api.changePassword(transformer.fromUni(form)).map(transformer::toUni) - /** - * Get counts for your reports - * - * @GET("user/report_count") - */ - override suspend fun getReportCount( - form: it.vercruysse.lemmyapi.datatypes.GetReportCount, - ): Result = - api.getReportCount(transformer.fromUni(form)).map(transformer::toUni) - - /** - * Get your unread counts - * - * @GET("user/unread_count") - */ - override suspend fun getUnreadCount(): Result = - api.getUnreadCount().map(transformer::toUni) + override suspend fun getUnreadCounts(): Result = runCatching { + val d = api.getUnreadCount().getOrThrow() + val reportCount = api.getReportCount(it.vercruysse.lemmyapi.v0.x19.x11.datatypes.GetReportCount()).getOrNull() + val applicationCount = api.getUnreadRegistrationApplicationCount().getOrNull() + UnreadCountsResponse( + notification_count = d.replies + d.mentions + d.private_messages, + report_count = (reportCount?.post_reports ?: 0L) + (reportCount?.comment_reports ?: 0L) + (reportCount?.private_message_reports ?: 0L), + registration_application_count = applicationCount?.registration_applications, + ) + } /** * Verify your email @@ -773,14 +744,6 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba ): Result = api.addAdmin(transformer.fromUni(form)).map(transformer::toUni) - /** - * Get the unread registration applications count. - * - * @GET("admin/registration_application/count") - */ - override suspend fun getUnreadRegistrationApplicationCount(): Result = - api.getUnreadRegistrationApplicationCount().map(transformer::toUni) - /** * List the registration applications. * @@ -788,8 +751,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun listRegistrationApplications( form: it.vercruysse.lemmyapi.datatypes.ListRegistrationApplications, - ): Result = - api.listRegistrationApplications(transformer.fromUni(form)).map(transformer::toUni) + ): Result> = + api.listRegistrationApplications(transformer.fromUni(form)).map { resp -> PagedResponse(resp.registration_applications.map(transformer::toUni)) } /** * Approve a registration application @@ -951,8 +914,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun listPostLikes( form: it.vercruysse.lemmyapi.datatypes.ListPostLikes, - ): Result = - api.listPostLikes(transformer.fromUni(form)).map(transformer::toUni) + ): Result> = notSupported() /** * List a comment's likes. Admin-only. @@ -961,8 +923,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun listCommentLikes( form: it.vercruysse.lemmyapi.datatypes.ListCommentLikes, - ): Result = - api.listCommentLikes(transformer.fromUni(form)).map(transformer::toUni) + ): Result> = notSupported() /** * List all the media for your user @@ -971,8 +932,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun listMedia( form: it.vercruysse.lemmyapi.datatypes.ListMedia, - ): Result = - api.listMedia(transformer.fromUni(form)).map(transformer::toUni) + ): Result> = notSupported() /** * List all the media known to your instance. @@ -981,8 +941,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun listAllMedia( form: it.vercruysse.lemmyapi.datatypes.ListMedia, - ): Result = - api.listAllMedia(transformer.fromUni(form)).map(transformer::toUni) + ): Result> = notSupported() /** * Hide a post from list views. diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt index 050d903f..266a334a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt @@ -6,19 +6,10 @@ internal interface MapperGenerator { fun toUni(d: AddAdminResponse): it.vercruysse.lemmyapi.datatypes.AddAdminResponse fun toUni(d: AddModToCommunityResponse): it.vercruysse.lemmyapi.datatypes.AddModToCommunityResponse - fun toUni(d: AdminPurgeComment): it.vercruysse.lemmyapi.datatypes.AdminPurgeComment - fun toUni(d: AdminPurgeCommentView): it.vercruysse.lemmyapi.datatypes.AdminPurgeCommentView - fun toUni(d: AdminPurgeCommunity): it.vercruysse.lemmyapi.datatypes.AdminPurgeCommunity - fun toUni(d: AdminPurgeCommunityView): it.vercruysse.lemmyapi.datatypes.AdminPurgeCommunityView - fun toUni(d: AdminPurgePerson): it.vercruysse.lemmyapi.datatypes.AdminPurgePerson - fun toUni(d: AdminPurgePersonView): it.vercruysse.lemmyapi.datatypes.AdminPurgePersonView - fun toUni(d: AdminPurgePost): it.vercruysse.lemmyapi.datatypes.AdminPurgePost - fun toUni(d: AdminPurgePostView): it.vercruysse.lemmyapi.datatypes.AdminPurgePostView - fun toUni(d: BanFromCommunityResponse): it.vercruysse.lemmyapi.datatypes.BanFromCommunityResponse - fun toUni(d: BannedPersonsResponse): it.vercruysse.lemmyapi.datatypes.BannedPersonsResponse - fun toUni(d: BanPersonResponse): it.vercruysse.lemmyapi.datatypes.BanPersonResponse - fun toUni(d: BlockCommunityResponse): it.vercruysse.lemmyapi.datatypes.BlockCommunityResponse - fun toUni(d: BlockPersonResponse): it.vercruysse.lemmyapi.datatypes.BlockPersonResponse + fun toUni(d: BanFromCommunityResponse): it.vercruysse.lemmyapi.datatypes.PersonResponse + fun toUni(d: BanPersonResponse): it.vercruysse.lemmyapi.datatypes.PersonResponse + fun toUni(d: BlockCommunityResponse): it.vercruysse.lemmyapi.datatypes.CommunityResponse + fun toUni(d: BlockPersonResponse): it.vercruysse.lemmyapi.datatypes.PersonResponse fun toUni(d: CaptchaResponse): it.vercruysse.lemmyapi.datatypes.CaptchaResponse fun toUni(d: Comment, counts: CommentAggregates): it.vercruysse.lemmyapi.datatypes.Comment fun toUni(d: CommentReport): it.vercruysse.lemmyapi.datatypes.CommentReport @@ -35,31 +26,18 @@ internal interface MapperGenerator { fun toUni(d: CustomEmojiKeyword): it.vercruysse.lemmyapi.datatypes.CustomEmojiKeyword fun toUni(d: CustomEmojiResponse): it.vercruysse.lemmyapi.datatypes.CustomEmojiResponse fun toUni(d: CustomEmojiView): it.vercruysse.lemmyapi.datatypes.CustomEmojiView - fun toUni(d: FederatedInstances): it.vercruysse.lemmyapi.datatypes.FederatedInstances fun toUni(d: GenerateTotpSecretResponse): it.vercruysse.lemmyapi.datatypes.GenerateTotpSecretResponse fun toUni(d: GetCaptchaResponse): it.vercruysse.lemmyapi.datatypes.GetCaptchaResponse - fun toUni(d: GetCommentsResponse): it.vercruysse.lemmyapi.datatypes.GetCommentsResponse fun toUni(d: GetCommunityResponse): it.vercruysse.lemmyapi.datatypes.GetCommunityResponse - fun toUni(d: GetFederatedInstancesResponse): it.vercruysse.lemmyapi.datatypes.GetFederatedInstancesResponse - fun toUni(d: GetModlogResponse): it.vercruysse.lemmyapi.datatypes.GetModlogResponse fun toUni(d: GetPersonDetailsResponse): it.vercruysse.lemmyapi.datatypes.GetPersonDetailsResponse fun toUni(d: GetPostResponse): it.vercruysse.lemmyapi.datatypes.GetPostResponse - fun toUni(d: GetPostsResponse): it.vercruysse.lemmyapi.datatypes.GetPostsResponse - fun toUni(d: GetReportCountResponse): it.vercruysse.lemmyapi.datatypes.GetReportCountResponse fun toUni(d: GetSiteMetadataResponse): it.vercruysse.lemmyapi.datatypes.GetSiteMetadataResponse fun toUni(d: GetSiteResponse): it.vercruysse.lemmyapi.datatypes.GetSiteResponse - fun toUni(d: GetUnreadCountResponse): it.vercruysse.lemmyapi.datatypes.GetUnreadCountResponse - fun toUni(d: GetUnreadRegistrationApplicationCountResponse): it.vercruysse.lemmyapi.datatypes.GetUnreadRegistrationApplicationCountResponse fun toUni(d: ImageDetails): it.vercruysse.lemmyapi.datatypes.ImageDetails fun toUni(d: Instance): it.vercruysse.lemmyapi.datatypes.Instance fun toUni(d: InstanceWithFederationState): it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState fun toUni(d: Language): it.vercruysse.lemmyapi.datatypes.Language fun toUni(d: LinkMetadata): it.vercruysse.lemmyapi.datatypes.LinkMetadata - fun toUni(d: ListCommentLikesResponse): it.vercruysse.lemmyapi.datatypes.ListCommentLikesResponse - fun toUni(d: ListCommunitiesResponse): it.vercruysse.lemmyapi.datatypes.ListCommunitiesResponse - fun toUni(d: ListMediaResponse): it.vercruysse.lemmyapi.datatypes.ListMediaResponse - fun toUni(d: ListPostLikesResponse): it.vercruysse.lemmyapi.datatypes.ListPostLikesResponse - fun toUni(d: ListRegistrationApplicationsResponse): it.vercruysse.lemmyapi.datatypes.ListRegistrationApplicationsResponse fun toUni(d: LocalImage): it.vercruysse.lemmyapi.datatypes.LocalImage fun toUni(d: LocalImageView): it.vercruysse.lemmyapi.datatypes.LocalImageView fun toUni(d: LocalSite, counts: SiteAggregates): it.vercruysse.lemmyapi.datatypes.LocalSite @@ -69,28 +47,6 @@ internal interface MapperGenerator { fun toUni(d: LocalUserView): it.vercruysse.lemmyapi.datatypes.LocalUserView fun toUni(d: LoginResponse): it.vercruysse.lemmyapi.datatypes.LoginResponse fun toUni(d: LoginToken): it.vercruysse.lemmyapi.datatypes.LoginToken - fun toUni(d: ModAdd): it.vercruysse.lemmyapi.datatypes.AdminAdd - fun toUni(d: ModAddCommunity): it.vercruysse.lemmyapi.datatypes.ModAddToCommunity - fun toUni(d: ModAddCommunityView): it.vercruysse.lemmyapi.datatypes.ModAddToCommunityView - fun toUni(d: ModAddView): it.vercruysse.lemmyapi.datatypes.AdminAddView - fun toUni(d: ModBan): it.vercruysse.lemmyapi.datatypes.AdminBan - fun toUni(d: ModBanFromCommunity): it.vercruysse.lemmyapi.datatypes.ModBanFromCommunity - fun toUni(d: ModBanFromCommunityView): it.vercruysse.lemmyapi.datatypes.ModBanFromCommunityView - fun toUni(d: ModBanView): it.vercruysse.lemmyapi.datatypes.AdminBanView - fun toUni(d: ModFeaturePost): it.vercruysse.lemmyapi.datatypes.ModFeaturePost - fun toUni(d: ModFeaturePostView): it.vercruysse.lemmyapi.datatypes.ModFeaturePostView - fun toUni(d: ModHideCommunity): it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibility - fun toUni(d: ModHideCommunityView): it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibilityView - fun toUni(d: ModLockPost): it.vercruysse.lemmyapi.datatypes.ModLockPost - fun toUni(d: ModLockPostView): it.vercruysse.lemmyapi.datatypes.ModLockPostView - fun toUni(d: ModRemoveComment): it.vercruysse.lemmyapi.datatypes.ModRemoveComment - fun toUni(d: ModRemoveCommentView): it.vercruysse.lemmyapi.datatypes.ModRemoveCommentView - fun toUni(d: ModRemoveCommunity): it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunity - fun toUni(d: ModRemoveCommunityView): it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunityView - fun toUni(d: ModRemovePost): it.vercruysse.lemmyapi.datatypes.ModRemovePost - fun toUni(d: ModRemovePostView): it.vercruysse.lemmyapi.datatypes.ModRemovePostView - fun toUni(d: ModTransferCommunity): it.vercruysse.lemmyapi.datatypes.ModTransferCommunity - fun toUni(d: ModTransferCommunityView): it.vercruysse.lemmyapi.datatypes.ModTransferCommunityView fun toUni(d: MyUserInfo): it.vercruysse.lemmyapi.datatypes.MyUserInfo fun toUni(d: Person, counts: PersonAggregates): it.vercruysse.lemmyapi.datatypes.Person fun toUni(d: PersonView): it.vercruysse.lemmyapi.datatypes.PersonView @@ -163,7 +119,7 @@ internal interface MapperGenerator { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPost): GetPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPosts): GetPosts fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetRegistrationApplication): GetRegistrationApplication - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetReportCount): GetReportCount + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetSiteMetadata): GetSiteMetadata fun fromUni(d: it.vercruysse.lemmyapi.datatypes.HideCommunity): HideCommunity fun fromUni(d: it.vercruysse.lemmyapi.datatypes.HidePost): HidePost diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt index 380bbf72..ea5d527e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt @@ -2,19 +2,18 @@ package it.vercruysse.lemmyapi.v0.x19.x11 import it.vercruysse.lemmyapi.datatypes.CommentActions import it.vercruysse.lemmyapi.datatypes.CommunityActions -import it.vercruysse.lemmyapi.datatypes.ListNotificationsResponse import it.vercruysse.lemmyapi.datatypes.MarkNotificationAsRead import it.vercruysse.lemmyapi.datatypes.Notification import it.vercruysse.lemmyapi.datatypes.NotificationData import it.vercruysse.lemmyapi.datatypes.NotificationView import it.vercruysse.lemmyapi.datatypes.PersonActions import it.vercruysse.lemmyapi.datatypes.PostActions -import it.vercruysse.lemmyapi.dto.CommentSortType -import it.vercruysse.lemmyapi.dto.CommunityFollowerState -import it.vercruysse.lemmyapi.dto.FederationMode -import it.vercruysse.lemmyapi.dto.NotificationType -import it.vercruysse.lemmyapi.dto.SortType -import it.vercruysse.lemmyapi.dto.VoteShow +import it.vercruysse.lemmyapi.enums.CommentSortType +import it.vercruysse.lemmyapi.enums.CommunityFollowerState +import it.vercruysse.lemmyapi.enums.FederationMode +import it.vercruysse.lemmyapi.enums.NotificationType +import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.enums.VoteShow import it.vercruysse.lemmyapi.utils.toAt import it.vercruysse.lemmyapi.datatypes.AddAdmin as LemmyapiDatatypesAddAdmin import it.vercruysse.lemmyapi.datatypes.AddAdminResponse as LemmyapiDatatypesAddAdminResponse @@ -36,14 +35,9 @@ import it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunity as LemmyapiDatatype import it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunityView as LemmyapiDatatypesModRemoveCommunityView import it.vercruysse.lemmyapi.datatypes.ApproveRegistrationApplication as LemmyapiDatatypesApproveRegistrationApplication import it.vercruysse.lemmyapi.datatypes.BanFromCommunity as LemmyapiDatatypesBanFromCommunity -import it.vercruysse.lemmyapi.datatypes.BanFromCommunityResponse as LemmyapiDatatypesBanFromCommunityResponse import it.vercruysse.lemmyapi.datatypes.BanPerson as LemmyapiDatatypesBanPerson -import it.vercruysse.lemmyapi.datatypes.BanPersonResponse as LemmyapiDatatypesBanPersonResponse -import it.vercruysse.lemmyapi.datatypes.BannedPersonsResponse as LemmyapiDatatypesBannedPersonsResponse import it.vercruysse.lemmyapi.datatypes.BlockCommunity as LemmyapiDatatypesBlockCommunity -import it.vercruysse.lemmyapi.datatypes.BlockCommunityResponse as LemmyapiDatatypesBlockCommunityResponse import it.vercruysse.lemmyapi.datatypes.BlockPerson as LemmyapiDatatypesBlockPerson -import it.vercruysse.lemmyapi.datatypes.BlockPersonResponse as LemmyapiDatatypesBlockPersonResponse import it.vercruysse.lemmyapi.datatypes.CaptchaResponse as LemmyapiDatatypesCaptchaResponse import it.vercruysse.lemmyapi.datatypes.ChangePassword as LemmyapiDatatypesChangePassword import it.vercruysse.lemmyapi.datatypes.Comment as LemmyapiDatatypesComment @@ -92,26 +86,18 @@ import it.vercruysse.lemmyapi.datatypes.GenerateTotpSecretResponse as LemmyapiDa import it.vercruysse.lemmyapi.datatypes.GetCaptchaResponse as LemmyapiDatatypesGetCaptchaResponse import it.vercruysse.lemmyapi.datatypes.GetComment as LemmyapiDatatypesGetComment import it.vercruysse.lemmyapi.datatypes.GetComments as LemmyapiDatatypesGetComments -import it.vercruysse.lemmyapi.datatypes.GetCommentsResponse as LemmyapiDatatypesGetCommentsResponse import it.vercruysse.lemmyapi.datatypes.GetCommunity as LemmyapiDatatypesGetCommunity import it.vercruysse.lemmyapi.datatypes.GetCommunityResponse as LemmyapiDatatypesGetCommunityResponse -import it.vercruysse.lemmyapi.datatypes.GetFederatedInstancesResponse as LemmyapiDatatypesGetFederatedInstancesResponse import it.vercruysse.lemmyapi.datatypes.GetModlog as LemmyapiDatatypesGetModlog -import it.vercruysse.lemmyapi.datatypes.GetModlogResponse as LemmyapiDatatypesGetModlogResponse import it.vercruysse.lemmyapi.datatypes.GetPersonDetails as LemmyapiDatatypesGetPersonDetails import it.vercruysse.lemmyapi.datatypes.GetPersonDetailsResponse as LemmyapiDatatypesGetPersonDetailsResponse import it.vercruysse.lemmyapi.datatypes.GetPost as LemmyapiDatatypesGetPost import it.vercruysse.lemmyapi.datatypes.GetPostResponse as LemmyapiDatatypesGetPostResponse import it.vercruysse.lemmyapi.datatypes.GetPosts as LemmyapiDatatypesGetPosts -import it.vercruysse.lemmyapi.datatypes.GetPostsResponse as LemmyapiDatatypesGetPostsResponse import it.vercruysse.lemmyapi.datatypes.GetRegistrationApplication as LemmyapiDatatypesGetRegistrationApplication -import it.vercruysse.lemmyapi.datatypes.GetReportCount as LemmyapiDatatypesGetReportCount -import it.vercruysse.lemmyapi.datatypes.GetReportCountResponse as LemmyapiDatatypesGetReportCountResponse import it.vercruysse.lemmyapi.datatypes.GetSiteMetadata as LemmyapiDatatypesGetSiteMetadata import it.vercruysse.lemmyapi.datatypes.GetSiteMetadataResponse as LemmyapiDatatypesGetSiteMetadataResponse import it.vercruysse.lemmyapi.datatypes.GetSiteResponse as LemmyapiDatatypesGetSiteResponse -import it.vercruysse.lemmyapi.datatypes.GetUnreadCountResponse as LemmyapiDatatypesGetUnreadCountResponse -import it.vercruysse.lemmyapi.datatypes.GetUnreadRegistrationApplicationCountResponse as LemmyapiDatatypesGetUnreadRegistrationApplicationCountResponse import it.vercruysse.lemmyapi.datatypes.HideCommunity as LemmyapiDatatypesHideCommunity import it.vercruysse.lemmyapi.datatypes.HidePost as LemmyapiDatatypesHidePost import it.vercruysse.lemmyapi.datatypes.ImageDetails as LemmyapiDatatypesImageDetails @@ -120,17 +106,11 @@ import it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState as LemmyapiD import it.vercruysse.lemmyapi.datatypes.Language as LemmyapiDatatypesLanguage import it.vercruysse.lemmyapi.datatypes.LinkMetadata as LemmyapiDatatypesLinkMetadata import it.vercruysse.lemmyapi.datatypes.ListCommentLikes as LemmyapiDatatypesListCommentLikes -import it.vercruysse.lemmyapi.datatypes.ListCommentLikesResponse as LemmyapiDatatypesListCommentLikesResponse import it.vercruysse.lemmyapi.datatypes.ListCommunities as LemmyapiDatatypesListCommunities -import it.vercruysse.lemmyapi.datatypes.ListCommunitiesResponse as LemmyapiDatatypesListCommunitiesResponse import it.vercruysse.lemmyapi.datatypes.ListMedia as LemmyapiDatatypesListMedia -import it.vercruysse.lemmyapi.datatypes.ListMediaResponse as LemmyapiDatatypesListMediaResponse import it.vercruysse.lemmyapi.datatypes.ListNotifications as LemmyapiDatatypesListNotifications -import it.vercruysse.lemmyapi.datatypes.ListNotificationsResponse as LemmyapiDatatypesListNotificationsResponse import it.vercruysse.lemmyapi.datatypes.ListPostLikes as LemmyapiDatatypesListPostLikes -import it.vercruysse.lemmyapi.datatypes.ListPostLikesResponse as LemmyapiDatatypesListPostLikesResponse import it.vercruysse.lemmyapi.datatypes.ListRegistrationApplications as LemmyapiDatatypesListRegistrationApplications -import it.vercruysse.lemmyapi.datatypes.ListRegistrationApplicationsResponse as LemmyapiDatatypesListRegistrationApplicationsResponse import it.vercruysse.lemmyapi.datatypes.LocalImage as LemmyapiDatatypesLocalImage import it.vercruysse.lemmyapi.datatypes.LocalImageView as LemmyapiDatatypesLocalImageView import it.vercruysse.lemmyapi.datatypes.LocalSite as LemmyapiDatatypesLocalSite @@ -226,7 +206,6 @@ import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.BanFromCommunity as X11Dataty import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.BanFromCommunityResponse as X11DatatypesBanFromCommunityResponse import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.BanPerson as X11DatatypesBanPerson import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.BanPersonResponse as X11DatatypesBanPersonResponse -import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.BannedPersonsResponse as X11DatatypesBannedPersonsResponse import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.BlockCommunity as X11DatatypesBlockCommunity import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.BlockCommunityResponse as X11DatatypesBlockCommunityResponse import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.BlockInstance as X11DatatypesBlockInstance @@ -283,12 +262,9 @@ import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.GenerateTotpSecretResponse as import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.GetCaptchaResponse as X11DatatypesGetCaptchaResponse import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.GetComment as X11DatatypesGetComment import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.GetComments as X11DatatypesGetComments -import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.GetCommentsResponse as X11DatatypesGetCommentsResponse import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.GetCommunity as X11DatatypesGetCommunity import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.GetCommunityResponse as X11DatatypesGetCommunityResponse -import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.GetFederatedInstancesResponse as X11DatatypesGetFederatedInstancesResponse import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.GetModlog as X11DatatypesGetModlog -import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.GetModlogResponse as X11DatatypesGetModlogResponse import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.GetPersonDetails as X11DatatypesGetPersonDetails import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.GetPersonDetailsResponse as X11DatatypesGetPersonDetailsResponse import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.GetPersonMentions as X11DatatypesGetPersonMentions @@ -296,18 +272,13 @@ import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.GetPersonMentionsResponse as import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.GetPost as X11DatatypesGetPost import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.GetPostResponse as X11DatatypesGetPostResponse import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.GetPosts as X11DatatypesGetPosts -import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.GetPostsResponse as X11DatatypesGetPostsResponse import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.GetPrivateMessages as X11DatatypesGetPrivateMessages import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.GetRegistrationApplication as X11DatatypesGetRegistrationApplication import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.GetReplies as X11DatatypesGetReplies import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.GetRepliesResponse as X11DatatypesGetRepliesResponse -import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.GetReportCount as X11DatatypesGetReportCount -import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.GetReportCountResponse as X11DatatypesGetReportCountResponse import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.GetSiteMetadata as X11DatatypesGetSiteMetadata import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.GetSiteMetadataResponse as X11DatatypesGetSiteMetadataResponse import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.GetSiteResponse as X11DatatypesGetSiteResponse -import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.GetUnreadCountResponse as X11DatatypesGetUnreadCountResponse -import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.GetUnreadRegistrationApplicationCountResponse as X11DatatypesGetUnreadRegistrationApplicationCountResponse import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.HideCommunity as X11DatatypesHideCommunity import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.HidePost as X11DatatypesHidePost import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.ImageDetails as X11DatatypesImageDetails @@ -316,18 +287,13 @@ import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.InstanceWithFederationState a import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.Language as X11DatatypesLanguage import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.LinkMetadata as X11DatatypesLinkMetadata import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.ListCommentLikes as X11DatatypesListCommentLikes -import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.ListCommentLikesResponse as X11DatatypesListCommentLikesResponse import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.ListCommentReports as X11DatatypesListCommentReports import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.ListCommunities as X11DatatypesListCommunities -import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.ListCommunitiesResponse as X11DatatypesListCommunitiesResponse import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.ListMedia as X11DatatypesListMedia -import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.ListMediaResponse as X11DatatypesListMediaResponse import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.ListPostLikes as X11DatatypesListPostLikes -import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.ListPostLikesResponse as X11DatatypesListPostLikesResponse import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.ListPostReports as X11DatatypesListPostReports import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.ListPrivateMessageReports as X11DatatypesListPrivateMessageReports import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.ListRegistrationApplications as X11DatatypesListRegistrationApplications -import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.ListRegistrationApplicationsResponse as X11DatatypesListRegistrationApplicationsResponse import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.LocalImage as X11DatatypesLocalImage import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.LocalImageView as X11DatatypesLocalImageView import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.LocalSite as X11DatatypesLocalSite @@ -490,32 +456,17 @@ internal class Transformer : MapperGenerator { community = this.toUni(d = d.community, counts = X11DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), ) - override fun toUni(d: X11DatatypesBanFromCommunityResponse): LemmyapiDatatypesBanFromCommunityResponse = LemmyapiDatatypesBanFromCommunityResponse( - person_view = this.toUni(d = d.person_view), - banned = d.banned, - ) + override fun toUni(d: X11DatatypesBanFromCommunityResponse): it.vercruysse.lemmyapi.datatypes.PersonResponse = + it.vercruysse.lemmyapi.datatypes.PersonResponse(person_view = this.toUni(d = d.person_view)) - override fun toUni(d: X11DatatypesBannedPersonsResponse): LemmyapiDatatypesBannedPersonsResponse = - LemmyapiDatatypesBannedPersonsResponse( - banned = d.banned.map { this.toUni(d = it) }, - ) + override fun toUni(d: X11DatatypesBanPersonResponse): it.vercruysse.lemmyapi.datatypes.PersonResponse = + it.vercruysse.lemmyapi.datatypes.PersonResponse(person_view = this.toUni(d = d.person_view)) - override fun toUni(d: X11DatatypesBanPersonResponse): LemmyapiDatatypesBanPersonResponse = - LemmyapiDatatypesBanPersonResponse( - person_view = this.toUni(d = d.person_view), - banned = d.banned, - ) + override fun toUni(d: X11DatatypesBlockCommunityResponse): it.vercruysse.lemmyapi.datatypes.CommunityResponse = + it.vercruysse.lemmyapi.datatypes.CommunityResponse(community_view = this.toUni(d = d.community_view), moderators = emptyList()) - override fun toUni(d: X11DatatypesBlockCommunityResponse): LemmyapiDatatypesBlockCommunityResponse = LemmyapiDatatypesBlockCommunityResponse( - community_view = this.toUni(d = d.community_view), - blocked = d.blocked, - ) - - override fun toUni(d: X11DatatypesBlockPersonResponse): LemmyapiDatatypesBlockPersonResponse = - LemmyapiDatatypesBlockPersonResponse( - person_view = this.toUni(d = d.person_view), - blocked = d.blocked, - ) + override fun toUni(d: X11DatatypesBlockPersonResponse): it.vercruysse.lemmyapi.datatypes.PersonResponse = + it.vercruysse.lemmyapi.datatypes.PersonResponse(person_view = this.toUni(d = d.person_view)) override fun toUni(d: X11DatatypesCaptchaResponse): LemmyapiDatatypesCaptchaResponse = LemmyapiDatatypesCaptchaResponse( @@ -636,6 +587,7 @@ internal class Transformer : MapperGenerator { report_count = -1, unresolved_report_count = -1, local_removed = false, + last_refreshed_at = "", ) override fun toUni(d: X11DatatypesCommunityFollowerView): LemmyapiDatatypesCommunityFollowerView = @@ -707,11 +659,6 @@ internal class Transformer : MapperGenerator { ok = d.ok?.let { this.toUni(d = it) }, ) - override fun toUni(d: X11DatatypesGetCommentsResponse): LemmyapiDatatypesGetCommentsResponse = - LemmyapiDatatypesGetCommentsResponse( - comments = d.comments.map { this.toUni(d = it) }, - ) - override fun toUni(d: X11DatatypesGetCommunityResponse): LemmyapiDatatypesGetCommunityResponse = LemmyapiDatatypesGetCommunityResponse( community_view = this.toUni(d = d.community_view), @@ -720,132 +667,13 @@ internal class Transformer : MapperGenerator { discussion_languages = d.discussion_languages, ) - override fun toUni(d: X11DatatypesGetFederatedInstancesResponse): LemmyapiDatatypesGetFederatedInstancesResponse = - LemmyapiDatatypesGetFederatedInstancesResponse( - federated_instances = d.federated_instances?.let { this.toUni(d = it) }, - ) - - override fun toUni(d: X11DatatypesGetModlogResponse): LemmyapiDatatypesGetModlogResponse { - val modlogList = mutableListOf() - - // Add ModRemovePost entries - modlogList.addAll( - d.removed_posts.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemovePost(mod_remove_post = this.toUni(d = view)) - }, - ) - - // Add ModLockPost entries - modlogList.addAll( - d.locked_posts.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModLockPost(mod_lock_post = this.toUni(d = view)) - }, - ) - - // Add ModFeaturePost entries - modlogList.addAll( - d.featured_posts.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModFeaturePost(mod_feature_post = this.toUni(d = view)) - }, - ) - - // Add ModRemoveComment entries - modlogList.addAll( - d.removed_comments.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemoveComment(mod_remove_comment = this.toUni(d = view)) - }, - ) - - // Add ModRemoveCommunity entries - modlogList.addAll( - d.removed_communities.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminRemoveCommunity(admin_remove_community = this.toUni(d = view)) - }, - ) - - // Add ModBanFromCommunity entries - modlogList.addAll( - d.banned_from_community.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModBanFromCommunity(mod_ban_from_community = this.toUni(d = view)) - }, - ) - - // Add ModBan entries - modlogList.addAll( - d.banned.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminBan(admin_ban = this.toUni(d = view)) - }, - ) - - // Add ModAddCommunity entries - modlogList.addAll( - d.added_to_community.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModAddToCommunity(mod_add_to_community = this.toUni(d = view)) - }, - ) - - // Add ModTransferCommunity entries - modlogList.addAll( - d.transferred_to_community.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModTransferCommunity(mod_transfer_community = this.toUni(d = view)) - }, - ) - - // Add ModAdd entries - modlogList.addAll( - d.added.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminAdd(admin_add = this.toUni(d = view)) - }, - ) - - // Add AdminPurgePerson entries - modlogList.addAll( - d.admin_purged_persons.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgePerson(admin_purge_person = this.toUni(d = view)) - }, - ) - - // Add AdminPurgeCommunity entries - modlogList.addAll( - d.admin_purged_communities.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgeCommunity(admin_purge_community = this.toUni(d = view)) - }, - ) - - // Add AdminPurgePost entries - modlogList.addAll( - d.admin_purged_posts.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgePost(admin_purge_post = this.toUni(d = view)) - }, - ) - - // Add AdminPurgeComment entries - modlogList.addAll( - d.admin_purged_comments.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgeComment(admin_purge_comment = this.toUni(d = view)) - }, - ) - - // Add ModHideCommunity entries (mapped to ModChangeCommunityVisibility) - modlogList.addAll( - d.hidden_communities.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModChangeCommunityVisibility(mod_change_community_visibility = this.toUni(d = view)) - }, - ) - - return it.vercruysse.lemmyapi.datatypes.GetModlogResponse( - modlog = modlogList, - next_page = null, - prev_page = null, - ) - } - override fun toUni(d: X11DatatypesGetPersonDetailsResponse): LemmyapiDatatypesGetPersonDetailsResponse = LemmyapiDatatypesGetPersonDetailsResponse( person_view = this.toUni(d = d.person_view), site = d.site?.let { this.toUni(d = it) }, comments = d.comments.map { this.toUni(d = it) }, posts = d.posts.map { this.toUni(d = it) }, moderates = d.moderates.map { this.toUni(d = it) }, + multi_communities_created = emptyList() ) override fun toUni(d: X11DatatypesGetPostResponse): LemmyapiDatatypesGetPostResponse = @@ -856,17 +684,6 @@ internal class Transformer : MapperGenerator { cross_posts = d.cross_posts.map { this.toUni(d = it) }, ) - override fun toUni(d: X11DatatypesGetPostsResponse): LemmyapiDatatypesGetPostsResponse = - LemmyapiDatatypesGetPostsResponse( - posts = d.posts.map { this.toUni(d = it) }, - next_page = d.next_page, - ) - - fun toUni(d: X11DatatypesGetRepliesResponse): LemmyapiDatatypesListNotificationsResponse = - ListNotificationsResponse( - notifications = d.replies.map { this.toUni(d = it) }, - ) - fun toUni(d: X11DatatypesCommentReplyView): NotificationView = NotificationView( notification = Notification( @@ -901,11 +718,6 @@ internal class Transformer : MapperGenerator { community_actions = CommunityActions(null, CommunityFollowerState.from(d.subscribed)), ) - fun toUni(d: X11DatatypesGetPersonMentionsResponse): LemmyapiDatatypesListNotificationsResponse = - LemmyapiDatatypesListNotificationsResponse( - notifications = d.mentions.map { this.toUni(d = it) }, - ) - fun toUni(d: X11DatatypesPersonMentionView): NotificationView = NotificationView( notification = Notification( @@ -940,11 +752,6 @@ internal class Transformer : MapperGenerator { community_actions = CommunityActions(null, CommunityFollowerState.from(d.subscribed)), ) - fun toUni(d: X11DatatypesPrivateMessagesResponse): LemmyapiDatatypesListNotificationsResponse = - LemmyapiDatatypesListNotificationsResponse( - notifications = d.private_messages.map { this.toUniPMV(d = it) }, - ) - fun toUniPMV(d: X11DatatypesPrivateMessageView): NotificationView = NotificationView( notification = Notification( @@ -959,10 +766,6 @@ internal class Transformer : MapperGenerator { ), ) - override fun toUni(d: X11DatatypesGetReportCountResponse): LemmyapiDatatypesGetReportCountResponse = LemmyapiDatatypesGetReportCountResponse( - count = d.post_reports + d.comment_reports + (d.private_message_reports ?: 0), - ) - override fun toUni(d: X11DatatypesGetSiteMetadataResponse): LemmyapiDatatypesGetSiteMetadataResponse = LemmyapiDatatypesGetSiteMetadataResponse( metadata = this.toUni(d = d.metadata), ) @@ -982,15 +785,6 @@ internal class Transformer : MapperGenerator { active_plugins = emptyList(), ) - override fun toUni(d: X11DatatypesGetUnreadCountResponse): LemmyapiDatatypesGetUnreadCountResponse = LemmyapiDatatypesGetUnreadCountResponse( - count = d.replies + d.mentions + d.private_messages, - ) - - override fun toUni(d: X11DatatypesGetUnreadRegistrationApplicationCountResponse): LemmyapiDatatypesGetUnreadRegistrationApplicationCountResponse = - LemmyapiDatatypesGetUnreadRegistrationApplicationCountResponse( - registration_applications = d.registration_applications, - ) - override fun toUni(d: X11DatatypesImageDetails): LemmyapiDatatypesImageDetails = LemmyapiDatatypesImageDetails( link = d.link, @@ -1035,29 +829,6 @@ internal class Transformer : MapperGenerator { content_type = d.content_type, ) - override fun toUni(d: X11DatatypesListCommentLikesResponse): LemmyapiDatatypesListCommentLikesResponse = LemmyapiDatatypesListCommentLikesResponse( - comment_likes = d.comment_likes.map { this.toUni(d = it) }, - ) - - override fun toUni(d: X11DatatypesListCommunitiesResponse): LemmyapiDatatypesListCommunitiesResponse = LemmyapiDatatypesListCommunitiesResponse( - communities = d.communities.map { this.toUni(d = it) }, - ) - - override fun toUni(d: X11DatatypesListMediaResponse): LemmyapiDatatypesListMediaResponse = - LemmyapiDatatypesListMediaResponse( - images = d.images.map { this.toUni(d = it) }, - ) - - override fun toUni(d: X11DatatypesListPostLikesResponse): LemmyapiDatatypesListPostLikesResponse = - LemmyapiDatatypesListPostLikesResponse( - post_likes = d.post_likes.map { this.toUni(d = it) }, - ) - - override fun toUni(d: X11DatatypesListRegistrationApplicationsResponse): LemmyapiDatatypesListRegistrationApplicationsResponse = - LemmyapiDatatypesListRegistrationApplicationsResponse( - registration_applications = d.registration_applications.map { this.toUni(d = it) }, - ) - override fun toUni(d: X11DatatypesLocalImage): LemmyapiDatatypesLocalImage = LemmyapiDatatypesLocalImage( person_id = d.local_user_id, @@ -1168,7 +939,6 @@ internal class Transformer : MapperGenerator { admin = d.admin, post_listing_mode = d.post_listing_mode, totp_2fa_enabled = d.totp_2fa_enabled, - enable_keyboard_navigation = d.enable_keyboard_navigation, enable_animated_images = d.enable_animated_images, collapse_bot_comments = d.collapse_bot_comments, last_donation_notification_at = d.last_donation_notification, @@ -1416,6 +1186,7 @@ internal class Transformer : MapperGenerator { instance_persons_blocks = emptyList(), person_blocks = d.person_blocks.map { this.toUni(d = it.target) }, discussion_languages = d.discussion_languages, + multi_community_follows = emptyList(), ) fun toUni(d: X11DatatypesPerson) = this.toUni(d, X11DatatypesPersonAggregates(-1, -1, -1)) @@ -1437,6 +1208,7 @@ internal class Transformer : MapperGenerator { instance_id = d.instance_id, post_count = counts.post_count, comment_count = counts.comment_count, + last_refreshed_at = "", ) override fun toUni(d: X11DatatypesPersonView): LemmyapiDatatypesPersonView = @@ -1581,6 +1353,9 @@ internal class Transformer : MapperGenerator { private_message_creator = this.toUni(d = d.private_message_creator), creator = this.toUni(d = d.creator), resolver = d.resolver?.let { this.toUni(d = it) }, + creator_is_admin = false, + creator_banned = d.creator.banned, + creator_ban_expires_at = d.creator.ban_expires, ) override fun toUni(d: X11DatatypesPrivateMessageResponse): LemmyapiDatatypesPrivateMessageResponse = LemmyapiDatatypesPrivateMessageResponse( @@ -1634,7 +1409,7 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X11DatatypesSearchResponse): LemmyapiDatatypesSearchResponse = LemmyapiDatatypesSearchResponse( - results = buildList { + search = buildList { addAll(d.comments.map { LemmyapiDatatypesSearchCombinedView.Comment(comment = this@Transformer.toUni(d = it)) }) addAll(d.posts.map { LemmyapiDatatypesSearchCombinedView.Post(post = this@Transformer.toUni(d = it)) }) addAll(d.communities.map { LemmyapiDatatypesSearchCombinedView.Community(community = this@Transformer.toUni(d = it)) }) @@ -2119,10 +1894,7 @@ internal class Transformer : MapperGenerator { person_id = d.person_id, ) - override fun fromUni(d: LemmyapiDatatypesGetReportCount): X11DatatypesGetReportCount = - X11DatatypesGetReportCount( - community_id = d.community_id, - ) + override fun fromUni(d: LemmyapiDatatypesGetSiteMetadata): X11DatatypesGetSiteMetadata = X11DatatypesGetSiteMetadata( @@ -2357,7 +2129,6 @@ internal class Transformer : MapperGenerator { open_links_in_new_tab = d.open_links_in_new_tab, infinite_scroll_enabled = d.infinite_scroll_enabled, post_listing_mode = d.post_listing_mode, - enable_keyboard_navigation = d.enable_keyboard_navigation, enable_animated_images = d.enable_animated_images, collapse_bot_comments = d.collapse_bot_comments, show_scores = d.show_score, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CommentReplyView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CommentReplyView.kt index 113a57b8..92be924a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CommentReplyView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CommentReplyView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -import it.vercruysse.lemmyapi.dto.SubscribedType +import it.vercruysse.lemmyapi.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CommentReportView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CommentReportView.kt index 9cf2bf20..17fe6652 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CommentReportView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CommentReportView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -import it.vercruysse.lemmyapi.dto.SubscribedType +import it.vercruysse.lemmyapi.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CommentView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CommentView.kt index e4a32d8a..2c3b6778 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CommentView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CommentView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -import it.vercruysse.lemmyapi.dto.SubscribedType +import it.vercruysse.lemmyapi.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/Community.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/Community.kt index 0c277924..8dbbf70b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/Community.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/Community.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -import it.vercruysse.lemmyapi.dto.CommunityVisibility +import it.vercruysse.lemmyapi.enums.CommunityVisibility import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CommunityView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CommunityView.kt index ab095815..66fc81ff 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CommunityView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CommunityView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -import it.vercruysse.lemmyapi.dto.SubscribedType +import it.vercruysse.lemmyapi.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CreateCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CreateCommunity.kt index fdab0948..d02e09e4 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CreateCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CreateCommunity.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -import it.vercruysse.lemmyapi.dto.CommunityVisibility +import it.vercruysse.lemmyapi.enums.CommunityVisibility import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CreateSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CreateSite.kt index 31b4b80e..8fdc4ea3 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CreateSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CreateSite.kt @@ -1,9 +1,9 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -import it.vercruysse.lemmyapi.dto.ListingType -import it.vercruysse.lemmyapi.dto.PostListingMode -import it.vercruysse.lemmyapi.dto.RegistrationMode -import it.vercruysse.lemmyapi.dto.SortType +import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.enums.PostListingMode +import it.vercruysse.lemmyapi.enums.RegistrationMode +import it.vercruysse.lemmyapi.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/EditCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/EditCommunity.kt index 5c212592..bc6f9008 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/EditCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/EditCommunity.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -import it.vercruysse.lemmyapi.dto.CommunityVisibility +import it.vercruysse.lemmyapi.enums.CommunityVisibility import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/EditSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/EditSite.kt index ea5e7e98..4f23928d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/EditSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/EditSite.kt @@ -1,9 +1,9 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -import it.vercruysse.lemmyapi.dto.ListingType -import it.vercruysse.lemmyapi.dto.PostListingMode -import it.vercruysse.lemmyapi.dto.RegistrationMode -import it.vercruysse.lemmyapi.dto.SortType +import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.enums.PostListingMode +import it.vercruysse.lemmyapi.enums.RegistrationMode +import it.vercruysse.lemmyapi.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/FeaturePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/FeaturePost.kt index 93d0b678..53fa8377 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/FeaturePost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/FeaturePost.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -import it.vercruysse.lemmyapi.dto.PostFeatureType +import it.vercruysse.lemmyapi.enums.PostFeatureType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/GetComments.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/GetComments.kt index 4efbd4ba..7d776030 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/GetComments.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/GetComments.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -import it.vercruysse.lemmyapi.dto.CommentSortType -import it.vercruysse.lemmyapi.dto.ListingType +import it.vercruysse.lemmyapi.enums.CommentSortType +import it.vercruysse.lemmyapi.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/GetModlog.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/GetModlog.kt index d1c54fd7..84b1b94f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/GetModlog.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/GetModlog.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -import it.vercruysse.lemmyapi.dto.ModlogActionType +import it.vercruysse.lemmyapi.enums.ModlogActionType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/GetPersonDetails.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/GetPersonDetails.kt index b34697c3..30d67ae9 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/GetPersonDetails.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/GetPersonDetails.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -import it.vercruysse.lemmyapi.dto.SortType +import it.vercruysse.lemmyapi.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/GetPersonMentions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/GetPersonMentions.kt index 2bad53d2..5b58a8db 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/GetPersonMentions.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/GetPersonMentions.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -import it.vercruysse.lemmyapi.dto.CommentSortType +import it.vercruysse.lemmyapi.enums.CommentSortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/GetPosts.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/GetPosts.kt index d1ae09b7..fa425b67 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/GetPosts.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/GetPosts.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -import it.vercruysse.lemmyapi.dto.ListingType -import it.vercruysse.lemmyapi.dto.SortType +import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/GetReplies.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/GetReplies.kt index c249249c..7e59a156 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/GetReplies.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/GetReplies.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -import it.vercruysse.lemmyapi.dto.CommentSortType +import it.vercruysse.lemmyapi.enums.CommentSortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/ListCommunities.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/ListCommunities.kt index 0e3af85c..3677facb 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/ListCommunities.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/ListCommunities.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -import it.vercruysse.lemmyapi.dto.ListingType -import it.vercruysse.lemmyapi.dto.SortType +import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/LocalSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/LocalSite.kt index 4c3adce6..8d2cc480 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/LocalSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/LocalSite.kt @@ -1,9 +1,9 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -import it.vercruysse.lemmyapi.dto.ListingType -import it.vercruysse.lemmyapi.dto.PostListingMode -import it.vercruysse.lemmyapi.dto.RegistrationMode -import it.vercruysse.lemmyapi.dto.SortType +import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.enums.PostListingMode +import it.vercruysse.lemmyapi.enums.RegistrationMode +import it.vercruysse.lemmyapi.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/LocalUser.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/LocalUser.kt index c03bdbbd..f17d04fa 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/LocalUser.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/LocalUser.kt @@ -1,8 +1,8 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -import it.vercruysse.lemmyapi.dto.ListingType -import it.vercruysse.lemmyapi.dto.PostListingMode -import it.vercruysse.lemmyapi.dto.SortType +import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.enums.PostListingMode +import it.vercruysse.lemmyapi.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/PersonMentionView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/PersonMentionView.kt index ef2b452f..dcbe75f2 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/PersonMentionView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/PersonMentionView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -import it.vercruysse.lemmyapi.dto.SubscribedType +import it.vercruysse.lemmyapi.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/PostReportView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/PostReportView.kt index 27a9cdd3..6bf462be 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/PostReportView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/PostReportView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -import it.vercruysse.lemmyapi.dto.SubscribedType +import it.vercruysse.lemmyapi.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/PostView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/PostView.kt index 68542a2e..64321e0d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/PostView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/PostView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -import it.vercruysse.lemmyapi.dto.SubscribedType +import it.vercruysse.lemmyapi.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/SaveUserSettings.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/SaveUserSettings.kt index 5beedadb..9bd9aba9 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/SaveUserSettings.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/SaveUserSettings.kt @@ -1,8 +1,8 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -import it.vercruysse.lemmyapi.dto.ListingType -import it.vercruysse.lemmyapi.dto.PostListingMode -import it.vercruysse.lemmyapi.dto.SortType +import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.enums.PostListingMode +import it.vercruysse.lemmyapi.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/Search.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/Search.kt index c973dbb6..174e86a9 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/Search.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/Search.kt @@ -1,8 +1,8 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -import it.vercruysse.lemmyapi.dto.ListingType -import it.vercruysse.lemmyapi.dto.SearchType -import it.vercruysse.lemmyapi.dto.SortType +import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.enums.SearchType +import it.vercruysse.lemmyapi.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/SearchResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/SearchResponse.kt index def57b20..6cb27e8f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/SearchResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/SearchResponse.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -import it.vercruysse.lemmyapi.dto.SearchType +import it.vercruysse.lemmyapi.enums.SearchType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt index 0254e6b1..7de45e76 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt @@ -6,13 +6,14 @@ import it.vercruysse.lemmyapi.LemmyApiBaseController import it.vercruysse.lemmyapi.datatypes.ListCustomEmojis import it.vercruysse.lemmyapi.datatypes.ListCustomEmojisResponse import it.vercruysse.lemmyapi.datatypes.ListNotifications -import it.vercruysse.lemmyapi.datatypes.ListNotificationsResponse import it.vercruysse.lemmyapi.datatypes.MarkNotificationAsRead import it.vercruysse.lemmyapi.datatypes.MyUserInfo +import it.vercruysse.lemmyapi.datatypes.PagedResponse +import it.vercruysse.lemmyapi.datatypes.UnreadCountsResponse import it.vercruysse.lemmyapi.dto.ExportUserSettingsResponse import it.vercruysse.lemmyapi.dto.ImportUserSettings -import it.vercruysse.lemmyapi.dto.NotificationDataType -import it.vercruysse.lemmyapi.dto.NotificationType +import it.vercruysse.lemmyapi.enums.NotificationDataType +import it.vercruysse.lemmyapi.enums.NotificationType // Based on tags/0.19.3-alpha.6 internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, baseUrl: String, auth: String?) : @@ -58,8 +59,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun getModlog( form: it.vercruysse.lemmyapi.datatypes.GetModlog, - ): Result = - api.getModlog(transformer.fromUni(form)).map(transformer::toUni) + ): Result> = notSupported() /** * Search lemmy. @@ -124,8 +124,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun listCommunities( form: it.vercruysse.lemmyapi.datatypes.ListCommunities, - ): Result = - api.listCommunities(transformer.fromUni(form)).map(transformer::toUni) + ): Result> = + api.listCommunities(transformer.fromUni(form)).map { PagedResponse(it.communities.map(transformer::toUni)) } /** * Follow / subscribe to a community. @@ -144,7 +144,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun blockCommunity( form: it.vercruysse.lemmyapi.datatypes.BlockCommunity, - ): Result = + ): Result = api.blockCommunity(transformer.fromUni(form)).map(transformer::toUni) /** @@ -184,7 +184,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun banFromCommunity( form: it.vercruysse.lemmyapi.datatypes.BanFromCommunity, - ): Result = + ): Result = api.banFromCommunity(transformer.fromUni(form)).map(transformer::toUni) /** @@ -202,8 +202,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @GET("federated_instances") */ - override suspend fun getFederatedInstances(): Result = - api.getFederatedInstances().map(transformer::toUni) + override suspend fun getFederatedInstances(form: it.vercruysse.lemmyapi.datatypes.GetFederatedInstances): Result> = notSupported() /** * Get / fetch a post. @@ -238,8 +237,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun getPosts( form: it.vercruysse.lemmyapi.datatypes.GetPosts, - ): Result = - api.getPosts(transformer.fromUni(form.toValidatedForm())).map(transformer::toUni) + ): Result> = + api.getPosts(transformer.fromUni(form.toValidatedForm())).map { PagedResponse(it.posts.map(transformer::toUni)) } /** * Delete a post. @@ -330,39 +329,27 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun listReports( form: it.vercruysse.lemmyapi.datatypes.ListReports, - ): Result = + ): Result> = when (form.type_) { it.vercruysse.lemmyapi.dto.ReportType.Communities -> notSupported() it.vercruysse.lemmyapi.dto.ReportType.Posts -> { api.listPostReports(transformer.fromUniP(form)).map { resp -> - val items = resp.post_reports.map { r -> - it.vercruysse.lemmyapi.datatypes.ReportCombinedView.Post( - transformer.toUni(r), - ) - } - it.vercruysse.lemmyapi.datatypes.ListReportsResponse(items) + PagedResponse(resp.post_reports.map(transformer::toUni)) } } + it.vercruysse.lemmyapi.dto.ReportType.Comments -> { api.listCommentReports(transformer.fromUniC(form)).map { resp -> - val items = resp.comment_reports.map { r -> - it.vercruysse.lemmyapi.datatypes.ReportCombinedView.Comment( - transformer.toUni(r), - ) - } - it.vercruysse.lemmyapi.datatypes.ListReportsResponse(items) + PagedResponse(resp.comment_reports.map(transformer::toUni)) } } + it.vercruysse.lemmyapi.dto.ReportType.PrivateMessages -> { api.listPrivateMessageReports(transformer.fromUniPm(form)).map { resp -> - val items = resp.private_message_reports.map { r -> - it.vercruysse.lemmyapi.datatypes.ReportCombinedView.PrivateMessage( - transformer.toUni(r), - ) - } - it.vercruysse.lemmyapi.datatypes.ListReportsResponse(items) + PagedResponse(resp.private_message_reports.map(transformer::toUni)) } } + it.vercruysse.lemmyapi.dto.ReportType.All -> { runCatching { val postsResp = api.listPostReports(transformer.fromUniP(form)).getOrThrow() @@ -372,30 +359,18 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba val allReports = mutableListOf() allReports.addAll( - postsResp.post_reports.map { r -> - it.vercruysse.lemmyapi.datatypes.ReportCombinedView.Post( - transformer.toUni(r), - ) - }, + postsResp.post_reports.map(transformer::toUni) ) allReports.addAll( - commentsResp.comment_reports.map { r -> - it.vercruysse.lemmyapi.datatypes.ReportCombinedView.Comment( - transformer.toUni(r), - ) - }, + commentsResp.comment_reports.map(transformer::toUni) ) allReports.addAll( - privateMessagesResp.private_message_reports.map { r -> - it.vercruysse.lemmyapi.datatypes.ReportCombinedView.PrivateMessage( - transformer.toUni(r), - ) - }, + privateMessagesResp.private_message_reports.map(transformer::toUni) ) - it.vercruysse.lemmyapi.datatypes.ListReportsResponse(allReports) + PagedResponse(allReports) } } } @@ -447,8 +422,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun getComments( form: it.vercruysse.lemmyapi.datatypes.GetComments, - ): Result = - api.getComments(transformer.fromUni(form)).map(transformer::toUni) + ): Result> = + api.getComments(transformer.fromUni(form)).map { PagedResponse(it.comments.map(transformer::toUni)) } /** * Delete a comment. @@ -604,36 +579,39 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba NotificationType.Mention -> api.markPersonMentionAsRead(transformer.fromUniM(form)).map { } NotificationType.Reply -> api.markCommentReplyAsRead(transformer.fromUniR(form)).map { } NotificationType.PrivateMessage -> api.markPrivateMessageAsRead(transformer.fromUniP(form)).map { } - NotificationType.Subscribed -> notSupported() + NotificationType.Subscribed, NotificationType.ModAction -> notSupported() null -> notSupported() } /** * List notifications. */ - override suspend fun listNotifications(form: ListNotifications): Result = + override suspend fun listNotifications(form: ListNotifications): Result> = when (form.type_) { NotificationDataType.All -> runCatching { - val resReplies = api.getReplies(transformer.fromUniR(form)).map(transformer::toUni).getOrThrow() - val mentionReplies = api.getPersonMentions(transformer.fromUniM(form)).map(transformer::toUni).getOrThrow() - val privateMessages = api.getPrivateMessages(transformer.fromUniP(form)).map(transformer::toUni).getOrThrow() - - ListNotificationsResponse( + val replies = api.getReplies(transformer.fromUniR(form)).getOrThrow().replies.map(transformer::toUni) + val mentionReplies = api.getPersonMentions(transformer.fromUniM(form)).getOrThrow().mentions.map(transformer::toUni) + val privateMessages = api.getPrivateMessages(transformer.fromUniP(form)).getOrThrow().private_messages.map(transformer::toUniPMV) + PagedResponse( buildList { - addAll(resReplies.notifications) - addAll(mentionReplies.notifications) - addAll(privateMessages.notifications) + addAll(replies) + addAll(mentionReplies) + addAll(privateMessages) }, ) } + NotificationDataType.Reply -> - api.getReplies(transformer.fromUniR(form)).map(transformer::toUni) + api.getReplies(transformer.fromUniR(form)).map { resp -> PagedResponse(resp.replies.map(transformer::toUni)) } + NotificationDataType.Mention -> - api.getPersonMentions(transformer.fromUniM(form)).map(transformer::toUni) + api.getPersonMentions(transformer.fromUniM(form)).map { resp -> PagedResponse(resp.mentions.map(transformer::toUni)) } + NotificationDataType.PrivateMessage -> - api.getPrivateMessages(transformer.fromUniP(form)).map(transformer::toUni) - NotificationDataType.Subscribed -> Result.success(ListNotificationsResponse(emptyList())) + api.getPrivateMessages(transformer.fromUniP(form)).map { resp -> PagedResponse(resp.private_messages.map(transformer::toUniPMV)) } + + NotificationDataType.Subscribed -> Result.success(PagedResponse(emptyList())) } /** @@ -643,7 +621,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun banPerson( form: it.vercruysse.lemmyapi.datatypes.BanPerson, - ): Result = + ): Result = api.banPerson(transformer.fromUni(form)).map(transformer::toUni) /** @@ -651,8 +629,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @GET("user/banned") */ - override suspend fun getBannedPersons(): Result = - api.getBannedPersons().map(transformer::toUni) + override suspend fun getBannedPersons(): Result> = + api.getBannedPersons().map { resp -> PagedResponse(resp.banned.map(transformer::toUni)) } /** * Block a person. @@ -661,7 +639,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun blockPerson( form: it.vercruysse.lemmyapi.datatypes.BlockPerson, - ): Result = + ): Result = api.blockPerson(transformer.fromUni(form)).map(transformer::toUni) /** @@ -722,23 +700,16 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba ): Result = api.changePassword(transformer.fromUni(form)).map(transformer::toUni) - /** - * Get counts for your reports - * - * @GET("user/report_count") - */ - override suspend fun getReportCount( - form: it.vercruysse.lemmyapi.datatypes.GetReportCount, - ): Result = - api.getReportCount(transformer.fromUni(form)).map(transformer::toUni) - - /** - * Get your unread counts - * - * @GET("user/unread_count") - */ - override suspend fun getUnreadCount(): Result = - api.getUnreadCount().map(transformer::toUni) + override suspend fun getUnreadCounts(): Result = runCatching { + val d = api.getUnreadCount().getOrThrow() + val reportCount = api.getReportCount(it.vercruysse.lemmyapi.v0.x19.x3.datatypes.GetReportCount()).getOrNull() + val applicationCount = api.getUnreadRegistrationApplicationCount().getOrNull() + UnreadCountsResponse( + notification_count = d.replies + d.mentions + d.private_messages, + report_count = (reportCount?.post_reports ?: 0L) + (reportCount?.comment_reports ?: 0L) + (reportCount?.private_message_reports ?: 0L), + registration_application_count = applicationCount?.registration_applications, + ) + } /** * Verify your email @@ -773,14 +744,6 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba ): Result = api.addAdmin(transformer.fromUni(form)).map(transformer::toUni) - /** - * Get the unread registration applications count. - * - * @GET("admin/registration_application/count") - */ - override suspend fun getUnreadRegistrationApplicationCount(): Result = - api.getUnreadRegistrationApplicationCount().map(transformer::toUni) - /** * List the registration applications. * @@ -788,8 +751,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun listRegistrationApplications( form: it.vercruysse.lemmyapi.datatypes.ListRegistrationApplications, - ): Result = - api.listRegistrationApplications(transformer.fromUni(form)).map(transformer::toUni) + ): Result> = + api.listRegistrationApplications(transformer.fromUni(form)).map { resp -> PagedResponse(resp.registration_applications.map(transformer::toUni)) } /** * Approve a registration application @@ -951,8 +914,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun listPostLikes( form: it.vercruysse.lemmyapi.datatypes.ListPostLikes, - ): Result = - api.listPostLikes(transformer.fromUni(form)).map(transformer::toUni) + ): Result> = notSupported() /** * List a comment's likes. Admin-only. @@ -961,8 +923,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun listCommentLikes( form: it.vercruysse.lemmyapi.datatypes.ListCommentLikes, - ): Result = - api.listCommentLikes(transformer.fromUni(form)).map(transformer::toUni) + ): Result> = notSupported() /** * List all the media for your user @@ -971,8 +932,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun listMedia( form: it.vercruysse.lemmyapi.datatypes.ListMedia, - ): Result = - notSupported() + ): Result> = notSupported() /** * List all the media known to your instance. @@ -981,8 +941,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun listAllMedia( form: it.vercruysse.lemmyapi.datatypes.ListMedia, - ): Result = - notSupported() + ): Result> = notSupported() /** * Hide a post from list views. diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt index 28cf38e5..85a4059d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt @@ -35,11 +35,10 @@ internal interface MapperGenerator { fun toUni(d: AdminPurgePersonView): it.vercruysse.lemmyapi.datatypes.AdminPurgePersonView fun toUni(d: AdminPurgePost): it.vercruysse.lemmyapi.datatypes.AdminPurgePost fun toUni(d: AdminPurgePostView): it.vercruysse.lemmyapi.datatypes.AdminPurgePostView - fun toUni(d: BanFromCommunityResponse): it.vercruysse.lemmyapi.datatypes.BanFromCommunityResponse - fun toUni(d: BannedPersonsResponse): it.vercruysse.lemmyapi.datatypes.BannedPersonsResponse - fun toUni(d: BanPersonResponse): it.vercruysse.lemmyapi.datatypes.BanPersonResponse - fun toUni(d: BlockCommunityResponse): it.vercruysse.lemmyapi.datatypes.BlockCommunityResponse - fun toUni(d: BlockPersonResponse): it.vercruysse.lemmyapi.datatypes.BlockPersonResponse + fun toUni(d: BanFromCommunityResponse): it.vercruysse.lemmyapi.datatypes.PersonResponse + fun toUni(d: BanPersonResponse): it.vercruysse.lemmyapi.datatypes.PersonResponse + fun toUni(d: BlockCommunityResponse): it.vercruysse.lemmyapi.datatypes.CommunityResponse + fun toUni(d: BlockPersonResponse): it.vercruysse.lemmyapi.datatypes.PersonResponse fun toUni(d: CaptchaResponse): it.vercruysse.lemmyapi.datatypes.CaptchaResponse fun toUni(d: Comment, counts: CommentAggregates): it.vercruysse.lemmyapi.datatypes.Comment @@ -59,28 +58,13 @@ internal interface MapperGenerator { fun toUni(d: FederatedInstances): it.vercruysse.lemmyapi.datatypes.FederatedInstances fun toUni(d: GenerateTotpSecretResponse): it.vercruysse.lemmyapi.datatypes.GenerateTotpSecretResponse fun toUni(d: GetCaptchaResponse): it.vercruysse.lemmyapi.datatypes.GetCaptchaResponse - fun toUni(d: GetCommentsResponse): it.vercruysse.lemmyapi.datatypes.GetCommentsResponse fun toUni(d: GetCommunityResponse): it.vercruysse.lemmyapi.datatypes.GetCommunityResponse - fun toUni(d: GetFederatedInstancesResponse): it.vercruysse.lemmyapi.datatypes.GetFederatedInstancesResponse - fun toUni(d: GetModlogResponse): it.vercruysse.lemmyapi.datatypes.GetModlogResponse fun toUni(d: GetPersonDetailsResponse): it.vercruysse.lemmyapi.datatypes.GetPersonDetailsResponse fun toUni(d: GetPostResponse): it.vercruysse.lemmyapi.datatypes.GetPostResponse - fun toUni(d: GetPostsResponse): it.vercruysse.lemmyapi.datatypes.GetPostsResponse - fun toUni(d: GetReportCountResponse): it.vercruysse.lemmyapi.datatypes.GetReportCountResponse fun toUni(d: GetSiteMetadataResponse): it.vercruysse.lemmyapi.datatypes.GetSiteMetadataResponse - - fun toUni(d: GetUnreadCountResponse): it.vercruysse.lemmyapi.datatypes.GetUnreadCountResponse - fun toUni( - d: GetUnreadRegistrationApplicationCountResponse, - ): it.vercruysse.lemmyapi.datatypes.GetUnreadRegistrationApplicationCountResponse fun toUni(d: Instance): it.vercruysse.lemmyapi.datatypes.Instance fun toUni(d: InstanceWithFederationState): it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState fun toUni(d: Language): it.vercruysse.lemmyapi.datatypes.Language - fun toUni(d: ListCommentLikesResponse): it.vercruysse.lemmyapi.datatypes.ListCommentLikesResponse - fun toUni(d: ListCommunitiesResponse): it.vercruysse.lemmyapi.datatypes.ListCommunitiesResponse - fun toUni(d: ListPostLikesResponse): it.vercruysse.lemmyapi.datatypes.ListPostLikesResponse - fun toUni(d: ListRegistrationApplicationsResponse): it.vercruysse.lemmyapi.datatypes.ListRegistrationApplicationsResponse - fun toUni(d: LocalSiteRateLimit): it.vercruysse.lemmyapi.datatypes.LocalSiteRateLimit fun toUni(d: LocalUser): it.vercruysse.lemmyapi.datatypes.LocalUser fun toUni(d: LocalUserView): it.vercruysse.lemmyapi.datatypes.LocalUserView @@ -179,7 +163,7 @@ internal interface MapperGenerator { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPersonDetails): GetPersonDetails fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPost): GetPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPosts): GetPosts - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetReportCount): GetReportCount + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetSiteMetadata): GetSiteMetadata fun fromUni(d: it.vercruysse.lemmyapi.datatypes.HideCommunity): HideCommunity fun fromUniC(d: it.vercruysse.lemmyapi.datatypes.ListReports): ListCommentReports diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt index cb86f9ef..77e381e0 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt @@ -3,21 +3,20 @@ package it.vercruysse.lemmyapi.v0.x19.x3 import it.vercruysse.lemmyapi.datatypes.CommentActions import it.vercruysse.lemmyapi.datatypes.CommunityActions import it.vercruysse.lemmyapi.datatypes.LinkMetadata -import it.vercruysse.lemmyapi.datatypes.ListNotificationsResponse import it.vercruysse.lemmyapi.datatypes.MarkNotificationAsRead import it.vercruysse.lemmyapi.datatypes.Notification import it.vercruysse.lemmyapi.datatypes.NotificationData import it.vercruysse.lemmyapi.datatypes.NotificationView import it.vercruysse.lemmyapi.datatypes.PersonActions import it.vercruysse.lemmyapi.datatypes.PostActions -import it.vercruysse.lemmyapi.dto.CommentSortType -import it.vercruysse.lemmyapi.dto.CommunityFollowerState -import it.vercruysse.lemmyapi.dto.CommunityVisibility -import it.vercruysse.lemmyapi.dto.FederationMode -import it.vercruysse.lemmyapi.dto.NotificationType -import it.vercruysse.lemmyapi.dto.PostListingMode -import it.vercruysse.lemmyapi.dto.SortType -import it.vercruysse.lemmyapi.dto.VoteShow +import it.vercruysse.lemmyapi.enums.CommentSortType +import it.vercruysse.lemmyapi.enums.CommunityFollowerState +import it.vercruysse.lemmyapi.enums.CommunityVisibility +import it.vercruysse.lemmyapi.enums.FederationMode +import it.vercruysse.lemmyapi.enums.NotificationType +import it.vercruysse.lemmyapi.enums.PostListingMode +import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.enums.VoteShow import it.vercruysse.lemmyapi.utils.toAt import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.SiteMetadata import it.vercruysse.lemmyapi.datatypes.AddAdmin as LemmyapiDatatypesAddAdmin @@ -40,14 +39,9 @@ import it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunity as LemmyapiDatatype import it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunityView as LemmyapiDatatypesModRemoveCommunityView import it.vercruysse.lemmyapi.datatypes.ApproveRegistrationApplication as LemmyapiDatatypesApproveRegistrationApplication import it.vercruysse.lemmyapi.datatypes.BanFromCommunity as LemmyapiDatatypesBanFromCommunity -import it.vercruysse.lemmyapi.datatypes.BanFromCommunityResponse as LemmyapiDatatypesBanFromCommunityResponse import it.vercruysse.lemmyapi.datatypes.BanPerson as LemmyapiDatatypesBanPerson -import it.vercruysse.lemmyapi.datatypes.BanPersonResponse as LemmyapiDatatypesBanPersonResponse -import it.vercruysse.lemmyapi.datatypes.BannedPersonsResponse as LemmyapiDatatypesBannedPersonsResponse import it.vercruysse.lemmyapi.datatypes.BlockCommunity as LemmyapiDatatypesBlockCommunity -import it.vercruysse.lemmyapi.datatypes.BlockCommunityResponse as LemmyapiDatatypesBlockCommunityResponse import it.vercruysse.lemmyapi.datatypes.BlockPerson as LemmyapiDatatypesBlockPerson -import it.vercruysse.lemmyapi.datatypes.BlockPersonResponse as LemmyapiDatatypesBlockPersonResponse import it.vercruysse.lemmyapi.datatypes.CaptchaResponse as LemmyapiDatatypesCaptchaResponse import it.vercruysse.lemmyapi.datatypes.ChangePassword as LemmyapiDatatypesChangePassword import it.vercruysse.lemmyapi.datatypes.Comment as LemmyapiDatatypesComment @@ -96,39 +90,26 @@ import it.vercruysse.lemmyapi.datatypes.GenerateTotpSecretResponse as LemmyapiDa import it.vercruysse.lemmyapi.datatypes.GetCaptchaResponse as LemmyapiDatatypesGetCaptchaResponse import it.vercruysse.lemmyapi.datatypes.GetComment as LemmyapiDatatypesGetComment import it.vercruysse.lemmyapi.datatypes.GetComments as LemmyapiDatatypesGetComments -import it.vercruysse.lemmyapi.datatypes.GetCommentsResponse as LemmyapiDatatypesGetCommentsResponse import it.vercruysse.lemmyapi.datatypes.GetCommunity as LemmyapiDatatypesGetCommunity import it.vercruysse.lemmyapi.datatypes.GetCommunityResponse as LemmyapiDatatypesGetCommunityResponse -import it.vercruysse.lemmyapi.datatypes.GetFederatedInstancesResponse as LemmyapiDatatypesGetFederatedInstancesResponse import it.vercruysse.lemmyapi.datatypes.GetModlog as LemmyapiDatatypesGetModlog -import it.vercruysse.lemmyapi.datatypes.GetModlogResponse as LemmyapiDatatypesGetModlogResponse import it.vercruysse.lemmyapi.datatypes.GetPersonDetails as LemmyapiDatatypesGetPersonDetails import it.vercruysse.lemmyapi.datatypes.GetPersonDetailsResponse as LemmyapiDatatypesGetPersonDetailsResponse import it.vercruysse.lemmyapi.datatypes.GetPost as LemmyapiDatatypesGetPost import it.vercruysse.lemmyapi.datatypes.GetPostResponse as LemmyapiDatatypesGetPostResponse import it.vercruysse.lemmyapi.datatypes.GetPosts as LemmyapiDatatypesGetPosts -import it.vercruysse.lemmyapi.datatypes.GetPostsResponse as LemmyapiDatatypesGetPostsResponse -import it.vercruysse.lemmyapi.datatypes.GetReportCount as LemmyapiDatatypesGetReportCount -import it.vercruysse.lemmyapi.datatypes.GetReportCountResponse as LemmyapiDatatypesGetReportCountResponse import it.vercruysse.lemmyapi.datatypes.GetSiteMetadata as LemmyapiDatatypesGetSiteMetadata import it.vercruysse.lemmyapi.datatypes.GetSiteMetadataResponse as LemmyapiDatatypesGetSiteMetadataResponse import it.vercruysse.lemmyapi.datatypes.GetSiteResponse as LemmyapiDatatypesGetSiteResponse -import it.vercruysse.lemmyapi.datatypes.GetUnreadCountResponse as LemmyapiDatatypesGetUnreadCountResponse -import it.vercruysse.lemmyapi.datatypes.GetUnreadRegistrationApplicationCountResponse as LemmyapiDatatypesGetUnreadRegistrationApplicationCountResponse import it.vercruysse.lemmyapi.datatypes.HideCommunity as LemmyapiDatatypesHideCommunity import it.vercruysse.lemmyapi.datatypes.Instance as LemmyapiDatatypesInstance import it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState as LemmyapiDatatypesInstanceWithFederationState import it.vercruysse.lemmyapi.datatypes.Language as LemmyapiDatatypesLanguage import it.vercruysse.lemmyapi.datatypes.ListCommentLikes as LemmyapiDatatypesListCommentLikes -import it.vercruysse.lemmyapi.datatypes.ListCommentLikesResponse as LemmyapiDatatypesListCommentLikesResponse import it.vercruysse.lemmyapi.datatypes.ListCommunities as LemmyapiDatatypesListCommunities -import it.vercruysse.lemmyapi.datatypes.ListCommunitiesResponse as LemmyapiDatatypesListCommunitiesResponse import it.vercruysse.lemmyapi.datatypes.ListNotifications as LemmyapiDatatypesListNotifications -import it.vercruysse.lemmyapi.datatypes.ListNotificationsResponse as LemmyapiDatatypesListNotificationsResponse import it.vercruysse.lemmyapi.datatypes.ListPostLikes as LemmyapiDatatypesListPostLikes -import it.vercruysse.lemmyapi.datatypes.ListPostLikesResponse as LemmyapiDatatypesListPostLikesResponse import it.vercruysse.lemmyapi.datatypes.ListRegistrationApplications as LemmyapiDatatypesListRegistrationApplications -import it.vercruysse.lemmyapi.datatypes.ListRegistrationApplicationsResponse as LemmyapiDatatypesListRegistrationApplicationsResponse import it.vercruysse.lemmyapi.datatypes.LocalSite as LemmyapiDatatypesLocalSite import it.vercruysse.lemmyapi.datatypes.LocalSiteRateLimit as LemmyapiDatatypesLocalSiteRateLimit import it.vercruysse.lemmyapi.datatypes.LocalUser as LemmyapiDatatypesLocalUser @@ -221,7 +202,6 @@ import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.BanFromCommunity as X3Datatype import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.BanFromCommunityResponse as X3DatatypesBanFromCommunityResponse import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.BanPerson as X3DatatypesBanPerson import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.BanPersonResponse as X3DatatypesBanPersonResponse -import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.BannedPersonsResponse as X3DatatypesBannedPersonsResponse import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.BlockCommunity as X3DatatypesBlockCommunity import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.BlockCommunityResponse as X3DatatypesBlockCommunityResponse import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.BlockInstance as X3DatatypesBlockInstance @@ -278,45 +258,31 @@ import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.GenerateTotpSecretResponse as import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.GetCaptchaResponse as X3DatatypesGetCaptchaResponse import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.GetComment as X3DatatypesGetComment import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.GetComments as X3DatatypesGetComments -import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.GetCommentsResponse as X3DatatypesGetCommentsResponse import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.GetCommunity as X3DatatypesGetCommunity import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.GetCommunityResponse as X3DatatypesGetCommunityResponse -import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.GetFederatedInstancesResponse as X3DatatypesGetFederatedInstancesResponse import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.GetModlog as X3DatatypesGetModlog -import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.GetModlogResponse as X3DatatypesGetModlogResponse import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.GetPersonDetails as X3DatatypesGetPersonDetails import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.GetPersonDetailsResponse as X3DatatypesGetPersonDetailsResponse import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.GetPersonMentions as X3DatatypesGetPersonMentions -import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.GetPersonMentionsResponse as X3DatatypesGetPersonMentionsResponse import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.GetPost as X3DatatypesGetPost import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.GetPostResponse as X3DatatypesGetPostResponse import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.GetPosts as X3DatatypesGetPosts -import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.GetPostsResponse as X3DatatypesGetPostsResponse import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.GetPrivateMessages as X3DatatypesGetPrivateMessages import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.GetReplies as X3DatatypesGetReplies -import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.GetRepliesResponse as X3DatatypesGetRepliesResponse -import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.GetReportCount as X3DatatypesGetReportCount -import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.GetReportCountResponse as X3DatatypesGetReportCountResponse import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.GetSiteMetadata as X3DatatypesGetSiteMetadata import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.GetSiteMetadataResponse as X3DatatypesGetSiteMetadataResponse import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.GetSiteResponse as X3DatatypesGetSiteResponse -import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.GetUnreadCountResponse as X3DatatypesGetUnreadCountResponse -import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.GetUnreadRegistrationApplicationCountResponse as X3DatatypesGetUnreadRegistrationApplicationCountResponse import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.HideCommunity as X3DatatypesHideCommunity import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.Instance as X3DatatypesInstance import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.InstanceWithFederationState as X3DatatypesInstanceWithFederationState import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.Language as X3DatatypesLanguage import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.ListCommentLikes as X3DatatypesListCommentLikes -import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.ListCommentLikesResponse as X3DatatypesListCommentLikesResponse import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.ListCommentReports as X3DatatypesListCommentReports import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.ListCommunities as X3DatatypesListCommunities -import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.ListCommunitiesResponse as X3DatatypesListCommunitiesResponse import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.ListPostLikes as X3DatatypesListPostLikes -import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.ListPostLikesResponse as X3DatatypesListPostLikesResponse import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.ListPostReports as X3DatatypesListPostReports import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.ListPrivateMessageReports as X3DatatypesListPrivateMessageReports import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.ListRegistrationApplications as X3DatatypesListRegistrationApplications -import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.ListRegistrationApplicationsResponse as X3DatatypesListRegistrationApplicationsResponse import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.LocalSite as X3DatatypesLocalSite import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.LocalSiteRateLimit as X3DatatypesLocalSiteRateLimit import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.LocalUser as X3DatatypesLocalUser @@ -371,7 +337,6 @@ import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.PrivateMessageReportResponse a import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.PrivateMessageReportView as X3DatatypesPrivateMessageReportView import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.PrivateMessageResponse as X3DatatypesPrivateMessageResponse import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.PrivateMessageView as X3DatatypesPrivateMessageView -import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.PrivateMessagesResponse as X3DatatypesPrivateMessagesResponse import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.PurgeComment as X3DatatypesPurgeComment import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.PurgeCommunity as X3DatatypesPurgeCommunity import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.PurgePerson as X3DatatypesPurgePerson @@ -470,6 +435,7 @@ internal class Transformer : MapperGenerator { report_count = -1, unresolved_report_count = -1, local_removed = false, + last_refreshed_at = "", ) override fun toUni(d: X3DatatypesCommunityView): LemmyapiDatatypesCommunityView = @@ -653,32 +619,17 @@ internal class Transformer : MapperGenerator { community = this.toUni(d = d.community, counts = X3DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), ) - override fun toUni(d: X3DatatypesBanFromCommunityResponse): LemmyapiDatatypesBanFromCommunityResponse = LemmyapiDatatypesBanFromCommunityResponse( - person_view = this.toUni(d = d.person_view), - banned = d.banned, - ) + override fun toUni(d: X3DatatypesBanFromCommunityResponse): it.vercruysse.lemmyapi.datatypes.PersonResponse = + it.vercruysse.lemmyapi.datatypes.PersonResponse(person_view = this.toUni(d = d.person_view)) - override fun toUni(d: X3DatatypesBannedPersonsResponse): LemmyapiDatatypesBannedPersonsResponse = - LemmyapiDatatypesBannedPersonsResponse( - banned = d.banned.map { this.toUni(d = it) }, - ) + override fun toUni(d: X3DatatypesBanPersonResponse): it.vercruysse.lemmyapi.datatypes.PersonResponse = + it.vercruysse.lemmyapi.datatypes.PersonResponse(person_view = this.toUni(d = d.person_view)) - override fun toUni(d: X3DatatypesBanPersonResponse): LemmyapiDatatypesBanPersonResponse = - LemmyapiDatatypesBanPersonResponse( - person_view = this.toUni(d = d.person_view), - banned = d.banned, - ) + override fun toUni(d: X3DatatypesBlockCommunityResponse): it.vercruysse.lemmyapi.datatypes.CommunityResponse = + it.vercruysse.lemmyapi.datatypes.CommunityResponse(community_view = this.toUni(d = d.community_view), moderators = emptyList()) - override fun toUni(d: X3DatatypesBlockCommunityResponse): LemmyapiDatatypesBlockCommunityResponse = LemmyapiDatatypesBlockCommunityResponse( - community_view = this.toUni(d = d.community_view), - blocked = d.blocked, - ) - - override fun toUni(d: X3DatatypesBlockPersonResponse): LemmyapiDatatypesBlockPersonResponse = - LemmyapiDatatypesBlockPersonResponse( - person_view = this.toUni(d = d.person_view), - blocked = d.blocked, - ) + override fun toUni(d: X3DatatypesBlockPersonResponse): it.vercruysse.lemmyapi.datatypes.PersonResponse = + it.vercruysse.lemmyapi.datatypes.PersonResponse(person_view = this.toUni(d = d.person_view)) override fun toUni(d: X3DatatypesCaptchaResponse): LemmyapiDatatypesCaptchaResponse = LemmyapiDatatypesCaptchaResponse( @@ -795,11 +746,6 @@ internal class Transformer : MapperGenerator { ok = d.ok?.let { this.toUni(d = it) }, ) - override fun toUni(d: X3DatatypesGetCommentsResponse): LemmyapiDatatypesGetCommentsResponse = - LemmyapiDatatypesGetCommentsResponse( - comments = d.comments.map { this.toUni(d = it) }, - ) - override fun toUni(d: X3DatatypesGetCommunityResponse): LemmyapiDatatypesGetCommunityResponse = LemmyapiDatatypesGetCommunityResponse( community_view = this.toUni(d = d.community_view), @@ -808,132 +754,13 @@ internal class Transformer : MapperGenerator { discussion_languages = d.discussion_languages, ) - override fun toUni(d: X3DatatypesGetFederatedInstancesResponse): LemmyapiDatatypesGetFederatedInstancesResponse = - LemmyapiDatatypesGetFederatedInstancesResponse( - federated_instances = d.federated_instances?.let { this.toUni(d = it) }, - ) - - override fun toUni(d: X3DatatypesGetModlogResponse): LemmyapiDatatypesGetModlogResponse { - val modlogList = mutableListOf() - - // Add ModRemovePost entries - modlogList.addAll( - d.removed_posts.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemovePost(mod_remove_post = this.toUni(d = view)) - }, - ) - - // Add ModLockPost entries - modlogList.addAll( - d.locked_posts.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModLockPost(mod_lock_post = this.toUni(d = view)) - }, - ) - - // Add ModFeaturePost entries - modlogList.addAll( - d.featured_posts.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModFeaturePost(mod_feature_post = this.toUni(d = view)) - }, - ) - - // Add ModRemoveComment entries - modlogList.addAll( - d.removed_comments.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemoveComment(mod_remove_comment = this.toUni(d = view)) - }, - ) - - // Add ModRemoveCommunity entries - modlogList.addAll( - d.removed_communities.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminRemoveCommunity(admin_remove_community = this.toUni(d = view)) - }, - ) - - // Add ModBanFromCommunity entries - modlogList.addAll( - d.banned_from_community.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModBanFromCommunity(mod_ban_from_community = this.toUni(d = view)) - }, - ) - - // Add ModBan entries - modlogList.addAll( - d.banned.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminBan(admin_ban = this.toUni(d = view)) - }, - ) - - // Add ModAddCommunity entries - modlogList.addAll( - d.added_to_community.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModAddToCommunity(mod_add_to_community = this.toUni(d = view)) - }, - ) - - // Add ModTransferCommunity entries - modlogList.addAll( - d.transferred_to_community.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModTransferCommunity(mod_transfer_community = this.toUni(d = view)) - }, - ) - - // Add ModAdd entries - modlogList.addAll( - d.added.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminAdd(admin_add = this.toUni(d = view)) - }, - ) - - // Add AdminPurgePerson entries - modlogList.addAll( - d.admin_purged_persons.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgePerson(admin_purge_person = this.toUni(d = view)) - }, - ) - - // Add AdminPurgeCommunity entries - modlogList.addAll( - d.admin_purged_communities.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgeCommunity(admin_purge_community = this.toUni(d = view)) - }, - ) - - // Add AdminPurgePost entries - modlogList.addAll( - d.admin_purged_posts.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgePost(admin_purge_post = this.toUni(d = view)) - }, - ) - - // Add AdminPurgeComment entries - modlogList.addAll( - d.admin_purged_comments.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgeComment(admin_purge_comment = this.toUni(d = view)) - }, - ) - - // Add ModHideCommunity entries (mapped to ModChangeCommunityVisibility) - modlogList.addAll( - d.hidden_communities.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModChangeCommunityVisibility(mod_change_community_visibility = this.toUni(d = view)) - }, - ) - - return it.vercruysse.lemmyapi.datatypes.GetModlogResponse( - modlog = modlogList, - next_page = null, - prev_page = null, - ) - } - override fun toUni(d: X3DatatypesGetPersonDetailsResponse): LemmyapiDatatypesGetPersonDetailsResponse = LemmyapiDatatypesGetPersonDetailsResponse( person_view = this.toUni(d = d.person_view), site = d.site?.let { this.toUni(d = it) }, comments = d.comments.map { this.toUni(d = it) }, posts = d.posts.map { this.toUni(d = it) }, moderates = d.moderates.map { this.toUni(d = it) }, + multi_communities_created = emptyList() ) override fun toUni(d: X3DatatypesGetPostResponse): LemmyapiDatatypesGetPostResponse = @@ -944,17 +771,6 @@ internal class Transformer : MapperGenerator { cross_posts = d.cross_posts.map { this.toUni(d = it) }, ) - override fun toUni(d: X3DatatypesGetPostsResponse): LemmyapiDatatypesGetPostsResponse = - LemmyapiDatatypesGetPostsResponse( - posts = d.posts.map { this.toUni(d = it) }, - next_page = d.next_page, - ) - - fun toUni(d: X3DatatypesGetRepliesResponse): LemmyapiDatatypesListNotificationsResponse = - ListNotificationsResponse( - notifications = d.replies.map { this.toUni(d = it) }, - ) - fun toUni(d: X3DatatypesCommentReplyView): NotificationView = NotificationView( notification = Notification( @@ -989,11 +805,6 @@ internal class Transformer : MapperGenerator { community_actions = CommunityActions(null, CommunityFollowerState.from(d.subscribed)), ) - fun toUni(d: X3DatatypesGetPersonMentionsResponse): LemmyapiDatatypesListNotificationsResponse = - LemmyapiDatatypesListNotificationsResponse( - notifications = d.mentions.map { this.toUni(d = it) }, - ) - fun toUni(d: X3DatatypesPersonMentionView): NotificationView = NotificationView( notification = Notification( @@ -1028,11 +839,6 @@ internal class Transformer : MapperGenerator { community_actions = CommunityActions(null, CommunityFollowerState.from(d.subscribed)), ) - fun toUni(d: X3DatatypesPrivateMessagesResponse): LemmyapiDatatypesListNotificationsResponse = - LemmyapiDatatypesListNotificationsResponse( - notifications = d.private_messages.map { this.toUniPMV(d = it) }, - ) - fun toUniPMV(d: X3DatatypesPrivateMessageView): NotificationView = NotificationView( notification = Notification( @@ -1047,23 +853,10 @@ internal class Transformer : MapperGenerator { ), ) - override fun toUni(d: X3DatatypesGetReportCountResponse): LemmyapiDatatypesGetReportCountResponse = LemmyapiDatatypesGetReportCountResponse( - count = d.post_reports + d.comment_reports + (d.private_message_reports ?: 0), - ) - override fun toUni(d: X3DatatypesGetSiteMetadataResponse): LemmyapiDatatypesGetSiteMetadataResponse = LemmyapiDatatypesGetSiteMetadataResponse( metadata = this.toUni(d = d.metadata), ) - override fun toUni(d: X3DatatypesGetUnreadCountResponse): LemmyapiDatatypesGetUnreadCountResponse = LemmyapiDatatypesGetUnreadCountResponse( - count = d.replies + d.mentions + d.private_messages, - ) - - override fun toUni(d: X3DatatypesGetUnreadRegistrationApplicationCountResponse): LemmyapiDatatypesGetUnreadRegistrationApplicationCountResponse = - LemmyapiDatatypesGetUnreadRegistrationApplicationCountResponse( - registration_applications = d.registration_applications, - ) - override fun toUni(d: X3DatatypesInstance): LemmyapiDatatypesInstance = LemmyapiDatatypesInstance( id = d.id, domain = d.domain, @@ -1089,24 +882,6 @@ internal class Transformer : MapperGenerator { name = d.name, ) - override fun toUni(d: X3DatatypesListCommentLikesResponse): LemmyapiDatatypesListCommentLikesResponse = LemmyapiDatatypesListCommentLikesResponse( - comment_likes = d.comment_likes.map { this.toUni(d = it) }, - ) - - override fun toUni(d: X3DatatypesListCommunitiesResponse): LemmyapiDatatypesListCommunitiesResponse = LemmyapiDatatypesListCommunitiesResponse( - communities = d.communities.map { this.toUni(d = it) }, - ) - - override fun toUni(d: X3DatatypesListPostLikesResponse): LemmyapiDatatypesListPostLikesResponse = - LemmyapiDatatypesListPostLikesResponse( - post_likes = d.post_likes.map { this.toUni(d = it) }, - ) - - override fun toUni(d: X3DatatypesListRegistrationApplicationsResponse): LemmyapiDatatypesListRegistrationApplicationsResponse = - LemmyapiDatatypesListRegistrationApplicationsResponse( - registration_applications = d.registration_applications.map { this.toUni(d = it) }, - ) - override fun toUni(d: X3DatatypesLocalSiteRateLimit): LemmyapiDatatypesLocalSiteRateLimit = LemmyapiDatatypesLocalSiteRateLimit( local_site_id = d.local_site_id, @@ -1150,7 +925,6 @@ internal class Transformer : MapperGenerator { admin = d.admin, post_listing_mode = d.post_listing_mode, totp_2fa_enabled = d.totp_2fa_enabled, - enable_keyboard_navigation = d.enable_keyboard_navigation, enable_animated_images = d.enable_animated_images, collapse_bot_comments = d.collapse_bot_comments, last_donation_notification_at = "", @@ -1397,6 +1171,7 @@ internal class Transformer : MapperGenerator { instance_persons_blocks = emptyList(), person_blocks = d.person_blocks.map { this.toUni(d = it.target) }, discussion_languages = d.discussion_languages, + multi_community_follows = emptyList(), ) fun toUni(d: X3DatatypesPerson) = this.toUni(d, X3DatatypesPersonAggregates(-1, -1, -1)) @@ -1418,6 +1193,7 @@ internal class Transformer : MapperGenerator { instance_id = d.instance_id, post_count = counts.post_count, comment_count = counts.comment_count, + last_refreshed_at = "", ) override fun toUni(d: X3DatatypesPersonView): LemmyapiDatatypesPersonView = @@ -1525,6 +1301,9 @@ internal class Transformer : MapperGenerator { private_message_creator = this.toUni(d = d.private_message_creator), creator = this.toUni(d = d.creator), resolver = d.resolver?.let { this.toUni(d = it) }, + creator_is_admin = false, + creator_banned = d.creator.banned, + creator_ban_expires_at = d.creator.ban_expires, ) override fun toUni(d: X3DatatypesPrivateMessageResponse): LemmyapiDatatypesPrivateMessageResponse = LemmyapiDatatypesPrivateMessageResponse( @@ -1578,7 +1357,7 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X3DatatypesSearchResponse): LemmyapiDatatypesSearchResponse = LemmyapiDatatypesSearchResponse( - results = buildList { + search = buildList { addAll(d.comments.map { LemmyapiDatatypesSearchCombinedView.Comment(comment = this@Transformer.toUni(d = it)) }) addAll(d.posts.map { LemmyapiDatatypesSearchCombinedView.Post(post = this@Transformer.toUni(d = it)) }) addAll(d.communities.map { LemmyapiDatatypesSearchCombinedView.Community(community = this@Transformer.toUni(d = it)) }) @@ -2029,10 +1808,7 @@ internal class Transformer : MapperGenerator { unread_only = d.unread_only, ) - override fun fromUni(d: LemmyapiDatatypesGetReportCount): X3DatatypesGetReportCount = - X3DatatypesGetReportCount( - community_id = d.community_id, - ) + override fun fromUni(d: LemmyapiDatatypesGetSiteMetadata): X3DatatypesGetSiteMetadata = X3DatatypesGetSiteMetadata( @@ -2254,7 +2030,6 @@ internal class Transformer : MapperGenerator { open_links_in_new_tab = d.open_links_in_new_tab, infinite_scroll_enabled = d.infinite_scroll_enabled, post_listing_mode = d.post_listing_mode, - enable_keyboard_navigation = d.enable_keyboard_navigation, enable_animated_images = d.enable_animated_images, collapse_bot_comments = d.collapse_bot_comments, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/CommentReplyView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/CommentReplyView.kt index 53f6898a..fc6831fe 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/CommentReplyView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/CommentReplyView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -import it.vercruysse.lemmyapi.dto.SubscribedType +import it.vercruysse.lemmyapi.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/CommentView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/CommentView.kt index b66d6ecc..a38c58e5 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/CommentView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/CommentView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -import it.vercruysse.lemmyapi.dto.SubscribedType +import it.vercruysse.lemmyapi.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/CommunityView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/CommunityView.kt index 3cad08ea..349d317e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/CommunityView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/CommunityView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -import it.vercruysse.lemmyapi.dto.SubscribedType +import it.vercruysse.lemmyapi.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/CreateSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/CreateSite.kt index 3f1674d1..6ec6be30 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/CreateSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/CreateSite.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -import it.vercruysse.lemmyapi.dto.RegistrationMode -import it.vercruysse.lemmyapi.dto.ListingType +import it.vercruysse.lemmyapi.enums.RegistrationMode +import it.vercruysse.lemmyapi.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/EditSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/EditSite.kt index c0d29b15..ae743d39 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/EditSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/EditSite.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -import it.vercruysse.lemmyapi.dto.RegistrationMode -import it.vercruysse.lemmyapi.dto.ListingType +import it.vercruysse.lemmyapi.enums.RegistrationMode +import it.vercruysse.lemmyapi.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/FeaturePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/FeaturePost.kt index bb239a26..cb5e3fd6 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/FeaturePost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/FeaturePost.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -import it.vercruysse.lemmyapi.dto.PostFeatureType +import it.vercruysse.lemmyapi.enums.PostFeatureType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/GetComments.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/GetComments.kt index 3e0ca766..fb2db0a3 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/GetComments.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/GetComments.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -import it.vercruysse.lemmyapi.dto.CommentSortType -import it.vercruysse.lemmyapi.dto.ListingType +import it.vercruysse.lemmyapi.enums.CommentSortType +import it.vercruysse.lemmyapi.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/GetModlog.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/GetModlog.kt index 317f6b70..23d74388 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/GetModlog.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/GetModlog.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -import it.vercruysse.lemmyapi.dto.ModlogActionType +import it.vercruysse.lemmyapi.enums.ModlogActionType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/GetPersonDetails.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/GetPersonDetails.kt index bbf215f3..1ebf0a2d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/GetPersonDetails.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/GetPersonDetails.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -import it.vercruysse.lemmyapi.dto.SortType +import it.vercruysse.lemmyapi.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/GetPersonMentions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/GetPersonMentions.kt index a8487d95..af789ab1 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/GetPersonMentions.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/GetPersonMentions.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -import it.vercruysse.lemmyapi.dto.CommentSortType +import it.vercruysse.lemmyapi.enums.CommentSortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/GetPosts.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/GetPosts.kt index 04911ca7..cfdcd5ae 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/GetPosts.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/GetPosts.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -import it.vercruysse.lemmyapi.dto.SortType -import it.vercruysse.lemmyapi.dto.ListingType +import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/GetReplies.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/GetReplies.kt index af5263f6..7bc7b709 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/GetReplies.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/GetReplies.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -import it.vercruysse.lemmyapi.dto.CommentSortType +import it.vercruysse.lemmyapi.enums.CommentSortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/ListCommunities.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/ListCommunities.kt index 9faa87d5..41f5a68d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/ListCommunities.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/ListCommunities.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -import it.vercruysse.lemmyapi.dto.SortType -import it.vercruysse.lemmyapi.dto.ListingType +import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/LocalSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/LocalSite.kt index d93c8a06..09f5731c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/LocalSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/LocalSite.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -import it.vercruysse.lemmyapi.dto.RegistrationMode -import it.vercruysse.lemmyapi.dto.ListingType +import it.vercruysse.lemmyapi.enums.RegistrationMode +import it.vercruysse.lemmyapi.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/LocalUser.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/LocalUser.kt index c48aa16a..00d1f64a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/LocalUser.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/LocalUser.kt @@ -1,8 +1,8 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -import it.vercruysse.lemmyapi.dto.PostListingMode -import it.vercruysse.lemmyapi.dto.ListingType -import it.vercruysse.lemmyapi.dto.SortType +import it.vercruysse.lemmyapi.enums.PostListingMode +import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/PersonMentionView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/PersonMentionView.kt index 96a71448..c1b2bd47 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/PersonMentionView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/PersonMentionView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -import it.vercruysse.lemmyapi.dto.SubscribedType +import it.vercruysse.lemmyapi.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/PostView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/PostView.kt index aeb2f0f1..461b5897 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/PostView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/PostView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -import it.vercruysse.lemmyapi.dto.SubscribedType +import it.vercruysse.lemmyapi.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/SaveUserSettings.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/SaveUserSettings.kt index 8a1a38da..ed19eb84 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/SaveUserSettings.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/SaveUserSettings.kt @@ -1,8 +1,8 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -import it.vercruysse.lemmyapi.dto.PostListingMode -import it.vercruysse.lemmyapi.dto.ListingType -import it.vercruysse.lemmyapi.dto.SortType +import it.vercruysse.lemmyapi.enums.PostListingMode +import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/Search.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/Search.kt index 5402368f..d92e6ae4 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/Search.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/Search.kt @@ -1,8 +1,8 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -import it.vercruysse.lemmyapi.dto.ListingType -import it.vercruysse.lemmyapi.dto.SortType -import it.vercruysse.lemmyapi.dto.SearchType +import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.enums.SearchType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/SearchResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/SearchResponse.kt index fe25f36a..f61b0397 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/SearchResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/SearchResponse.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -import it.vercruysse.lemmyapi.dto.SearchType +import it.vercruysse.lemmyapi.enums.SearchType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt index cbd4a3bf..8c0b7701 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt @@ -6,13 +6,14 @@ import it.vercruysse.lemmyapi.LemmyApiBaseController import it.vercruysse.lemmyapi.datatypes.ListCustomEmojis import it.vercruysse.lemmyapi.datatypes.ListCustomEmojisResponse import it.vercruysse.lemmyapi.datatypes.ListNotifications -import it.vercruysse.lemmyapi.datatypes.ListNotificationsResponse import it.vercruysse.lemmyapi.datatypes.MarkNotificationAsRead import it.vercruysse.lemmyapi.datatypes.MyUserInfo +import it.vercruysse.lemmyapi.datatypes.PagedResponse +import it.vercruysse.lemmyapi.datatypes.UnreadCountsResponse import it.vercruysse.lemmyapi.dto.ExportUserSettingsResponse import it.vercruysse.lemmyapi.dto.ImportUserSettings -import it.vercruysse.lemmyapi.dto.NotificationDataType -import it.vercruysse.lemmyapi.dto.NotificationType +import it.vercruysse.lemmyapi.enums.NotificationDataType +import it.vercruysse.lemmyapi.enums.NotificationType internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, baseUrl: String, auth: String?) : LemmyApiBaseController(client, actualVersion, baseUrl, auth) { @@ -57,8 +58,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun getModlog( form: it.vercruysse.lemmyapi.datatypes.GetModlog, - ): Result = - api.getModlog(transformer.fromUni(form)).map(transformer::toUni) + ): Result> = notSupported() /** * Search lemmy. @@ -123,8 +123,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun listCommunities( form: it.vercruysse.lemmyapi.datatypes.ListCommunities, - ): Result = - api.listCommunities(transformer.fromUni(form)).map(transformer::toUni) + ): Result> = + api.listCommunities(transformer.fromUni(form)).map { PagedResponse(it.communities.map(transformer::toUni)) } /** * Follow / subscribe to a community. @@ -143,7 +143,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun blockCommunity( form: it.vercruysse.lemmyapi.datatypes.BlockCommunity, - ): Result = + ): Result = api.blockCommunity(transformer.fromUni(form)).map(transformer::toUni) /** @@ -183,7 +183,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun banFromCommunity( form: it.vercruysse.lemmyapi.datatypes.BanFromCommunity, - ): Result = + ): Result = api.banFromCommunity(transformer.fromUni(form)).map(transformer::toUni) /** @@ -201,8 +201,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @GET("federated_instances") */ - override suspend fun getFederatedInstances(): Result = - api.getFederatedInstances().map(transformer::toUni) + override suspend fun getFederatedInstances(form: it.vercruysse.lemmyapi.datatypes.GetFederatedInstances): Result> = notSupported() /** * Get / fetch a post. @@ -237,8 +236,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun getPosts( form: it.vercruysse.lemmyapi.datatypes.GetPosts, - ): Result = - api.getPosts(transformer.fromUni(form.toValidatedForm())).map(transformer::toUni) + ): Result> = + api.getPosts(transformer.fromUni(form.toValidatedForm())).map { PagedResponse(it.posts.map(transformer::toUni)) } /** * Delete a post. @@ -329,39 +328,27 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun listReports( form: it.vercruysse.lemmyapi.datatypes.ListReports, - ): Result = + ): Result> = when (form.type_) { it.vercruysse.lemmyapi.dto.ReportType.Communities -> notSupported() it.vercruysse.lemmyapi.dto.ReportType.Posts -> { api.listPostReports(transformer.fromUniP(form)).map { resp -> - val items = resp.post_reports.map { r -> - it.vercruysse.lemmyapi.datatypes.ReportCombinedView.Post( - transformer.toUni(r), - ) - } - it.vercruysse.lemmyapi.datatypes.ListReportsResponse(items) + PagedResponse(resp.post_reports.map(transformer::toUni)) } } + it.vercruysse.lemmyapi.dto.ReportType.Comments -> { api.listCommentReports(transformer.fromUniC(form)).map { resp -> - val items = resp.comment_reports.map { r -> - it.vercruysse.lemmyapi.datatypes.ReportCombinedView.Comment( - transformer.toUni(r), - ) - } - it.vercruysse.lemmyapi.datatypes.ListReportsResponse(items) + PagedResponse(resp.comment_reports.map(transformer::toUni)) } } + it.vercruysse.lemmyapi.dto.ReportType.PrivateMessages -> { api.listPrivateMessageReports(transformer.fromUniPm(form)).map { resp -> - val items = resp.private_message_reports.map { r -> - it.vercruysse.lemmyapi.datatypes.ReportCombinedView.PrivateMessage( - transformer.toUni(r), - ) - } - it.vercruysse.lemmyapi.datatypes.ListReportsResponse(items) + PagedResponse(resp.private_message_reports.map(transformer::toUni)) } } + it.vercruysse.lemmyapi.dto.ReportType.All -> { runCatching { val postsResp = api.listPostReports(transformer.fromUniP(form)).getOrThrow() @@ -371,34 +358,21 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba val allReports = mutableListOf() allReports.addAll( - postsResp.post_reports.map { r -> - it.vercruysse.lemmyapi.datatypes.ReportCombinedView.Post( - transformer.toUni(r), - ) - }, + postsResp.post_reports.map(transformer::toUni) ) allReports.addAll( - commentsResp.comment_reports.map { r -> - it.vercruysse.lemmyapi.datatypes.ReportCombinedView.Comment( - transformer.toUni(r), - ) - }, + commentsResp.comment_reports.map(transformer::toUni) ) allReports.addAll( - privateMessagesResp.private_message_reports.map { r -> - it.vercruysse.lemmyapi.datatypes.ReportCombinedView.PrivateMessage( - transformer.toUni(r), - ) - }, + privateMessagesResp.private_message_reports.map(transformer::toUni) ) - it.vercruysse.lemmyapi.datatypes.ListReportsResponse(allReports) + PagedResponse(allReports) } } } - /** * Fetch metadata for any given site. * @@ -446,8 +420,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun getComments( form: it.vercruysse.lemmyapi.datatypes.GetComments, - ): Result = - api.getComments(transformer.fromUni(form)).map(transformer::toUni) + ): Result> = + api.getComments(transformer.fromUni(form)).map { PagedResponse(it.comments.map(transformer::toUni)) } /** * Delete a comment. @@ -603,36 +577,39 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba NotificationType.Mention -> api.markPersonMentionAsRead(transformer.fromUniM(form)).map { } NotificationType.Reply -> api.markCommentReplyAsRead(transformer.fromUniR(form)).map { } NotificationType.PrivateMessage -> api.markPrivateMessageAsRead(transformer.fromUniP(form)).map { } - NotificationType.Subscribed -> notSupported() + NotificationType.Subscribed, NotificationType.ModAction -> notSupported() null -> notSupported() } /** * List notifications. */ - override suspend fun listNotifications(form: ListNotifications): Result = + override suspend fun listNotifications(form: ListNotifications): Result> = when (form.type_) { NotificationDataType.All -> runCatching { - val resReplies = api.getReplies(transformer.fromUniR(form)).map(transformer::toUni).getOrThrow() - val mentionReplies = api.getPersonMentions(transformer.fromUniM(form)).map(transformer::toUni).getOrThrow() - val privateMessages = api.getPrivateMessages(transformer.fromUniP(form)).map(transformer::toUni).getOrThrow() - - ListNotificationsResponse( + val replies = api.getReplies(transformer.fromUniR(form)).getOrThrow().replies.map(transformer::toUni) + val mentionReplies = api.getPersonMentions(transformer.fromUniM(form)).getOrThrow().mentions.map(transformer::toUni) + val privateMessages = api.getPrivateMessages(transformer.fromUniP(form)).getOrThrow().private_messages.map(transformer::toUniPMV) + PagedResponse( buildList { - addAll(resReplies.notifications) - addAll(mentionReplies.notifications) - addAll(privateMessages.notifications) + addAll(replies) + addAll(mentionReplies) + addAll(privateMessages) }, ) } + NotificationDataType.Reply -> - api.getReplies(transformer.fromUniR(form)).map(transformer::toUni) + api.getReplies(transformer.fromUniR(form)).map { resp -> PagedResponse(resp.replies.map(transformer::toUni)) } + NotificationDataType.Mention -> - api.getPersonMentions(transformer.fromUniM(form)).map(transformer::toUni) + api.getPersonMentions(transformer.fromUniM(form)).map { resp -> PagedResponse(resp.mentions.map(transformer::toUni)) } + NotificationDataType.PrivateMessage -> - api.getPrivateMessages(transformer.fromUniP(form)).map(transformer::toUni) - NotificationDataType.Subscribed -> Result.success(ListNotificationsResponse(emptyList())) + api.getPrivateMessages(transformer.fromUniP(form)).map { resp -> PagedResponse(resp.private_messages.map(transformer::toUniPMV)) } + + NotificationDataType.Subscribed -> Result.success(PagedResponse(emptyList())) } /** @@ -642,7 +619,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun banPerson( form: it.vercruysse.lemmyapi.datatypes.BanPerson, - ): Result = + ): Result = api.banPerson(transformer.fromUni(form)).map(transformer::toUni) /** @@ -650,8 +627,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @GET("user/banned") */ - override suspend fun getBannedPersons(): Result = - api.getBannedPersons().map(transformer::toUni) + override suspend fun getBannedPersons(): Result> = + api.getBannedPersons().map { resp -> PagedResponse(resp.banned.map(transformer::toUni)) } /** * Block a person. @@ -660,7 +637,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun blockPerson( form: it.vercruysse.lemmyapi.datatypes.BlockPerson, - ): Result = + ): Result = api.blockPerson(transformer.fromUni(form)).map(transformer::toUni) /** @@ -721,23 +698,16 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba ): Result = api.changePassword(transformer.fromUni(form)).map(transformer::toUni) - /** - * Get counts for your reports - * - * @GET("user/report_count") - */ - override suspend fun getReportCount( - form: it.vercruysse.lemmyapi.datatypes.GetReportCount, - ): Result = - api.getReportCount(transformer.fromUni(form)).map(transformer::toUni) - - /** - * Get your unread counts - * - * @GET("user/unread_count") - */ - override suspend fun getUnreadCount(): Result = - api.getUnreadCount().map(transformer::toUni) + override suspend fun getUnreadCounts(): Result = runCatching { + val d = api.getUnreadCount().getOrThrow() + val reportCount = api.getReportCount(it.vercruysse.lemmyapi.v0.x19.x4.datatypes.GetReportCount()).getOrNull() + val applicationCount = api.getUnreadRegistrationApplicationCount().getOrNull() + UnreadCountsResponse( + notification_count = d.replies + d.mentions + d.private_messages, + report_count = (reportCount?.post_reports ?: 0L) + (reportCount?.comment_reports ?: 0L) + (reportCount?.private_message_reports ?: 0L), + registration_application_count = applicationCount?.registration_applications, + ) + } /** * Verify your email @@ -772,14 +742,6 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba ): Result = api.addAdmin(transformer.fromUni(form)).map(transformer::toUni) - /** - * Get the unread registration applications count. - * - * @GET("admin/registration_application/count") - */ - override suspend fun getUnreadRegistrationApplicationCount(): Result = - api.getUnreadRegistrationApplicationCount().map(transformer::toUni) - /** * List the registration applications. * @@ -787,8 +749,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun listRegistrationApplications( form: it.vercruysse.lemmyapi.datatypes.ListRegistrationApplications, - ): Result = - api.listRegistrationApplications(transformer.fromUni(form)).map(transformer::toUni) + ): Result> = + api.listRegistrationApplications(transformer.fromUni(form)).map { resp -> PagedResponse(resp.registration_applications.map(transformer::toUni)) } /** * Approve a registration application @@ -950,8 +912,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun listPostLikes( form: it.vercruysse.lemmyapi.datatypes.ListPostLikes, - ): Result = - api.listPostLikes(transformer.fromUni(form)).map(transformer::toUni) + ): Result> = notSupported() /** * List a comment's likes. Admin-only. @@ -960,8 +921,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun listCommentLikes( form: it.vercruysse.lemmyapi.datatypes.ListCommentLikes, - ): Result = - api.listCommentLikes(transformer.fromUni(form)).map(transformer::toUni) + ): Result> = notSupported() /** * List all the media for your user @@ -970,8 +930,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun listMedia( form: it.vercruysse.lemmyapi.datatypes.ListMedia, - ): Result = - api.listMedia(transformer.fromUni(form)).map(transformer::toUni) + ): Result> = notSupported() /** * List all the media known to your instance. @@ -980,8 +939,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun listAllMedia( form: it.vercruysse.lemmyapi.datatypes.ListMedia, - ): Result = - api.listAllMedia(transformer.fromUni(form)).map(transformer::toUni) + ): Result> = notSupported() /** * Hide a post from list views. diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt index d797c5ee..796cd3bd 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt @@ -5,19 +5,10 @@ import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.* internal interface MapperGenerator { fun toUni(d: AddAdminResponse): it.vercruysse.lemmyapi.datatypes.AddAdminResponse fun toUni(d: AddModToCommunityResponse): it.vercruysse.lemmyapi.datatypes.AddModToCommunityResponse - fun toUni(d: AdminPurgeComment): it.vercruysse.lemmyapi.datatypes.AdminPurgeComment - fun toUni(d: AdminPurgeCommentView): it.vercruysse.lemmyapi.datatypes.AdminPurgeCommentView - fun toUni(d: AdminPurgeCommunity): it.vercruysse.lemmyapi.datatypes.AdminPurgeCommunity - fun toUni(d: AdminPurgeCommunityView): it.vercruysse.lemmyapi.datatypes.AdminPurgeCommunityView - fun toUni(d: AdminPurgePerson): it.vercruysse.lemmyapi.datatypes.AdminPurgePerson - fun toUni(d: AdminPurgePersonView): it.vercruysse.lemmyapi.datatypes.AdminPurgePersonView - fun toUni(d: AdminPurgePost): it.vercruysse.lemmyapi.datatypes.AdminPurgePost - fun toUni(d: AdminPurgePostView): it.vercruysse.lemmyapi.datatypes.AdminPurgePostView - fun toUni(d: BanFromCommunityResponse): it.vercruysse.lemmyapi.datatypes.BanFromCommunityResponse - fun toUni(d: BannedPersonsResponse): it.vercruysse.lemmyapi.datatypes.BannedPersonsResponse - fun toUni(d: BanPersonResponse): it.vercruysse.lemmyapi.datatypes.BanPersonResponse - fun toUni(d: BlockCommunityResponse): it.vercruysse.lemmyapi.datatypes.BlockCommunityResponse - fun toUni(d: BlockPersonResponse): it.vercruysse.lemmyapi.datatypes.BlockPersonResponse + fun toUni(d: BanFromCommunityResponse): it.vercruysse.lemmyapi.datatypes.PersonResponse + fun toUni(d: BanPersonResponse): it.vercruysse.lemmyapi.datatypes.PersonResponse + fun toUni(d: BlockCommunityResponse): it.vercruysse.lemmyapi.datatypes.CommunityResponse + fun toUni(d: BlockPersonResponse): it.vercruysse.lemmyapi.datatypes.PersonResponse fun toUni(d: CaptchaResponse): it.vercruysse.lemmyapi.datatypes.CaptchaResponse fun toUni(d: Comment, counts: CommentAggregates): it.vercruysse.lemmyapi.datatypes.Comment fun toUni(d: CommentReport): it.vercruysse.lemmyapi.datatypes.CommentReport @@ -34,32 +25,17 @@ internal interface MapperGenerator { fun toUni(d: CustomEmojiKeyword): it.vercruysse.lemmyapi.datatypes.CustomEmojiKeyword fun toUni(d: CustomEmojiResponse): it.vercruysse.lemmyapi.datatypes.CustomEmojiResponse fun toUni(d: CustomEmojiView): it.vercruysse.lemmyapi.datatypes.CustomEmojiView - fun toUni(d: FederatedInstances): it.vercruysse.lemmyapi.datatypes.FederatedInstances fun toUni(d: GenerateTotpSecretResponse): it.vercruysse.lemmyapi.datatypes.GenerateTotpSecretResponse fun toUni(d: GetCaptchaResponse): it.vercruysse.lemmyapi.datatypes.GetCaptchaResponse - fun toUni(d: GetCommentsResponse): it.vercruysse.lemmyapi.datatypes.GetCommentsResponse fun toUni(d: GetCommunityResponse): it.vercruysse.lemmyapi.datatypes.GetCommunityResponse - fun toUni(d: GetFederatedInstancesResponse): it.vercruysse.lemmyapi.datatypes.GetFederatedInstancesResponse - fun toUni(d: GetModlogResponse): it.vercruysse.lemmyapi.datatypes.GetModlogResponse fun toUni(d: GetPersonDetailsResponse): it.vercruysse.lemmyapi.datatypes.GetPersonDetailsResponse fun toUni(d: GetPostResponse): it.vercruysse.lemmyapi.datatypes.GetPostResponse - fun toUni(d: GetPostsResponse): it.vercruysse.lemmyapi.datatypes.GetPostsResponse - fun toUni(d: GetReportCountResponse): it.vercruysse.lemmyapi.datatypes.GetReportCountResponse fun toUni(d: GetSiteMetadataResponse): it.vercruysse.lemmyapi.datatypes.GetSiteMetadataResponse fun toUni(d: GetSiteResponse): it.vercruysse.lemmyapi.datatypes.GetSiteResponse - fun toUni(d: GetUnreadCountResponse): it.vercruysse.lemmyapi.datatypes.GetUnreadCountResponse - fun toUni( - d: GetUnreadRegistrationApplicationCountResponse, - ): it.vercruysse.lemmyapi.datatypes.GetUnreadRegistrationApplicationCountResponse fun toUni(d: Instance): it.vercruysse.lemmyapi.datatypes.Instance fun toUni(d: InstanceWithFederationState): it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState fun toUni(d: Language): it.vercruysse.lemmyapi.datatypes.Language fun toUni(d: LinkMetadata): it.vercruysse.lemmyapi.datatypes.LinkMetadata - fun toUni(d: ListCommentLikesResponse): it.vercruysse.lemmyapi.datatypes.ListCommentLikesResponse - fun toUni(d: ListCommunitiesResponse): it.vercruysse.lemmyapi.datatypes.ListCommunitiesResponse - fun toUni(d: ListMediaResponse): it.vercruysse.lemmyapi.datatypes.ListMediaResponse - fun toUni(d: ListPostLikesResponse): it.vercruysse.lemmyapi.datatypes.ListPostLikesResponse - fun toUni(d: ListRegistrationApplicationsResponse): it.vercruysse.lemmyapi.datatypes.ListRegistrationApplicationsResponse fun toUni(d: LocalImage): it.vercruysse.lemmyapi.datatypes.LocalImage fun toUni(d: LocalImageView): it.vercruysse.lemmyapi.datatypes.LocalImageView fun toUni(d: LocalSite, counts: SiteAggregates): it.vercruysse.lemmyapi.datatypes.LocalSite @@ -69,28 +45,6 @@ internal interface MapperGenerator { fun toUni(d: LocalUserView): it.vercruysse.lemmyapi.datatypes.LocalUserView fun toUni(d: LoginToken): it.vercruysse.lemmyapi.datatypes.LoginToken fun toUni(d: LoginResponse): it.vercruysse.lemmyapi.datatypes.LoginResponse - fun toUni(d: ModAdd): it.vercruysse.lemmyapi.datatypes.AdminAdd - fun toUni(d: ModAddCommunity): it.vercruysse.lemmyapi.datatypes.ModAddToCommunity - fun toUni(d: ModAddCommunityView): it.vercruysse.lemmyapi.datatypes.ModAddToCommunityView - fun toUni(d: ModAddView): it.vercruysse.lemmyapi.datatypes.AdminAddView - fun toUni(d: ModBan): it.vercruysse.lemmyapi.datatypes.AdminBan - fun toUni(d: ModBanFromCommunity): it.vercruysse.lemmyapi.datatypes.ModBanFromCommunity - fun toUni(d: ModBanFromCommunityView): it.vercruysse.lemmyapi.datatypes.ModBanFromCommunityView - fun toUni(d: ModBanView): it.vercruysse.lemmyapi.datatypes.AdminBanView - fun toUni(d: ModFeaturePost): it.vercruysse.lemmyapi.datatypes.ModFeaturePost - fun toUni(d: ModFeaturePostView): it.vercruysse.lemmyapi.datatypes.ModFeaturePostView - fun toUni(d: ModHideCommunity): it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibility - fun toUni(d: ModHideCommunityView): it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibilityView - fun toUni(d: ModLockPost): it.vercruysse.lemmyapi.datatypes.ModLockPost - fun toUni(d: ModLockPostView): it.vercruysse.lemmyapi.datatypes.ModLockPostView - fun toUni(d: ModRemoveComment): it.vercruysse.lemmyapi.datatypes.ModRemoveComment - fun toUni(d: ModRemoveCommentView): it.vercruysse.lemmyapi.datatypes.ModRemoveCommentView - fun toUni(d: ModRemoveCommunity): it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunity - fun toUni(d: ModRemoveCommunityView): it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunityView - fun toUni(d: ModRemovePost): it.vercruysse.lemmyapi.datatypes.ModRemovePost - fun toUni(d: ModRemovePostView): it.vercruysse.lemmyapi.datatypes.ModRemovePostView - fun toUni(d: ModTransferCommunity): it.vercruysse.lemmyapi.datatypes.ModTransferCommunity - fun toUni(d: ModTransferCommunityView): it.vercruysse.lemmyapi.datatypes.ModTransferCommunityView fun toUni(d: MyUserInfo): it.vercruysse.lemmyapi.datatypes.MyUserInfo fun toUni(d: Person, counts: PersonAggregates): it.vercruysse.lemmyapi.datatypes.Person fun toUni(d: PersonView): it.vercruysse.lemmyapi.datatypes.PersonView @@ -162,7 +116,7 @@ internal interface MapperGenerator { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPersonDetails): GetPersonDetails fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPost): GetPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPosts): GetPosts - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetReportCount): GetReportCount + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetSiteMetadata): GetSiteMetadata fun fromUni(d: it.vercruysse.lemmyapi.datatypes.HideCommunity): HideCommunity fun fromUni(d: it.vercruysse.lemmyapi.datatypes.HidePost): HidePost diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt index 141ace36..7de5e7ad 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt @@ -2,19 +2,18 @@ package it.vercruysse.lemmyapi.v0.x19.x4 import it.vercruysse.lemmyapi.datatypes.CommentActions import it.vercruysse.lemmyapi.datatypes.CommunityActions -import it.vercruysse.lemmyapi.datatypes.ListNotificationsResponse import it.vercruysse.lemmyapi.datatypes.MarkNotificationAsRead import it.vercruysse.lemmyapi.datatypes.Notification import it.vercruysse.lemmyapi.datatypes.NotificationData import it.vercruysse.lemmyapi.datatypes.NotificationView import it.vercruysse.lemmyapi.datatypes.PersonActions import it.vercruysse.lemmyapi.datatypes.PostActions -import it.vercruysse.lemmyapi.dto.CommentSortType -import it.vercruysse.lemmyapi.dto.CommunityFollowerState -import it.vercruysse.lemmyapi.dto.FederationMode -import it.vercruysse.lemmyapi.dto.NotificationType -import it.vercruysse.lemmyapi.dto.SortType -import it.vercruysse.lemmyapi.dto.VoteShow +import it.vercruysse.lemmyapi.enums.CommentSortType +import it.vercruysse.lemmyapi.enums.CommunityFollowerState +import it.vercruysse.lemmyapi.enums.FederationMode +import it.vercruysse.lemmyapi.enums.NotificationType +import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.enums.VoteShow import it.vercruysse.lemmyapi.utils.toAt import it.vercruysse.lemmyapi.datatypes.AddAdmin as LemmyapiDatatypesAddAdmin import it.vercruysse.lemmyapi.datatypes.AddAdminResponse as LemmyapiDatatypesAddAdminResponse @@ -36,14 +35,9 @@ import it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunity as LemmyapiDatatype import it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunityView as LemmyapiDatatypesModRemoveCommunityView import it.vercruysse.lemmyapi.datatypes.ApproveRegistrationApplication as LemmyapiDatatypesApproveRegistrationApplication import it.vercruysse.lemmyapi.datatypes.BanFromCommunity as LemmyapiDatatypesBanFromCommunity -import it.vercruysse.lemmyapi.datatypes.BanFromCommunityResponse as LemmyapiDatatypesBanFromCommunityResponse import it.vercruysse.lemmyapi.datatypes.BanPerson as LemmyapiDatatypesBanPerson -import it.vercruysse.lemmyapi.datatypes.BanPersonResponse as LemmyapiDatatypesBanPersonResponse -import it.vercruysse.lemmyapi.datatypes.BannedPersonsResponse as LemmyapiDatatypesBannedPersonsResponse import it.vercruysse.lemmyapi.datatypes.BlockCommunity as LemmyapiDatatypesBlockCommunity -import it.vercruysse.lemmyapi.datatypes.BlockCommunityResponse as LemmyapiDatatypesBlockCommunityResponse import it.vercruysse.lemmyapi.datatypes.BlockPerson as LemmyapiDatatypesBlockPerson -import it.vercruysse.lemmyapi.datatypes.BlockPersonResponse as LemmyapiDatatypesBlockPersonResponse import it.vercruysse.lemmyapi.datatypes.CaptchaResponse as LemmyapiDatatypesCaptchaResponse import it.vercruysse.lemmyapi.datatypes.ChangePassword as LemmyapiDatatypesChangePassword import it.vercruysse.lemmyapi.datatypes.Comment as LemmyapiDatatypesComment @@ -92,25 +86,17 @@ import it.vercruysse.lemmyapi.datatypes.GenerateTotpSecretResponse as LemmyapiDa import it.vercruysse.lemmyapi.datatypes.GetCaptchaResponse as LemmyapiDatatypesGetCaptchaResponse import it.vercruysse.lemmyapi.datatypes.GetComment as LemmyapiDatatypesGetComment import it.vercruysse.lemmyapi.datatypes.GetComments as LemmyapiDatatypesGetComments -import it.vercruysse.lemmyapi.datatypes.GetCommentsResponse as LemmyapiDatatypesGetCommentsResponse import it.vercruysse.lemmyapi.datatypes.GetCommunity as LemmyapiDatatypesGetCommunity import it.vercruysse.lemmyapi.datatypes.GetCommunityResponse as LemmyapiDatatypesGetCommunityResponse -import it.vercruysse.lemmyapi.datatypes.GetFederatedInstancesResponse as LemmyapiDatatypesGetFederatedInstancesResponse import it.vercruysse.lemmyapi.datatypes.GetModlog as LemmyapiDatatypesGetModlog -import it.vercruysse.lemmyapi.datatypes.GetModlogResponse as LemmyapiDatatypesGetModlogResponse import it.vercruysse.lemmyapi.datatypes.GetPersonDetails as LemmyapiDatatypesGetPersonDetails import it.vercruysse.lemmyapi.datatypes.GetPersonDetailsResponse as LemmyapiDatatypesGetPersonDetailsResponse import it.vercruysse.lemmyapi.datatypes.GetPost as LemmyapiDatatypesGetPost import it.vercruysse.lemmyapi.datatypes.GetPostResponse as LemmyapiDatatypesGetPostResponse import it.vercruysse.lemmyapi.datatypes.GetPosts as LemmyapiDatatypesGetPosts -import it.vercruysse.lemmyapi.datatypes.GetPostsResponse as LemmyapiDatatypesGetPostsResponse -import it.vercruysse.lemmyapi.datatypes.GetReportCount as LemmyapiDatatypesGetReportCount -import it.vercruysse.lemmyapi.datatypes.GetReportCountResponse as LemmyapiDatatypesGetReportCountResponse import it.vercruysse.lemmyapi.datatypes.GetSiteMetadata as LemmyapiDatatypesGetSiteMetadata import it.vercruysse.lemmyapi.datatypes.GetSiteMetadataResponse as LemmyapiDatatypesGetSiteMetadataResponse import it.vercruysse.lemmyapi.datatypes.GetSiteResponse as LemmyapiDatatypesGetSiteResponse -import it.vercruysse.lemmyapi.datatypes.GetUnreadCountResponse as LemmyapiDatatypesGetUnreadCountResponse -import it.vercruysse.lemmyapi.datatypes.GetUnreadRegistrationApplicationCountResponse as LemmyapiDatatypesGetUnreadRegistrationApplicationCountResponse import it.vercruysse.lemmyapi.datatypes.HideCommunity as LemmyapiDatatypesHideCommunity import it.vercruysse.lemmyapi.datatypes.HidePost as LemmyapiDatatypesHidePost import it.vercruysse.lemmyapi.datatypes.Instance as LemmyapiDatatypesInstance @@ -118,17 +104,11 @@ import it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState as LemmyapiD import it.vercruysse.lemmyapi.datatypes.Language as LemmyapiDatatypesLanguage import it.vercruysse.lemmyapi.datatypes.LinkMetadata as LemmyapiDatatypesLinkMetadata import it.vercruysse.lemmyapi.datatypes.ListCommentLikes as LemmyapiDatatypesListCommentLikes -import it.vercruysse.lemmyapi.datatypes.ListCommentLikesResponse as LemmyapiDatatypesListCommentLikesResponse import it.vercruysse.lemmyapi.datatypes.ListCommunities as LemmyapiDatatypesListCommunities -import it.vercruysse.lemmyapi.datatypes.ListCommunitiesResponse as LemmyapiDatatypesListCommunitiesResponse import it.vercruysse.lemmyapi.datatypes.ListMedia as LemmyapiDatatypesListMedia -import it.vercruysse.lemmyapi.datatypes.ListMediaResponse as LemmyapiDatatypesListMediaResponse import it.vercruysse.lemmyapi.datatypes.ListNotifications as LemmyapiDatatypesListNotifications -import it.vercruysse.lemmyapi.datatypes.ListNotificationsResponse as LemmyapiDatatypesListNotificationsResponse import it.vercruysse.lemmyapi.datatypes.ListPostLikes as LemmyapiDatatypesListPostLikes -import it.vercruysse.lemmyapi.datatypes.ListPostLikesResponse as LemmyapiDatatypesListPostLikesResponse import it.vercruysse.lemmyapi.datatypes.ListRegistrationApplications as LemmyapiDatatypesListRegistrationApplications -import it.vercruysse.lemmyapi.datatypes.ListRegistrationApplicationsResponse as LemmyapiDatatypesListRegistrationApplicationsResponse import it.vercruysse.lemmyapi.datatypes.LocalImage as LemmyapiDatatypesLocalImage import it.vercruysse.lemmyapi.datatypes.LocalImageView as LemmyapiDatatypesLocalImageView import it.vercruysse.lemmyapi.datatypes.LocalSite as LemmyapiDatatypesLocalSite @@ -224,7 +204,6 @@ import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.BanFromCommunity as X4Datatype import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.BanFromCommunityResponse as X4DatatypesBanFromCommunityResponse import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.BanPerson as X4DatatypesBanPerson import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.BanPersonResponse as X4DatatypesBanPersonResponse -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.BannedPersonsResponse as X4DatatypesBannedPersonsResponse import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.BlockCommunity as X4DatatypesBlockCommunity import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.BlockCommunityResponse as X4DatatypesBlockCommunityResponse import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.BlockInstance as X4DatatypesBlockInstance @@ -281,30 +260,18 @@ import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.GenerateTotpSecretResponse as import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.GetCaptchaResponse as X4DatatypesGetCaptchaResponse import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.GetComment as X4DatatypesGetComment import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.GetComments as X4DatatypesGetComments -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.GetCommentsResponse as X4DatatypesGetCommentsResponse import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.GetCommunity as X4DatatypesGetCommunity import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.GetCommunityResponse as X4DatatypesGetCommunityResponse -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.GetFederatedInstancesResponse as X4DatatypesGetFederatedInstancesResponse import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.GetModlog as X4DatatypesGetModlog -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.GetModlogResponse as X4DatatypesGetModlogResponse import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.GetPersonDetails as X4DatatypesGetPersonDetails import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.GetPersonDetailsResponse as X4DatatypesGetPersonDetailsResponse import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.GetPersonMentions as X4DatatypesGetPersonMentions -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.GetPersonMentionsResponse as X4DatatypesGetPersonMentionsResponse import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.GetPost as X4DatatypesGetPost import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.GetPostResponse as X4DatatypesGetPostResponse import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.GetPosts as X4DatatypesGetPosts -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.GetPostsResponse as X4DatatypesGetPostsResponse import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.GetPrivateMessages as X4DatatypesGetPrivateMessages import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.GetReplies as X4DatatypesGetReplies -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.GetRepliesResponse as X4DatatypesGetRepliesResponse -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.GetReportCount as X4DatatypesGetReportCount -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.GetReportCountResponse as X4DatatypesGetReportCountResponse import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.GetSiteMetadata as X4DatatypesGetSiteMetadata -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.GetSiteMetadataResponse as X4DatatypesGetSiteMetadataResponse -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.GetSiteResponse as X4DatatypesGetSiteResponse -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.GetUnreadCountResponse as X4DatatypesGetUnreadCountResponse -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.GetUnreadRegistrationApplicationCountResponse as X4DatatypesGetUnreadRegistrationApplicationCountResponse import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.HideCommunity as X4DatatypesHideCommunity import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.HidePost as X4DatatypesHidePost import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.Instance as X4DatatypesInstance @@ -312,18 +279,13 @@ import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.InstanceWithFederationState as import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.Language as X4DatatypesLanguage import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.LinkMetadata as X4DatatypesLinkMetadata import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.ListCommentLikes as X4DatatypesListCommentLikes -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.ListCommentLikesResponse as X4DatatypesListCommentLikesResponse import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.ListCommentReports as X4DatatypesListCommentReports import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.ListCommunities as X4DatatypesListCommunities -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.ListCommunitiesResponse as X4DatatypesListCommunitiesResponse import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.ListMedia as X4DatatypesListMedia -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.ListMediaResponse as X4DatatypesListMediaResponse import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.ListPostLikes as X4DatatypesListPostLikes -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.ListPostLikesResponse as X4DatatypesListPostLikesResponse import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.ListPostReports as X4DatatypesListPostReports import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.ListPrivateMessageReports as X4DatatypesListPrivateMessageReports import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.ListRegistrationApplications as X4DatatypesListRegistrationApplications -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.ListRegistrationApplicationsResponse as X4DatatypesListRegistrationApplicationsResponse import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.LocalImage as X4DatatypesLocalImage import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.LocalImageView as X4DatatypesLocalImageView import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.LocalSite as X4DatatypesLocalSite @@ -382,7 +344,6 @@ import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.PrivateMessageReportResponse a import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.PrivateMessageReportView as X4DatatypesPrivateMessageReportView import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.PrivateMessageResponse as X4DatatypesPrivateMessageResponse import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.PrivateMessageView as X4DatatypesPrivateMessageView -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.PrivateMessagesResponse as X4DatatypesPrivateMessagesResponse import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.PurgeComment as X4DatatypesPurgeComment import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.PurgeCommunity as X4DatatypesPurgeCommunity import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.PurgePerson as X4DatatypesPurgePerson @@ -427,92 +388,18 @@ internal class Transformer : MapperGenerator { moderators = d.moderators.map { this.toUni(d = it) }, ) - override fun toUni(d: X4DatatypesAdminPurgeComment): LemmyapiDatatypesAdminPurgeComment = - LemmyapiDatatypesAdminPurgeComment( - id = d.id, - admin_person_id = d.admin_person_id, - post_id = d.post_id, - reason = d.reason ?: "", - published_at = d.when_, - ) - - override fun toUni(d: X4DatatypesAdminPurgeCommentView): LemmyapiDatatypesAdminPurgeCommentView = - LemmyapiDatatypesAdminPurgeCommentView( - admin_purge_comment = this.toUni(d = d.admin_purge_comment), - admin = d.admin?.let { this.toUni(d = it) }, - post = this.toUni(d = d.post, counts = X4DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), - ) - - override fun toUni(d: X4DatatypesAdminPurgeCommunity): LemmyapiDatatypesAdminPurgeCommunity = - LemmyapiDatatypesAdminPurgeCommunity( - id = d.id, - admin_person_id = d.admin_person_id, - reason = d.reason ?: "", - published_at = d.when_, - ) - - override fun toUni(d: X4DatatypesAdminPurgeCommunityView): LemmyapiDatatypesAdminPurgeCommunityView = LemmyapiDatatypesAdminPurgeCommunityView( - admin_purge_community = this.toUni(d = d.admin_purge_community), - admin = d.admin?.let { this.toUni(d = it) }, - ) - - override fun toUni(d: X4DatatypesAdminPurgePerson): LemmyapiDatatypesAdminPurgePerson = - LemmyapiDatatypesAdminPurgePerson( - id = d.id, - admin_person_id = d.admin_person_id, - reason = d.reason ?: "", - published_at = d.when_, - ) - - override fun toUni(d: X4DatatypesAdminPurgePersonView): LemmyapiDatatypesAdminPurgePersonView = - LemmyapiDatatypesAdminPurgePersonView( - admin_purge_person = this.toUni(d = d.admin_purge_person), - admin = d.admin?.let { this.toUni(d = it) }, - ) - - override fun toUni(d: X4DatatypesAdminPurgePost): LemmyapiDatatypesAdminPurgePost = - LemmyapiDatatypesAdminPurgePost( - id = d.id, - admin_person_id = d.admin_person_id, - community_id = d.community_id, - reason = d.reason ?: "", - published_at = d.when_, - ) - - override fun toUni(d: X4DatatypesAdminPurgePostView): LemmyapiDatatypesAdminPurgePostView = - LemmyapiDatatypesAdminPurgePostView( - admin_purge_post = this.toUni(d = d.admin_purge_post), - admin = d.admin?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community, counts = X4DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), - ) - - override fun toUni(d: X4DatatypesBanFromCommunityResponse): LemmyapiDatatypesBanFromCommunityResponse = LemmyapiDatatypesBanFromCommunityResponse( - person_view = this.toUni(d = d.person_view), - banned = d.banned, - ) - override fun toUni(d: X4DatatypesBannedPersonsResponse): LemmyapiDatatypesBannedPersonsResponse = - LemmyapiDatatypesBannedPersonsResponse( - banned = d.banned.map { this.toUni(d = it) }, - ) + override fun toUni(d: X4DatatypesBanFromCommunityResponse): it.vercruysse.lemmyapi.datatypes.PersonResponse = + it.vercruysse.lemmyapi.datatypes.PersonResponse(person_view = this.toUni(d = d.person_view)) - override fun toUni(d: X4DatatypesBanPersonResponse): LemmyapiDatatypesBanPersonResponse = - LemmyapiDatatypesBanPersonResponse( - person_view = this.toUni(d = d.person_view), - banned = d.banned, - ) + override fun toUni(d: X4DatatypesBanPersonResponse): it.vercruysse.lemmyapi.datatypes.PersonResponse = + it.vercruysse.lemmyapi.datatypes.PersonResponse(person_view = this.toUni(d = d.person_view)) - override fun toUni(d: X4DatatypesBlockCommunityResponse): LemmyapiDatatypesBlockCommunityResponse = - LemmyapiDatatypesBlockCommunityResponse( - community_view = this.toUni(d = d.community_view), - blocked = d.blocked, - ) + override fun toUni(d: X4DatatypesBlockCommunityResponse): it.vercruysse.lemmyapi.datatypes.CommunityResponse = + it.vercruysse.lemmyapi.datatypes.CommunityResponse(community_view = this.toUni(d = d.community_view), moderators = emptyList()) - override fun toUni(d: X4DatatypesBlockPersonResponse): LemmyapiDatatypesBlockPersonResponse = - LemmyapiDatatypesBlockPersonResponse( - person_view = this.toUni(d = d.person_view), - blocked = d.blocked, - ) + override fun toUni(d: X4DatatypesBlockPersonResponse): it.vercruysse.lemmyapi.datatypes.PersonResponse = + it.vercruysse.lemmyapi.datatypes.PersonResponse(person_view = this.toUni(d = d.person_view)) override fun toUni(d: X4DatatypesCaptchaResponse): LemmyapiDatatypesCaptchaResponse = LemmyapiDatatypesCaptchaResponse( @@ -634,6 +521,7 @@ internal class Transformer : MapperGenerator { report_count = -1, unresolved_report_count = -1, local_removed = false, + last_refreshed_at = "", ) override fun toUni(d: X4DatatypesCommunityFollowerView): LemmyapiDatatypesCommunityFollowerView = @@ -706,11 +594,6 @@ internal class Transformer : MapperGenerator { ok = d.ok?.let { this.toUni(d = it) }, ) - override fun toUni(d: X4DatatypesGetCommentsResponse): LemmyapiDatatypesGetCommentsResponse = - LemmyapiDatatypesGetCommentsResponse( - comments = d.comments.map { this.toUni(d = it) }, - ) - override fun toUni(d: X4DatatypesGetCommunityResponse): LemmyapiDatatypesGetCommunityResponse = LemmyapiDatatypesGetCommunityResponse( community_view = this.toUni(d = d.community_view), @@ -719,132 +602,13 @@ internal class Transformer : MapperGenerator { discussion_languages = d.discussion_languages, ) - override fun toUni(d: X4DatatypesGetFederatedInstancesResponse): LemmyapiDatatypesGetFederatedInstancesResponse = - LemmyapiDatatypesGetFederatedInstancesResponse( - federated_instances = d.federated_instances?.let { this.toUni(d = it) }, - ) - - override fun toUni(d: X4DatatypesGetModlogResponse): LemmyapiDatatypesGetModlogResponse { - val modlogList = mutableListOf() - - // Add ModRemovePost entries - modlogList.addAll( - d.removed_posts.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemovePost(mod_remove_post = this.toUni(d = view)) - }, - ) - - // Add ModLockPost entries - modlogList.addAll( - d.locked_posts.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModLockPost(mod_lock_post = this.toUni(d = view)) - }, - ) - - // Add ModFeaturePost entries - modlogList.addAll( - d.featured_posts.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModFeaturePost(mod_feature_post = this.toUni(d = view)) - }, - ) - - // Add ModRemoveComment entries - modlogList.addAll( - d.removed_comments.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemoveComment(mod_remove_comment = this.toUni(d = view)) - }, - ) - - // Add ModRemoveCommunity entries - modlogList.addAll( - d.removed_communities.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminRemoveCommunity(admin_remove_community = this.toUni(d = view)) - }, - ) - - // Add ModBanFromCommunity entries - modlogList.addAll( - d.banned_from_community.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModBanFromCommunity(mod_ban_from_community = this.toUni(d = view)) - }, - ) - - // Add ModBan entries - modlogList.addAll( - d.banned.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminBan(admin_ban = this.toUni(d = view)) - }, - ) - - // Add ModAddCommunity entries - modlogList.addAll( - d.added_to_community.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModAddToCommunity(mod_add_to_community = this.toUni(d = view)) - }, - ) - - // Add ModTransferCommunity entries - modlogList.addAll( - d.transferred_to_community.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModTransferCommunity(mod_transfer_community = this.toUni(d = view)) - }, - ) - - // Add ModAdd entries - modlogList.addAll( - d.added.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminAdd(admin_add = this.toUni(d = view)) - }, - ) - - // Add AdminPurgePerson entries - modlogList.addAll( - d.admin_purged_persons.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgePerson(admin_purge_person = this.toUni(d = view)) - }, - ) - - // Add AdminPurgeCommunity entries - modlogList.addAll( - d.admin_purged_communities.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgeCommunity(admin_purge_community = this.toUni(d = view)) - }, - ) - - // Add AdminPurgePost entries - modlogList.addAll( - d.admin_purged_posts.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgePost(admin_purge_post = this.toUni(d = view)) - }, - ) - - // Add AdminPurgeComment entries - modlogList.addAll( - d.admin_purged_comments.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgeComment(admin_purge_comment = this.toUni(d = view)) - }, - ) - - // Add ModHideCommunity entries (mapped to ModChangeCommunityVisibility) - modlogList.addAll( - d.hidden_communities.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModChangeCommunityVisibility(mod_change_community_visibility = this.toUni(d = view)) - }, - ) - - return it.vercruysse.lemmyapi.datatypes.GetModlogResponse( - modlog = modlogList, - next_page = null, - prev_page = null, - ) - } - override fun toUni(d: X4DatatypesGetPersonDetailsResponse): LemmyapiDatatypesGetPersonDetailsResponse = LemmyapiDatatypesGetPersonDetailsResponse( person_view = this.toUni(d = d.person_view), site = d.site?.let { this.toUni(d = it) }, comments = d.comments.map { this.toUni(d = it) }, posts = d.posts.map { this.toUni(d = it) }, moderates = d.moderates.map { this.toUni(d = it) }, + multi_communities_created = emptyList() ) override fun toUni(d: X4DatatypesGetPostResponse): LemmyapiDatatypesGetPostResponse = @@ -855,17 +619,6 @@ internal class Transformer : MapperGenerator { cross_posts = d.cross_posts.map { this.toUni(d = it) }, ) - override fun toUni(d: X4DatatypesGetPostsResponse): LemmyapiDatatypesGetPostsResponse = - LemmyapiDatatypesGetPostsResponse( - posts = d.posts.map { this.toUni(d = it) }, - next_page = d.next_page, - ) - - fun toUni(d: X4DatatypesGetRepliesResponse): LemmyapiDatatypesListNotificationsResponse = - ListNotificationsResponse( - notifications = d.replies.map { this.toUni(d = it) }, - ) - fun toUni(d: X4DatatypesCommentReplyView): NotificationView = NotificationView( notification = Notification( @@ -900,11 +653,6 @@ internal class Transformer : MapperGenerator { community_actions = CommunityActions(null, CommunityFollowerState.from(d.subscribed)), ) - fun toUni(d: X4DatatypesGetPersonMentionsResponse): LemmyapiDatatypesListNotificationsResponse = - LemmyapiDatatypesListNotificationsResponse( - notifications = d.mentions.map { this.toUni(d = it) }, - ) - fun toUni(d: X4DatatypesPersonMentionView): NotificationView = NotificationView( notification = Notification( @@ -939,11 +687,6 @@ internal class Transformer : MapperGenerator { community_actions = CommunityActions(null, CommunityFollowerState.from(d.subscribed)), ) - fun toUni(d: X4DatatypesPrivateMessagesResponse): LemmyapiDatatypesListNotificationsResponse = - LemmyapiDatatypesListNotificationsResponse( - notifications = d.private_messages.map { this.toUniPMV(d = it) }, - ) - fun toUniPMV(d: X4DatatypesPrivateMessageView): NotificationView = NotificationView( notification = Notification( @@ -958,11 +701,6 @@ internal class Transformer : MapperGenerator { ), ) - override fun toUni(d: X4DatatypesGetReportCountResponse): LemmyapiDatatypesGetReportCountResponse = - LemmyapiDatatypesGetReportCountResponse( - count = d.post_reports + d.comment_reports + (d.private_message_reports ?: 0), - ) - override fun toUni(d: X4DatatypesGetSiteMetadataResponse): LemmyapiDatatypesGetSiteMetadataResponse = LemmyapiDatatypesGetSiteMetadataResponse( metadata = this.toUni(d = d.metadata), ) @@ -982,16 +720,6 @@ internal class Transformer : MapperGenerator { active_plugins = emptyList(), ) - override fun toUni(d: X4DatatypesGetUnreadCountResponse): LemmyapiDatatypesGetUnreadCountResponse = - LemmyapiDatatypesGetUnreadCountResponse( - count = d.replies + d.mentions + d.private_messages, - ) - - override fun toUni(d: X4DatatypesGetUnreadRegistrationApplicationCountResponse): LemmyapiDatatypesGetUnreadRegistrationApplicationCountResponse = - LemmyapiDatatypesGetUnreadRegistrationApplicationCountResponse( - registration_applications = d.registration_applications, - ) - override fun toUni(d: X4DatatypesInstance): LemmyapiDatatypesInstance = LemmyapiDatatypesInstance( id = d.id, domain = d.domain, @@ -1026,29 +754,6 @@ internal class Transformer : MapperGenerator { content_type = d.content_type, ) - override fun toUni(d: X4DatatypesListCommentLikesResponse): LemmyapiDatatypesListCommentLikesResponse = LemmyapiDatatypesListCommentLikesResponse( - comment_likes = d.comment_likes.map { this.toUni(d = it) }, - ) - - override fun toUni(d: X4DatatypesListCommunitiesResponse): LemmyapiDatatypesListCommunitiesResponse = LemmyapiDatatypesListCommunitiesResponse( - communities = d.communities.map { this.toUni(d = it) }, - ) - - override fun toUni(d: X4DatatypesListMediaResponse): LemmyapiDatatypesListMediaResponse = - LemmyapiDatatypesListMediaResponse( - images = d.images.map { this.toUni(d = it) }, - ) - - override fun toUni(d: X4DatatypesListPostLikesResponse): LemmyapiDatatypesListPostLikesResponse = - LemmyapiDatatypesListPostLikesResponse( - post_likes = d.post_likes.map { this.toUni(d = it) }, - ) - - override fun toUni(d: X4DatatypesListRegistrationApplicationsResponse): LemmyapiDatatypesListRegistrationApplicationsResponse = - LemmyapiDatatypesListRegistrationApplicationsResponse( - registration_applications = d.registration_applications.map { this.toUni(d = it) }, - ) - override fun toUni(d: X4DatatypesLocalImage): LemmyapiDatatypesLocalImage = LemmyapiDatatypesLocalImage( person_id = d.local_user_id, @@ -1159,7 +864,6 @@ internal class Transformer : MapperGenerator { admin = d.admin, post_listing_mode = d.post_listing_mode, totp_2fa_enabled = d.totp_2fa_enabled, - enable_keyboard_navigation = d.enable_keyboard_navigation, enable_animated_images = d.enable_animated_images, collapse_bot_comments = d.collapse_bot_comments, last_donation_notification_at = "", @@ -1408,6 +1112,7 @@ internal class Transformer : MapperGenerator { instance_persons_blocks = emptyList(), person_blocks = d.person_blocks.map { this.toUni(d = it.target) }, discussion_languages = d.discussion_languages, + multi_community_follows = emptyList(), ) fun toUni(d: X4DatatypesPerson) = this.toUni(d, X4DatatypesPersonAggregates(-1, -1, -1)) @@ -1429,6 +1134,7 @@ internal class Transformer : MapperGenerator { instance_id = d.instance_id, post_count = counts.post_count, comment_count = counts.comment_count, + last_refreshed_at = "", ) override fun toUni(d: X4DatatypesPersonView): LemmyapiDatatypesPersonView = @@ -1571,6 +1277,9 @@ internal class Transformer : MapperGenerator { private_message_creator = this.toUni(d = d.private_message_creator), creator = this.toUni(d = d.creator), resolver = d.resolver?.let { this.toUni(d = it) }, + creator_is_admin = false, + creator_banned = d.creator.banned, + creator_ban_expires_at = d.creator.ban_expires, ) override fun toUni(d: X4DatatypesPrivateMessageResponse): LemmyapiDatatypesPrivateMessageResponse = @@ -1625,7 +1334,7 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X4DatatypesSearchResponse): LemmyapiDatatypesSearchResponse = LemmyapiDatatypesSearchResponse( - results = buildList { + search = buildList { addAll(d.comments.map { LemmyapiDatatypesSearchCombinedView.Comment(comment = this@Transformer.toUni(d = it)) }) addAll(d.posts.map { LemmyapiDatatypesSearchCombinedView.Post(post = this@Transformer.toUni(d = it)) }) addAll(d.communities.map { LemmyapiDatatypesSearchCombinedView.Community(community = this@Transformer.toUni(d = it)) }) @@ -2100,10 +1809,7 @@ internal class Transformer : MapperGenerator { unread_only = d.unread_only, ) - override fun fromUni(d: LemmyapiDatatypesGetReportCount): X4DatatypesGetReportCount = - X4DatatypesGetReportCount( - community_id = d.community_id, - ) + override fun fromUni(d: LemmyapiDatatypesGetSiteMetadata): X4DatatypesGetSiteMetadata = X4DatatypesGetSiteMetadata( @@ -2334,7 +2040,6 @@ internal class Transformer : MapperGenerator { open_links_in_new_tab = d.open_links_in_new_tab, infinite_scroll_enabled = d.infinite_scroll_enabled, post_listing_mode = d.post_listing_mode, - enable_keyboard_navigation = d.enable_keyboard_navigation, enable_animated_images = d.enable_animated_images, collapse_bot_comments = d.collapse_bot_comments, show_scores = d.show_score, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CommentReplyView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CommentReplyView.kt index 64848b67..4988eb19 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CommentReplyView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CommentReplyView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -import it.vercruysse.lemmyapi.dto.SubscribedType +import it.vercruysse.lemmyapi.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CommentReportView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CommentReportView.kt index 98e7ada4..2b9e3514 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CommentReportView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CommentReportView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -import it.vercruysse.lemmyapi.dto.SubscribedType +import it.vercruysse.lemmyapi.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CommentView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CommentView.kt index b20ca0de..12cdba10 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CommentView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CommentView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -import it.vercruysse.lemmyapi.dto.SubscribedType +import it.vercruysse.lemmyapi.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/Community.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/Community.kt index ec50e6f9..4eadd479 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/Community.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/Community.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -import it.vercruysse.lemmyapi.dto.CommunityVisibility +import it.vercruysse.lemmyapi.enums.CommunityVisibility import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CommunityView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CommunityView.kt index 699f7cdb..51cb73c1 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CommunityView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CommunityView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -import it.vercruysse.lemmyapi.dto.SubscribedType +import it.vercruysse.lemmyapi.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CreateCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CreateCommunity.kt index 17028d66..265f66c9 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CreateCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CreateCommunity.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -import it.vercruysse.lemmyapi.dto.CommunityVisibility +import it.vercruysse.lemmyapi.enums.CommunityVisibility import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CreateSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CreateSite.kt index bdbba7df..d20f91d0 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CreateSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CreateSite.kt @@ -1,9 +1,9 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -import it.vercruysse.lemmyapi.dto.PostListingMode -import it.vercruysse.lemmyapi.dto.RegistrationMode -import it.vercruysse.lemmyapi.dto.SortType -import it.vercruysse.lemmyapi.dto.ListingType +import it.vercruysse.lemmyapi.enums.PostListingMode +import it.vercruysse.lemmyapi.enums.RegistrationMode +import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/EditCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/EditCommunity.kt index 59b0ffbb..e1ead553 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/EditCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/EditCommunity.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -import it.vercruysse.lemmyapi.dto.CommunityVisibility +import it.vercruysse.lemmyapi.enums.CommunityVisibility import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/EditSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/EditSite.kt index ba17ae76..5fccb9c9 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/EditSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/EditSite.kt @@ -1,9 +1,9 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -import it.vercruysse.lemmyapi.dto.PostListingMode -import it.vercruysse.lemmyapi.dto.RegistrationMode -import it.vercruysse.lemmyapi.dto.SortType -import it.vercruysse.lemmyapi.dto.ListingType +import it.vercruysse.lemmyapi.enums.PostListingMode +import it.vercruysse.lemmyapi.enums.RegistrationMode +import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/FeaturePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/FeaturePost.kt index a72d69a4..d0b7411d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/FeaturePost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/FeaturePost.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -import it.vercruysse.lemmyapi.dto.PostFeatureType +import it.vercruysse.lemmyapi.enums.PostFeatureType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/GetComments.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/GetComments.kt index 7900a762..7e0b7472 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/GetComments.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/GetComments.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -import it.vercruysse.lemmyapi.dto.CommentSortType -import it.vercruysse.lemmyapi.dto.ListingType +import it.vercruysse.lemmyapi.enums.CommentSortType +import it.vercruysse.lemmyapi.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/GetModlog.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/GetModlog.kt index 5b46ae7b..ae596e2e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/GetModlog.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/GetModlog.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -import it.vercruysse.lemmyapi.dto.ModlogActionType +import it.vercruysse.lemmyapi.enums.ModlogActionType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/GetPersonDetails.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/GetPersonDetails.kt index 9e1c9d1b..d82d2616 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/GetPersonDetails.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/GetPersonDetails.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -import it.vercruysse.lemmyapi.dto.SortType +import it.vercruysse.lemmyapi.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/GetPersonMentions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/GetPersonMentions.kt index 09543384..b0a97607 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/GetPersonMentions.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/GetPersonMentions.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -import it.vercruysse.lemmyapi.dto.CommentSortType +import it.vercruysse.lemmyapi.enums.CommentSortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/GetPosts.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/GetPosts.kt index a1c79da9..519b544f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/GetPosts.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/GetPosts.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -import it.vercruysse.lemmyapi.dto.SortType -import it.vercruysse.lemmyapi.dto.ListingType +import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/GetReplies.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/GetReplies.kt index 7b2c24f1..089d7357 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/GetReplies.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/GetReplies.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -import it.vercruysse.lemmyapi.dto.CommentSortType +import it.vercruysse.lemmyapi.enums.CommentSortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/ListCommunities.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/ListCommunities.kt index e209e730..55c09cc9 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/ListCommunities.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/ListCommunities.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -import it.vercruysse.lemmyapi.dto.SortType -import it.vercruysse.lemmyapi.dto.ListingType +import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/LocalSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/LocalSite.kt index dc5d744e..07ea0667 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/LocalSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/LocalSite.kt @@ -1,9 +1,9 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -import it.vercruysse.lemmyapi.dto.SortType -import it.vercruysse.lemmyapi.dto.PostListingMode -import it.vercruysse.lemmyapi.dto.RegistrationMode -import it.vercruysse.lemmyapi.dto.ListingType +import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.enums.PostListingMode +import it.vercruysse.lemmyapi.enums.RegistrationMode +import it.vercruysse.lemmyapi.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/LocalUser.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/LocalUser.kt index 6c0e8df8..8ce36c77 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/LocalUser.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/LocalUser.kt @@ -1,8 +1,8 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -import it.vercruysse.lemmyapi.dto.PostListingMode -import it.vercruysse.lemmyapi.dto.ListingType -import it.vercruysse.lemmyapi.dto.SortType +import it.vercruysse.lemmyapi.enums.PostListingMode +import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/PersonMentionView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/PersonMentionView.kt index e860e91c..79f5c1e9 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/PersonMentionView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/PersonMentionView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -import it.vercruysse.lemmyapi.dto.SubscribedType +import it.vercruysse.lemmyapi.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/PostReportView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/PostReportView.kt index b31b7a6e..236b6aa0 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/PostReportView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/PostReportView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -import it.vercruysse.lemmyapi.dto.SubscribedType +import it.vercruysse.lemmyapi.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/PostView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/PostView.kt index f29b38c9..ecb42c46 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/PostView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/PostView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -import it.vercruysse.lemmyapi.dto.SubscribedType +import it.vercruysse.lemmyapi.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/SaveUserSettings.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/SaveUserSettings.kt index def5f4b5..e2fb1028 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/SaveUserSettings.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/SaveUserSettings.kt @@ -1,8 +1,8 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -import it.vercruysse.lemmyapi.dto.PostListingMode -import it.vercruysse.lemmyapi.dto.ListingType -import it.vercruysse.lemmyapi.dto.SortType +import it.vercruysse.lemmyapi.enums.PostListingMode +import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/Search.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/Search.kt index c0f1863c..af243da3 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/Search.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/Search.kt @@ -1,8 +1,8 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -import it.vercruysse.lemmyapi.dto.ListingType -import it.vercruysse.lemmyapi.dto.SortType -import it.vercruysse.lemmyapi.dto.SearchType +import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.enums.SearchType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/SearchResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/SearchResponse.kt index 6648221e..974f6276 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/SearchResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/SearchResponse.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -import it.vercruysse.lemmyapi.dto.SearchType +import it.vercruysse.lemmyapi.enums.SearchType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt index 461f2b0e..e6451de7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt @@ -6,14 +6,15 @@ import it.vercruysse.lemmyapi.LemmyApiBaseController import it.vercruysse.lemmyapi.datatypes.ListCustomEmojis import it.vercruysse.lemmyapi.datatypes.ListCustomEmojisResponse import it.vercruysse.lemmyapi.datatypes.ListNotifications -import it.vercruysse.lemmyapi.datatypes.ListNotificationsResponse import it.vercruysse.lemmyapi.datatypes.MarkNotificationAsRead import it.vercruysse.lemmyapi.datatypes.ModlogView import it.vercruysse.lemmyapi.datatypes.MyUserInfo +import it.vercruysse.lemmyapi.datatypes.PagedResponse +import it.vercruysse.lemmyapi.datatypes.UnreadCountsResponse import it.vercruysse.lemmyapi.dto.ExportUserSettingsResponse import it.vercruysse.lemmyapi.dto.ImportUserSettings -import it.vercruysse.lemmyapi.dto.NotificationDataType -import it.vercruysse.lemmyapi.dto.NotificationType +import it.vercruysse.lemmyapi.enums.NotificationDataType +import it.vercruysse.lemmyapi.enums.NotificationType internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, baseUrl: String, auth: String?) : LemmyApiBaseController(client, actualVersion, baseUrl, auth) { @@ -123,8 +124,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun listCommunities( form: it.vercruysse.lemmyapi.datatypes.ListCommunities, - ): Result = - api.listCommunities(transformer.fromUni(form)).map(transformer::toUni) + ): Result> = + api.listCommunities(transformer.fromUni(form)).map { PagedResponse(it.communities.map(transformer::toUni)) } /** * Follow / subscribe to a community. @@ -143,7 +144,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun blockCommunity( form: it.vercruysse.lemmyapi.datatypes.BlockCommunity, - ): Result = + ): Result = api.blockCommunity(transformer.fromUni(form)).map(transformer::toUni) /** @@ -183,7 +184,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun banFromCommunity( form: it.vercruysse.lemmyapi.datatypes.BanFromCommunity, - ): Result = + ): Result = api.banFromCommunity(transformer.fromUni(form)).map(transformer::toUni) /** @@ -201,8 +202,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @GET("federated_instances") */ - override suspend fun getFederatedInstances(): Result = - api.getFederatedInstances().map(transformer::toUni) + override suspend fun getFederatedInstances(form: it.vercruysse.lemmyapi.datatypes.GetFederatedInstances): Result> = notSupported() /** * Get / fetch a post. @@ -237,8 +237,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun getPosts( form: it.vercruysse.lemmyapi.datatypes.GetPosts, - ): Result = - api.getPosts(transformer.fromUni(form.toValidatedForm())).map(transformer::toUni) + ): Result> = + api.getPosts(transformer.fromUni(form.toValidatedForm())).map { PagedResponse(it.posts.map(transformer::toUni)) } /** * Delete a post. @@ -329,39 +329,27 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun listReports( form: it.vercruysse.lemmyapi.datatypes.ListReports, - ): Result = + ): Result> = when (form.type_) { it.vercruysse.lemmyapi.dto.ReportType.Communities -> notSupported() it.vercruysse.lemmyapi.dto.ReportType.Posts -> { api.listPostReports(transformer.fromUniP(form)).map { resp -> - val items = resp.post_reports.map { r -> - it.vercruysse.lemmyapi.datatypes.ReportCombinedView.Post( - transformer.toUni(r), - ) - } - it.vercruysse.lemmyapi.datatypes.ListReportsResponse(items) + PagedResponse(resp.post_reports.map(transformer::toUni)) } } + it.vercruysse.lemmyapi.dto.ReportType.Comments -> { api.listCommentReports(transformer.fromUniC(form)).map { resp -> - val items = resp.comment_reports.map { r -> - it.vercruysse.lemmyapi.datatypes.ReportCombinedView.Comment( - transformer.toUni(r), - ) - } - it.vercruysse.lemmyapi.datatypes.ListReportsResponse(items) + PagedResponse(resp.comment_reports.map(transformer::toUni)) } } + it.vercruysse.lemmyapi.dto.ReportType.PrivateMessages -> { api.listPrivateMessageReports(transformer.fromUniPm(form)).map { resp -> - val items = resp.private_message_reports.map { r -> - it.vercruysse.lemmyapi.datatypes.ReportCombinedView.PrivateMessage( - transformer.toUni(r), - ) - } - it.vercruysse.lemmyapi.datatypes.ListReportsResponse(items) + PagedResponse(resp.private_message_reports.map(transformer::toUni)) } } + it.vercruysse.lemmyapi.dto.ReportType.All -> { runCatching { val postsResp = api.listPostReports(transformer.fromUniP(form)).getOrThrow() @@ -371,30 +359,18 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba val allReports = mutableListOf() allReports.addAll( - postsResp.post_reports.map { r -> - it.vercruysse.lemmyapi.datatypes.ReportCombinedView.Post( - transformer.toUni(r), - ) - }, + postsResp.post_reports.map(transformer::toUni) ) allReports.addAll( - commentsResp.comment_reports.map { r -> - it.vercruysse.lemmyapi.datatypes.ReportCombinedView.Comment( - transformer.toUni(r), - ) - }, + commentsResp.comment_reports.map(transformer::toUni) ) allReports.addAll( - privateMessagesResp.private_message_reports.map { r -> - it.vercruysse.lemmyapi.datatypes.ReportCombinedView.PrivateMessage( - transformer.toUni(r), - ) - }, + privateMessagesResp.private_message_reports.map(transformer::toUni) ) - it.vercruysse.lemmyapi.datatypes.ListReportsResponse(allReports) + PagedResponse(allReports) } } } @@ -446,8 +422,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun getComments( form: it.vercruysse.lemmyapi.datatypes.GetComments, - ): Result = - api.getComments(transformer.fromUni(form)).map(transformer::toUni) + ): Result> = + api.getComments(transformer.fromUni(form)).map { PagedResponse(it.comments.map(transformer::toUni)) } /** * Delete a comment. @@ -603,36 +579,39 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba NotificationType.Mention -> api.markPersonMentionAsRead(transformer.fromUniM(form)).map { } NotificationType.Reply -> api.markCommentReplyAsRead(transformer.fromUniR(form)).map { } NotificationType.PrivateMessage -> api.markPrivateMessageAsRead(transformer.fromUniP(form)).map { } - NotificationType.Subscribed -> notSupported() + NotificationType.Subscribed, NotificationType.ModAction -> notSupported() null -> notSupported() } /** * List notifications. */ - override suspend fun listNotifications(form: ListNotifications): Result = + override suspend fun listNotifications(form: ListNotifications): Result> = when (form.type_) { NotificationDataType.All -> runCatching { - val resReplies = api.getReplies(transformer.fromUniR(form)).map(transformer::toUni).getOrThrow() - val mentionReplies = api.getPersonMentions(transformer.fromUniM(form)).map(transformer::toUni).getOrThrow() - val privateMessages = api.getPrivateMessages(transformer.fromUniP(form)).map(transformer::toUni).getOrThrow() - - ListNotificationsResponse( + val replies = api.getReplies(transformer.fromUniR(form)).getOrThrow().replies.map(transformer::toUni) + val mentionReplies = api.getPersonMentions(transformer.fromUniM(form)).getOrThrow().mentions.map(transformer::toUni) + val privateMessages = api.getPrivateMessages(transformer.fromUniP(form)).getOrThrow().private_messages.map(transformer::toUniPMV) + PagedResponse( buildList { - addAll(resReplies.notifications) - addAll(mentionReplies.notifications) - addAll(privateMessages.notifications) + addAll(replies) + addAll(mentionReplies) + addAll(privateMessages) }, ) } + NotificationDataType.Reply -> - api.getReplies(transformer.fromUniR(form)).map(transformer::toUni) + api.getReplies(transformer.fromUniR(form)).map { resp -> PagedResponse(resp.replies.map(transformer::toUni)) } + NotificationDataType.Mention -> - api.getPersonMentions(transformer.fromUniM(form)).map(transformer::toUni) + api.getPersonMentions(transformer.fromUniM(form)).map { resp -> PagedResponse(resp.mentions.map(transformer::toUni)) } + NotificationDataType.PrivateMessage -> - api.getPrivateMessages(transformer.fromUniP(form)).map(transformer::toUni) - NotificationDataType.Subscribed -> Result.success(ListNotificationsResponse(emptyList())) + api.getPrivateMessages(transformer.fromUniP(form)).map { resp -> PagedResponse(resp.private_messages.map(transformer::toUniPMV)) } + + NotificationDataType.Subscribed -> Result.success(PagedResponse(emptyList())) } /** @@ -642,7 +621,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun banPerson( form: it.vercruysse.lemmyapi.datatypes.BanPerson, - ): Result = + ): Result = api.banPerson(transformer.fromUni(form)).map(transformer::toUni) /** @@ -650,8 +629,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @GET("user/banned") */ - override suspend fun getBannedPersons(): Result = - api.getBannedPersons().map(transformer::toUni) + override suspend fun getBannedPersons(): Result> = + api.getBannedPersons().map { resp -> PagedResponse(resp.banned.map(transformer::toUni)) } /** * Block a person. @@ -660,7 +639,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun blockPerson( form: it.vercruysse.lemmyapi.datatypes.BlockPerson, - ): Result = + ): Result = api.blockPerson(transformer.fromUni(form)).map(transformer::toUni) /** @@ -719,23 +698,16 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba ): Result = api.changePassword(transformer.fromUni(form)).map(transformer::toUni) - /** - * Get counts for your reports - * - * @GET("user/report_count") - */ - override suspend fun getReportCount( - form: it.vercruysse.lemmyapi.datatypes.GetReportCount, - ): Result = - api.getReportCount(transformer.fromUni(form)).map(transformer::toUni) - - /** - * Get your unread counts - * - * @GET("user/unread_count") - */ - override suspend fun getUnreadCount(): Result = - api.getUnreadCount().map(transformer::toUni) + override suspend fun getUnreadCounts(): Result = runCatching { + val d = api.getUnreadCount().getOrThrow() + val reportCount = api.getReportCount(it.vercruysse.lemmyapi.v0.x19.x6.datatypes.GetReportCount()).getOrNull() + val applicationCount = api.getUnreadRegistrationApplicationCount().getOrNull() + UnreadCountsResponse( + notification_count = d.replies + d.mentions + d.private_messages, + report_count = (reportCount?.post_reports ?: 0L) + (reportCount?.comment_reports ?: 0L) + (reportCount?.private_message_reports ?: 0L), + registration_application_count = applicationCount?.registration_applications, + ) + } /** * Verify your email @@ -770,23 +742,10 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba ): Result = api.addAdmin(transformer.fromUni(form)).map(transformer::toUni) - /** - * Get the unread registration applications count. - * - * @GET("admin/registration_application/count") - */ - override suspend fun getUnreadRegistrationApplicationCount(): Result = - api.getUnreadRegistrationApplicationCount().map(transformer::toUni) - - /** - * List the registration applications. - * - * @GET("admin/registration_application/list") - */ override suspend fun listRegistrationApplications( form: it.vercruysse.lemmyapi.datatypes.ListRegistrationApplications, - ): Result = - api.listRegistrationApplications(transformer.fromUni(form)).map(transformer::toUni) + ): Result> = + api.listRegistrationApplications(transformer.fromUni(form)).map { resp -> PagedResponse(resp.registration_applications.map(transformer::toUni)) } /** * Approve a registration application @@ -948,8 +907,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun listPostLikes( form: it.vercruysse.lemmyapi.datatypes.ListPostLikes, - ): Result = - api.listPostLikes(transformer.fromUni(form)).map(transformer::toUni) + ): Result> = notSupported() /** * List a comment's likes. Admin-only. @@ -958,8 +916,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun listCommentLikes( form: it.vercruysse.lemmyapi.datatypes.ListCommentLikes, - ): Result = - api.listCommentLikes(transformer.fromUni(form)).map(transformer::toUni) + ): Result> = notSupported() /** * List all the media for your user @@ -968,8 +925,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun listMedia( form: it.vercruysse.lemmyapi.datatypes.ListMedia, - ): Result = - api.listMedia(transformer.fromUni(form)).map(transformer::toUni) + ): Result> = notSupported() /** * List all the media known to your instance. @@ -978,8 +934,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun listAllMedia( form: it.vercruysse.lemmyapi.datatypes.ListMedia, - ): Result = - api.listAllMedia(transformer.fromUni(form)).map(transformer::toUni) + ): Result> = notSupported() /** * Hide a post from list views. diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt index 8f8d9638..6db7333c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt @@ -6,19 +6,10 @@ internal interface MapperGenerator { fun toUni(d: AddAdminResponse): it.vercruysse.lemmyapi.datatypes.AddAdminResponse fun toUni(d: AddModToCommunityResponse): it.vercruysse.lemmyapi.datatypes.AddModToCommunityResponse - fun toUni(d: AdminPurgeComment): it.vercruysse.lemmyapi.datatypes.AdminPurgeComment - fun toUni(d: AdminPurgeCommentView): it.vercruysse.lemmyapi.datatypes.AdminPurgeCommentView - fun toUni(d: AdminPurgeCommunity): it.vercruysse.lemmyapi.datatypes.AdminPurgeCommunity - fun toUni(d: AdminPurgeCommunityView): it.vercruysse.lemmyapi.datatypes.AdminPurgeCommunityView - fun toUni(d: AdminPurgePerson): it.vercruysse.lemmyapi.datatypes.AdminPurgePerson - fun toUni(d: AdminPurgePersonView): it.vercruysse.lemmyapi.datatypes.AdminPurgePersonView - fun toUni(d: AdminPurgePost): it.vercruysse.lemmyapi.datatypes.AdminPurgePost - fun toUni(d: AdminPurgePostView): it.vercruysse.lemmyapi.datatypes.AdminPurgePostView - fun toUni(d: BanFromCommunityResponse): it.vercruysse.lemmyapi.datatypes.BanFromCommunityResponse - fun toUni(d: BannedPersonsResponse): it.vercruysse.lemmyapi.datatypes.BannedPersonsResponse - fun toUni(d: BanPersonResponse): it.vercruysse.lemmyapi.datatypes.BanPersonResponse - fun toUni(d: BlockCommunityResponse): it.vercruysse.lemmyapi.datatypes.BlockCommunityResponse - fun toUni(d: BlockPersonResponse): it.vercruysse.lemmyapi.datatypes.BlockPersonResponse + fun toUni(d: BanFromCommunityResponse): it.vercruysse.lemmyapi.datatypes.PersonResponse + fun toUni(d: BanPersonResponse): it.vercruysse.lemmyapi.datatypes.PersonResponse + fun toUni(d: BlockCommunityResponse): it.vercruysse.lemmyapi.datatypes.CommunityResponse + fun toUni(d: BlockPersonResponse): it.vercruysse.lemmyapi.datatypes.PersonResponse fun toUni(d: CaptchaResponse): it.vercruysse.lemmyapi.datatypes.CaptchaResponse fun toUni(d: Comment, counts: CommentAggregates): it.vercruysse.lemmyapi.datatypes.Comment fun toUni(d: CommentReport): it.vercruysse.lemmyapi.datatypes.CommentReport @@ -35,33 +26,18 @@ internal interface MapperGenerator { fun toUni(d: CustomEmojiKeyword): it.vercruysse.lemmyapi.datatypes.CustomEmojiKeyword fun toUni(d: CustomEmojiResponse): it.vercruysse.lemmyapi.datatypes.CustomEmojiResponse fun toUni(d: CustomEmojiView): it.vercruysse.lemmyapi.datatypes.CustomEmojiView - fun toUni(d: FederatedInstances): it.vercruysse.lemmyapi.datatypes.FederatedInstances fun toUni(d: GenerateTotpSecretResponse): it.vercruysse.lemmyapi.datatypes.GenerateTotpSecretResponse fun toUni(d: GetCaptchaResponse): it.vercruysse.lemmyapi.datatypes.GetCaptchaResponse - fun toUni(d: GetCommentsResponse): it.vercruysse.lemmyapi.datatypes.GetCommentsResponse fun toUni(d: GetCommunityResponse): it.vercruysse.lemmyapi.datatypes.GetCommunityResponse - fun toUni(d: GetFederatedInstancesResponse): it.vercruysse.lemmyapi.datatypes.GetFederatedInstancesResponse - fun toUni(d: GetModlogResponse): it.vercruysse.lemmyapi.datatypes.GetModlogResponse fun toUni(d: GetPersonDetailsResponse): it.vercruysse.lemmyapi.datatypes.GetPersonDetailsResponse fun toUni(d: GetPostResponse): it.vercruysse.lemmyapi.datatypes.GetPostResponse - fun toUni(d: GetPostsResponse): it.vercruysse.lemmyapi.datatypes.GetPostsResponse - fun toUni(d: GetReportCountResponse): it.vercruysse.lemmyapi.datatypes.GetReportCountResponse fun toUni(d: GetSiteMetadataResponse): it.vercruysse.lemmyapi.datatypes.GetSiteMetadataResponse fun toUni(d: GetSiteResponse): it.vercruysse.lemmyapi.datatypes.GetSiteResponse - fun toUni(d: GetUnreadCountResponse): it.vercruysse.lemmyapi.datatypes.GetUnreadCountResponse - fun toUni( - d: GetUnreadRegistrationApplicationCountResponse, - ): it.vercruysse.lemmyapi.datatypes.GetUnreadRegistrationApplicationCountResponse fun toUni(d: ImageDetails): it.vercruysse.lemmyapi.datatypes.ImageDetails fun toUni(d: Instance): it.vercruysse.lemmyapi.datatypes.Instance fun toUni(d: InstanceWithFederationState): it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState fun toUni(d: Language): it.vercruysse.lemmyapi.datatypes.Language fun toUni(d: LinkMetadata): it.vercruysse.lemmyapi.datatypes.LinkMetadata - fun toUni(d: ListCommentLikesResponse): it.vercruysse.lemmyapi.datatypes.ListCommentLikesResponse - fun toUni(d: ListCommunitiesResponse): it.vercruysse.lemmyapi.datatypes.ListCommunitiesResponse - fun toUni(d: ListMediaResponse): it.vercruysse.lemmyapi.datatypes.ListMediaResponse - fun toUni(d: ListPostLikesResponse): it.vercruysse.lemmyapi.datatypes.ListPostLikesResponse - fun toUni(d: ListRegistrationApplicationsResponse): it.vercruysse.lemmyapi.datatypes.ListRegistrationApplicationsResponse fun toUni(d: LocalImage): it.vercruysse.lemmyapi.datatypes.LocalImage fun toUni(d: LocalImageView): it.vercruysse.lemmyapi.datatypes.LocalImageView fun toUni(d: LocalSite, counts: SiteAggregates): it.vercruysse.lemmyapi.datatypes.LocalSite @@ -71,28 +47,6 @@ internal interface MapperGenerator { fun toUni(d: LocalUserView): it.vercruysse.lemmyapi.datatypes.LocalUserView fun toUni(d: LoginResponse): it.vercruysse.lemmyapi.datatypes.LoginResponse fun toUni(d: LoginToken): it.vercruysse.lemmyapi.datatypes.LoginToken - fun toUni(d: ModAdd): it.vercruysse.lemmyapi.datatypes.AdminAdd - fun toUni(d: ModAddCommunity): it.vercruysse.lemmyapi.datatypes.ModAddToCommunity - fun toUni(d: ModAddCommunityView): it.vercruysse.lemmyapi.datatypes.ModAddToCommunityView - fun toUni(d: ModAddView): it.vercruysse.lemmyapi.datatypes.AdminAddView - fun toUni(d: ModBan): it.vercruysse.lemmyapi.datatypes.AdminBan - fun toUni(d: ModBanFromCommunity): it.vercruysse.lemmyapi.datatypes.ModBanFromCommunity - fun toUni(d: ModBanFromCommunityView): it.vercruysse.lemmyapi.datatypes.ModBanFromCommunityView - fun toUni(d: ModBanView): it.vercruysse.lemmyapi.datatypes.AdminBanView - fun toUni(d: ModFeaturePost): it.vercruysse.lemmyapi.datatypes.ModFeaturePost - fun toUni(d: ModFeaturePostView): it.vercruysse.lemmyapi.datatypes.ModFeaturePostView - fun toUni(d: ModHideCommunity): it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibility - fun toUni(d: ModHideCommunityView): it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibilityView - fun toUni(d: ModLockPost): it.vercruysse.lemmyapi.datatypes.ModLockPost - fun toUni(d: ModLockPostView): it.vercruysse.lemmyapi.datatypes.ModLockPostView - fun toUni(d: ModRemoveComment): it.vercruysse.lemmyapi.datatypes.ModRemoveComment - fun toUni(d: ModRemoveCommentView): it.vercruysse.lemmyapi.datatypes.ModRemoveCommentView - fun toUni(d: ModRemoveCommunity): it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunity - fun toUni(d: ModRemoveCommunityView): it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunityView - fun toUni(d: ModRemovePost): it.vercruysse.lemmyapi.datatypes.ModRemovePost - fun toUni(d: ModRemovePostView): it.vercruysse.lemmyapi.datatypes.ModRemovePostView - fun toUni(d: ModTransferCommunity): it.vercruysse.lemmyapi.datatypes.ModTransferCommunity - fun toUni(d: ModTransferCommunityView): it.vercruysse.lemmyapi.datatypes.ModTransferCommunityView fun toUni(d: MyUserInfo): it.vercruysse.lemmyapi.datatypes.MyUserInfo fun toUni(d: Person, counts: PersonAggregates): it.vercruysse.lemmyapi.datatypes.Person fun toUni(d: PersonView): it.vercruysse.lemmyapi.datatypes.PersonView @@ -165,7 +119,7 @@ internal interface MapperGenerator { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPost): GetPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPosts): GetPosts fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetRegistrationApplication): GetRegistrationApplication - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetReportCount): GetReportCount + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetSiteMetadata): GetSiteMetadata fun fromUni(d: it.vercruysse.lemmyapi.datatypes.HideCommunity): HideCommunity fun fromUni(d: it.vercruysse.lemmyapi.datatypes.HidePost): HidePost diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt index 98e93ccd..57a7cec7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt @@ -2,19 +2,18 @@ package it.vercruysse.lemmyapi.v0.x19.x6 import it.vercruysse.lemmyapi.datatypes.CommentActions import it.vercruysse.lemmyapi.datatypes.CommunityActions -import it.vercruysse.lemmyapi.datatypes.ListNotificationsResponse import it.vercruysse.lemmyapi.datatypes.MarkNotificationAsRead import it.vercruysse.lemmyapi.datatypes.Notification import it.vercruysse.lemmyapi.datatypes.NotificationData import it.vercruysse.lemmyapi.datatypes.NotificationView import it.vercruysse.lemmyapi.datatypes.PersonActions import it.vercruysse.lemmyapi.datatypes.PostActions -import it.vercruysse.lemmyapi.dto.CommentSortType -import it.vercruysse.lemmyapi.dto.CommunityFollowerState -import it.vercruysse.lemmyapi.dto.FederationMode -import it.vercruysse.lemmyapi.dto.NotificationType -import it.vercruysse.lemmyapi.dto.SortType -import it.vercruysse.lemmyapi.dto.VoteShow +import it.vercruysse.lemmyapi.enums.CommentSortType +import it.vercruysse.lemmyapi.enums.CommunityFollowerState +import it.vercruysse.lemmyapi.enums.FederationMode +import it.vercruysse.lemmyapi.enums.NotificationType +import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.enums.VoteShow import it.vercruysse.lemmyapi.utils.toAt import it.vercruysse.lemmyapi.datatypes.AddAdmin as LemmyapiDatatypesAddAdmin import it.vercruysse.lemmyapi.datatypes.AddAdminResponse as LemmyapiDatatypesAddAdminResponse @@ -36,14 +35,9 @@ import it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunity as LemmyapiDatatype import it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunityView as LemmyapiDatatypesModRemoveCommunityView import it.vercruysse.lemmyapi.datatypes.ApproveRegistrationApplication as LemmyapiDatatypesApproveRegistrationApplication import it.vercruysse.lemmyapi.datatypes.BanFromCommunity as LemmyapiDatatypesBanFromCommunity -import it.vercruysse.lemmyapi.datatypes.BanFromCommunityResponse as LemmyapiDatatypesBanFromCommunityResponse import it.vercruysse.lemmyapi.datatypes.BanPerson as LemmyapiDatatypesBanPerson -import it.vercruysse.lemmyapi.datatypes.BanPersonResponse as LemmyapiDatatypesBanPersonResponse -import it.vercruysse.lemmyapi.datatypes.BannedPersonsResponse as LemmyapiDatatypesBannedPersonsResponse import it.vercruysse.lemmyapi.datatypes.BlockCommunity as LemmyapiDatatypesBlockCommunity -import it.vercruysse.lemmyapi.datatypes.BlockCommunityResponse as LemmyapiDatatypesBlockCommunityResponse import it.vercruysse.lemmyapi.datatypes.BlockPerson as LemmyapiDatatypesBlockPerson -import it.vercruysse.lemmyapi.datatypes.BlockPersonResponse as LemmyapiDatatypesBlockPersonResponse import it.vercruysse.lemmyapi.datatypes.CaptchaResponse as LemmyapiDatatypesCaptchaResponse import it.vercruysse.lemmyapi.datatypes.ChangePassword as LemmyapiDatatypesChangePassword import it.vercruysse.lemmyapi.datatypes.Comment as LemmyapiDatatypesComment @@ -92,26 +86,18 @@ import it.vercruysse.lemmyapi.datatypes.GenerateTotpSecretResponse as LemmyapiDa import it.vercruysse.lemmyapi.datatypes.GetCaptchaResponse as LemmyapiDatatypesGetCaptchaResponse import it.vercruysse.lemmyapi.datatypes.GetComment as LemmyapiDatatypesGetComment import it.vercruysse.lemmyapi.datatypes.GetComments as LemmyapiDatatypesGetComments -import it.vercruysse.lemmyapi.datatypes.GetCommentsResponse as LemmyapiDatatypesGetCommentsResponse import it.vercruysse.lemmyapi.datatypes.GetCommunity as LemmyapiDatatypesGetCommunity import it.vercruysse.lemmyapi.datatypes.GetCommunityResponse as LemmyapiDatatypesGetCommunityResponse -import it.vercruysse.lemmyapi.datatypes.GetFederatedInstancesResponse as LemmyapiDatatypesGetFederatedInstancesResponse import it.vercruysse.lemmyapi.datatypes.GetModlog as LemmyapiDatatypesGetModlog -import it.vercruysse.lemmyapi.datatypes.GetModlogResponse as LemmyapiDatatypesGetModlogResponse import it.vercruysse.lemmyapi.datatypes.GetPersonDetails as LemmyapiDatatypesGetPersonDetails import it.vercruysse.lemmyapi.datatypes.GetPersonDetailsResponse as LemmyapiDatatypesGetPersonDetailsResponse import it.vercruysse.lemmyapi.datatypes.GetPost as LemmyapiDatatypesGetPost import it.vercruysse.lemmyapi.datatypes.GetPostResponse as LemmyapiDatatypesGetPostResponse import it.vercruysse.lemmyapi.datatypes.GetPosts as LemmyapiDatatypesGetPosts -import it.vercruysse.lemmyapi.datatypes.GetPostsResponse as LemmyapiDatatypesGetPostsResponse import it.vercruysse.lemmyapi.datatypes.GetRegistrationApplication as LemmyapiDatatypesGetRegistrationApplication -import it.vercruysse.lemmyapi.datatypes.GetReportCount as LemmyapiDatatypesGetReportCount -import it.vercruysse.lemmyapi.datatypes.GetReportCountResponse as LemmyapiDatatypesGetReportCountResponse import it.vercruysse.lemmyapi.datatypes.GetSiteMetadata as LemmyapiDatatypesGetSiteMetadata import it.vercruysse.lemmyapi.datatypes.GetSiteMetadataResponse as LemmyapiDatatypesGetSiteMetadataResponse import it.vercruysse.lemmyapi.datatypes.GetSiteResponse as LemmyapiDatatypesGetSiteResponse -import it.vercruysse.lemmyapi.datatypes.GetUnreadCountResponse as LemmyapiDatatypesGetUnreadCountResponse -import it.vercruysse.lemmyapi.datatypes.GetUnreadRegistrationApplicationCountResponse as LemmyapiDatatypesGetUnreadRegistrationApplicationCountResponse import it.vercruysse.lemmyapi.datatypes.HideCommunity as LemmyapiDatatypesHideCommunity import it.vercruysse.lemmyapi.datatypes.HidePost as LemmyapiDatatypesHidePost import it.vercruysse.lemmyapi.datatypes.ImageDetails as LemmyapiDatatypesImageDetails @@ -120,17 +106,11 @@ import it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState as LemmyapiD import it.vercruysse.lemmyapi.datatypes.Language as LemmyapiDatatypesLanguage import it.vercruysse.lemmyapi.datatypes.LinkMetadata as LemmyapiDatatypesLinkMetadata import it.vercruysse.lemmyapi.datatypes.ListCommentLikes as LemmyapiDatatypesListCommentLikes -import it.vercruysse.lemmyapi.datatypes.ListCommentLikesResponse as LemmyapiDatatypesListCommentLikesResponse import it.vercruysse.lemmyapi.datatypes.ListCommunities as LemmyapiDatatypesListCommunities -import it.vercruysse.lemmyapi.datatypes.ListCommunitiesResponse as LemmyapiDatatypesListCommunitiesResponse import it.vercruysse.lemmyapi.datatypes.ListMedia as LemmyapiDatatypesListMedia -import it.vercruysse.lemmyapi.datatypes.ListMediaResponse as LemmyapiDatatypesListMediaResponse import it.vercruysse.lemmyapi.datatypes.ListNotifications as LemmyapiDatatypesListNotifications -import it.vercruysse.lemmyapi.datatypes.ListNotificationsResponse as LemmyapiDatatypesListNotificationsResponse import it.vercruysse.lemmyapi.datatypes.ListPostLikes as LemmyapiDatatypesListPostLikes -import it.vercruysse.lemmyapi.datatypes.ListPostLikesResponse as LemmyapiDatatypesListPostLikesResponse import it.vercruysse.lemmyapi.datatypes.ListRegistrationApplications as LemmyapiDatatypesListRegistrationApplications -import it.vercruysse.lemmyapi.datatypes.ListRegistrationApplicationsResponse as LemmyapiDatatypesListRegistrationApplicationsResponse import it.vercruysse.lemmyapi.datatypes.LocalImage as LemmyapiDatatypesLocalImage import it.vercruysse.lemmyapi.datatypes.LocalImageView as LemmyapiDatatypesLocalImageView import it.vercruysse.lemmyapi.datatypes.LocalSite as LemmyapiDatatypesLocalSite @@ -226,7 +206,6 @@ import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.BanFromCommunity as X6Datatype import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.BanFromCommunityResponse as X6DatatypesBanFromCommunityResponse import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.BanPerson as X6DatatypesBanPerson import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.BanPersonResponse as X6DatatypesBanPersonResponse -import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.BannedPersonsResponse as X6DatatypesBannedPersonsResponse import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.BlockCommunity as X6DatatypesBlockCommunity import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.BlockCommunityResponse as X6DatatypesBlockCommunityResponse import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.BlockInstance as X6DatatypesBlockInstance @@ -283,12 +262,9 @@ import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.GenerateTotpSecretResponse as import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.GetCaptchaResponse as X6DatatypesGetCaptchaResponse import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.GetComment as X6DatatypesGetComment import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.GetComments as X6DatatypesGetComments -import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.GetCommentsResponse as X6DatatypesGetCommentsResponse import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.GetCommunity as X6DatatypesGetCommunity import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.GetCommunityResponse as X6DatatypesGetCommunityResponse -import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.GetFederatedInstancesResponse as X6DatatypesGetFederatedInstancesResponse import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.GetModlog as X6DatatypesGetModlog -import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.GetModlogResponse as X6DatatypesGetModlogResponse import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.GetPersonDetails as X6DatatypesGetPersonDetails import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.GetPersonDetailsResponse as X6DatatypesGetPersonDetailsResponse import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.GetPersonMentions as X6DatatypesGetPersonMentions @@ -296,18 +272,13 @@ import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.GetPersonMentionsResponse as X import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.GetPost as X6DatatypesGetPost import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.GetPostResponse as X6DatatypesGetPostResponse import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.GetPosts as X6DatatypesGetPosts -import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.GetPostsResponse as X6DatatypesGetPostsResponse import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.GetPrivateMessages as X6DatatypesGetPrivateMessages import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.GetRegistrationApplication as X6DatatypesGetRegistrationApplication import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.GetReplies as X6DatatypesGetReplies import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.GetRepliesResponse as X6DatatypesGetRepliesResponse -import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.GetReportCount as X6DatatypesGetReportCount -import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.GetReportCountResponse as X6DatatypesGetReportCountResponse import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.GetSiteMetadata as X6DatatypesGetSiteMetadata import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.GetSiteMetadataResponse as X6DatatypesGetSiteMetadataResponse import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.GetSiteResponse as X6DatatypesGetSiteResponse -import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.GetUnreadCountResponse as X6DatatypesGetUnreadCountResponse -import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.GetUnreadRegistrationApplicationCountResponse as X6DatatypesGetUnreadRegistrationApplicationCountResponse import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.HideCommunity as X6DatatypesHideCommunity import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.HidePost as X6DatatypesHidePost import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.ImageDetails as X6DatatypesImageDetails @@ -316,18 +287,13 @@ import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.InstanceWithFederationState as import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.Language as X6DatatypesLanguage import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.LinkMetadata as X6DatatypesLinkMetadata import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.ListCommentLikes as X6DatatypesListCommentLikes -import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.ListCommentLikesResponse as X6DatatypesListCommentLikesResponse import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.ListCommentReports as X6DatatypesListCommentReports import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.ListCommunities as X6DatatypesListCommunities -import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.ListCommunitiesResponse as X6DatatypesListCommunitiesResponse import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.ListMedia as X6DatatypesListMedia -import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.ListMediaResponse as X6DatatypesListMediaResponse import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.ListPostLikes as X6DatatypesListPostLikes -import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.ListPostLikesResponse as X6DatatypesListPostLikesResponse import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.ListPostReports as X6DatatypesListPostReports import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.ListPrivateMessageReports as X6DatatypesListPrivateMessageReports import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.ListRegistrationApplications as X6DatatypesListRegistrationApplications -import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.ListRegistrationApplicationsResponse as X6DatatypesListRegistrationApplicationsResponse import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.LocalImage as X6DatatypesLocalImage import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.LocalImageView as X6DatatypesLocalImageView import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.LocalSite as X6DatatypesLocalSite @@ -490,32 +456,17 @@ internal class Transformer : MapperGenerator { community = this.toUni(d = d.community, counts = X6DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), ) - override fun toUni(d: X6DatatypesBanFromCommunityResponse): LemmyapiDatatypesBanFromCommunityResponse = LemmyapiDatatypesBanFromCommunityResponse( - person_view = this.toUni(d = d.person_view), - banned = d.banned, - ) + override fun toUni(d: X6DatatypesBanFromCommunityResponse): it.vercruysse.lemmyapi.datatypes.PersonResponse = + it.vercruysse.lemmyapi.datatypes.PersonResponse(person_view = this.toUni(d = d.person_view)) - override fun toUni(d: X6DatatypesBannedPersonsResponse): LemmyapiDatatypesBannedPersonsResponse = - LemmyapiDatatypesBannedPersonsResponse( - banned = d.banned.map { this.toUni(d = it) }, - ) - - override fun toUni(d: X6DatatypesBanPersonResponse): LemmyapiDatatypesBanPersonResponse = - LemmyapiDatatypesBanPersonResponse( - person_view = this.toUni(d = d.person_view), - banned = d.banned, - ) + override fun toUni(d: X6DatatypesBanPersonResponse): it.vercruysse.lemmyapi.datatypes.PersonResponse = + it.vercruysse.lemmyapi.datatypes.PersonResponse(person_view = this.toUni(d = d.person_view)) - override fun toUni(d: X6DatatypesBlockCommunityResponse): LemmyapiDatatypesBlockCommunityResponse = LemmyapiDatatypesBlockCommunityResponse( - community_view = this.toUni(d = d.community_view), - blocked = d.blocked, - ) + override fun toUni(d: X6DatatypesBlockCommunityResponse): it.vercruysse.lemmyapi.datatypes.CommunityResponse = + it.vercruysse.lemmyapi.datatypes.CommunityResponse(community_view = this.toUni(d = d.community_view), moderators = emptyList()) - override fun toUni(d: X6DatatypesBlockPersonResponse): LemmyapiDatatypesBlockPersonResponse = - LemmyapiDatatypesBlockPersonResponse( - person_view = this.toUni(d = d.person_view), - blocked = d.blocked, - ) + override fun toUni(d: X6DatatypesBlockPersonResponse): it.vercruysse.lemmyapi.datatypes.PersonResponse = + it.vercruysse.lemmyapi.datatypes.PersonResponse(person_view = this.toUni(d = d.person_view)) override fun toUni(d: X6DatatypesCaptchaResponse): LemmyapiDatatypesCaptchaResponse = LemmyapiDatatypesCaptchaResponse( @@ -637,6 +588,7 @@ internal class Transformer : MapperGenerator { report_count = -1, unresolved_report_count = -1, local_removed = false, + last_refreshed_at = "", ) override fun toUni(d: X6DatatypesCommunityFollowerView): LemmyapiDatatypesCommunityFollowerView = @@ -708,11 +660,6 @@ internal class Transformer : MapperGenerator { ok = d.ok?.let { this.toUni(d = it) }, ) - override fun toUni(d: X6DatatypesGetCommentsResponse): LemmyapiDatatypesGetCommentsResponse = - LemmyapiDatatypesGetCommentsResponse( - comments = d.comments.map { this.toUni(d = it) }, - ) - override fun toUni(d: X6DatatypesGetCommunityResponse): LemmyapiDatatypesGetCommunityResponse = LemmyapiDatatypesGetCommunityResponse( community_view = this.toUni(d = d.community_view), @@ -721,132 +668,13 @@ internal class Transformer : MapperGenerator { discussion_languages = d.discussion_languages, ) - override fun toUni(d: X6DatatypesGetFederatedInstancesResponse): LemmyapiDatatypesGetFederatedInstancesResponse = - LemmyapiDatatypesGetFederatedInstancesResponse( - federated_instances = d.federated_instances?.let { this.toUni(d = it) }, - ) - - override fun toUni(d: X6DatatypesGetModlogResponse): LemmyapiDatatypesGetModlogResponse { - val modlogList = mutableListOf() - - // Add ModRemovePost entries - modlogList.addAll( - d.removed_posts.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemovePost(mod_remove_post = this.toUni(d = view)) - }, - ) - - // Add ModLockPost entries - modlogList.addAll( - d.locked_posts.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModLockPost(mod_lock_post = this.toUni(d = view)) - }, - ) - - // Add ModFeaturePost entries - modlogList.addAll( - d.featured_posts.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModFeaturePost(mod_feature_post = this.toUni(d = view)) - }, - ) - - // Add ModRemoveComment entries - modlogList.addAll( - d.removed_comments.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModRemoveComment(mod_remove_comment = this.toUni(d = view)) - }, - ) - - // Add ModRemoveCommunity entries - modlogList.addAll( - d.removed_communities.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminRemoveCommunity(admin_remove_community = this.toUni(d = view)) - }, - ) - - // Add ModBanFromCommunity entries - modlogList.addAll( - d.banned_from_community.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModBanFromCommunity(mod_ban_from_community = this.toUni(d = view)) - }, - ) - - // Add ModBan entries - modlogList.addAll( - d.banned.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminBan(admin_ban = this.toUni(d = view)) - }, - ) - - // Add ModAddCommunity entries - modlogList.addAll( - d.added_to_community.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModAddToCommunity(mod_add_to_community = this.toUni(d = view)) - }, - ) - - // Add ModTransferCommunity entries - modlogList.addAll( - d.transferred_to_community.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModTransferCommunity(mod_transfer_community = this.toUni(d = view)) - }, - ) - - // Add ModAdd entries - modlogList.addAll( - d.added.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminAdd(admin_add = this.toUni(d = view)) - }, - ) - - // Add AdminPurgePerson entries - modlogList.addAll( - d.admin_purged_persons.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgePerson(admin_purge_person = this.toUni(d = view)) - }, - ) - - // Add AdminPurgeCommunity entries - modlogList.addAll( - d.admin_purged_communities.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgeCommunity(admin_purge_community = this.toUni(d = view)) - }, - ) - - // Add AdminPurgePost entries - modlogList.addAll( - d.admin_purged_posts.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgePost(admin_purge_post = this.toUni(d = view)) - }, - ) - - // Add AdminPurgeComment entries - modlogList.addAll( - d.admin_purged_comments.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.AdminPurgeComment(admin_purge_comment = this.toUni(d = view)) - }, - ) - - // Add ModHideCommunity entries (mapped to ModChangeCommunityVisibility) - modlogList.addAll( - d.hidden_communities.map { view -> - it.vercruysse.lemmyapi.datatypes.ModlogCombinedView.ModChangeCommunityVisibility(mod_change_community_visibility = this.toUni(d = view)) - }, - ) - - return it.vercruysse.lemmyapi.datatypes.GetModlogResponse( - modlog = modlogList, - next_page = null, - prev_page = null, - ) - } - override fun toUni(d: X6DatatypesGetPersonDetailsResponse): LemmyapiDatatypesGetPersonDetailsResponse = LemmyapiDatatypesGetPersonDetailsResponse( person_view = this.toUni(d = d.person_view), site = d.site?.let { this.toUni(d = it) }, comments = d.comments.map { this.toUni(d = it) }, posts = d.posts.map { this.toUni(d = it) }, moderates = d.moderates.map { this.toUni(d = it) }, + multi_communities_created = emptyList() ) override fun toUni(d: X6DatatypesGetPostResponse): LemmyapiDatatypesGetPostResponse = @@ -857,17 +685,6 @@ internal class Transformer : MapperGenerator { cross_posts = d.cross_posts.map { this.toUni(d = it) }, ) - override fun toUni(d: X6DatatypesGetPostsResponse): LemmyapiDatatypesGetPostsResponse = - LemmyapiDatatypesGetPostsResponse( - posts = d.posts.map { this.toUni(d = it) }, - next_page = d.next_page, - ) - - fun toUni(d: X6DatatypesGetRepliesResponse): LemmyapiDatatypesListNotificationsResponse = - ListNotificationsResponse( - notifications = d.replies.map { this.toUni(d = it) }, - ) - fun toUni(d: X6DatatypesCommentReplyView): NotificationView = NotificationView( notification = Notification( @@ -902,11 +719,6 @@ internal class Transformer : MapperGenerator { community_actions = CommunityActions(null, CommunityFollowerState.from(d.subscribed)), ) - fun toUni(d: X6DatatypesGetPersonMentionsResponse): LemmyapiDatatypesListNotificationsResponse = - LemmyapiDatatypesListNotificationsResponse( - notifications = d.mentions.map { this.toUni(d = it) }, - ) - fun toUni(d: X6DatatypesPersonMentionView): NotificationView = NotificationView( notification = Notification( @@ -941,11 +753,6 @@ internal class Transformer : MapperGenerator { community_actions = CommunityActions(null, CommunityFollowerState.from(d.subscribed)), ) - fun toUni(d: X6DatatypesPrivateMessagesResponse): LemmyapiDatatypesListNotificationsResponse = - LemmyapiDatatypesListNotificationsResponse( - notifications = d.private_messages.map { this.toUniPMV(d = it) }, - ) - fun toUniPMV(d: X6DatatypesPrivateMessageView): NotificationView = NotificationView( notification = Notification( @@ -960,10 +767,6 @@ internal class Transformer : MapperGenerator { ), ) - override fun toUni(d: X6DatatypesGetReportCountResponse): LemmyapiDatatypesGetReportCountResponse = LemmyapiDatatypesGetReportCountResponse( - count = d.post_reports + d.comment_reports + (d.private_message_reports ?: 0), - ) - override fun toUni(d: X6DatatypesGetSiteMetadataResponse): LemmyapiDatatypesGetSiteMetadataResponse = LemmyapiDatatypesGetSiteMetadataResponse( metadata = this.toUni(d = d.metadata), ) @@ -983,15 +786,6 @@ internal class Transformer : MapperGenerator { active_plugins = emptyList(), ) - override fun toUni(d: X6DatatypesGetUnreadCountResponse): LemmyapiDatatypesGetUnreadCountResponse = LemmyapiDatatypesGetUnreadCountResponse( - count = d.replies + d.mentions + d.private_messages, - ) - - override fun toUni(d: X6DatatypesGetUnreadRegistrationApplicationCountResponse): LemmyapiDatatypesGetUnreadRegistrationApplicationCountResponse = - LemmyapiDatatypesGetUnreadRegistrationApplicationCountResponse( - registration_applications = d.registration_applications, - ) - override fun toUni(d: X6DatatypesImageDetails): LemmyapiDatatypesImageDetails = LemmyapiDatatypesImageDetails( link = d.link, @@ -1034,29 +828,6 @@ internal class Transformer : MapperGenerator { content_type = d.content_type, ) - override fun toUni(d: X6DatatypesListCommentLikesResponse): LemmyapiDatatypesListCommentLikesResponse = LemmyapiDatatypesListCommentLikesResponse( - comment_likes = d.comment_likes.map { this.toUni(d = it) }, - ) - - override fun toUni(d: X6DatatypesListCommunitiesResponse): LemmyapiDatatypesListCommunitiesResponse = LemmyapiDatatypesListCommunitiesResponse( - communities = d.communities.map { this.toUni(d = it) }, - ) - - override fun toUni(d: X6DatatypesListMediaResponse): LemmyapiDatatypesListMediaResponse = - LemmyapiDatatypesListMediaResponse( - images = d.images.map { this.toUni(d = it) }, - ) - - override fun toUni(d: X6DatatypesListPostLikesResponse): LemmyapiDatatypesListPostLikesResponse = - LemmyapiDatatypesListPostLikesResponse( - post_likes = d.post_likes.map { this.toUni(d = it) }, - ) - - override fun toUni(d: X6DatatypesListRegistrationApplicationsResponse): LemmyapiDatatypesListRegistrationApplicationsResponse = - LemmyapiDatatypesListRegistrationApplicationsResponse( - registration_applications = d.registration_applications.map { this.toUni(d = it) }, - ) - override fun toUni(d: X6DatatypesLocalImage): LemmyapiDatatypesLocalImage = LemmyapiDatatypesLocalImage( person_id = d.local_user_id, @@ -1167,7 +938,6 @@ internal class Transformer : MapperGenerator { admin = d.admin, post_listing_mode = d.post_listing_mode, totp_2fa_enabled = d.totp_2fa_enabled, - enable_keyboard_navigation = d.enable_keyboard_navigation, enable_animated_images = d.enable_animated_images, collapse_bot_comments = d.collapse_bot_comments, last_donation_notification_at = "", @@ -1414,6 +1184,7 @@ internal class Transformer : MapperGenerator { instance_persons_blocks = emptyList(), person_blocks = d.person_blocks.map { this.toUni(d = it.target) }, discussion_languages = d.discussion_languages, + multi_community_follows = emptyList(), ) fun toUni(d: X6DatatypesPerson) = this.toUni(d, X6DatatypesPersonAggregates(-1, -1, -1)) @@ -1435,6 +1206,7 @@ internal class Transformer : MapperGenerator { instance_id = d.instance_id, comment_count = counts.comment_count, post_count = counts.post_count, + last_refreshed_at = "", ) override fun toUni(d: X6DatatypesPersonView): LemmyapiDatatypesPersonView = @@ -1578,6 +1350,9 @@ internal class Transformer : MapperGenerator { private_message_creator = this.toUni(d = d.private_message_creator), creator = this.toUni(d = d.creator), resolver = d.resolver?.let { this.toUni(d = it) }, + creator_is_admin = false, + creator_banned = d.creator.banned, + creator_ban_expires_at = d.creator.ban_expires, ) override fun toUni(d: X6DatatypesPrivateMessageResponse): LemmyapiDatatypesPrivateMessageResponse = LemmyapiDatatypesPrivateMessageResponse( @@ -1631,7 +1406,7 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X6DatatypesSearchResponse): LemmyapiDatatypesSearchResponse = LemmyapiDatatypesSearchResponse( - results = buildList { + search = buildList { addAll(d.comments.map { LemmyapiDatatypesSearchCombinedView.Comment(comment = this@Transformer.toUni(d = it)) }) addAll(d.posts.map { LemmyapiDatatypesSearchCombinedView.Post(post = this@Transformer.toUni(d = it)) }) addAll(d.communities.map { LemmyapiDatatypesSearchCombinedView.Community(community = this@Transformer.toUni(d = it)) }) @@ -2112,10 +1887,7 @@ internal class Transformer : MapperGenerator { person_id = d.person_id, ) - override fun fromUni(d: LemmyapiDatatypesGetReportCount): X6DatatypesGetReportCount = - X6DatatypesGetReportCount( - community_id = d.community_id, - ) + override fun fromUni(d: LemmyapiDatatypesGetSiteMetadata): X6DatatypesGetSiteMetadata = X6DatatypesGetSiteMetadata( @@ -2348,7 +2120,6 @@ internal class Transformer : MapperGenerator { open_links_in_new_tab = d.open_links_in_new_tab, infinite_scroll_enabled = d.infinite_scroll_enabled, post_listing_mode = d.post_listing_mode, - enable_keyboard_navigation = d.enable_keyboard_navigation, enable_animated_images = d.enable_animated_images, collapse_bot_comments = d.collapse_bot_comments, show_scores = d.show_score, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CommentReplyView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CommentReplyView.kt index 59d114fb..59749f43 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CommentReplyView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CommentReplyView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -import it.vercruysse.lemmyapi.dto.SubscribedType +import it.vercruysse.lemmyapi.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CommentReportView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CommentReportView.kt index 0feacee8..eeacb627 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CommentReportView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CommentReportView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -import it.vercruysse.lemmyapi.dto.SubscribedType +import it.vercruysse.lemmyapi.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CommentView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CommentView.kt index cdd45dcb..5f76d1c9 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CommentView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CommentView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -import it.vercruysse.lemmyapi.dto.SubscribedType +import it.vercruysse.lemmyapi.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/Community.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/Community.kt index aa40ef96..2cae9a7c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/Community.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/Community.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -import it.vercruysse.lemmyapi.dto.CommunityVisibility +import it.vercruysse.lemmyapi.enums.CommunityVisibility import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CommunityView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CommunityView.kt index 5d2ebb86..b8f24870 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CommunityView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CommunityView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -import it.vercruysse.lemmyapi.dto.SubscribedType +import it.vercruysse.lemmyapi.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CreateCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CreateCommunity.kt index 7eaeb30a..e96f40cb 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CreateCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CreateCommunity.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -import it.vercruysse.lemmyapi.dto.CommunityVisibility +import it.vercruysse.lemmyapi.enums.CommunityVisibility import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CreateSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CreateSite.kt index ca360a5e..5eb3167d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CreateSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CreateSite.kt @@ -1,9 +1,9 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -import it.vercruysse.lemmyapi.dto.PostListingMode -import it.vercruysse.lemmyapi.dto.RegistrationMode -import it.vercruysse.lemmyapi.dto.SortType -import it.vercruysse.lemmyapi.dto.ListingType +import it.vercruysse.lemmyapi.enums.PostListingMode +import it.vercruysse.lemmyapi.enums.RegistrationMode +import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/EditCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/EditCommunity.kt index ae565c6c..0af1419e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/EditCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/EditCommunity.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -import it.vercruysse.lemmyapi.dto.CommunityVisibility +import it.vercruysse.lemmyapi.enums.CommunityVisibility import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/EditSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/EditSite.kt index 9bca2099..2d23e1aa 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/EditSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/EditSite.kt @@ -1,9 +1,9 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -import it.vercruysse.lemmyapi.dto.PostListingMode -import it.vercruysse.lemmyapi.dto.RegistrationMode -import it.vercruysse.lemmyapi.dto.SortType -import it.vercruysse.lemmyapi.dto.ListingType +import it.vercruysse.lemmyapi.enums.PostListingMode +import it.vercruysse.lemmyapi.enums.RegistrationMode +import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/FeaturePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/FeaturePost.kt index c8ab6502..b781b122 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/FeaturePost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/FeaturePost.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -import it.vercruysse.lemmyapi.dto.PostFeatureType +import it.vercruysse.lemmyapi.enums.PostFeatureType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/GetComments.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/GetComments.kt index 3ee1e66b..3b472eac 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/GetComments.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/GetComments.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -import it.vercruysse.lemmyapi.dto.CommentSortType -import it.vercruysse.lemmyapi.dto.ListingType +import it.vercruysse.lemmyapi.enums.CommentSortType +import it.vercruysse.lemmyapi.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/GetModlog.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/GetModlog.kt index 94388727..7ca0e078 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/GetModlog.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/GetModlog.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -import it.vercruysse.lemmyapi.dto.ModlogActionType +import it.vercruysse.lemmyapi.enums.ModlogActionType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/GetPersonDetails.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/GetPersonDetails.kt index 1d0361da..d9d83dd7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/GetPersonDetails.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/GetPersonDetails.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -import it.vercruysse.lemmyapi.dto.SortType +import it.vercruysse.lemmyapi.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/GetPersonMentions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/GetPersonMentions.kt index a6ddad0d..49d4d309 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/GetPersonMentions.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/GetPersonMentions.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -import it.vercruysse.lemmyapi.dto.CommentSortType +import it.vercruysse.lemmyapi.enums.CommentSortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/GetPosts.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/GetPosts.kt index db71eebd..fcc89f49 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/GetPosts.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/GetPosts.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -import it.vercruysse.lemmyapi.dto.SortType -import it.vercruysse.lemmyapi.dto.ListingType +import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/GetReplies.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/GetReplies.kt index 49fc6f6b..bf265d57 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/GetReplies.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/GetReplies.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -import it.vercruysse.lemmyapi.dto.CommentSortType +import it.vercruysse.lemmyapi.enums.CommentSortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/ListCommunities.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/ListCommunities.kt index 42956494..9f6c5baf 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/ListCommunities.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/ListCommunities.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -import it.vercruysse.lemmyapi.dto.SortType -import it.vercruysse.lemmyapi.dto.ListingType +import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/LocalSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/LocalSite.kt index a0bfa8cd..74d989e7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/LocalSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/LocalSite.kt @@ -1,9 +1,9 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -import it.vercruysse.lemmyapi.dto.SortType -import it.vercruysse.lemmyapi.dto.PostListingMode -import it.vercruysse.lemmyapi.dto.RegistrationMode -import it.vercruysse.lemmyapi.dto.ListingType +import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.enums.PostListingMode +import it.vercruysse.lemmyapi.enums.RegistrationMode +import it.vercruysse.lemmyapi.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/LocalUser.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/LocalUser.kt index cac64f25..47805018 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/LocalUser.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/LocalUser.kt @@ -1,8 +1,8 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -import it.vercruysse.lemmyapi.dto.PostListingMode -import it.vercruysse.lemmyapi.dto.ListingType -import it.vercruysse.lemmyapi.dto.SortType +import it.vercruysse.lemmyapi.enums.PostListingMode +import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/PersonMentionView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/PersonMentionView.kt index bce2a442..f29c26a0 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/PersonMentionView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/PersonMentionView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -import it.vercruysse.lemmyapi.dto.SubscribedType +import it.vercruysse.lemmyapi.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/PostReportView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/PostReportView.kt index a72b7ee5..16692f20 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/PostReportView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/PostReportView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -import it.vercruysse.lemmyapi.dto.SubscribedType +import it.vercruysse.lemmyapi.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/PostView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/PostView.kt index 729b7b2c..9f95bc8d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/PostView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/PostView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -import it.vercruysse.lemmyapi.dto.SubscribedType +import it.vercruysse.lemmyapi.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/SaveUserSettings.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/SaveUserSettings.kt index 0f6f45b9..191328ec 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/SaveUserSettings.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/SaveUserSettings.kt @@ -1,8 +1,8 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -import it.vercruysse.lemmyapi.dto.PostListingMode -import it.vercruysse.lemmyapi.dto.ListingType -import it.vercruysse.lemmyapi.dto.SortType +import it.vercruysse.lemmyapi.enums.PostListingMode +import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/Search.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/Search.kt index a2c4aafd..e22995c3 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/Search.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/Search.kt @@ -1,8 +1,8 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -import it.vercruysse.lemmyapi.dto.ListingType -import it.vercruysse.lemmyapi.dto.SortType -import it.vercruysse.lemmyapi.dto.SearchType +import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.enums.SearchType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/SearchResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/SearchResponse.kt index b1b5fdac..af6be18c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/SearchResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/SearchResponse.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -import it.vercruysse.lemmyapi.dto.SearchType +import it.vercruysse.lemmyapi.enums.SearchType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Community.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Community.kt index 51db0472..36ddfcdb 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Community.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Community.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -import it.vercruysse.lemmyapi.dto.CommunityVisibility +import it.vercruysse.lemmyapi.enums.CommunityVisibility import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityActions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityActions.kt index e4d549d6..9f4f7a45 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityActions.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityActions.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -import it.vercruysse.lemmyapi.dto.CommunityFollowerState -import it.vercruysse.lemmyapi.dto.CommunityNotificationsMode +import it.vercruysse.lemmyapi.enums.CommunityFollowerState +import it.vercruysse.lemmyapi.enums.CommunityNotificationsMode import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCommunity.kt index ae8189a8..e78370c5 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCommunity.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -import it.vercruysse.lemmyapi.dto.CommunityVisibility +import it.vercruysse.lemmyapi.enums.CommunityVisibility import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateSite.kt index 19064afd..f9bacfe9 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateSite.kt @@ -1,10 +1,10 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -import it.vercruysse.lemmyapi.dto.FederationMode -import it.vercruysse.lemmyapi.dto.RegistrationMode -import it.vercruysse.lemmyapi.dto.SortType -import it.vercruysse.lemmyapi.dto.PostListingMode -import it.vercruysse.lemmyapi.dto.ListingType +import it.vercruysse.lemmyapi.enums.FederationMode +import it.vercruysse.lemmyapi.enums.RegistrationMode +import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.enums.PostListingMode +import it.vercruysse.lemmyapi.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditCommunity.kt index 5caa773e..a585f6cb 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditCommunity.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -import it.vercruysse.lemmyapi.dto.CommunityVisibility +import it.vercruysse.lemmyapi.enums.CommunityVisibility import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditCommunityNotifications.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditCommunityNotifications.kt index 4eab5020..302e4e33 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditCommunityNotifications.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditCommunityNotifications.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -import it.vercruysse.lemmyapi.dto.CommunityNotificationsMode +import it.vercruysse.lemmyapi.enums.CommunityNotificationsMode import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditPostNotifications.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditPostNotifications.kt index 51c450cc..077284bc 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditPostNotifications.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditPostNotifications.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -import it.vercruysse.lemmyapi.dto.PostNotificationsMode +import it.vercruysse.lemmyapi.enums.PostNotificationsMode import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditSite.kt index b5eaebc6..56ba3940 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditSite.kt @@ -1,9 +1,9 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -import it.vercruysse.lemmyapi.dto.RegistrationMode -import it.vercruysse.lemmyapi.dto.SortType -import it.vercruysse.lemmyapi.dto.PostListingMode -import it.vercruysse.lemmyapi.dto.ListingType +import it.vercruysse.lemmyapi.enums.RegistrationMode +import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.enums.PostListingMode +import it.vercruysse.lemmyapi.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/FeaturePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/FeaturePost.kt index 7a76da5a..da3af911 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/FeaturePost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/FeaturePost.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -import it.vercruysse.lemmyapi.dto.PostFeatureType +import it.vercruysse.lemmyapi.enums.PostFeatureType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetComments.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetComments.kt index 06e725ee..3fe4d524 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetComments.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetComments.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -import it.vercruysse.lemmyapi.dto.CommentSortType -import it.vercruysse.lemmyapi.dto.ListingType +import it.vercruysse.lemmyapi.enums.CommentSortType +import it.vercruysse.lemmyapi.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetModlog.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetModlog.kt index fbcb0808..4fbbbaa5 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetModlog.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetModlog.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -import it.vercruysse.lemmyapi.dto.ListingType -import it.vercruysse.lemmyapi.dto.ModlogActionType +import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.enums.ModlogActionType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetPosts.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetPosts.kt index 904dbf91..635f036b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetPosts.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetPosts.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -import it.vercruysse.lemmyapi.dto.SortType -import it.vercruysse.lemmyapi.dto.ListingType +import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetRandomCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetRandomCommunity.kt index 019dd9b7..57a022ec 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetRandomCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetRandomCommunity.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -import it.vercruysse.lemmyapi.dto.ListingType +import it.vercruysse.lemmyapi.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommunities.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommunities.kt index 46e5c163..cd2178b6 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommunities.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommunities.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -import it.vercruysse.lemmyapi.dto.SortType -import it.vercruysse.lemmyapi.dto.ListingType +import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListMultiCommunities.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListMultiCommunities.kt index a8286fc2..8b00b40d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListMultiCommunities.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListMultiCommunities.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -import it.vercruysse.lemmyapi.dto.ListingType +import it.vercruysse.lemmyapi.enums.ListingType import it.vercruysse.lemmyapi.enums.MultiCommunityListingType import kotlinx.serialization.Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListNotifications.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListNotifications.kt index c09d3fd1..75f9dad9 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListNotifications.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListNotifications.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -import it.vercruysse.lemmyapi.dto.NotificationDataType +import it.vercruysse.lemmyapi.enums.NotificationDataType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListReports.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListReports.kt index 7f94434e..30ae94db 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListReports.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListReports.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -import it.vercruysse.lemmyapi.dto.ReportType +import it.vercruysse.lemmyapi.enums.ReportType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSite.kt index 91cc3cfd..f044c22d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSite.kt @@ -1,10 +1,10 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -import it.vercruysse.lemmyapi.dto.FederationMode -import it.vercruysse.lemmyapi.dto.SortType -import it.vercruysse.lemmyapi.dto.PostListingMode -import it.vercruysse.lemmyapi.dto.RegistrationMode -import it.vercruysse.lemmyapi.dto.ListingType +import it.vercruysse.lemmyapi.enums.FederationMode +import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.enums.PostListingMode +import it.vercruysse.lemmyapi.enums.RegistrationMode +import it.vercruysse.lemmyapi.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUser.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUser.kt index 43c9c537..cc157b6a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUser.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUser.kt @@ -1,9 +1,9 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -import it.vercruysse.lemmyapi.dto.PostListingMode -import it.vercruysse.lemmyapi.dto.ListingType -import it.vercruysse.lemmyapi.dto.SortType -import it.vercruysse.lemmyapi.dto.VoteShow +import it.vercruysse.lemmyapi.enums.PostListingMode +import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.enums.VoteShow import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MultiCommunityFollow.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MultiCommunityFollow.kt index 719f6673..d1544499 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MultiCommunityFollow.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MultiCommunityFollow.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -import it.vercruysse.lemmyapi.dto.CommunityFollowerState +import it.vercruysse.lemmyapi.enums.CommunityFollowerState import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MultiCommunityView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MultiCommunityView.kt index 81bb758d..7fa11998 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MultiCommunityView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MultiCommunityView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -import it.vercruysse.lemmyapi.dto.CommunityFollowerState +import it.vercruysse.lemmyapi.enums.CommunityFollowerState import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Notification.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Notification.kt index a5d7ae1a..ed3bbd7b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Notification.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Notification.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -import it.vercruysse.lemmyapi.dto.NotificationType +import it.vercruysse.lemmyapi.enums.NotificationType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PendingFollow.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PendingFollow.kt index 703209c4..19de7d25 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PendingFollow.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PendingFollow.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -import it.vercruysse.lemmyapi.dto.CommunityFollowerState +import it.vercruysse.lemmyapi.enums.CommunityFollowerState import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PendingFollowerView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PendingFollowerView.kt index 60725186..989228ab 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PendingFollowerView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PendingFollowerView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -import it.vercruysse.lemmyapi.dto.CommunityFollowerState +import it.vercruysse.lemmyapi.enums.CommunityFollowerState import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostActions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostActions.kt index 813b01d2..57deaf83 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostActions.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostActions.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -import it.vercruysse.lemmyapi.dto.PostNotificationsMode +import it.vercruysse.lemmyapi.enums.PostNotificationsMode import kotlinx.serialization.Serializable // TODO: refactor diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SaveUserSettings.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SaveUserSettings.kt index 0ceab651..6e2e9809 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SaveUserSettings.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SaveUserSettings.kt @@ -1,9 +1,9 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -import it.vercruysse.lemmyapi.dto.SortType -import it.vercruysse.lemmyapi.dto.PostListingMode -import it.vercruysse.lemmyapi.dto.ListingType -import it.vercruysse.lemmyapi.dto.VoteShow +import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.enums.PostListingMode +import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.enums.VoteShow import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Search.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Search.kt index d3f97f01..2385cc94 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Search.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Search.kt @@ -1,8 +1,8 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -import it.vercruysse.lemmyapi.dto.ListingType -import it.vercruysse.lemmyapi.dto.SortType -import it.vercruysse.lemmyapi.dto.SearchType +import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.enums.SearchType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonTest/kotlin/utils/UtilTest.kt b/app/src/commonTest/kotlin/utils/UtilTest.kt index 42f4d4af..469642ef 100644 --- a/app/src/commonTest/kotlin/utils/UtilTest.kt +++ b/app/src/commonTest/kotlin/utils/UtilTest.kt @@ -1,6 +1,6 @@ package utils -import it.vercruysse.lemmyapi.dto.SortType +import it.vercruysse.lemmyapi.enums.SortType import it.vercruysse.lemmyapi.dto.getSupportedEntries import it.vercruysse.lemmyapi.utils.constructBaseUrl import it.vercruysse.lemmyapi.utils.isBetweenVersions From 1633061e2576cd8f313a9b15a722a5b27660d7ef Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Tue, 3 Mar 2026 20:32:11 +0100 Subject: [PATCH 038/110] Fix more changes --- .../src/main/kotlin/MapperGenerator0x19x11.kt | 47 --- .../datatypes/FederatedInstanceView.kt | 5 +- .../lemmyapi/datatypes/FederationAllowList.kt | 5 +- .../ListCommunityPendingFollowsResponse.kt | 13 - .../lemmyapi/datatypes/ListPersonContent.kt | 1 - .../lemmyapi/datatypes/ListPersonSaved.kt | 1 - .../lemmyapi/datatypes/PagedResponse.kt | 2 +- .../lemmyapi/datatypes/PublicOAuthProvider.kt | 5 +- .../lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt | 10 +- .../lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt | 10 +- .../lemmyapi/v0/x19/x0/MapperGenerator.kt | 31 -- .../lemmyapi/v0/x19/x0/Transformer.kt | 318 +--------------- .../lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt | 10 +- .../lemmyapi/v0/x19/x11/Transformer.kt | 352 +----------------- .../lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt | 11 +- .../lemmyapi/v0/x19/x3/MapperGenerator.kt | 31 -- .../lemmyapi/v0/x19/x3/Transformer.kt | 349 +---------------- .../lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt | 10 +- .../lemmyapi/v0/x19/x4/Transformer.kt | 305 +-------------- .../lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt | 12 +- .../lemmyapi/v0/x19/x6/Transformer.kt | 352 +----------------- .../ListCommunityPendingFollowsResponse.kt | 13 - .../x0/x0/datatypes/ResolveObjectResponse.kt | 17 - 23 files changed, 96 insertions(+), 1814 deletions(-) delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommunityPendingFollowsResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommunityPendingFollowsResponse.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ResolveObjectResponse.kt diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt index b7acaa77..0f1c97e1 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt @@ -13,19 +13,6 @@ internal interface MapperGenerator0x19x11 { fun toUni(d: AddAdminResponse): it.vercruysse.lemmyapi.datatypes.AddAdminResponse fun toUni(d: AddModToCommunityResponse): it.vercruysse.lemmyapi.datatypes.AddModToCommunityResponse - fun toUni(d: AdminPurgeComment): it.vercruysse.lemmyapi.datatypes.AdminPurgeComment - fun toUni(d: AdminPurgeCommentView): it.vercruysse.lemmyapi.datatypes.AdminPurgeCommentView - fun toUni(d: AdminPurgeCommunity): it.vercruysse.lemmyapi.datatypes.AdminPurgeCommunity - fun toUni(d: AdminPurgeCommunityView): it.vercruysse.lemmyapi.datatypes.AdminPurgeCommunityView - fun toUni(d: AdminPurgePerson): it.vercruysse.lemmyapi.datatypes.AdminPurgePerson - fun toUni(d: AdminPurgePersonView): it.vercruysse.lemmyapi.datatypes.AdminPurgePersonView - fun toUni(d: AdminPurgePost): it.vercruysse.lemmyapi.datatypes.AdminPurgePost - fun toUni(d: AdminPurgePostView): it.vercruysse.lemmyapi.datatypes.AdminPurgePostView - fun toUni(d: BanFromCommunityResponse): it.vercruysse.lemmyapi.datatypes.BanFromCommunityResponse - fun toUni(d: BannedPersonsResponse): it.vercruysse.lemmyapi.datatypes.BannedPersonsResponse - fun toUni(d: BanPersonResponse): it.vercruysse.lemmyapi.datatypes.BanPersonResponse - fun toUni(d: BlockCommunityResponse): it.vercruysse.lemmyapi.datatypes.BlockCommunityResponse - fun toUni(d: BlockPersonResponse): it.vercruysse.lemmyapi.datatypes.BlockPersonResponse fun toUni(d: CaptchaResponse): it.vercruysse.lemmyapi.datatypes.CaptchaResponse fun toUni(d: Comment): it.vercruysse.lemmyapi.datatypes.Comment fun toUni(d: CommentReport): it.vercruysse.lemmyapi.datatypes.CommentReport @@ -42,31 +29,18 @@ internal interface MapperGenerator0x19x11 { fun toUni(d: CustomEmojiKeyword): it.vercruysse.lemmyapi.datatypes.CustomEmojiKeyword fun toUni(d: CustomEmojiResponse): it.vercruysse.lemmyapi.datatypes.CustomEmojiResponse fun toUni(d: CustomEmojiView): it.vercruysse.lemmyapi.datatypes.CustomEmojiView - fun toUni(d: FederatedInstances): it.vercruysse.lemmyapi.datatypes.FederatedInstances fun toUni(d: GenerateTotpSecretResponse): it.vercruysse.lemmyapi.datatypes.GenerateTotpSecretResponse fun toUni(d: GetCaptchaResponse): it.vercruysse.lemmyapi.datatypes.GetCaptchaResponse - fun toUni(d: GetCommentsResponse): it.vercruysse.lemmyapi.datatypes.GetCommentsResponse fun toUni(d: GetCommunityResponse): it.vercruysse.lemmyapi.datatypes.GetCommunityResponse - fun toUni(d: GetFederatedInstancesResponse): it.vercruysse.lemmyapi.datatypes.GetFederatedInstancesResponse - fun toUni(d: GetModlogResponse): it.vercruysse.lemmyapi.datatypes.GetModlogResponse fun toUni(d: GetPersonDetailsResponse): it.vercruysse.lemmyapi.datatypes.GetPersonDetailsResponse fun toUni(d: GetPostResponse): it.vercruysse.lemmyapi.datatypes.GetPostResponse - fun toUni(d: GetPostsResponse): it.vercruysse.lemmyapi.datatypes.GetPostsResponse - fun toUni(d: GetReportCountResponse): it.vercruysse.lemmyapi.datatypes.GetReportCountResponse fun toUni(d: GetSiteMetadataResponse): it.vercruysse.lemmyapi.datatypes.GetSiteMetadataResponse fun toUni(d: GetSiteResponse): it.vercruysse.lemmyapi.datatypes.GetSiteResponse - fun toUni(d: GetUnreadCountResponse): it.vercruysse.lemmyapi.datatypes.GetUnreadCountResponse - fun toUni(d: GetUnreadRegistrationApplicationCountResponse): it.vercruysse.lemmyapi.datatypes.GetUnreadRegistrationApplicationCountResponse fun toUni(d: ImageDetails): it.vercruysse.lemmyapi.datatypes.ImageDetails fun toUni(d: Instance): it.vercruysse.lemmyapi.datatypes.Instance fun toUni(d: InstanceWithFederationState): it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState fun toUni(d: Language): it.vercruysse.lemmyapi.datatypes.Language fun toUni(d: LinkMetadata): it.vercruysse.lemmyapi.datatypes.LinkMetadata - fun toUni(d: ListCommentLikesResponse): it.vercruysse.lemmyapi.datatypes.ListCommentLikesResponse - fun toUni(d: ListCommunitiesResponse): it.vercruysse.lemmyapi.datatypes.ListCommunitiesResponse - fun toUni(d: ListMediaResponse): it.vercruysse.lemmyapi.datatypes.ListMediaResponse - fun toUni(d: ListPostLikesResponse): it.vercruysse.lemmyapi.datatypes.ListPostLikesResponse - fun toUni(d: ListRegistrationApplicationsResponse): it.vercruysse.lemmyapi.datatypes.ListRegistrationApplicationsResponse fun toUni(d: LocalImage): it.vercruysse.lemmyapi.datatypes.LocalImage fun toUni(d: LocalImageView): it.vercruysse.lemmyapi.datatypes.LocalImageView fun toUni(d: LocalSite): it.vercruysse.lemmyapi.datatypes.LocalSite @@ -76,26 +50,6 @@ internal interface MapperGenerator0x19x11 { fun toUni(d: LocalUserView): it.vercruysse.lemmyapi.datatypes.LocalUserView fun toUni(d: LoginResponse): it.vercruysse.lemmyapi.datatypes.LoginResponse fun toUni(d: LoginToken): it.vercruysse.lemmyapi.datatypes.LoginToken - fun toUni(d: ModAdd): it.vercruysse.lemmyapi.datatypes.AdminAdd - fun toUni(d: ModAddCommunity): it.vercruysse.lemmyapi.datatypes.ModAddToCommunity - fun toUni(d: ModAddCommunityView): it.vercruysse.lemmyapi.datatypes.ModAddToCommunityView - fun toUni(d: ModAddView): it.vercruysse.lemmyapi.datatypes.AdminAddView - fun toUni(d: ModBan): it.vercruysse.lemmyapi.datatypes.AdminBan - fun toUni(d: ModBanFromCommunity): it.vercruysse.lemmyapi.datatypes.ModBanFromCommunity - fun toUni(d: ModBanFromCommunityView): it.vercruysse.lemmyapi.datatypes.ModBanFromCommunityView - fun toUni(d: ModBanView): it.vercruysse.lemmyapi.datatypes.AdminBanView - fun toUni(d: ModFeaturePost): it.vercruysse.lemmyapi.datatypes.ModFeaturePost - fun toUni(d: ModFeaturePostView): it.vercruysse.lemmyapi.datatypes.ModFeaturePostView - fun toUni(d: ModLockPost): it.vercruysse.lemmyapi.datatypes.ModLockPost - fun toUni(d: ModLockPostView): it.vercruysse.lemmyapi.datatypes.ModLockPostView - fun toUni(d: ModRemoveComment): it.vercruysse.lemmyapi.datatypes.ModRemoveComment - fun toUni(d: ModRemoveCommentView): it.vercruysse.lemmyapi.datatypes.ModRemoveCommentView - fun toUni(d: ModRemoveCommunity): it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunity - fun toUni(d: ModRemoveCommunityView): it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunityView - fun toUni(d: ModRemovePost): it.vercruysse.lemmyapi.datatypes.ModRemovePost - fun toUni(d: ModRemovePostView): it.vercruysse.lemmyapi.datatypes.ModRemovePostView - fun toUni(d: ModTransferCommunity): it.vercruysse.lemmyapi.datatypes.ModTransferCommunity - fun toUni(d: ModTransferCommunityView): it.vercruysse.lemmyapi.datatypes.ModTransferCommunityView fun toUni(d: MyUserInfo): it.vercruysse.lemmyapi.datatypes.MyUserInfo fun toUni(d: Person): it.vercruysse.lemmyapi.datatypes.Person fun toUni(d: PersonView): it.vercruysse.lemmyapi.datatypes.PersonView @@ -168,7 +122,6 @@ internal interface MapperGenerator0x19x11 { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPost): GetPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPosts): GetPosts fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetRegistrationApplication): GetRegistrationApplication - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetReportCount): GetReportCount fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetSiteMetadata): GetSiteMetadata fun fromUni(d: it.vercruysse.lemmyapi.datatypes.HideCommunity): HideCommunity fun fromUni(d: it.vercruysse.lemmyapi.datatypes.HidePost): HidePost diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/FederatedInstanceView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/FederatedInstanceView.kt index 200b3c3c..f5e5db13 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/FederatedInstanceView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/FederatedInstanceView.kt @@ -1,7 +1,10 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable +@CommonParcelize @Serializable data class FederatedInstanceView( val instance: Instance, @@ -9,4 +12,4 @@ data class FederatedInstanceView( val queue_state: FederationQueueState? = null, val blocked: FederationBlockList? = null, val allowed: FederationAllowList? = null, -) +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/FederationAllowList.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/FederationAllowList.kt index 78f608f7..89e4c658 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/FederationAllowList.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/FederationAllowList.kt @@ -1,9 +1,12 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable +@CommonParcelize @Serializable data class FederationAllowList( val published_at: String, val updated_at: String? = null, -) +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommunityPendingFollowsResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommunityPendingFollowsResponse.kt deleted file mode 100644 index bdf49489..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommunityPendingFollowsResponse.kt +++ /dev/null @@ -1,13 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.CommonParcelize -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -@CommonParcelize -@Serializable -data class ListCommunityPendingFollowsResponse( - val items: List, - val next_page: PaginationCursor? = null, - val prev_page: PaginationCursor? = null, -): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonContent.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonContent.kt index 67d65e8f..316c9f1d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonContent.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonContent.kt @@ -2,7 +2,6 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.enums.ListingType import kotlinx.serialization.Serializable @CommonParcelize diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonSaved.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonSaved.kt index 8c5d3a67..3d89f50b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonSaved.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonSaved.kt @@ -2,7 +2,6 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.enums.ListingType import kotlinx.serialization.Serializable @CommonParcelize diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PagedResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PagedResponse.kt index 5fd4b981..0b120e3a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PagedResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PagedResponse.kt @@ -6,7 +6,7 @@ import kotlinx.serialization.Serializable @CommonParcelize @Serializable -data class PagedResponse( +data class PagedResponse( val items: List, val next_page: PaginationCursor? = null, val prev_page: PaginationCursor? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PublicOAuthProvider.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PublicOAuthProvider.kt index 57232f57..3f2e40a0 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PublicOAuthProvider.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PublicOAuthProvider.kt @@ -1,7 +1,10 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable +@CommonParcelize @Serializable data class PublicOAuthProvider( val id: OAuthProviderId, @@ -10,4 +13,4 @@ data class PublicOAuthProvider( val client_id: String, val scopes: String, val use_pkce: Boolean, -) +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt index bcd4bd71..d5030f55 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt @@ -359,26 +359,26 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba form: it.vercruysse.lemmyapi.datatypes.ListReports, ): Result> = when (form.type_) { - it.vercruysse.lemmyapi.dto.ReportType.Communities -> notSupported() - it.vercruysse.lemmyapi.dto.ReportType.Posts -> { + it.vercruysse.lemmyapi.enums.ReportType.Communities -> notSupported() + it.vercruysse.lemmyapi.enums.ReportType.Posts -> { apiV18.listPostReports(transformer.fromUniP(form)).map { resp -> PagedResponse(resp.post_reports.map(transformer::toUni)) } } - it.vercruysse.lemmyapi.dto.ReportType.Comments -> { + it.vercruysse.lemmyapi.enums.ReportType.Comments -> { apiV18.listCommentReports(transformer.fromUniC(form)).map { resp -> PagedResponse(resp.comment_reports.map(transformer::toUni)) } } - it.vercruysse.lemmyapi.dto.ReportType.PrivateMessages -> { + it.vercruysse.lemmyapi.enums.ReportType.PrivateMessages -> { apiV18.listPrivateMessageReports(transformer.fromUniPm(form)).map { resp -> PagedResponse(resp.private_message_reports.map(transformer::toUni)) } } - it.vercruysse.lemmyapi.dto.ReportType.All -> { + it.vercruysse.lemmyapi.enums.ReportType.All -> { runCatching { val postsResp = apiV18.listPostReports(transformer.fromUniP(form)).getOrThrow() val commentsResp = apiV18.listCommentReports(transformer.fromUniC(form)).getOrThrow() diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt index 66ed27a9..b3fe964a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt @@ -330,26 +330,26 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba form: it.vercruysse.lemmyapi.datatypes.ListReports, ): Result> = when (form.type_) { - it.vercruysse.lemmyapi.dto.ReportType.Communities -> notSupported() - it.vercruysse.lemmyapi.dto.ReportType.Posts -> { + it.vercruysse.lemmyapi.enums.ReportType.Communities -> notSupported() + it.vercruysse.lemmyapi.enums.ReportType.Posts -> { api.listPostReports(transformer.fromUniP(form)).map { resp -> PagedResponse(resp.post_reports.map(transformer::toUni)) } } - it.vercruysse.lemmyapi.dto.ReportType.Comments -> { + it.vercruysse.lemmyapi.enums.ReportType.Comments -> { api.listCommentReports(transformer.fromUniC(form)).map { resp -> PagedResponse(resp.comment_reports.map(transformer::toUni)) } } - it.vercruysse.lemmyapi.dto.ReportType.PrivateMessages -> { + it.vercruysse.lemmyapi.enums.ReportType.PrivateMessages -> { api.listPrivateMessageReports(transformer.fromUniPm(form)).map { resp -> PagedResponse(resp.private_message_reports.map(transformer::toUni)) } } - it.vercruysse.lemmyapi.dto.ReportType.All -> { + it.vercruysse.lemmyapi.enums.ReportType.All -> { runCatching { val postsResp = api.listPostReports(transformer.fromUniP(form)).getOrThrow() val commentsResp = api.listCommentReports(transformer.fromUniC(form)).getOrThrow() diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt index 251d2b35..3d2236bd 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt @@ -31,14 +31,6 @@ internal interface MapperGenerator { // GENERATED fun toUni(d: AddAdminResponse): it.vercruysse.lemmyapi.datatypes.AddAdminResponse fun toUni(d: AddModToCommunityResponse): it.vercruysse.lemmyapi.datatypes.AddModToCommunityResponse - fun toUni(d: AdminPurgeComment): it.vercruysse.lemmyapi.datatypes.AdminPurgeComment - fun toUni(d: AdminPurgeCommentView): it.vercruysse.lemmyapi.datatypes.AdminPurgeCommentView - fun toUni(d: AdminPurgeCommunity): it.vercruysse.lemmyapi.datatypes.AdminPurgeCommunity - fun toUni(d: AdminPurgeCommunityView): it.vercruysse.lemmyapi.datatypes.AdminPurgeCommunityView - fun toUni(d: AdminPurgePerson): it.vercruysse.lemmyapi.datatypes.AdminPurgePerson - fun toUni(d: AdminPurgePersonView): it.vercruysse.lemmyapi.datatypes.AdminPurgePersonView - fun toUni(d: AdminPurgePost): it.vercruysse.lemmyapi.datatypes.AdminPurgePost - fun toUni(d: AdminPurgePostView): it.vercruysse.lemmyapi.datatypes.AdminPurgePostView fun toUni(d: BanFromCommunityResponse): it.vercruysse.lemmyapi.datatypes.PersonResponse fun toUni(d: BanPersonResponse): it.vercruysse.lemmyapi.datatypes.PersonResponse fun toUni(d: BlockCommunityResponse): it.vercruysse.lemmyapi.datatypes.CommunityResponse @@ -59,7 +51,6 @@ internal interface MapperGenerator { fun toUni(d: CustomEmojiKeyword): it.vercruysse.lemmyapi.datatypes.CustomEmojiKeyword fun toUni(d: CustomEmojiResponse): it.vercruysse.lemmyapi.datatypes.CustomEmojiResponse fun toUni(d: CustomEmojiView): it.vercruysse.lemmyapi.datatypes.CustomEmojiView - fun toUni(d: FederatedInstances): it.vercruysse.lemmyapi.datatypes.FederatedInstances fun toUni(d: GenerateTotpSecretResponse): it.vercruysse.lemmyapi.datatypes.GenerateTotpSecretResponse fun toUni(d: GetCaptchaResponse): it.vercruysse.lemmyapi.datatypes.GetCaptchaResponse fun toUni(d: GetCommunityResponse): it.vercruysse.lemmyapi.datatypes.GetCommunityResponse @@ -75,28 +66,6 @@ internal interface MapperGenerator { fun toUni(d: LocalUserView): it.vercruysse.lemmyapi.datatypes.LocalUserView fun toUni(d: LoginResponse): it.vercruysse.lemmyapi.datatypes.LoginResponse fun toUni(d: LoginToken): it.vercruysse.lemmyapi.datatypes.LoginToken - fun toUni(d: ModAdd): it.vercruysse.lemmyapi.datatypes.AdminAdd - fun toUni(d: ModAddCommunity): it.vercruysse.lemmyapi.datatypes.ModAddToCommunity - fun toUni(d: ModAddCommunityView): it.vercruysse.lemmyapi.datatypes.ModAddToCommunityView - fun toUni(d: ModAddView): it.vercruysse.lemmyapi.datatypes.AdminAddView - fun toUni(d: ModBan): it.vercruysse.lemmyapi.datatypes.AdminBan - fun toUni(d: ModBanFromCommunity): it.vercruysse.lemmyapi.datatypes.ModBanFromCommunity - fun toUni(d: ModBanFromCommunityView): it.vercruysse.lemmyapi.datatypes.ModBanFromCommunityView - fun toUni(d: ModBanView): it.vercruysse.lemmyapi.datatypes.AdminBanView - fun toUni(d: ModFeaturePost): it.vercruysse.lemmyapi.datatypes.ModFeaturePost - fun toUni(d: ModFeaturePostView): it.vercruysse.lemmyapi.datatypes.ModFeaturePostView - fun toUni(d: ModHideCommunity): it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibility - fun toUni(d: ModHideCommunityView): it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibilityView - fun toUni(d: ModLockPost): it.vercruysse.lemmyapi.datatypes.ModLockPost - fun toUni(d: ModLockPostView): it.vercruysse.lemmyapi.datatypes.ModLockPostView - fun toUni(d: ModRemoveComment): it.vercruysse.lemmyapi.datatypes.ModRemoveComment - fun toUni(d: ModRemoveCommentView): it.vercruysse.lemmyapi.datatypes.ModRemoveCommentView - fun toUni(d: ModRemoveCommunity): it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunity - fun toUni(d: ModRemoveCommunityView): it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunityView - fun toUni(d: ModRemovePost): it.vercruysse.lemmyapi.datatypes.ModRemovePost - fun toUni(d: ModRemovePostView): it.vercruysse.lemmyapi.datatypes.ModRemovePostView - fun toUni(d: ModTransferCommunity): it.vercruysse.lemmyapi.datatypes.ModTransferCommunity - fun toUni(d: ModTransferCommunityView): it.vercruysse.lemmyapi.datatypes.ModTransferCommunityView fun toUni(d: MyUserInfo): it.vercruysse.lemmyapi.datatypes.MyUserInfo fun toUni(d: Person, counts: PersonAggregates): it.vercruysse.lemmyapi.datatypes.Person diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt index b93bb8c6..f3a663ba 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt @@ -4,7 +4,6 @@ import it.vercruysse.lemmyapi.datatypes.CommentActions import it.vercruysse.lemmyapi.datatypes.CommunityActions import it.vercruysse.lemmyapi.datatypes.MarkNotificationAsRead import it.vercruysse.lemmyapi.datatypes.Notification -import it.vercruysse.lemmyapi.datatypes.NotificationData import it.vercruysse.lemmyapi.datatypes.NotificationView import it.vercruysse.lemmyapi.datatypes.PersonActions import it.vercruysse.lemmyapi.datatypes.PostActions @@ -21,20 +20,6 @@ import it.vercruysse.lemmyapi.datatypes.AddAdmin as LemmyapiDatatypesAddAdmin import it.vercruysse.lemmyapi.datatypes.AddAdminResponse as LemmyapiDatatypesAddAdminResponse import it.vercruysse.lemmyapi.datatypes.AddModToCommunity as LemmyapiDatatypesAddModToCommunity import it.vercruysse.lemmyapi.datatypes.AddModToCommunityResponse as LemmyapiDatatypesAddModToCommunityResponse -import it.vercruysse.lemmyapi.datatypes.AdminAdd as LemmyapiDatatypesModAdd -import it.vercruysse.lemmyapi.datatypes.AdminAddView as LemmyapiDatatypesModAddView -import it.vercruysse.lemmyapi.datatypes.AdminBan as LemmyapiDatatypesModBan -import it.vercruysse.lemmyapi.datatypes.AdminBanView as LemmyapiDatatypesModBanView -import it.vercruysse.lemmyapi.datatypes.AdminPurgeComment as LemmyapiDatatypesAdminPurgeComment -import it.vercruysse.lemmyapi.datatypes.AdminPurgeCommentView as LemmyapiDatatypesAdminPurgeCommentView -import it.vercruysse.lemmyapi.datatypes.AdminPurgeCommunity as LemmyapiDatatypesAdminPurgeCommunity -import it.vercruysse.lemmyapi.datatypes.AdminPurgeCommunityView as LemmyapiDatatypesAdminPurgeCommunityView -import it.vercruysse.lemmyapi.datatypes.AdminPurgePerson as LemmyapiDatatypesAdminPurgePerson -import it.vercruysse.lemmyapi.datatypes.AdminPurgePersonView as LemmyapiDatatypesAdminPurgePersonView -import it.vercruysse.lemmyapi.datatypes.AdminPurgePost as LemmyapiDatatypesAdminPurgePost -import it.vercruysse.lemmyapi.datatypes.AdminPurgePostView as LemmyapiDatatypesAdminPurgePostView -import it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunity as LemmyapiDatatypesModRemoveCommunity -import it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunityView as LemmyapiDatatypesModRemoveCommunityView import it.vercruysse.lemmyapi.datatypes.ApproveRegistrationApplication as LemmyapiDatatypesApproveRegistrationApplication import it.vercruysse.lemmyapi.datatypes.BanFromCommunity as LemmyapiDatatypesBanFromCommunity import it.vercruysse.lemmyapi.datatypes.BanPerson as LemmyapiDatatypesBanPerson @@ -82,7 +67,6 @@ import it.vercruysse.lemmyapi.datatypes.EditPost as LemmyapiDatatypesEditPost import it.vercruysse.lemmyapi.datatypes.EditPrivateMessage as LemmyapiDatatypesEditPrivateMessage import it.vercruysse.lemmyapi.datatypes.EditSite as LemmyapiDatatypesEditSite import it.vercruysse.lemmyapi.datatypes.FeaturePost as LemmyapiDatatypesFeaturePost -import it.vercruysse.lemmyapi.datatypes.FederatedInstances as LemmyapiDatatypesFederatedInstances import it.vercruysse.lemmyapi.datatypes.FollowCommunity as LemmyapiDatatypesFollowCommunity import it.vercruysse.lemmyapi.datatypes.GenerateTotpSecretResponse as LemmyapiDatatypesGenerateTotpSecretResponse import it.vercruysse.lemmyapi.datatypes.GetCaptchaResponse as LemmyapiDatatypesGetCaptchaResponse @@ -115,22 +99,6 @@ import it.vercruysse.lemmyapi.datatypes.Login as LemmyapiDatatypesLogin import it.vercruysse.lemmyapi.datatypes.LoginResponse as LemmyapiDatatypesLoginResponse import it.vercruysse.lemmyapi.datatypes.LoginToken as LemmyapiDatatypesLoginToken import it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead as LemmyapiDatatypesMarkPostAsRead -import it.vercruysse.lemmyapi.datatypes.ModAddToCommunity as LemmyapiDatatypesModAddCommunity -import it.vercruysse.lemmyapi.datatypes.ModAddToCommunityView as LemmyapiDatatypesModAddCommunityView -import it.vercruysse.lemmyapi.datatypes.ModBanFromCommunity as LemmyapiDatatypesModBanFromCommunity -import it.vercruysse.lemmyapi.datatypes.ModBanFromCommunityView as LemmyapiDatatypesModBanFromCommunityView -import it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibility as LemmyapiDatatypesModChangeCommunityVisibility -import it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibilityView as LemmyapiDatatypesModChangeCommunityVisibilityView -import it.vercruysse.lemmyapi.datatypes.ModFeaturePost as LemmyapiDatatypesModFeaturePost -import it.vercruysse.lemmyapi.datatypes.ModFeaturePostView as LemmyapiDatatypesModFeaturePostView -import it.vercruysse.lemmyapi.datatypes.ModLockPost as LemmyapiDatatypesModLockPost -import it.vercruysse.lemmyapi.datatypes.ModLockPostView as LemmyapiDatatypesModLockPostView -import it.vercruysse.lemmyapi.datatypes.ModRemoveComment as LemmyapiDatatypesModRemoveComment -import it.vercruysse.lemmyapi.datatypes.ModRemoveCommentView as LemmyapiDatatypesModRemoveCommentView -import it.vercruysse.lemmyapi.datatypes.ModRemovePost as LemmyapiDatatypesModRemovePost -import it.vercruysse.lemmyapi.datatypes.ModRemovePostView as LemmyapiDatatypesModRemovePostView -import it.vercruysse.lemmyapi.datatypes.ModTransferCommunity as LemmyapiDatatypesModTransferCommunity -import it.vercruysse.lemmyapi.datatypes.ModTransferCommunityView as LemmyapiDatatypesModTransferCommunityView import it.vercruysse.lemmyapi.datatypes.MyUserInfo as LemmyapiDatatypesMyUserInfo import it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset as LemmyapiDatatypesPasswordChangeAfterReset import it.vercruysse.lemmyapi.datatypes.PasswordReset as LemmyapiDatatypesPasswordReset @@ -545,65 +513,6 @@ internal class Transformer : MapperGenerator { moderators = d.moderators.map { this.toUni(d = it) }, ) - override fun toUni(d: X0DatatypesAdminPurgeComment): LemmyapiDatatypesAdminPurgeComment = - LemmyapiDatatypesAdminPurgeComment( - id = d.id, - admin_person_id = d.admin_person_id, - post_id = d.post_id, - reason = d.reason ?: "", - published_at = d.when_, - ) - - override fun toUni(d: X0DatatypesAdminPurgeCommentView): LemmyapiDatatypesAdminPurgeCommentView = - LemmyapiDatatypesAdminPurgeCommentView( - admin_purge_comment = this.toUni(d = d.admin_purge_comment), - admin = d.admin?.let { this.toUni(d = it) }, - post = this.toUni(d = d.post, counts = X0DatatypesPostAggregates(-1, -1, -1, -1, -1, "")), - ) - - override fun toUni(d: X0DatatypesAdminPurgeCommunity): LemmyapiDatatypesAdminPurgeCommunity = - LemmyapiDatatypesAdminPurgeCommunity( - id = d.id, - admin_person_id = d.admin_person_id, - reason = d.reason ?: "", - published_at = d.when_, - ) - - override fun toUni(d: X0DatatypesAdminPurgeCommunityView): LemmyapiDatatypesAdminPurgeCommunityView = LemmyapiDatatypesAdminPurgeCommunityView( - admin_purge_community = this.toUni(d = d.admin_purge_community), - admin = d.admin?.let { this.toUni(d = it) }, - ) - - override fun toUni(d: X0DatatypesAdminPurgePerson): LemmyapiDatatypesAdminPurgePerson = - LemmyapiDatatypesAdminPurgePerson( - id = d.id, - admin_person_id = d.admin_person_id, - reason = d.reason ?: "", - published_at = d.when_, - ) - - override fun toUni(d: X0DatatypesAdminPurgePersonView): LemmyapiDatatypesAdminPurgePersonView = - LemmyapiDatatypesAdminPurgePersonView( - admin_purge_person = this.toUni(d = d.admin_purge_person), - admin = d.admin?.let { this.toUni(d = it) }, - ) - - override fun toUni(d: X0DatatypesAdminPurgePost): LemmyapiDatatypesAdminPurgePost = - LemmyapiDatatypesAdminPurgePost( - id = d.id, - admin_person_id = d.admin_person_id, - community_id = d.community_id, - reason = d.reason ?: "", - published_at = d.when_, - ) - - override fun toUni(d: X0DatatypesAdminPurgePostView): LemmyapiDatatypesAdminPurgePostView = - LemmyapiDatatypesAdminPurgePostView( - admin_purge_post = this.toUni(d = d.admin_purge_post), - admin = d.admin?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community, counts = X0DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), - ) - override fun toUni(d: X0DatatypesBanFromCommunityResponse): it.vercruysse.lemmyapi.datatypes.PersonResponse = it.vercruysse.lemmyapi.datatypes.PersonResponse(person_view = this.toUni(d = d.person_view)) @@ -611,7 +520,7 @@ internal class Transformer : MapperGenerator { it.vercruysse.lemmyapi.datatypes.PersonResponse(person_view = this.toUni(d = d.person_view)) override fun toUni(d: X0DatatypesBlockCommunityResponse): it.vercruysse.lemmyapi.datatypes.CommunityResponse = - it.vercruysse.lemmyapi.datatypes.CommunityResponse(community_view = this.toUni(d = d.community_view), moderators = emptyList()) + it.vercruysse.lemmyapi.datatypes.CommunityResponse(community_view = this.toUni(d = d.community_view), discussion_languages = emptyList()) override fun toUni(d: X0DatatypesBlockPersonResponse): it.vercruysse.lemmyapi.datatypes.PersonResponse = it.vercruysse.lemmyapi.datatypes.PersonResponse(person_view = this.toUni(d = d.person_view)) @@ -715,13 +624,6 @@ internal class Transformer : MapperGenerator { keywords = d.keywords.map { this.toUni(d = it) }, ) - override fun toUni(d: X0DatatypesFederatedInstances): LemmyapiDatatypesFederatedInstances = - LemmyapiDatatypesFederatedInstances( - linked = d.linked.map { this.toUni(d = it) }, - allowed = d.allowed.map { this.toUni(d = it) }, - blocked = d.blocked.map { this.toUni(d = it) }, - ) - override fun toUni(d: X0DatatypesGenerateTotpSecretResponse): LemmyapiDatatypesGenerateTotpSecretResponse = LemmyapiDatatypesGenerateTotpSecretResponse( totp_secret_url = d.totp_secret_url, ) @@ -766,9 +668,7 @@ internal class Transformer : MapperGenerator { kind = NotificationType.Reply, post_id = d.post.id, ), - data = NotificationData.Comment( - comment = this.toUniCV(d), - ), + data = this.toUniCV(d), ) fun toUniCV(d: X0DatatypesCommentReplyView): LemmyapiDatatypesCommentView = @@ -800,9 +700,7 @@ internal class Transformer : MapperGenerator { kind = NotificationType.Mention, post_id = d.post.id, ), - data = NotificationData.Comment( - comment = this.toUniPV(d), - ), + data = this.toUniPV(d), ) fun toUniPV(d: X0DatatypesPersonMentionView): LemmyapiDatatypesCommentView = @@ -832,9 +730,7 @@ internal class Transformer : MapperGenerator { published_at = d.private_message.published, kind = NotificationType.PrivateMessage, ), - data = NotificationData.PrivateMessage( - private_message = this.toUni(d), - ), + data = this.toUni(d), ) override fun toUni(d: X0DatatypesGetSiteMetadataResponse): LemmyapiDatatypesGetSiteMetadataResponse = LemmyapiDatatypesGetSiteMetadataResponse( @@ -948,203 +844,6 @@ internal class Transformer : MapperGenerator { user_agent = d.user_agent, ) - override fun toUni(d: X0DatatypesModAdd): LemmyapiDatatypesModAdd = LemmyapiDatatypesModAdd( - id = d.id, - mod_person_id = d.mod_person_id, - other_person_id = d.other_person_id, - removed = d.removed, - published_at = d.when_, - ) - - override fun toUni(d: X0DatatypesModAddCommunity): LemmyapiDatatypesModAddCommunity = - LemmyapiDatatypesModAddCommunity( - id = d.id, - mod_person_id = d.mod_person_id, - other_person_id = d.other_person_id, - community_id = d.community_id, - removed = d.removed, - published_at = d.when_, - ) - - override fun toUni(d: X0DatatypesModAddCommunityView): LemmyapiDatatypesModAddCommunityView = - LemmyapiDatatypesModAddCommunityView( - mod_add_to_community = this.toUni(d = d.mod_add_community), - moderator = d.moderator?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community, counts = X0DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), - other_person = this.toUni(d = d.modded_person), - ) - - override fun toUni(d: X0DatatypesModAddView): LemmyapiDatatypesModAddView = - LemmyapiDatatypesModAddView( - admin_add = this.toUni(d = d.mod_add), - moderator = d.moderator?.let { this.toUni(d = it) }, - other_person = this.toUni(d = d.modded_person), - ) - - override fun toUni(d: X0DatatypesModBan): LemmyapiDatatypesModBan = LemmyapiDatatypesModBan( - id = d.id, - mod_person_id = d.mod_person_id, - other_person_id = d.other_person_id, - reason = d.reason, - banned = d.banned, - expires_at = d.expires, - published_at = d.when_, - instance_id = -1, - ) - - override fun toUni(d: X0DatatypesModBanFromCommunity): LemmyapiDatatypesModBanFromCommunity = - LemmyapiDatatypesModBanFromCommunity( - id = d.id, - mod_person_id = d.mod_person_id, - other_person_id = d.other_person_id, - community_id = d.community_id, - reason = d.reason ?: "", - banned = d.banned, - expires_at = d.expires, - published_at = d.when_, - ) - - override fun toUni(d: X0DatatypesModBanFromCommunityView): LemmyapiDatatypesModBanFromCommunityView = LemmyapiDatatypesModBanFromCommunityView( - mod_ban_from_community = this.toUni(d = d.mod_ban_from_community), - moderator = d.moderator?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community, counts = X0DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), - other_person = this.toUni(d = d.banned_person), - ) - - override fun toUni(d: X0DatatypesModBanView): LemmyapiDatatypesModBanView = - LemmyapiDatatypesModBanView( - admin_ban = this.toUni(d = d.mod_ban), - moderator = d.moderator?.let { this.toUni(d = it) }, - other_person = this.toUni(d = d.banned_person), - ) - - override fun toUni(d: X0DatatypesModFeaturePost): LemmyapiDatatypesModFeaturePost = - LemmyapiDatatypesModFeaturePost( - id = d.id, - mod_person_id = d.mod_person_id, - post_id = d.post_id, - featured = d.featured, - published_at = d.when_, - is_featured_community = d.is_featured_community, - ) - - override fun toUni(d: X0DatatypesModFeaturePostView): LemmyapiDatatypesModFeaturePostView = - LemmyapiDatatypesModFeaturePostView( - mod_feature_post = this.toUni(d = d.mod_feature_post), - moderator = d.moderator?.let { this.toUni(d = it) }, - post = this.toUni(d = d.post, counts = X0DatatypesPostAggregates(-1, -1, -1, -1, -1, "")), - community = this.toUni(d = d.community, counts = X0DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), - ) - - override fun toUni(d: X0DatatypesModHideCommunity): LemmyapiDatatypesModChangeCommunityVisibility = - LemmyapiDatatypesModChangeCommunityVisibility( - id = d.id, - community_id = d.community_id, - mod_person_id = d.mod_person_id, - published_at = d.when_, - reason = d.reason, - visibility = if (d.hidden) { - CommunityVisibility.Unlisted - } else { - CommunityVisibility.Public - }, - ) - - override fun toUni(d: X0DatatypesModHideCommunityView): LemmyapiDatatypesModChangeCommunityVisibilityView = - LemmyapiDatatypesModChangeCommunityVisibilityView( - mod_change_community_visibility = this.toUni(d = d.mod_hide_community), - moderator = d.admin?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community, counts = X0DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), - ) - - override fun toUni(d: X0DatatypesModLockPost): LemmyapiDatatypesModLockPost = - LemmyapiDatatypesModLockPost( - id = d.id, - mod_person_id = d.mod_person_id, - post_id = d.post_id, - locked = d.locked, - published_at = d.when_, - reason = "", - ) - - override fun toUni(d: X0DatatypesModLockPostView): LemmyapiDatatypesModLockPostView = - LemmyapiDatatypesModLockPostView( - mod_lock_post = this.toUni(d = d.mod_lock_post), - moderator = d.moderator?.let { this.toUni(d = it) }, - post = this.toUni(d = d.post, counts = X0DatatypesPostAggregates(-1, -1, -1, -1, -1, "")), - community = this.toUni(d = d.community, counts = X0DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), - ) - - override fun toUni(d: X0DatatypesModRemoveComment): LemmyapiDatatypesModRemoveComment = - LemmyapiDatatypesModRemoveComment( - id = d.id, - mod_person_id = d.mod_person_id, - comment_id = d.comment_id, - reason = d.reason ?: "", - removed = d.removed, - published_at = d.when_, - ) - - override fun toUni(d: X0DatatypesModRemoveCommentView): LemmyapiDatatypesModRemoveCommentView = - LemmyapiDatatypesModRemoveCommentView( - mod_remove_comment = this.toUni(d = d.mod_remove_comment), - moderator = d.moderator?.let { this.toUni(d = it) }, - comment = this.toUni(d = d.comment, X0DatatypesCommentAggregates(-1, -1, -1, -1, "", -1)), - other_person = this.toUni(d = d.commenter), - post = this.toUni(d = d.post, counts = X0DatatypesPostAggregates(-1, -1, -1, -1, -1, "")), - community = this.toUni(d = d.community, counts = X0DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), - ) - - override fun toUni(d: X0DatatypesModRemoveCommunity): LemmyapiDatatypesModRemoveCommunity = - LemmyapiDatatypesModRemoveCommunity( - id = d.id, - mod_person_id = d.mod_person_id, - community_id = d.community_id, - reason = d.reason, - removed = d.removed, - published_at = d.when_, - ) - - override fun toUni(d: X0DatatypesModRemoveCommunityView): LemmyapiDatatypesModRemoveCommunityView = LemmyapiDatatypesModRemoveCommunityView( - admin_remove_community = this.toUni(d = d.mod_remove_community), - moderator = d.moderator?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community, counts = X0DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), - ) - - override fun toUni(d: X0DatatypesModRemovePost): LemmyapiDatatypesModRemovePost = - LemmyapiDatatypesModRemovePost( - id = d.id, - mod_person_id = d.mod_person_id, - post_id = d.post_id, - reason = d.reason ?: "", - removed = d.removed, - published_at = d.when_, - ) - - override fun toUni(d: X0DatatypesModRemovePostView): LemmyapiDatatypesModRemovePostView = - LemmyapiDatatypesModRemovePostView( - mod_remove_post = this.toUni(d = d.mod_remove_post), - moderator = d.moderator?.let { this.toUni(d = it) }, - post = this.toUni(d = d.post, counts = X0DatatypesPostAggregates(-1, -1, -1, -1, -1, "")), - community = this.toUni(d = d.community, counts = X0DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), - ) - - override fun toUni(d: X0DatatypesModTransferCommunity): LemmyapiDatatypesModTransferCommunity = - LemmyapiDatatypesModTransferCommunity( - id = d.id, - mod_person_id = d.mod_person_id, - other_person_id = d.other_person_id, - community_id = d.community_id, - published_at = d.when_, - ) - - override fun toUni(d: X0DatatypesModTransferCommunityView): LemmyapiDatatypesModTransferCommunityView = LemmyapiDatatypesModTransferCommunityView( - mod_transfer_community = this.toUni(d = d.mod_transfer_community), - moderator = d.moderator?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community, counts = X0DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), - other_person = this.toUni(d = d.modded_person), - ) - override fun toUni(d: X0DatatypesMyUserInfo): LemmyapiDatatypesMyUserInfo = LemmyapiDatatypesMyUserInfo( local_user_view = this.toUni(d = d.local_user_view), @@ -1308,7 +1007,6 @@ internal class Transformer : MapperGenerator { last_successful_published_time_at = d.last_successful_published_time, fail_count = d.fail_count, last_retry_at = d.last_retry, - next_retry_at = d.next_retry, ) override fun toUni(d: X0DatatypesRegistrationApplication): LemmyapiDatatypesRegistrationApplication = LemmyapiDatatypesRegistrationApplication( @@ -1632,10 +1330,10 @@ internal class Transformer : MapperGenerator { override fun fromUni(d: LemmyapiDatatypesEditCustomEmoji): X0DatatypesEditCustomEmoji = X0DatatypesEditCustomEmoji( id = d.id, - category = d.category, - image_url = d.image_url, - alt_text = d.alt_text, - keywords = d.keywords, + category = d.category ?: "", + image_url = d.image_url ?: "", + alt_text = d.alt_text ?: "", + keywords = d.keywords ?: emptyList(), ) override fun fromUni(d: LemmyapiDatatypesEditPost): X0DatatypesEditPost = X0DatatypesEditPost( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt index 9f0e8f0f..46dfb773 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt @@ -330,26 +330,26 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba form: it.vercruysse.lemmyapi.datatypes.ListReports, ): Result> = when (form.type_) { - it.vercruysse.lemmyapi.dto.ReportType.Communities -> notSupported() - it.vercruysse.lemmyapi.dto.ReportType.Posts -> { + it.vercruysse.lemmyapi.enums.ReportType.Communities -> notSupported() + it.vercruysse.lemmyapi.enums.ReportType.Posts -> { api.listPostReports(transformer.fromUniP(form)).map { resp -> PagedResponse(resp.post_reports.map(transformer::toUni)) } } - it.vercruysse.lemmyapi.dto.ReportType.Comments -> { + it.vercruysse.lemmyapi.enums.ReportType.Comments -> { api.listCommentReports(transformer.fromUniC(form)).map { resp -> PagedResponse(resp.comment_reports.map(transformer::toUni)) } } - it.vercruysse.lemmyapi.dto.ReportType.PrivateMessages -> { + it.vercruysse.lemmyapi.enums.ReportType.PrivateMessages -> { api.listPrivateMessageReports(transformer.fromUniPm(form)).map { resp -> PagedResponse(resp.private_message_reports.map(transformer::toUni)) } } - it.vercruysse.lemmyapi.dto.ReportType.All -> { + it.vercruysse.lemmyapi.enums.ReportType.All -> { runCatching { val postsResp = api.listPostReports(transformer.fromUniP(form)).getOrThrow() val commentsResp = api.listCommentReports(transformer.fromUniC(form)).getOrThrow() diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt index ea5d527e..16662e71 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt @@ -4,7 +4,6 @@ import it.vercruysse.lemmyapi.datatypes.CommentActions import it.vercruysse.lemmyapi.datatypes.CommunityActions import it.vercruysse.lemmyapi.datatypes.MarkNotificationAsRead import it.vercruysse.lemmyapi.datatypes.Notification -import it.vercruysse.lemmyapi.datatypes.NotificationData import it.vercruysse.lemmyapi.datatypes.NotificationView import it.vercruysse.lemmyapi.datatypes.PersonActions import it.vercruysse.lemmyapi.datatypes.PostActions @@ -19,20 +18,6 @@ import it.vercruysse.lemmyapi.datatypes.AddAdmin as LemmyapiDatatypesAddAdmin import it.vercruysse.lemmyapi.datatypes.AddAdminResponse as LemmyapiDatatypesAddAdminResponse import it.vercruysse.lemmyapi.datatypes.AddModToCommunity as LemmyapiDatatypesAddModToCommunity import it.vercruysse.lemmyapi.datatypes.AddModToCommunityResponse as LemmyapiDatatypesAddModToCommunityResponse -import it.vercruysse.lemmyapi.datatypes.AdminAdd as LemmyapiDatatypesModAdd -import it.vercruysse.lemmyapi.datatypes.AdminAddView as LemmyapiDatatypesModAddView -import it.vercruysse.lemmyapi.datatypes.AdminBan as LemmyapiDatatypesModBan -import it.vercruysse.lemmyapi.datatypes.AdminBanView as LemmyapiDatatypesModBanView -import it.vercruysse.lemmyapi.datatypes.AdminPurgeComment as LemmyapiDatatypesAdminPurgeComment -import it.vercruysse.lemmyapi.datatypes.AdminPurgeCommentView as LemmyapiDatatypesAdminPurgeCommentView -import it.vercruysse.lemmyapi.datatypes.AdminPurgeCommunity as LemmyapiDatatypesAdminPurgeCommunity -import it.vercruysse.lemmyapi.datatypes.AdminPurgeCommunityView as LemmyapiDatatypesAdminPurgeCommunityView -import it.vercruysse.lemmyapi.datatypes.AdminPurgePerson as LemmyapiDatatypesAdminPurgePerson -import it.vercruysse.lemmyapi.datatypes.AdminPurgePersonView as LemmyapiDatatypesAdminPurgePersonView -import it.vercruysse.lemmyapi.datatypes.AdminPurgePost as LemmyapiDatatypesAdminPurgePost -import it.vercruysse.lemmyapi.datatypes.AdminPurgePostView as LemmyapiDatatypesAdminPurgePostView -import it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunity as LemmyapiDatatypesModRemoveCommunity -import it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunityView as LemmyapiDatatypesModRemoveCommunityView import it.vercruysse.lemmyapi.datatypes.ApproveRegistrationApplication as LemmyapiDatatypesApproveRegistrationApplication import it.vercruysse.lemmyapi.datatypes.BanFromCommunity as LemmyapiDatatypesBanFromCommunity import it.vercruysse.lemmyapi.datatypes.BanPerson as LemmyapiDatatypesBanPerson @@ -80,7 +65,6 @@ import it.vercruysse.lemmyapi.datatypes.EditPost as LemmyapiDatatypesEditPost import it.vercruysse.lemmyapi.datatypes.EditPrivateMessage as LemmyapiDatatypesEditPrivateMessage import it.vercruysse.lemmyapi.datatypes.EditSite as LemmyapiDatatypesEditSite import it.vercruysse.lemmyapi.datatypes.FeaturePost as LemmyapiDatatypesFeaturePost -import it.vercruysse.lemmyapi.datatypes.FederatedInstances as LemmyapiDatatypesFederatedInstances import it.vercruysse.lemmyapi.datatypes.FollowCommunity as LemmyapiDatatypesFollowCommunity import it.vercruysse.lemmyapi.datatypes.GenerateTotpSecretResponse as LemmyapiDatatypesGenerateTotpSecretResponse import it.vercruysse.lemmyapi.datatypes.GetCaptchaResponse as LemmyapiDatatypesGetCaptchaResponse @@ -123,22 +107,6 @@ import it.vercruysse.lemmyapi.datatypes.Login as LemmyapiDatatypesLogin import it.vercruysse.lemmyapi.datatypes.LoginResponse as LemmyapiDatatypesLoginResponse import it.vercruysse.lemmyapi.datatypes.LoginToken as LemmyapiDatatypesLoginToken import it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead as LemmyapiDatatypesMarkPostAsRead -import it.vercruysse.lemmyapi.datatypes.ModAddToCommunity as LemmyapiDatatypesModAddCommunity -import it.vercruysse.lemmyapi.datatypes.ModAddToCommunityView as LemmyapiDatatypesModAddCommunityView -import it.vercruysse.lemmyapi.datatypes.ModBanFromCommunity as LemmyapiDatatypesModBanFromCommunity -import it.vercruysse.lemmyapi.datatypes.ModBanFromCommunityView as LemmyapiDatatypesModBanFromCommunityView -import it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibility as LemmyapiDatatypesModChangeCommunityVisibility -import it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibilityView as LemmyapiDatatypesModChangeCommunityVisibilityView -import it.vercruysse.lemmyapi.datatypes.ModFeaturePost as LemmyapiDatatypesModFeaturePost -import it.vercruysse.lemmyapi.datatypes.ModFeaturePostView as LemmyapiDatatypesModFeaturePostView -import it.vercruysse.lemmyapi.datatypes.ModLockPost as LemmyapiDatatypesModLockPost -import it.vercruysse.lemmyapi.datatypes.ModLockPostView as LemmyapiDatatypesModLockPostView -import it.vercruysse.lemmyapi.datatypes.ModRemoveComment as LemmyapiDatatypesModRemoveComment -import it.vercruysse.lemmyapi.datatypes.ModRemoveCommentView as LemmyapiDatatypesModRemoveCommentView -import it.vercruysse.lemmyapi.datatypes.ModRemovePost as LemmyapiDatatypesModRemovePost -import it.vercruysse.lemmyapi.datatypes.ModRemovePostView as LemmyapiDatatypesModRemovePostView -import it.vercruysse.lemmyapi.datatypes.ModTransferCommunity as LemmyapiDatatypesModTransferCommunity -import it.vercruysse.lemmyapi.datatypes.ModTransferCommunityView as LemmyapiDatatypesModTransferCommunityView import it.vercruysse.lemmyapi.datatypes.MyUserInfo as LemmyapiDatatypesMyUserInfo import it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset as LemmyapiDatatypesPasswordChangeAfterReset import it.vercruysse.lemmyapi.datatypes.PasswordReset as LemmyapiDatatypesPasswordReset @@ -193,14 +161,6 @@ import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.AddAdmin as X11DatatypesAddAd import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.AddAdminResponse as X11DatatypesAddAdminResponse import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.AddModToCommunity as X11DatatypesAddModToCommunity import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.AddModToCommunityResponse as X11DatatypesAddModToCommunityResponse -import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.AdminPurgeComment as X11DatatypesAdminPurgeComment -import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.AdminPurgeCommentView as X11DatatypesAdminPurgeCommentView -import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.AdminPurgeCommunity as X11DatatypesAdminPurgeCommunity -import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.AdminPurgeCommunityView as X11DatatypesAdminPurgeCommunityView -import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.AdminPurgePerson as X11DatatypesAdminPurgePerson -import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.AdminPurgePersonView as X11DatatypesAdminPurgePersonView -import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.AdminPurgePost as X11DatatypesAdminPurgePost -import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.AdminPurgePostView as X11DatatypesAdminPurgePostView import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.ApproveRegistrationApplication as X11DatatypesApproveRegistrationApplication import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.BanFromCommunity as X11DatatypesBanFromCommunity import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.BanFromCommunityResponse as X11DatatypesBanFromCommunityResponse @@ -256,7 +216,6 @@ import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.EditPost as X11DatatypesEditP import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.EditPrivateMessage as X11DatatypesEditPrivateMessage import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.EditSite as X11DatatypesEditSite import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.FeaturePost as X11DatatypesFeaturePost -import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.FederatedInstances as X11DatatypesFederatedInstances import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.FollowCommunity as X11DatatypesFollowCommunity import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.GenerateTotpSecretResponse as X11DatatypesGenerateTotpSecretResponse import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.GetCaptchaResponse as X11DatatypesGetCaptchaResponse @@ -268,14 +227,12 @@ import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.GetModlog as X11DatatypesGetM import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.GetPersonDetails as X11DatatypesGetPersonDetails import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.GetPersonDetailsResponse as X11DatatypesGetPersonDetailsResponse import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.GetPersonMentions as X11DatatypesGetPersonMentions -import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.GetPersonMentionsResponse as X11DatatypesGetPersonMentionsResponse import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.GetPost as X11DatatypesGetPost import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.GetPostResponse as X11DatatypesGetPostResponse import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.GetPosts as X11DatatypesGetPosts import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.GetPrivateMessages as X11DatatypesGetPrivateMessages import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.GetRegistrationApplication as X11DatatypesGetRegistrationApplication import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.GetReplies as X11DatatypesGetReplies -import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.GetRepliesResponse as X11DatatypesGetRepliesResponse import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.GetSiteMetadata as X11DatatypesGetSiteMetadata import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.GetSiteMetadataResponse as X11DatatypesGetSiteMetadataResponse import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.GetSiteResponse as X11DatatypesGetSiteResponse @@ -310,28 +267,6 @@ import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.MarkCommentReplyAsRead as X11 import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.MarkPersonMentionAsRead as X11DatatypesMarkPersonMentionAsRead import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.MarkPostAsRead as X11DatatypesMarkPostAsRead import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.MarkPrivateMessageAsRead as X11DatatypesMarkPrivateMessageAsRead -import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.ModAdd as X11DatatypesModAdd -import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.ModAddCommunity as X11DatatypesModAddCommunity -import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.ModAddCommunityView as X11DatatypesModAddCommunityView -import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.ModAddView as X11DatatypesModAddView -import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.ModBan as X11DatatypesModBan -import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.ModBanFromCommunity as X11DatatypesModBanFromCommunity -import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.ModBanFromCommunityView as X11DatatypesModBanFromCommunityView -import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.ModBanView as X11DatatypesModBanView -import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.ModFeaturePost as X11DatatypesModFeaturePost -import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.ModFeaturePostView as X11DatatypesModFeaturePostView -import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.ModHideCommunity as X11DatatypesModHideCommunity -import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.ModHideCommunityView as X11DatatypesModHideCommunityView -import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.ModLockPost as X11DatatypesModLockPost -import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.ModLockPostView as X11DatatypesModLockPostView -import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.ModRemoveComment as X11DatatypesModRemoveComment -import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.ModRemoveCommentView as X11DatatypesModRemoveCommentView -import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.ModRemoveCommunity as X11DatatypesModRemoveCommunity -import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.ModRemoveCommunityView as X11DatatypesModRemoveCommunityView -import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.ModRemovePost as X11DatatypesModRemovePost -import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.ModRemovePostView as X11DatatypesModRemovePostView -import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.ModTransferCommunity as X11DatatypesModTransferCommunity -import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.ModTransferCommunityView as X11DatatypesModTransferCommunityView import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.MyUserInfo as X11DatatypesMyUserInfo import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.PasswordChangeAfterReset as X11DatatypesPasswordChangeAfterReset import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.PasswordReset as X11DatatypesPasswordReset @@ -352,7 +287,6 @@ import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.PrivateMessageReportResponse import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.PrivateMessageReportView as X11DatatypesPrivateMessageReportView import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.PrivateMessageResponse as X11DatatypesPrivateMessageResponse import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.PrivateMessageView as X11DatatypesPrivateMessageView -import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.PrivateMessagesResponse as X11DatatypesPrivateMessagesResponse import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.PurgeComment as X11DatatypesPurgeComment import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.PurgeCommunity as X11DatatypesPurgeCommunity import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.PurgePerson as X11DatatypesPurgePerson @@ -397,65 +331,6 @@ internal class Transformer : MapperGenerator { moderators = d.moderators.map { this.toUni(d = it) }, ) - override fun toUni(d: X11DatatypesAdminPurgeComment): LemmyapiDatatypesAdminPurgeComment = - LemmyapiDatatypesAdminPurgeComment( - id = d.id, - admin_person_id = d.admin_person_id, - post_id = d.post_id, - reason = d.reason ?: "", - published_at = d.when_, - ) - - override fun toUni(d: X11DatatypesAdminPurgeCommentView): LemmyapiDatatypesAdminPurgeCommentView = - LemmyapiDatatypesAdminPurgeCommentView( - admin_purge_comment = this.toUni(d = d.admin_purge_comment), - admin = d.admin?.let { this.toUni(d = it) }, - post = this.toUni(d = d.post, counts = X11DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), - ) - - override fun toUni(d: X11DatatypesAdminPurgeCommunity): LemmyapiDatatypesAdminPurgeCommunity = - LemmyapiDatatypesAdminPurgeCommunity( - id = d.id, - admin_person_id = d.admin_person_id, - reason = d.reason ?: "", - published_at = d.when_, - ) - - override fun toUni(d: X11DatatypesAdminPurgeCommunityView): LemmyapiDatatypesAdminPurgeCommunityView = LemmyapiDatatypesAdminPurgeCommunityView( - admin_purge_community = this.toUni(d = d.admin_purge_community), - admin = d.admin?.let { this.toUni(d = it) }, - ) - - override fun toUni(d: X11DatatypesAdminPurgePerson): LemmyapiDatatypesAdminPurgePerson = - LemmyapiDatatypesAdminPurgePerson( - id = d.id, - admin_person_id = d.admin_person_id, - reason = d.reason ?: "", - published_at = d.when_, - ) - - override fun toUni(d: X11DatatypesAdminPurgePersonView): LemmyapiDatatypesAdminPurgePersonView = - LemmyapiDatatypesAdminPurgePersonView( - admin_purge_person = this.toUni(d = d.admin_purge_person), - admin = d.admin?.let { this.toUni(d = it) }, - ) - - override fun toUni(d: X11DatatypesAdminPurgePost): LemmyapiDatatypesAdminPurgePost = - LemmyapiDatatypesAdminPurgePost( - id = d.id, - admin_person_id = d.admin_person_id, - community_id = d.community_id, - reason = d.reason ?: "", - published_at = d.when_, - ) - - override fun toUni(d: X11DatatypesAdminPurgePostView): LemmyapiDatatypesAdminPurgePostView = - LemmyapiDatatypesAdminPurgePostView( - admin_purge_post = this.toUni(d = d.admin_purge_post), - admin = d.admin?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community, counts = X11DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), - ) - override fun toUni(d: X11DatatypesBanFromCommunityResponse): it.vercruysse.lemmyapi.datatypes.PersonResponse = it.vercruysse.lemmyapi.datatypes.PersonResponse(person_view = this.toUni(d = d.person_view)) @@ -463,7 +338,7 @@ internal class Transformer : MapperGenerator { it.vercruysse.lemmyapi.datatypes.PersonResponse(person_view = this.toUni(d = d.person_view)) override fun toUni(d: X11DatatypesBlockCommunityResponse): it.vercruysse.lemmyapi.datatypes.CommunityResponse = - it.vercruysse.lemmyapi.datatypes.CommunityResponse(community_view = this.toUni(d = d.community_view), moderators = emptyList()) + it.vercruysse.lemmyapi.datatypes.CommunityResponse(community_view = this.toUni(d = d.community_view), discussion_languages = emptyList()) override fun toUni(d: X11DatatypesBlockPersonResponse): it.vercruysse.lemmyapi.datatypes.PersonResponse = it.vercruysse.lemmyapi.datatypes.PersonResponse(person_view = this.toUni(d = d.person_view)) @@ -643,13 +518,6 @@ internal class Transformer : MapperGenerator { keywords = d.keywords.map { this.toUni(d = it) }, ) - override fun toUni(d: X11DatatypesFederatedInstances): LemmyapiDatatypesFederatedInstances = - LemmyapiDatatypesFederatedInstances( - linked = d.linked.map { this.toUni(d = it) }, - allowed = d.allowed.map { this.toUni(d = it) }, - blocked = d.blocked.map { this.toUni(d = it) }, - ) - override fun toUni(d: X11DatatypesGenerateTotpSecretResponse): LemmyapiDatatypesGenerateTotpSecretResponse = LemmyapiDatatypesGenerateTotpSecretResponse( totp_secret_url = d.totp_secret_url, ) @@ -695,9 +563,7 @@ internal class Transformer : MapperGenerator { kind = NotificationType.Reply, post_id = d.post.id, ), - data = NotificationData.Comment( - comment = this.toUniCV(d), - ), + data = this.toUniCV(d), ) fun toUniCV(d: X11DatatypesCommentReplyView): LemmyapiDatatypesCommentView = @@ -729,9 +595,7 @@ internal class Transformer : MapperGenerator { kind = NotificationType.Mention, post_id = d.post.id, ), - data = NotificationData.Comment( - comment = this.toUniPV(d), - ), + data = this.toUniPV(d), ) fun toUniPV(d: X11DatatypesPersonMentionView): LemmyapiDatatypesCommentView = @@ -761,9 +625,7 @@ internal class Transformer : MapperGenerator { published_at = d.private_message.published, kind = NotificationType.PrivateMessage, ), - data = NotificationData.PrivateMessage( - private_message = this.toUni(d), - ), + data = this.toUni(d), ) override fun toUni(d: X11DatatypesGetSiteMetadataResponse): LemmyapiDatatypesGetSiteMetadataResponse = LemmyapiDatatypesGetSiteMetadataResponse( @@ -979,203 +841,6 @@ internal class Transformer : MapperGenerator { user_agent = d.user_agent, ) - override fun toUni(d: X11DatatypesModAdd): LemmyapiDatatypesModAdd = LemmyapiDatatypesModAdd( - id = d.id, - mod_person_id = d.mod_person_id, - other_person_id = d.other_person_id, - removed = d.removed, - published_at = d.when_, - ) - - override fun toUni(d: X11DatatypesModAddCommunity): LemmyapiDatatypesModAddCommunity = - LemmyapiDatatypesModAddCommunity( - id = d.id, - mod_person_id = d.mod_person_id, - other_person_id = d.other_person_id, - community_id = d.community_id, - removed = d.removed, - published_at = d.when_, - ) - - override fun toUni(d: X11DatatypesModAddCommunityView): LemmyapiDatatypesModAddCommunityView = - LemmyapiDatatypesModAddCommunityView( - mod_add_to_community = this.toUni(d = d.mod_add_community), - moderator = d.moderator?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community, counts = X11DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), - other_person = this.toUni(d = d.modded_person), - ) - - override fun toUni(d: X11DatatypesModAddView): LemmyapiDatatypesModAddView = - LemmyapiDatatypesModAddView( - admin_add = this.toUni(d = d.mod_add), - moderator = d.moderator?.let { this.toUni(d = it) }, - other_person = this.toUni(d = d.modded_person), - ) - - override fun toUni(d: X11DatatypesModBan): LemmyapiDatatypesModBan = LemmyapiDatatypesModBan( - id = d.id, - mod_person_id = d.mod_person_id, - other_person_id = d.other_person_id, - reason = d.reason, - banned = d.banned, - expires_at = d.expires, - published_at = d.when_, - instance_id = -1, - ) - - override fun toUni(d: X11DatatypesModBanFromCommunity): LemmyapiDatatypesModBanFromCommunity = - LemmyapiDatatypesModBanFromCommunity( - id = d.id, - mod_person_id = d.mod_person_id, - other_person_id = d.other_person_id, - community_id = d.community_id, - reason = d.reason ?: "", - banned = d.banned, - expires_at = d.expires, - published_at = d.when_, - ) - - override fun toUni(d: X11DatatypesModBanFromCommunityView): LemmyapiDatatypesModBanFromCommunityView = LemmyapiDatatypesModBanFromCommunityView( - mod_ban_from_community = this.toUni(d = d.mod_ban_from_community), - moderator = d.moderator?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community, counts = X11DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), - other_person = this.toUni(d = d.banned_person), - ) - - override fun toUni(d: X11DatatypesModBanView): LemmyapiDatatypesModBanView = - LemmyapiDatatypesModBanView( - admin_ban = this.toUni(d = d.mod_ban), - moderator = d.moderator?.let { this.toUni(d = it) }, - other_person = this.toUni(d = d.banned_person), - ) - - override fun toUni(d: X11DatatypesModFeaturePost): LemmyapiDatatypesModFeaturePost = - LemmyapiDatatypesModFeaturePost( - id = d.id, - mod_person_id = d.mod_person_id, - post_id = d.post_id, - featured = d.featured, - published_at = d.when_, - is_featured_community = d.is_featured_community, - ) - - override fun toUni(d: X11DatatypesModFeaturePostView): LemmyapiDatatypesModFeaturePostView = - LemmyapiDatatypesModFeaturePostView( - mod_feature_post = this.toUni(d = d.mod_feature_post), - moderator = d.moderator?.let { this.toUni(d = it) }, - post = this.toUni(d = d.post, counts = X11DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), - community = this.toUni(d = d.community, counts = X11DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), - ) - - override fun toUni(d: X11DatatypesModHideCommunity): LemmyapiDatatypesModChangeCommunityVisibility = - LemmyapiDatatypesModChangeCommunityVisibility( - id = d.id, - community_id = d.community_id, - mod_person_id = d.mod_person_id, - published_at = d.when_, - reason = d.reason, - visibility = if (d.hidden) { - it.vercruysse.lemmyapi.dto.CommunityVisibility.Unlisted - } else { - it.vercruysse.lemmyapi.dto.CommunityVisibility.Public - }, - ) - - override fun toUni(d: X11DatatypesModHideCommunityView): LemmyapiDatatypesModChangeCommunityVisibilityView = - LemmyapiDatatypesModChangeCommunityVisibilityView( - mod_change_community_visibility = this.toUni(d = d.mod_hide_community), - moderator = d.admin?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community, counts = X11DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), - ) - - override fun toUni(d: X11DatatypesModLockPost): LemmyapiDatatypesModLockPost = - LemmyapiDatatypesModLockPost( - id = d.id, - mod_person_id = d.mod_person_id, - post_id = d.post_id, - locked = d.locked, - published_at = d.when_, - reason = "", - ) - - override fun toUni(d: X11DatatypesModLockPostView): LemmyapiDatatypesModLockPostView = - LemmyapiDatatypesModLockPostView( - mod_lock_post = this.toUni(d = d.mod_lock_post), - moderator = d.moderator?.let { this.toUni(d = it) }, - post = this.toUni(d = d.post, counts = X11DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), - community = this.toUni(d = d.community, counts = X11DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), - ) - - override fun toUni(d: X11DatatypesModRemoveComment): LemmyapiDatatypesModRemoveComment = - LemmyapiDatatypesModRemoveComment( - id = d.id, - mod_person_id = d.mod_person_id, - comment_id = d.comment_id, - reason = d.reason ?: "", - removed = d.removed, - published_at = d.when_, - ) - - override fun toUni(d: X11DatatypesModRemoveCommentView): LemmyapiDatatypesModRemoveCommentView = - LemmyapiDatatypesModRemoveCommentView( - mod_remove_comment = this.toUni(d = d.mod_remove_comment), - moderator = d.moderator?.let { this.toUni(d = it) }, - comment = this.toUni(d = d.comment, X11DatatypesCommentAggregates(-1, -1, -1, -1, "", -1)), - other_person = this.toUni(d = d.commenter), - post = this.toUni(d = d.post, counts = X11DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), - community = this.toUni(d = d.community, counts = X11DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), - ) - - override fun toUni(d: X11DatatypesModRemoveCommunity): LemmyapiDatatypesModRemoveCommunity = - LemmyapiDatatypesModRemoveCommunity( - id = d.id, - mod_person_id = d.mod_person_id, - community_id = d.community_id, - reason = d.reason, - removed = d.removed, - published_at = d.when_, - ) - - override fun toUni(d: X11DatatypesModRemoveCommunityView): LemmyapiDatatypesModRemoveCommunityView = LemmyapiDatatypesModRemoveCommunityView( - admin_remove_community = this.toUni(d = d.mod_remove_community), - moderator = d.moderator?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community, counts = X11DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), - ) - - override fun toUni(d: X11DatatypesModRemovePost): LemmyapiDatatypesModRemovePost = - LemmyapiDatatypesModRemovePost( - id = d.id, - mod_person_id = d.mod_person_id, - post_id = d.post_id, - reason = d.reason ?: "", - removed = d.removed, - published_at = d.when_, - ) - - override fun toUni(d: X11DatatypesModRemovePostView): LemmyapiDatatypesModRemovePostView = - LemmyapiDatatypesModRemovePostView( - mod_remove_post = this.toUni(d = d.mod_remove_post), - moderator = d.moderator?.let { this.toUni(d = it) }, - post = this.toUni(d = d.post, counts = X11DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), - community = this.toUni(d = d.community, counts = X11DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), - ) - - override fun toUni(d: X11DatatypesModTransferCommunity): LemmyapiDatatypesModTransferCommunity = - LemmyapiDatatypesModTransferCommunity( - id = d.id, - mod_person_id = d.mod_person_id, - other_person_id = d.other_person_id, - community_id = d.community_id, - published_at = d.when_, - ) - - override fun toUni(d: X11DatatypesModTransferCommunityView): LemmyapiDatatypesModTransferCommunityView = LemmyapiDatatypesModTransferCommunityView( - mod_transfer_community = this.toUni(d = d.mod_transfer_community), - moderator = d.moderator?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community, counts = X11DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), - other_person = this.toUni(d = d.modded_person), - ) - override fun toUni(d: X11DatatypesMyUserInfo): LemmyapiDatatypesMyUserInfo = LemmyapiDatatypesMyUserInfo( local_user_view = this.toUni(d = d.local_user_view), @@ -1375,7 +1040,6 @@ internal class Transformer : MapperGenerator { last_successful_published_time_at = d.last_successful_published_time, fail_count = d.fail_count, last_retry_at = d.last_retry, - next_retry_at = d.next_retry, ) override fun toUni(d: X11DatatypesRegistrationApplication): LemmyapiDatatypesRegistrationApplication = LemmyapiDatatypesRegistrationApplication( @@ -1717,10 +1381,10 @@ internal class Transformer : MapperGenerator { override fun fromUni(d: LemmyapiDatatypesEditCustomEmoji): X11DatatypesEditCustomEmoji = X11DatatypesEditCustomEmoji( id = d.id, - category = d.category, - image_url = d.image_url, - alt_text = d.alt_text, - keywords = d.keywords, + category = d.category ?: "", + image_url = d.image_url ?: "", + alt_text = d.alt_text ?: "", + keywords = d.keywords ?: emptyList(), ) override fun fromUni(d: LemmyapiDatatypesEditPost): X11DatatypesEditPost = X11DatatypesEditPost( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt index 7de45e76..d6c32c9f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt @@ -331,26 +331,26 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba form: it.vercruysse.lemmyapi.datatypes.ListReports, ): Result> = when (form.type_) { - it.vercruysse.lemmyapi.dto.ReportType.Communities -> notSupported() - it.vercruysse.lemmyapi.dto.ReportType.Posts -> { + it.vercruysse.lemmyapi.enums.ReportType.Communities -> notSupported() + it.vercruysse.lemmyapi.enums.ReportType.Posts -> { api.listPostReports(transformer.fromUniP(form)).map { resp -> PagedResponse(resp.post_reports.map(transformer::toUni)) } } - it.vercruysse.lemmyapi.dto.ReportType.Comments -> { + it.vercruysse.lemmyapi.enums.ReportType.Comments -> { api.listCommentReports(transformer.fromUniC(form)).map { resp -> PagedResponse(resp.comment_reports.map(transformer::toUni)) } } - it.vercruysse.lemmyapi.dto.ReportType.PrivateMessages -> { + it.vercruysse.lemmyapi.enums.ReportType.PrivateMessages -> { api.listPrivateMessageReports(transformer.fromUniPm(form)).map { resp -> PagedResponse(resp.private_message_reports.map(transformer::toUni)) } } - it.vercruysse.lemmyapi.dto.ReportType.All -> { + it.vercruysse.lemmyapi.enums.ReportType.All -> { runCatching { val postsResp = api.listPostReports(transformer.fromUniP(form)).getOrThrow() val commentsResp = api.listCommentReports(transformer.fromUniC(form)).getOrThrow() @@ -907,6 +907,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun logout(): Result = api.logout() + // TODO: readd these if possible /** * List a post's likes. Admin-only. * diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt index 85a4059d..549bbd00 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt @@ -27,14 +27,6 @@ internal interface MapperGenerator { // Generated fun toUni(d: AddAdminResponse): it.vercruysse.lemmyapi.datatypes.AddAdminResponse fun toUni(d: AddModToCommunityResponse): it.vercruysse.lemmyapi.datatypes.AddModToCommunityResponse - fun toUni(d: AdminPurgeComment): it.vercruysse.lemmyapi.datatypes.AdminPurgeComment - fun toUni(d: AdminPurgeCommentView): it.vercruysse.lemmyapi.datatypes.AdminPurgeCommentView - fun toUni(d: AdminPurgeCommunity): it.vercruysse.lemmyapi.datatypes.AdminPurgeCommunity - fun toUni(d: AdminPurgeCommunityView): it.vercruysse.lemmyapi.datatypes.AdminPurgeCommunityView - fun toUni(d: AdminPurgePerson): it.vercruysse.lemmyapi.datatypes.AdminPurgePerson - fun toUni(d: AdminPurgePersonView): it.vercruysse.lemmyapi.datatypes.AdminPurgePersonView - fun toUni(d: AdminPurgePost): it.vercruysse.lemmyapi.datatypes.AdminPurgePost - fun toUni(d: AdminPurgePostView): it.vercruysse.lemmyapi.datatypes.AdminPurgePostView fun toUni(d: BanFromCommunityResponse): it.vercruysse.lemmyapi.datatypes.PersonResponse fun toUni(d: BanPersonResponse): it.vercruysse.lemmyapi.datatypes.PersonResponse fun toUni(d: BlockCommunityResponse): it.vercruysse.lemmyapi.datatypes.CommunityResponse @@ -55,7 +47,6 @@ internal interface MapperGenerator { fun toUni(d: CustomEmojiKeyword): it.vercruysse.lemmyapi.datatypes.CustomEmojiKeyword fun toUni(d: CustomEmojiResponse): it.vercruysse.lemmyapi.datatypes.CustomEmojiResponse fun toUni(d: CustomEmojiView): it.vercruysse.lemmyapi.datatypes.CustomEmojiView - fun toUni(d: FederatedInstances): it.vercruysse.lemmyapi.datatypes.FederatedInstances fun toUni(d: GenerateTotpSecretResponse): it.vercruysse.lemmyapi.datatypes.GenerateTotpSecretResponse fun toUni(d: GetCaptchaResponse): it.vercruysse.lemmyapi.datatypes.GetCaptchaResponse fun toUni(d: GetCommunityResponse): it.vercruysse.lemmyapi.datatypes.GetCommunityResponse @@ -70,28 +61,6 @@ internal interface MapperGenerator { fun toUni(d: LocalUserView): it.vercruysse.lemmyapi.datatypes.LocalUserView fun toUni(d: LoginResponse): it.vercruysse.lemmyapi.datatypes.LoginResponse fun toUni(d: LoginToken): it.vercruysse.lemmyapi.datatypes.LoginToken - fun toUni(d: ModAdd): it.vercruysse.lemmyapi.datatypes.AdminAdd - fun toUni(d: ModAddCommunity): it.vercruysse.lemmyapi.datatypes.ModAddToCommunity - fun toUni(d: ModAddCommunityView): it.vercruysse.lemmyapi.datatypes.ModAddToCommunityView - fun toUni(d: ModAddView): it.vercruysse.lemmyapi.datatypes.AdminAddView - fun toUni(d: ModBan): it.vercruysse.lemmyapi.datatypes.AdminBan - fun toUni(d: ModBanFromCommunity): it.vercruysse.lemmyapi.datatypes.ModBanFromCommunity - fun toUni(d: ModBanFromCommunityView): it.vercruysse.lemmyapi.datatypes.ModBanFromCommunityView - fun toUni(d: ModBanView): it.vercruysse.lemmyapi.datatypes.AdminBanView - fun toUni(d: ModFeaturePost): it.vercruysse.lemmyapi.datatypes.ModFeaturePost - fun toUni(d: ModFeaturePostView): it.vercruysse.lemmyapi.datatypes.ModFeaturePostView - fun toUni(d: ModHideCommunity): it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibility - fun toUni(d: ModHideCommunityView): it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibilityView - fun toUni(d: ModLockPost): it.vercruysse.lemmyapi.datatypes.ModLockPost - fun toUni(d: ModLockPostView): it.vercruysse.lemmyapi.datatypes.ModLockPostView - fun toUni(d: ModRemoveComment): it.vercruysse.lemmyapi.datatypes.ModRemoveComment - fun toUni(d: ModRemoveCommentView): it.vercruysse.lemmyapi.datatypes.ModRemoveCommentView - fun toUni(d: ModRemoveCommunity): it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunity - fun toUni(d: ModRemoveCommunityView): it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunityView - fun toUni(d: ModRemovePost): it.vercruysse.lemmyapi.datatypes.ModRemovePost - fun toUni(d: ModRemovePostView): it.vercruysse.lemmyapi.datatypes.ModRemovePostView - fun toUni(d: ModTransferCommunity): it.vercruysse.lemmyapi.datatypes.ModTransferCommunity - fun toUni(d: ModTransferCommunityView): it.vercruysse.lemmyapi.datatypes.ModTransferCommunityView fun toUni(d: MyUserInfo): it.vercruysse.lemmyapi.datatypes.MyUserInfo fun toUni(d: Person, counts: PersonAggregates): it.vercruysse.lemmyapi.datatypes.Person diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt index 77e381e0..ccb14b6a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt @@ -5,7 +5,6 @@ import it.vercruysse.lemmyapi.datatypes.CommunityActions import it.vercruysse.lemmyapi.datatypes.LinkMetadata import it.vercruysse.lemmyapi.datatypes.MarkNotificationAsRead import it.vercruysse.lemmyapi.datatypes.Notification -import it.vercruysse.lemmyapi.datatypes.NotificationData import it.vercruysse.lemmyapi.datatypes.NotificationView import it.vercruysse.lemmyapi.datatypes.PersonActions import it.vercruysse.lemmyapi.datatypes.PostActions @@ -23,20 +22,6 @@ import it.vercruysse.lemmyapi.datatypes.AddAdmin as LemmyapiDatatypesAddAdmin import it.vercruysse.lemmyapi.datatypes.AddAdminResponse as LemmyapiDatatypesAddAdminResponse import it.vercruysse.lemmyapi.datatypes.AddModToCommunity as LemmyapiDatatypesAddModToCommunity import it.vercruysse.lemmyapi.datatypes.AddModToCommunityResponse as LemmyapiDatatypesAddModToCommunityResponse -import it.vercruysse.lemmyapi.datatypes.AdminAdd as LemmyapiDatatypesModAdd -import it.vercruysse.lemmyapi.datatypes.AdminAddView as LemmyapiDatatypesModAddView -import it.vercruysse.lemmyapi.datatypes.AdminBan as LemmyapiDatatypesModBan -import it.vercruysse.lemmyapi.datatypes.AdminBanView as LemmyapiDatatypesModBanView -import it.vercruysse.lemmyapi.datatypes.AdminPurgeComment as LemmyapiDatatypesAdminPurgeComment -import it.vercruysse.lemmyapi.datatypes.AdminPurgeCommentView as LemmyapiDatatypesAdminPurgeCommentView -import it.vercruysse.lemmyapi.datatypes.AdminPurgeCommunity as LemmyapiDatatypesAdminPurgeCommunity -import it.vercruysse.lemmyapi.datatypes.AdminPurgeCommunityView as LemmyapiDatatypesAdminPurgeCommunityView -import it.vercruysse.lemmyapi.datatypes.AdminPurgePerson as LemmyapiDatatypesAdminPurgePerson -import it.vercruysse.lemmyapi.datatypes.AdminPurgePersonView as LemmyapiDatatypesAdminPurgePersonView -import it.vercruysse.lemmyapi.datatypes.AdminPurgePost as LemmyapiDatatypesAdminPurgePost -import it.vercruysse.lemmyapi.datatypes.AdminPurgePostView as LemmyapiDatatypesAdminPurgePostView -import it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunity as LemmyapiDatatypesModRemoveCommunity -import it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunityView as LemmyapiDatatypesModRemoveCommunityView import it.vercruysse.lemmyapi.datatypes.ApproveRegistrationApplication as LemmyapiDatatypesApproveRegistrationApplication import it.vercruysse.lemmyapi.datatypes.BanFromCommunity as LemmyapiDatatypesBanFromCommunity import it.vercruysse.lemmyapi.datatypes.BanPerson as LemmyapiDatatypesBanPerson @@ -84,7 +69,6 @@ import it.vercruysse.lemmyapi.datatypes.EditPost as LemmyapiDatatypesEditPost import it.vercruysse.lemmyapi.datatypes.EditPrivateMessage as LemmyapiDatatypesEditPrivateMessage import it.vercruysse.lemmyapi.datatypes.EditSite as LemmyapiDatatypesEditSite import it.vercruysse.lemmyapi.datatypes.FeaturePost as LemmyapiDatatypesFeaturePost -import it.vercruysse.lemmyapi.datatypes.FederatedInstances as LemmyapiDatatypesFederatedInstances import it.vercruysse.lemmyapi.datatypes.FollowCommunity as LemmyapiDatatypesFollowCommunity import it.vercruysse.lemmyapi.datatypes.GenerateTotpSecretResponse as LemmyapiDatatypesGenerateTotpSecretResponse import it.vercruysse.lemmyapi.datatypes.GetCaptchaResponse as LemmyapiDatatypesGetCaptchaResponse @@ -119,22 +103,6 @@ import it.vercruysse.lemmyapi.datatypes.Login as LemmyapiDatatypesLogin import it.vercruysse.lemmyapi.datatypes.LoginResponse as LemmyapiDatatypesLoginResponse import it.vercruysse.lemmyapi.datatypes.LoginToken as LemmyapiDatatypesLoginToken import it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead as LemmyapiDatatypesMarkPostAsRead -import it.vercruysse.lemmyapi.datatypes.ModAddToCommunity as LemmyapiDatatypesModAddCommunity -import it.vercruysse.lemmyapi.datatypes.ModAddToCommunityView as LemmyapiDatatypesModAddCommunityView -import it.vercruysse.lemmyapi.datatypes.ModBanFromCommunity as LemmyapiDatatypesModBanFromCommunity -import it.vercruysse.lemmyapi.datatypes.ModBanFromCommunityView as LemmyapiDatatypesModBanFromCommunityView -import it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibility as LemmyapiDatatypesModChangeCommunityVisibility -import it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibilityView as LemmyapiDatatypesModChangeCommunityVisibilityView -import it.vercruysse.lemmyapi.datatypes.ModFeaturePost as LemmyapiDatatypesModFeaturePost -import it.vercruysse.lemmyapi.datatypes.ModFeaturePostView as LemmyapiDatatypesModFeaturePostView -import it.vercruysse.lemmyapi.datatypes.ModLockPost as LemmyapiDatatypesModLockPost -import it.vercruysse.lemmyapi.datatypes.ModLockPostView as LemmyapiDatatypesModLockPostView -import it.vercruysse.lemmyapi.datatypes.ModRemoveComment as LemmyapiDatatypesModRemoveComment -import it.vercruysse.lemmyapi.datatypes.ModRemoveCommentView as LemmyapiDatatypesModRemoveCommentView -import it.vercruysse.lemmyapi.datatypes.ModRemovePost as LemmyapiDatatypesModRemovePost -import it.vercruysse.lemmyapi.datatypes.ModRemovePostView as LemmyapiDatatypesModRemovePostView -import it.vercruysse.lemmyapi.datatypes.ModTransferCommunity as LemmyapiDatatypesModTransferCommunity -import it.vercruysse.lemmyapi.datatypes.ModTransferCommunityView as LemmyapiDatatypesModTransferCommunityView import it.vercruysse.lemmyapi.datatypes.MyUserInfo as LemmyapiDatatypesMyUserInfo import it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset as LemmyapiDatatypesPasswordChangeAfterReset import it.vercruysse.lemmyapi.datatypes.PasswordReset as LemmyapiDatatypesPasswordReset @@ -189,14 +157,6 @@ import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.AddAdmin as X3DatatypesAddAdmi import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.AddAdminResponse as X3DatatypesAddAdminResponse import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.AddModToCommunity as X3DatatypesAddModToCommunity import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.AddModToCommunityResponse as X3DatatypesAddModToCommunityResponse -import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.AdminPurgeComment as X3DatatypesAdminPurgeComment -import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.AdminPurgeCommentView as X3DatatypesAdminPurgeCommentView -import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.AdminPurgeCommunity as X3DatatypesAdminPurgeCommunity -import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.AdminPurgeCommunityView as X3DatatypesAdminPurgeCommunityView -import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.AdminPurgePerson as X3DatatypesAdminPurgePerson -import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.AdminPurgePersonView as X3DatatypesAdminPurgePersonView -import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.AdminPurgePost as X3DatatypesAdminPurgePost -import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.AdminPurgePostView as X3DatatypesAdminPurgePostView import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.ApproveRegistrationApplication as X3DatatypesApproveRegistrationApplication import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.BanFromCommunity as X3DatatypesBanFromCommunity import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.BanFromCommunityResponse as X3DatatypesBanFromCommunityResponse @@ -252,7 +212,6 @@ import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.EditPost as X3DatatypesEditPos import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.EditPrivateMessage as X3DatatypesEditPrivateMessage import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.EditSite as X3DatatypesEditSite import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.FeaturePost as X3DatatypesFeaturePost -import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.FederatedInstances as X3DatatypesFederatedInstances import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.FollowCommunity as X3DatatypesFollowCommunity import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.GenerateTotpSecretResponse as X3DatatypesGenerateTotpSecretResponse import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.GetCaptchaResponse as X3DatatypesGetCaptchaResponse @@ -295,28 +254,6 @@ import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.MarkCommentReplyAsRead as X3Da import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.MarkPersonMentionAsRead as X3DatatypesMarkPersonMentionAsRead import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.MarkPostAsRead as X3DatatypesMarkPostAsRead import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.MarkPrivateMessageAsRead as X3DatatypesMarkPrivateMessageAsRead -import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.ModAdd as X3DatatypesModAdd -import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.ModAddCommunity as X3DatatypesModAddCommunity -import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.ModAddCommunityView as X3DatatypesModAddCommunityView -import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.ModAddView as X3DatatypesModAddView -import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.ModBan as X3DatatypesModBan -import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.ModBanFromCommunity as X3DatatypesModBanFromCommunity -import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.ModBanFromCommunityView as X3DatatypesModBanFromCommunityView -import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.ModBanView as X3DatatypesModBanView -import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.ModFeaturePost as X3DatatypesModFeaturePost -import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.ModFeaturePostView as X3DatatypesModFeaturePostView -import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.ModHideCommunity as X3DatatypesModHideCommunity -import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.ModHideCommunityView as X3DatatypesModHideCommunityView -import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.ModLockPost as X3DatatypesModLockPost -import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.ModLockPostView as X3DatatypesModLockPostView -import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.ModRemoveComment as X3DatatypesModRemoveComment -import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.ModRemoveCommentView as X3DatatypesModRemoveCommentView -import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.ModRemoveCommunity as X3DatatypesModRemoveCommunity -import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.ModRemoveCommunityView as X3DatatypesModRemoveCommunityView -import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.ModRemovePost as X3DatatypesModRemovePost -import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.ModRemovePostView as X3DatatypesModRemovePostView -import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.ModTransferCommunity as X3DatatypesModTransferCommunity -import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.ModTransferCommunityView as X3DatatypesModTransferCommunityView import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.MyUserInfo as X3DatatypesMyUserInfo import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.PasswordChangeAfterReset as X3DatatypesPasswordChangeAfterReset import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.PasswordReset as X3DatatypesPasswordReset @@ -560,65 +497,6 @@ internal class Transformer : MapperGenerator { moderators = d.moderators.map { this.toUni(d = it) }, ) - override fun toUni(d: X3DatatypesAdminPurgeComment): LemmyapiDatatypesAdminPurgeComment = - LemmyapiDatatypesAdminPurgeComment( - id = d.id, - admin_person_id = d.admin_person_id, - post_id = d.post_id, - reason = d.reason ?: "", - published_at = d.when_, - ) - - override fun toUni(d: X3DatatypesAdminPurgeCommentView): LemmyapiDatatypesAdminPurgeCommentView = - LemmyapiDatatypesAdminPurgeCommentView( - admin_purge_comment = this.toUni(d = d.admin_purge_comment), - admin = d.admin?.let { this.toUni(d = it) }, - post = this.toUni(d = d.post, counts = X3DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), - ) - - override fun toUni(d: X3DatatypesAdminPurgeCommunity): LemmyapiDatatypesAdminPurgeCommunity = - LemmyapiDatatypesAdminPurgeCommunity( - id = d.id, - admin_person_id = d.admin_person_id, - reason = d.reason ?: "", - published_at = d.when_, - ) - - override fun toUni(d: X3DatatypesAdminPurgeCommunityView): LemmyapiDatatypesAdminPurgeCommunityView = LemmyapiDatatypesAdminPurgeCommunityView( - admin_purge_community = this.toUni(d = d.admin_purge_community), - admin = d.admin?.let { this.toUni(d = it) }, - ) - - override fun toUni(d: X3DatatypesAdminPurgePerson): LemmyapiDatatypesAdminPurgePerson = - LemmyapiDatatypesAdminPurgePerson( - id = d.id, - admin_person_id = d.admin_person_id, - reason = d.reason ?: "", - published_at = d.when_, - ) - - override fun toUni(d: X3DatatypesAdminPurgePersonView): LemmyapiDatatypesAdminPurgePersonView = - LemmyapiDatatypesAdminPurgePersonView( - admin_purge_person = this.toUni(d = d.admin_purge_person), - admin = d.admin?.let { this.toUni(d = it) }, - ) - - override fun toUni(d: X3DatatypesAdminPurgePost): LemmyapiDatatypesAdminPurgePost = - LemmyapiDatatypesAdminPurgePost( - id = d.id, - admin_person_id = d.admin_person_id, - community_id = d.community_id, - reason = d.reason ?: "", - published_at = d.when_, - ) - - override fun toUni(d: X3DatatypesAdminPurgePostView): LemmyapiDatatypesAdminPurgePostView = - LemmyapiDatatypesAdminPurgePostView( - admin_purge_post = this.toUni(d = d.admin_purge_post), - admin = d.admin?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community, counts = X3DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), - ) - override fun toUni(d: X3DatatypesBanFromCommunityResponse): it.vercruysse.lemmyapi.datatypes.PersonResponse = it.vercruysse.lemmyapi.datatypes.PersonResponse(person_view = this.toUni(d = d.person_view)) @@ -626,7 +504,7 @@ internal class Transformer : MapperGenerator { it.vercruysse.lemmyapi.datatypes.PersonResponse(person_view = this.toUni(d = d.person_view)) override fun toUni(d: X3DatatypesBlockCommunityResponse): it.vercruysse.lemmyapi.datatypes.CommunityResponse = - it.vercruysse.lemmyapi.datatypes.CommunityResponse(community_view = this.toUni(d = d.community_view), moderators = emptyList()) + it.vercruysse.lemmyapi.datatypes.CommunityResponse(community_view = this.toUni(d = d.community_view), discussion_languages = emptyList()) override fun toUni(d: X3DatatypesBlockPersonResponse): it.vercruysse.lemmyapi.datatypes.PersonResponse = it.vercruysse.lemmyapi.datatypes.PersonResponse(person_view = this.toUni(d = d.person_view)) @@ -730,13 +608,6 @@ internal class Transformer : MapperGenerator { keywords = d.keywords.map { this.toUni(d = it) }, ) - override fun toUni(d: X3DatatypesFederatedInstances): LemmyapiDatatypesFederatedInstances = - LemmyapiDatatypesFederatedInstances( - linked = d.linked.map { this.toUni(d = it) }, - allowed = d.allowed.map { this.toUni(d = it) }, - blocked = d.blocked.map { this.toUni(d = it) }, - ) - override fun toUni(d: X3DatatypesGenerateTotpSecretResponse): LemmyapiDatatypesGenerateTotpSecretResponse = LemmyapiDatatypesGenerateTotpSecretResponse( totp_secret_url = d.totp_secret_url, ) @@ -782,9 +653,7 @@ internal class Transformer : MapperGenerator { kind = NotificationType.Reply, post_id = d.post.id, ), - data = NotificationData.Comment( - comment = this.toUniCV(d), - ), + data =this.toUniCV(d), ) fun toUniCV(d: X3DatatypesCommentReplyView): LemmyapiDatatypesCommentView = @@ -816,9 +685,7 @@ internal class Transformer : MapperGenerator { kind = NotificationType.Mention, post_id = d.post.id, ), - data = NotificationData.Comment( - comment = this.toUniPV(d), - ), + data = this.toUniPV(d), ) fun toUniPV(d: X3DatatypesPersonMentionView): LemmyapiDatatypesCommentView = @@ -848,9 +715,7 @@ internal class Transformer : MapperGenerator { published_at = d.private_message.published, kind = NotificationType.PrivateMessage, ), - data = NotificationData.PrivateMessage( - private_message = this.toUni(d), - ), + data = this.toUni(d), ) override fun toUni(d: X3DatatypesGetSiteMetadataResponse): LemmyapiDatatypesGetSiteMetadataResponse = LemmyapiDatatypesGetSiteMetadataResponse( @@ -964,203 +829,6 @@ internal class Transformer : MapperGenerator { user_agent = d.user_agent, ) - override fun toUni(d: X3DatatypesModAdd): LemmyapiDatatypesModAdd = LemmyapiDatatypesModAdd( - id = d.id, - mod_person_id = d.mod_person_id, - other_person_id = d.other_person_id, - removed = d.removed, - published_at = d.when_, - ) - - override fun toUni(d: X3DatatypesModAddCommunity): LemmyapiDatatypesModAddCommunity = - LemmyapiDatatypesModAddCommunity( - id = d.id, - mod_person_id = d.mod_person_id, - other_person_id = d.other_person_id, - community_id = d.community_id, - removed = d.removed, - published_at = d.when_, - ) - - override fun toUni(d: X3DatatypesModAddCommunityView): LemmyapiDatatypesModAddCommunityView = - LemmyapiDatatypesModAddCommunityView( - mod_add_to_community = this.toUni(d = d.mod_add_community), - moderator = d.moderator?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community, counts = X3DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), - other_person = this.toUni(d = d.modded_person), - ) - - override fun toUni(d: X3DatatypesModAddView): LemmyapiDatatypesModAddView = - LemmyapiDatatypesModAddView( - admin_add = this.toUni(d = d.mod_add), - moderator = d.moderator?.let { this.toUni(d = it) }, - other_person = this.toUni(d = d.modded_person), - ) - - override fun toUni(d: X3DatatypesModBan): LemmyapiDatatypesModBan = LemmyapiDatatypesModBan( - id = d.id, - mod_person_id = d.mod_person_id, - other_person_id = d.other_person_id, - reason = d.reason, - banned = d.banned, - expires_at = d.expires, - published_at = d.when_, - instance_id = -1, - ) - - override fun toUni(d: X3DatatypesModBanFromCommunity): LemmyapiDatatypesModBanFromCommunity = - LemmyapiDatatypesModBanFromCommunity( - id = d.id, - mod_person_id = d.mod_person_id, - other_person_id = d.other_person_id, - community_id = d.community_id, - reason = d.reason ?: "", - banned = d.banned, - expires_at = d.expires, - published_at = d.when_, - ) - - override fun toUni(d: X3DatatypesModBanFromCommunityView): LemmyapiDatatypesModBanFromCommunityView = LemmyapiDatatypesModBanFromCommunityView( - mod_ban_from_community = this.toUni(d = d.mod_ban_from_community), - moderator = d.moderator?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community, counts = X3DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), - other_person = this.toUni(d = d.banned_person), - ) - - override fun toUni(d: X3DatatypesModBanView): LemmyapiDatatypesModBanView = - LemmyapiDatatypesModBanView( - admin_ban = this.toUni(d = d.mod_ban), - moderator = d.moderator?.let { this.toUni(d = it) }, - other_person = this.toUni(d = d.banned_person), - ) - - override fun toUni(d: X3DatatypesModFeaturePost): LemmyapiDatatypesModFeaturePost = - LemmyapiDatatypesModFeaturePost( - id = d.id, - mod_person_id = d.mod_person_id, - post_id = d.post_id, - featured = d.featured, - published_at = d.when_, - is_featured_community = d.is_featured_community, - ) - - override fun toUni(d: X3DatatypesModFeaturePostView): LemmyapiDatatypesModFeaturePostView = - LemmyapiDatatypesModFeaturePostView( - mod_feature_post = this.toUni(d = d.mod_feature_post), - moderator = d.moderator?.let { this.toUni(d = it) }, - post = this.toUni(d = d.post, counts = X3DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), - community = this.toUni(d = d.community, counts = X3DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), - ) - - override fun toUni(d: X3DatatypesModHideCommunity): LemmyapiDatatypesModChangeCommunityVisibility = - LemmyapiDatatypesModChangeCommunityVisibility( - id = d.id, - community_id = d.community_id, - mod_person_id = d.mod_person_id, - published_at = d.when_, - reason = d.reason, - visibility = if (d.hidden) { - CommunityVisibility.Unlisted - } else { - CommunityVisibility.Public - }, - ) - - override fun toUni(d: X3DatatypesModHideCommunityView): LemmyapiDatatypesModChangeCommunityVisibilityView = - LemmyapiDatatypesModChangeCommunityVisibilityView( - mod_change_community_visibility = this.toUni(d = d.mod_hide_community), - moderator = d.admin?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community, counts = X3DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), - ) - - override fun toUni(d: X3DatatypesModLockPost): LemmyapiDatatypesModLockPost = - LemmyapiDatatypesModLockPost( - id = d.id, - mod_person_id = d.mod_person_id, - post_id = d.post_id, - locked = d.locked, - published_at = d.when_, - reason = "", - ) - - override fun toUni(d: X3DatatypesModLockPostView): LemmyapiDatatypesModLockPostView = - LemmyapiDatatypesModLockPostView( - mod_lock_post = this.toUni(d = d.mod_lock_post), - moderator = d.moderator?.let { this.toUni(d = it) }, - post = this.toUni(d = d.post, counts = X3DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), - community = this.toUni(d = d.community, counts = X3DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), - ) - - override fun toUni(d: X3DatatypesModRemoveComment): LemmyapiDatatypesModRemoveComment = - LemmyapiDatatypesModRemoveComment( - id = d.id, - mod_person_id = d.mod_person_id, - comment_id = d.comment_id, - reason = d.reason ?: "", - removed = d.removed, - published_at = d.when_, - ) - - override fun toUni(d: X3DatatypesModRemoveCommentView): LemmyapiDatatypesModRemoveCommentView = - LemmyapiDatatypesModRemoveCommentView( - mod_remove_comment = this.toUni(d = d.mod_remove_comment), - moderator = d.moderator?.let { this.toUni(d = it) }, - comment = this.toUni(d = d.comment, X3DatatypesCommentAggregates(-1, -1, -1, -1, "", -1)), - other_person = this.toUni(d = d.commenter), - post = this.toUni(d = d.post, counts = X3DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), - community = this.toUni(d = d.community, counts = X3DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), - ) - - override fun toUni(d: X3DatatypesModRemoveCommunity): LemmyapiDatatypesModRemoveCommunity = - LemmyapiDatatypesModRemoveCommunity( - id = d.id, - mod_person_id = d.mod_person_id, - community_id = d.community_id, - reason = d.reason, - removed = d.removed, - published_at = d.when_, - ) - - override fun toUni(d: X3DatatypesModRemoveCommunityView): LemmyapiDatatypesModRemoveCommunityView = LemmyapiDatatypesModRemoveCommunityView( - admin_remove_community = this.toUni(d = d.mod_remove_community), - moderator = d.moderator?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community, counts = X3DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), - ) - - override fun toUni(d: X3DatatypesModRemovePost): LemmyapiDatatypesModRemovePost = - LemmyapiDatatypesModRemovePost( - id = d.id, - mod_person_id = d.mod_person_id, - post_id = d.post_id, - reason = d.reason ?: "", - removed = d.removed, - published_at = d.when_, - ) - - override fun toUni(d: X3DatatypesModRemovePostView): LemmyapiDatatypesModRemovePostView = - LemmyapiDatatypesModRemovePostView( - mod_remove_post = this.toUni(d = d.mod_remove_post), - moderator = d.moderator?.let { this.toUni(d = it) }, - post = this.toUni(d = d.post, counts = X3DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), - community = this.toUni(d = d.community, counts = X3DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), - ) - - override fun toUni(d: X3DatatypesModTransferCommunity): LemmyapiDatatypesModTransferCommunity = - LemmyapiDatatypesModTransferCommunity( - id = d.id, - mod_person_id = d.mod_person_id, - other_person_id = d.other_person_id, - community_id = d.community_id, - published_at = d.when_, - ) - - override fun toUni(d: X3DatatypesModTransferCommunityView): LemmyapiDatatypesModTransferCommunityView = LemmyapiDatatypesModTransferCommunityView( - mod_transfer_community = this.toUni(d = d.mod_transfer_community), - moderator = d.moderator?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community, counts = X3DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1)), - other_person = this.toUni(d = d.modded_person), - ) - override fun toUni(d: X3DatatypesMyUserInfo): LemmyapiDatatypesMyUserInfo = LemmyapiDatatypesMyUserInfo( local_user_view = this.toUni(d = d.local_user_view), @@ -1323,7 +991,6 @@ internal class Transformer : MapperGenerator { last_successful_published_time_at = d.last_successful_published_time, fail_count = d.fail_count, last_retry_at = d.last_retry, - next_retry_at = d.next_retry, ) override fun toUni(d: X3DatatypesRegistrationApplication): LemmyapiDatatypesRegistrationApplication = LemmyapiDatatypesRegistrationApplication( @@ -1647,10 +1314,10 @@ internal class Transformer : MapperGenerator { override fun fromUni(d: LemmyapiDatatypesEditCustomEmoji): X3DatatypesEditCustomEmoji = X3DatatypesEditCustomEmoji( id = d.id, - category = d.category, - image_url = d.image_url, - alt_text = d.alt_text, - keywords = d.keywords, + category = d.category ?: "", + image_url = d.image_url ?: "", + alt_text = d.alt_text ?: "", + keywords = d.keywords ?: emptyList(), ) override fun fromUni(d: LemmyapiDatatypesEditPost): X3DatatypesEditPost = X3DatatypesEditPost( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt index 8c0b7701..8e8f087d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt @@ -330,26 +330,26 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba form: it.vercruysse.lemmyapi.datatypes.ListReports, ): Result> = when (form.type_) { - it.vercruysse.lemmyapi.dto.ReportType.Communities -> notSupported() - it.vercruysse.lemmyapi.dto.ReportType.Posts -> { + it.vercruysse.lemmyapi.enums.ReportType.Communities -> notSupported() + it.vercruysse.lemmyapi.enums.ReportType.Posts -> { api.listPostReports(transformer.fromUniP(form)).map { resp -> PagedResponse(resp.post_reports.map(transformer::toUni)) } } - it.vercruysse.lemmyapi.dto.ReportType.Comments -> { + it.vercruysse.lemmyapi.enums.ReportType.Comments -> { api.listCommentReports(transformer.fromUniC(form)).map { resp -> PagedResponse(resp.comment_reports.map(transformer::toUni)) } } - it.vercruysse.lemmyapi.dto.ReportType.PrivateMessages -> { + it.vercruysse.lemmyapi.enums.ReportType.PrivateMessages -> { api.listPrivateMessageReports(transformer.fromUniPm(form)).map { resp -> PagedResponse(resp.private_message_reports.map(transformer::toUni)) } } - it.vercruysse.lemmyapi.dto.ReportType.All -> { + it.vercruysse.lemmyapi.enums.ReportType.All -> { runCatching { val postsResp = api.listPostReports(transformer.fromUniP(form)).getOrThrow() val commentsResp = api.listCommentReports(transformer.fromUniC(form)).getOrThrow() diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt index 7de5e7ad..e6c249e5 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt @@ -4,7 +4,6 @@ import it.vercruysse.lemmyapi.datatypes.CommentActions import it.vercruysse.lemmyapi.datatypes.CommunityActions import it.vercruysse.lemmyapi.datatypes.MarkNotificationAsRead import it.vercruysse.lemmyapi.datatypes.Notification -import it.vercruysse.lemmyapi.datatypes.NotificationData import it.vercruysse.lemmyapi.datatypes.NotificationView import it.vercruysse.lemmyapi.datatypes.PersonActions import it.vercruysse.lemmyapi.datatypes.PostActions @@ -19,20 +18,6 @@ import it.vercruysse.lemmyapi.datatypes.AddAdmin as LemmyapiDatatypesAddAdmin import it.vercruysse.lemmyapi.datatypes.AddAdminResponse as LemmyapiDatatypesAddAdminResponse import it.vercruysse.lemmyapi.datatypes.AddModToCommunity as LemmyapiDatatypesAddModToCommunity import it.vercruysse.lemmyapi.datatypes.AddModToCommunityResponse as LemmyapiDatatypesAddModToCommunityResponse -import it.vercruysse.lemmyapi.datatypes.AdminAdd as LemmyapiDatatypesModAdd -import it.vercruysse.lemmyapi.datatypes.AdminAddView as LemmyapiDatatypesModAddView -import it.vercruysse.lemmyapi.datatypes.AdminBan as LemmyapiDatatypesModBan -import it.vercruysse.lemmyapi.datatypes.AdminBanView as LemmyapiDatatypesModBanView -import it.vercruysse.lemmyapi.datatypes.AdminPurgeComment as LemmyapiDatatypesAdminPurgeComment -import it.vercruysse.lemmyapi.datatypes.AdminPurgeCommentView as LemmyapiDatatypesAdminPurgeCommentView -import it.vercruysse.lemmyapi.datatypes.AdminPurgeCommunity as LemmyapiDatatypesAdminPurgeCommunity -import it.vercruysse.lemmyapi.datatypes.AdminPurgeCommunityView as LemmyapiDatatypesAdminPurgeCommunityView -import it.vercruysse.lemmyapi.datatypes.AdminPurgePerson as LemmyapiDatatypesAdminPurgePerson -import it.vercruysse.lemmyapi.datatypes.AdminPurgePersonView as LemmyapiDatatypesAdminPurgePersonView -import it.vercruysse.lemmyapi.datatypes.AdminPurgePost as LemmyapiDatatypesAdminPurgePost -import it.vercruysse.lemmyapi.datatypes.AdminPurgePostView as LemmyapiDatatypesAdminPurgePostView -import it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunity as LemmyapiDatatypesModRemoveCommunity -import it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunityView as LemmyapiDatatypesModRemoveCommunityView import it.vercruysse.lemmyapi.datatypes.ApproveRegistrationApplication as LemmyapiDatatypesApproveRegistrationApplication import it.vercruysse.lemmyapi.datatypes.BanFromCommunity as LemmyapiDatatypesBanFromCommunity import it.vercruysse.lemmyapi.datatypes.BanPerson as LemmyapiDatatypesBanPerson @@ -80,7 +65,6 @@ import it.vercruysse.lemmyapi.datatypes.EditPost as LemmyapiDatatypesEditPost import it.vercruysse.lemmyapi.datatypes.EditPrivateMessage as LemmyapiDatatypesEditPrivateMessage import it.vercruysse.lemmyapi.datatypes.EditSite as LemmyapiDatatypesEditSite import it.vercruysse.lemmyapi.datatypes.FeaturePost as LemmyapiDatatypesFeaturePost -import it.vercruysse.lemmyapi.datatypes.FederatedInstances as LemmyapiDatatypesFederatedInstances import it.vercruysse.lemmyapi.datatypes.FollowCommunity as LemmyapiDatatypesFollowCommunity import it.vercruysse.lemmyapi.datatypes.GenerateTotpSecretResponse as LemmyapiDatatypesGenerateTotpSecretResponse import it.vercruysse.lemmyapi.datatypes.GetCaptchaResponse as LemmyapiDatatypesGetCaptchaResponse @@ -121,22 +105,6 @@ import it.vercruysse.lemmyapi.datatypes.Login as LemmyapiDatatypesLogin import it.vercruysse.lemmyapi.datatypes.LoginResponse as LemmyapiDatatypesLoginResponse import it.vercruysse.lemmyapi.datatypes.LoginToken as LemmyapiDatatypesLoginToken import it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead as LemmyapiDatatypesMarkPostAsRead -import it.vercruysse.lemmyapi.datatypes.ModAddToCommunity as LemmyapiDatatypesModAddCommunity -import it.vercruysse.lemmyapi.datatypes.ModAddToCommunityView as LemmyapiDatatypesModAddCommunityView -import it.vercruysse.lemmyapi.datatypes.ModBanFromCommunity as LemmyapiDatatypesModBanFromCommunity -import it.vercruysse.lemmyapi.datatypes.ModBanFromCommunityView as LemmyapiDatatypesModBanFromCommunityView -import it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibility as LemmyapiDatatypesModChangeCommunityVisibility -import it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibilityView as LemmyapiDatatypesModChangeCommunityVisibilityView -import it.vercruysse.lemmyapi.datatypes.ModFeaturePost as LemmyapiDatatypesModFeaturePost -import it.vercruysse.lemmyapi.datatypes.ModFeaturePostView as LemmyapiDatatypesModFeaturePostView -import it.vercruysse.lemmyapi.datatypes.ModLockPost as LemmyapiDatatypesModLockPost -import it.vercruysse.lemmyapi.datatypes.ModLockPostView as LemmyapiDatatypesModLockPostView -import it.vercruysse.lemmyapi.datatypes.ModRemoveComment as LemmyapiDatatypesModRemoveComment -import it.vercruysse.lemmyapi.datatypes.ModRemoveCommentView as LemmyapiDatatypesModRemoveCommentView -import it.vercruysse.lemmyapi.datatypes.ModRemovePost as LemmyapiDatatypesModRemovePost -import it.vercruysse.lemmyapi.datatypes.ModRemovePostView as LemmyapiDatatypesModRemovePostView -import it.vercruysse.lemmyapi.datatypes.ModTransferCommunity as LemmyapiDatatypesModTransferCommunity -import it.vercruysse.lemmyapi.datatypes.ModTransferCommunityView as LemmyapiDatatypesModTransferCommunityView import it.vercruysse.lemmyapi.datatypes.MyUserInfo as LemmyapiDatatypesMyUserInfo import it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset as LemmyapiDatatypesPasswordChangeAfterReset import it.vercruysse.lemmyapi.datatypes.PasswordReset as LemmyapiDatatypesPasswordReset @@ -191,14 +159,6 @@ import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.AddAdmin as X4DatatypesAddAdmi import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.AddAdminResponse as X4DatatypesAddAdminResponse import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.AddModToCommunity as X4DatatypesAddModToCommunity import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.AddModToCommunityResponse as X4DatatypesAddModToCommunityResponse -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.AdminPurgeComment as X4DatatypesAdminPurgeComment -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.AdminPurgeCommentView as X4DatatypesAdminPurgeCommentView -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.AdminPurgeCommunity as X4DatatypesAdminPurgeCommunity -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.AdminPurgeCommunityView as X4DatatypesAdminPurgeCommunityView -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.AdminPurgePerson as X4DatatypesAdminPurgePerson -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.AdminPurgePersonView as X4DatatypesAdminPurgePersonView -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.AdminPurgePost as X4DatatypesAdminPurgePost -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.AdminPurgePostView as X4DatatypesAdminPurgePostView import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.ApproveRegistrationApplication as X4DatatypesApproveRegistrationApplication import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.BanFromCommunity as X4DatatypesBanFromCommunity import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.BanFromCommunityResponse as X4DatatypesBanFromCommunityResponse @@ -254,7 +214,6 @@ import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.EditPost as X4DatatypesEditPos import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.EditPrivateMessage as X4DatatypesEditPrivateMessage import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.EditSite as X4DatatypesEditSite import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.FeaturePost as X4DatatypesFeaturePost -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.FederatedInstances as X4DatatypesFederatedInstances import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.FollowCommunity as X4DatatypesFollowCommunity import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.GenerateTotpSecretResponse as X4DatatypesGenerateTotpSecretResponse import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.GetCaptchaResponse as X4DatatypesGetCaptchaResponse @@ -272,6 +231,8 @@ import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.GetPosts as X4DatatypesGetPost import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.GetPrivateMessages as X4DatatypesGetPrivateMessages import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.GetReplies as X4DatatypesGetReplies import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.GetSiteMetadata as X4DatatypesGetSiteMetadata +import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.GetSiteResponse as X4DatatypesGetSiteResponse +import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.GetSiteMetadataResponse as X4DatatypesGetSiteMetadataResponse import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.HideCommunity as X4DatatypesHideCommunity import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.HidePost as X4DatatypesHidePost import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.Instance as X4DatatypesInstance @@ -302,28 +263,6 @@ import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.MarkCommentReplyAsRead as X4Da import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.MarkPersonMentionAsRead as X4DatatypesMarkPersonMentionAsRead import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.MarkPostAsRead as X4DatatypesMarkPostAsRead import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.MarkPrivateMessageAsRead as X4DatatypesMarkPrivateMessageAsRead -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.ModAdd as X4DatatypesModAdd -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.ModAddCommunity as X4DatatypesModAddCommunity -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.ModAddCommunityView as X4DatatypesModAddCommunityView -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.ModAddView as X4DatatypesModAddView -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.ModBan as X4DatatypesModBan -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.ModBanFromCommunity as X4DatatypesModBanFromCommunity -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.ModBanFromCommunityView as X4DatatypesModBanFromCommunityView -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.ModBanView as X4DatatypesModBanView -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.ModFeaturePost as X4DatatypesModFeaturePost -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.ModFeaturePostView as X4DatatypesModFeaturePostView -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.ModHideCommunity as X4DatatypesModHideCommunity -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.ModHideCommunityView as X4DatatypesModHideCommunityView -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.ModLockPost as X4DatatypesModLockPost -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.ModLockPostView as X4DatatypesModLockPostView -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.ModRemoveComment as X4DatatypesModRemoveComment -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.ModRemoveCommentView as X4DatatypesModRemoveCommentView -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.ModRemoveCommunity as X4DatatypesModRemoveCommunity -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.ModRemoveCommunityView as X4DatatypesModRemoveCommunityView -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.ModRemovePost as X4DatatypesModRemovePost -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.ModRemovePostView as X4DatatypesModRemovePostView -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.ModTransferCommunity as X4DatatypesModTransferCommunity -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.ModTransferCommunityView as X4DatatypesModTransferCommunityView import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.MyUserInfo as X4DatatypesMyUserInfo import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.PasswordChangeAfterReset as X4DatatypesPasswordChangeAfterReset import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.PasswordReset as X4DatatypesPasswordReset @@ -396,7 +335,7 @@ internal class Transformer : MapperGenerator { it.vercruysse.lemmyapi.datatypes.PersonResponse(person_view = this.toUni(d = d.person_view)) override fun toUni(d: X4DatatypesBlockCommunityResponse): it.vercruysse.lemmyapi.datatypes.CommunityResponse = - it.vercruysse.lemmyapi.datatypes.CommunityResponse(community_view = this.toUni(d = d.community_view), moderators = emptyList()) + it.vercruysse.lemmyapi.datatypes.CommunityResponse(community_view = this.toUni(d = d.community_view), discussion_languages = emptyList()) override fun toUni(d: X4DatatypesBlockPersonResponse): it.vercruysse.lemmyapi.datatypes.PersonResponse = it.vercruysse.lemmyapi.datatypes.PersonResponse(person_view = this.toUni(d = d.person_view)) @@ -547,7 +486,14 @@ internal class Transformer : MapperGenerator { community = this.toUni(d = d.community, d.counts), can_mod = false, tags = emptyList(), - community_actions = CommunityActions(null, CommunityFollowerState.from(d.subscribed), if (d.blocked) "" else null, null, if (d.banned_from_community) "" else null, if (d.banned_from_community) "" else null), + community_actions = CommunityActions( + null, + CommunityFollowerState.from(d.subscribed), + if (d.blocked) "" else null, + null, + if (d.banned_from_community) "" else null, + if (d.banned_from_community) "" else null + ), ) override fun toUni(d: X4DatatypesCustomEmoji): LemmyapiDatatypesCustomEmoji = @@ -578,13 +524,6 @@ internal class Transformer : MapperGenerator { keywords = d.keywords.map { this.toUni(d = it) }, ) - override fun toUni(d: X4DatatypesFederatedInstances): LemmyapiDatatypesFederatedInstances = - LemmyapiDatatypesFederatedInstances( - linked = d.linked.map { this.toUni(d = it) }, - allowed = d.allowed.map { this.toUni(d = it) }, - blocked = d.blocked.map { this.toUni(d = it) }, - ) - override fun toUni(d: X4DatatypesGenerateTotpSecretResponse): LemmyapiDatatypesGenerateTotpSecretResponse = LemmyapiDatatypesGenerateTotpSecretResponse( totp_secret_url = d.totp_secret_url, ) @@ -630,9 +569,7 @@ internal class Transformer : MapperGenerator { kind = NotificationType.Reply, post_id = d.post.id, ), - data = NotificationData.Comment( - comment = this.toUniCV(d), - ), + data = this.toUniCV(d), ) fun toUniCV(d: X4DatatypesCommentReplyView): LemmyapiDatatypesCommentView = @@ -664,9 +601,7 @@ internal class Transformer : MapperGenerator { kind = NotificationType.Mention, post_id = d.post.id, ), - data = NotificationData.Comment( - comment = this.toUniPV(d), - ), + data = this.toUniPV(d), ) fun toUniPV(d: X4DatatypesPersonMentionView): LemmyapiDatatypesCommentView = @@ -696,9 +631,7 @@ internal class Transformer : MapperGenerator { published_at = d.private_message.published, kind = NotificationType.PrivateMessage, ), - data = NotificationData.PrivateMessage( - private_message = this.toUni(d), - ), + data = this.toUni(d), ) override fun toUni(d: X4DatatypesGetSiteMetadataResponse): LemmyapiDatatypesGetSiteMetadataResponse = LemmyapiDatatypesGetSiteMetadataResponse( @@ -879,7 +812,7 @@ internal class Transformer : MapperGenerator { default_post_time_range_seconds = null, default_items_per_page = 20, - ) + ) override fun toUni(d: X4DatatypesLocalUserView): LemmyapiDatatypesLocalUserView = LemmyapiDatatypesLocalUserView( @@ -904,204 +837,6 @@ internal class Transformer : MapperGenerator { verify_email_sent = d.verify_email_sent, ) - override fun toUni(d: X4DatatypesModAdd): LemmyapiDatatypesModAdd = LemmyapiDatatypesModAdd( - id = d.id, - mod_person_id = d.mod_person_id, - other_person_id = d.other_person_id, - removed = d.removed, - published_at = d.when_, - ) - - override fun toUni(d: X4DatatypesModAddCommunity): LemmyapiDatatypesModAddCommunity = - LemmyapiDatatypesModAddCommunity( - id = d.id, - mod_person_id = d.mod_person_id, - other_person_id = d.other_person_id, - community_id = d.community_id, - removed = d.removed, - published_at = d.when_, - ) - - override fun toUni(d: X4DatatypesModAddCommunityView): LemmyapiDatatypesModAddCommunityView = - LemmyapiDatatypesModAddCommunityView( - mod_add_to_community = this.toUni(d = d.mod_add_community), - moderator = d.moderator?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community, counts = X4DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), - other_person = this.toUni(d = d.modded_person), - ) - - override fun toUni(d: X4DatatypesModAddView): LemmyapiDatatypesModAddView = - LemmyapiDatatypesModAddView( - admin_add = this.toUni(d = d.mod_add), - moderator = d.moderator?.let { this.toUni(d = it) }, - other_person = this.toUni(d = d.modded_person), - ) - - override fun toUni(d: X4DatatypesModBan): LemmyapiDatatypesModBan = LemmyapiDatatypesModBan( - id = d.id, - mod_person_id = d.mod_person_id, - other_person_id = d.other_person_id, - reason = d.reason, - banned = d.banned, - expires_at = d.expires, - published_at = d.when_, - instance_id = -1, - ) - - override fun toUni(d: X4DatatypesModBanFromCommunity): LemmyapiDatatypesModBanFromCommunity = - LemmyapiDatatypesModBanFromCommunity( - id = d.id, - mod_person_id = d.mod_person_id, - other_person_id = d.other_person_id, - community_id = d.community_id, - reason = d.reason ?: "", - banned = d.banned, - expires_at = d.expires, - published_at = d.when_, - ) - - override fun toUni(d: X4DatatypesModBanFromCommunityView): LemmyapiDatatypesModBanFromCommunityView = LemmyapiDatatypesModBanFromCommunityView( - mod_ban_from_community = this.toUni(d = d.mod_ban_from_community), - moderator = d.moderator?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community, counts = X4DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), - other_person = this.toUni(d = d.banned_person), - ) - - override fun toUni(d: X4DatatypesModBanView): LemmyapiDatatypesModBanView = - LemmyapiDatatypesModBanView( - admin_ban = this.toUni(d = d.mod_ban), - moderator = d.moderator?.let { this.toUni(d = it) }, - other_person = this.toUni(d = d.banned_person), - ) - - override fun toUni(d: X4DatatypesModFeaturePost): LemmyapiDatatypesModFeaturePost = - LemmyapiDatatypesModFeaturePost( - id = d.id, - mod_person_id = d.mod_person_id, - post_id = d.post_id, - featured = d.featured, - published_at = d.when_, - is_featured_community = d.is_featured_community, - ) - - override fun toUni(d: X4DatatypesModFeaturePostView): LemmyapiDatatypesModFeaturePostView = - LemmyapiDatatypesModFeaturePostView( - mod_feature_post = this.toUni(d = d.mod_feature_post), - moderator = d.moderator?.let { this.toUni(d = it) }, - post = this.toUni(d = d.post, counts = X4DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), - community = this.toUni(d = d.community, counts = X4DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), - ) - - override fun toUni(d: X4DatatypesModHideCommunity): LemmyapiDatatypesModChangeCommunityVisibility = - LemmyapiDatatypesModChangeCommunityVisibility( - id = d.id, - community_id = d.community_id, - mod_person_id = d.mod_person_id, - published_at = d.when_, - reason = d.reason, - visibility = if (d.hidden) { - it.vercruysse.lemmyapi.dto.CommunityVisibility.Unlisted - } else { - it.vercruysse.lemmyapi.dto.CommunityVisibility.Public - }, - ) - - override fun toUni(d: X4DatatypesModHideCommunityView): LemmyapiDatatypesModChangeCommunityVisibilityView = - LemmyapiDatatypesModChangeCommunityVisibilityView( - mod_change_community_visibility = this.toUni(d = d.mod_hide_community), - moderator = d.admin?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community, counts = X4DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), - ) - - override fun toUni(d: X4DatatypesModLockPost): LemmyapiDatatypesModLockPost = - LemmyapiDatatypesModLockPost( - id = d.id, - mod_person_id = d.mod_person_id, - post_id = d.post_id, - locked = d.locked, - published_at = d.when_, - reason = "", - ) - - override fun toUni(d: X4DatatypesModLockPostView): LemmyapiDatatypesModLockPostView = - LemmyapiDatatypesModLockPostView( - mod_lock_post = this.toUni(d = d.mod_lock_post), - moderator = d.moderator?.let { this.toUni(d = it) }, - post = this.toUni(d = d.post, counts = X4DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), - community = this.toUni(d = d.community, counts = X4DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), - ) - - override fun toUni(d: X4DatatypesModRemoveComment): LemmyapiDatatypesModRemoveComment = - LemmyapiDatatypesModRemoveComment( - id = d.id, - mod_person_id = d.mod_person_id, - comment_id = d.comment_id, - reason = d.reason ?: "", - removed = d.removed, - published_at = d.when_, - ) - - override fun toUni(d: X4DatatypesModRemoveCommentView): LemmyapiDatatypesModRemoveCommentView = - LemmyapiDatatypesModRemoveCommentView( - mod_remove_comment = this.toUni(d = d.mod_remove_comment), - moderator = d.moderator?.let { this.toUni(d = it) }, - comment = this.toUni(d = d.comment, X4DatatypesCommentAggregates(-1, -1, -1, -1, "", -1)), - other_person = this.toUni(d = d.commenter), - post = this.toUni(d = d.post, counts = X4DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), - community = this.toUni(d = d.community, counts = X4DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), - ) - - override fun toUni(d: X4DatatypesModRemoveCommunity): LemmyapiDatatypesModRemoveCommunity = - LemmyapiDatatypesModRemoveCommunity( - id = d.id, - mod_person_id = d.mod_person_id, - community_id = d.community_id, - reason = d.reason, - removed = d.removed, - published_at = d.when_, - ) - - override fun toUni(d: X4DatatypesModRemoveCommunityView): LemmyapiDatatypesModRemoveCommunityView = - LemmyapiDatatypesModRemoveCommunityView( - admin_remove_community = this.toUni(d = d.mod_remove_community), - moderator = d.moderator?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community, counts = X4DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), - ) - - override fun toUni(d: X4DatatypesModRemovePost): LemmyapiDatatypesModRemovePost = - LemmyapiDatatypesModRemovePost( - id = d.id, - mod_person_id = d.mod_person_id, - post_id = d.post_id, - reason = d.reason ?: "", - removed = d.removed, - published_at = d.when_, - ) - - override fun toUni(d: X4DatatypesModRemovePostView): LemmyapiDatatypesModRemovePostView = - LemmyapiDatatypesModRemovePostView( - mod_remove_post = this.toUni(d = d.mod_remove_post), - moderator = d.moderator?.let { this.toUni(d = it) }, - post = this.toUni(d = d.post, counts = X4DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), - community = this.toUni(d = d.community, counts = X4DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), - ) - - override fun toUni(d: X4DatatypesModTransferCommunity): LemmyapiDatatypesModTransferCommunity = - LemmyapiDatatypesModTransferCommunity( - id = d.id, - mod_person_id = d.mod_person_id, - other_person_id = d.other_person_id, - community_id = d.community_id, - published_at = d.when_, - ) - - override fun toUni(d: X4DatatypesModTransferCommunityView): LemmyapiDatatypesModTransferCommunityView = LemmyapiDatatypesModTransferCommunityView( - mod_transfer_community = this.toUni(d = d.mod_transfer_community), - moderator = d.moderator?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community, counts = X4DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), - other_person = this.toUni(d = d.modded_person), - ) - override fun toUni(d: X4DatatypesMyUserInfo): LemmyapiDatatypesMyUserInfo = LemmyapiDatatypesMyUserInfo( local_user_view = this.toUni(d = d.local_user_view), @@ -1300,7 +1035,6 @@ internal class Transformer : MapperGenerator { last_successful_published_time_at = d.last_successful_published_time, fail_count = d.fail_count, last_retry_at = d.last_retry, - next_retry_at = d.next_retry, ) override fun toUni(d: X4DatatypesRegistrationApplication): LemmyapiDatatypesRegistrationApplication = LemmyapiDatatypesRegistrationApplication( @@ -1639,10 +1373,10 @@ internal class Transformer : MapperGenerator { override fun fromUni(d: LemmyapiDatatypesEditCustomEmoji): X4DatatypesEditCustomEmoji = X4DatatypesEditCustomEmoji( id = d.id, - category = d.category, - image_url = d.image_url, - alt_text = d.alt_text, - keywords = d.keywords, + category = d.category ?: "", + image_url = d.image_url ?: "", + alt_text = d.alt_text ?: "", + keywords = d.keywords ?: emptyList(), ) override fun fromUni(d: LemmyapiDatatypesEditPost): X4DatatypesEditPost = X4DatatypesEditPost( @@ -1810,7 +1544,6 @@ internal class Transformer : MapperGenerator { ) - override fun fromUni(d: LemmyapiDatatypesGetSiteMetadata): X4DatatypesGetSiteMetadata = X4DatatypesGetSiteMetadata( url = d.url, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt index e6451de7..70d1dbb6 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt @@ -59,7 +59,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun getModlog( form: it.vercruysse.lemmyapi.datatypes.GetModlog, - ): Result> = notSupported() + ): Result> = notSupported() /** * Search lemmy. @@ -331,26 +331,26 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba form: it.vercruysse.lemmyapi.datatypes.ListReports, ): Result> = when (form.type_) { - it.vercruysse.lemmyapi.dto.ReportType.Communities -> notSupported() - it.vercruysse.lemmyapi.dto.ReportType.Posts -> { + it.vercruysse.lemmyapi.enums.ReportType.Communities -> notSupported() + it.vercruysse.lemmyapi.enums.ReportType.Posts -> { api.listPostReports(transformer.fromUniP(form)).map { resp -> PagedResponse(resp.post_reports.map(transformer::toUni)) } } - it.vercruysse.lemmyapi.dto.ReportType.Comments -> { + it.vercruysse.lemmyapi.enums.ReportType.Comments -> { api.listCommentReports(transformer.fromUniC(form)).map { resp -> PagedResponse(resp.comment_reports.map(transformer::toUni)) } } - it.vercruysse.lemmyapi.dto.ReportType.PrivateMessages -> { + it.vercruysse.lemmyapi.enums.ReportType.PrivateMessages -> { api.listPrivateMessageReports(transformer.fromUniPm(form)).map { resp -> PagedResponse(resp.private_message_reports.map(transformer::toUni)) } } - it.vercruysse.lemmyapi.dto.ReportType.All -> { + it.vercruysse.lemmyapi.enums.ReportType.All -> { runCatching { val postsResp = api.listPostReports(transformer.fromUniP(form)).getOrThrow() val commentsResp = api.listCommentReports(transformer.fromUniC(form)).getOrThrow() diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt index 57a7cec7..768795a8 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt @@ -4,7 +4,6 @@ import it.vercruysse.lemmyapi.datatypes.CommentActions import it.vercruysse.lemmyapi.datatypes.CommunityActions import it.vercruysse.lemmyapi.datatypes.MarkNotificationAsRead import it.vercruysse.lemmyapi.datatypes.Notification -import it.vercruysse.lemmyapi.datatypes.NotificationData import it.vercruysse.lemmyapi.datatypes.NotificationView import it.vercruysse.lemmyapi.datatypes.PersonActions import it.vercruysse.lemmyapi.datatypes.PostActions @@ -19,20 +18,6 @@ import it.vercruysse.lemmyapi.datatypes.AddAdmin as LemmyapiDatatypesAddAdmin import it.vercruysse.lemmyapi.datatypes.AddAdminResponse as LemmyapiDatatypesAddAdminResponse import it.vercruysse.lemmyapi.datatypes.AddModToCommunity as LemmyapiDatatypesAddModToCommunity import it.vercruysse.lemmyapi.datatypes.AddModToCommunityResponse as LemmyapiDatatypesAddModToCommunityResponse -import it.vercruysse.lemmyapi.datatypes.AdminAdd as LemmyapiDatatypesModAdd -import it.vercruysse.lemmyapi.datatypes.AdminAddView as LemmyapiDatatypesModAddView -import it.vercruysse.lemmyapi.datatypes.AdminBan as LemmyapiDatatypesModBan -import it.vercruysse.lemmyapi.datatypes.AdminBanView as LemmyapiDatatypesModBanView -import it.vercruysse.lemmyapi.datatypes.AdminPurgeComment as LemmyapiDatatypesAdminPurgeComment -import it.vercruysse.lemmyapi.datatypes.AdminPurgeCommentView as LemmyapiDatatypesAdminPurgeCommentView -import it.vercruysse.lemmyapi.datatypes.AdminPurgeCommunity as LemmyapiDatatypesAdminPurgeCommunity -import it.vercruysse.lemmyapi.datatypes.AdminPurgeCommunityView as LemmyapiDatatypesAdminPurgeCommunityView -import it.vercruysse.lemmyapi.datatypes.AdminPurgePerson as LemmyapiDatatypesAdminPurgePerson -import it.vercruysse.lemmyapi.datatypes.AdminPurgePersonView as LemmyapiDatatypesAdminPurgePersonView -import it.vercruysse.lemmyapi.datatypes.AdminPurgePost as LemmyapiDatatypesAdminPurgePost -import it.vercruysse.lemmyapi.datatypes.AdminPurgePostView as LemmyapiDatatypesAdminPurgePostView -import it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunity as LemmyapiDatatypesModRemoveCommunity -import it.vercruysse.lemmyapi.datatypes.AdminRemoveCommunityView as LemmyapiDatatypesModRemoveCommunityView import it.vercruysse.lemmyapi.datatypes.ApproveRegistrationApplication as LemmyapiDatatypesApproveRegistrationApplication import it.vercruysse.lemmyapi.datatypes.BanFromCommunity as LemmyapiDatatypesBanFromCommunity import it.vercruysse.lemmyapi.datatypes.BanPerson as LemmyapiDatatypesBanPerson @@ -80,7 +65,6 @@ import it.vercruysse.lemmyapi.datatypes.EditPost as LemmyapiDatatypesEditPost import it.vercruysse.lemmyapi.datatypes.EditPrivateMessage as LemmyapiDatatypesEditPrivateMessage import it.vercruysse.lemmyapi.datatypes.EditSite as LemmyapiDatatypesEditSite import it.vercruysse.lemmyapi.datatypes.FeaturePost as LemmyapiDatatypesFeaturePost -import it.vercruysse.lemmyapi.datatypes.FederatedInstances as LemmyapiDatatypesFederatedInstances import it.vercruysse.lemmyapi.datatypes.FollowCommunity as LemmyapiDatatypesFollowCommunity import it.vercruysse.lemmyapi.datatypes.GenerateTotpSecretResponse as LemmyapiDatatypesGenerateTotpSecretResponse import it.vercruysse.lemmyapi.datatypes.GetCaptchaResponse as LemmyapiDatatypesGetCaptchaResponse @@ -123,22 +107,6 @@ import it.vercruysse.lemmyapi.datatypes.Login as LemmyapiDatatypesLogin import it.vercruysse.lemmyapi.datatypes.LoginResponse as LemmyapiDatatypesLoginResponse import it.vercruysse.lemmyapi.datatypes.LoginToken as LemmyapiDatatypesLoginToken import it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead as LemmyapiDatatypesMarkPostAsRead -import it.vercruysse.lemmyapi.datatypes.ModAddToCommunity as LemmyapiDatatypesModAddCommunity -import it.vercruysse.lemmyapi.datatypes.ModAddToCommunityView as LemmyapiDatatypesModAddCommunityView -import it.vercruysse.lemmyapi.datatypes.ModBanFromCommunity as LemmyapiDatatypesModBanFromCommunity -import it.vercruysse.lemmyapi.datatypes.ModBanFromCommunityView as LemmyapiDatatypesModBanFromCommunityView -import it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibility as LemmyapiDatatypesModChangeCommunityVisibility -import it.vercruysse.lemmyapi.datatypes.ModChangeCommunityVisibilityView as LemmyapiDatatypesModChangeCommunityVisibilityView -import it.vercruysse.lemmyapi.datatypes.ModFeaturePost as LemmyapiDatatypesModFeaturePost -import it.vercruysse.lemmyapi.datatypes.ModFeaturePostView as LemmyapiDatatypesModFeaturePostView -import it.vercruysse.lemmyapi.datatypes.ModLockPost as LemmyapiDatatypesModLockPost -import it.vercruysse.lemmyapi.datatypes.ModLockPostView as LemmyapiDatatypesModLockPostView -import it.vercruysse.lemmyapi.datatypes.ModRemoveComment as LemmyapiDatatypesModRemoveComment -import it.vercruysse.lemmyapi.datatypes.ModRemoveCommentView as LemmyapiDatatypesModRemoveCommentView -import it.vercruysse.lemmyapi.datatypes.ModRemovePost as LemmyapiDatatypesModRemovePost -import it.vercruysse.lemmyapi.datatypes.ModRemovePostView as LemmyapiDatatypesModRemovePostView -import it.vercruysse.lemmyapi.datatypes.ModTransferCommunity as LemmyapiDatatypesModTransferCommunity -import it.vercruysse.lemmyapi.datatypes.ModTransferCommunityView as LemmyapiDatatypesModTransferCommunityView import it.vercruysse.lemmyapi.datatypes.MyUserInfo as LemmyapiDatatypesMyUserInfo import it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset as LemmyapiDatatypesPasswordChangeAfterReset import it.vercruysse.lemmyapi.datatypes.PasswordReset as LemmyapiDatatypesPasswordReset @@ -193,14 +161,6 @@ import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.AddAdmin as X6DatatypesAddAdmi import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.AddAdminResponse as X6DatatypesAddAdminResponse import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.AddModToCommunity as X6DatatypesAddModToCommunity import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.AddModToCommunityResponse as X6DatatypesAddModToCommunityResponse -import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.AdminPurgeComment as X6DatatypesAdminPurgeComment -import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.AdminPurgeCommentView as X6DatatypesAdminPurgeCommentView -import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.AdminPurgeCommunity as X6DatatypesAdminPurgeCommunity -import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.AdminPurgeCommunityView as X6DatatypesAdminPurgeCommunityView -import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.AdminPurgePerson as X6DatatypesAdminPurgePerson -import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.AdminPurgePersonView as X6DatatypesAdminPurgePersonView -import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.AdminPurgePost as X6DatatypesAdminPurgePost -import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.AdminPurgePostView as X6DatatypesAdminPurgePostView import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.ApproveRegistrationApplication as X6DatatypesApproveRegistrationApplication import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.BanFromCommunity as X6DatatypesBanFromCommunity import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.BanFromCommunityResponse as X6DatatypesBanFromCommunityResponse @@ -256,7 +216,6 @@ import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.EditPost as X6DatatypesEditPos import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.EditPrivateMessage as X6DatatypesEditPrivateMessage import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.EditSite as X6DatatypesEditSite import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.FeaturePost as X6DatatypesFeaturePost -import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.FederatedInstances as X6DatatypesFederatedInstances import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.FollowCommunity as X6DatatypesFollowCommunity import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.GenerateTotpSecretResponse as X6DatatypesGenerateTotpSecretResponse import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.GetCaptchaResponse as X6DatatypesGetCaptchaResponse @@ -268,14 +227,12 @@ import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.GetModlog as X6DatatypesGetMod import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.GetPersonDetails as X6DatatypesGetPersonDetails import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.GetPersonDetailsResponse as X6DatatypesGetPersonDetailsResponse import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.GetPersonMentions as X6DatatypesGetPersonMentions -import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.GetPersonMentionsResponse as X6DatatypesGetPersonMentionsResponse import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.GetPost as X6DatatypesGetPost import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.GetPostResponse as X6DatatypesGetPostResponse import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.GetPosts as X6DatatypesGetPosts import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.GetPrivateMessages as X6DatatypesGetPrivateMessages import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.GetRegistrationApplication as X6DatatypesGetRegistrationApplication import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.GetReplies as X6DatatypesGetReplies -import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.GetRepliesResponse as X6DatatypesGetRepliesResponse import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.GetSiteMetadata as X6DatatypesGetSiteMetadata import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.GetSiteMetadataResponse as X6DatatypesGetSiteMetadataResponse import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.GetSiteResponse as X6DatatypesGetSiteResponse @@ -310,28 +267,6 @@ import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.MarkCommentReplyAsRead as X6Da import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.MarkPersonMentionAsRead as X6DatatypesMarkPersonMentionAsRead import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.MarkPostAsRead as X6DatatypesMarkPostAsRead import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.MarkPrivateMessageAsRead as X6DatatypesMarkPrivateMessageAsRead -import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.ModAdd as X6DatatypesModAdd -import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.ModAddCommunity as X6DatatypesModAddCommunity -import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.ModAddCommunityView as X6DatatypesModAddCommunityView -import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.ModAddView as X6DatatypesModAddView -import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.ModBan as X6DatatypesModBan -import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.ModBanFromCommunity as X6DatatypesModBanFromCommunity -import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.ModBanFromCommunityView as X6DatatypesModBanFromCommunityView -import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.ModBanView as X6DatatypesModBanView -import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.ModFeaturePost as X6DatatypesModFeaturePost -import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.ModFeaturePostView as X6DatatypesModFeaturePostView -import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.ModHideCommunity as X6DatatypesModHideCommunity -import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.ModHideCommunityView as X6DatatypesModHideCommunityView -import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.ModLockPost as X6DatatypesModLockPost -import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.ModLockPostView as X6DatatypesModLockPostView -import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.ModRemoveComment as X6DatatypesModRemoveComment -import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.ModRemoveCommentView as X6DatatypesModRemoveCommentView -import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.ModRemoveCommunity as X6DatatypesModRemoveCommunity -import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.ModRemoveCommunityView as X6DatatypesModRemoveCommunityView -import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.ModRemovePost as X6DatatypesModRemovePost -import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.ModRemovePostView as X6DatatypesModRemovePostView -import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.ModTransferCommunity as X6DatatypesModTransferCommunity -import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.ModTransferCommunityView as X6DatatypesModTransferCommunityView import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.MyUserInfo as X6DatatypesMyUserInfo import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.PasswordChangeAfterReset as X6DatatypesPasswordChangeAfterReset import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.PasswordReset as X6DatatypesPasswordReset @@ -352,7 +287,6 @@ import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.PrivateMessageReportResponse a import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.PrivateMessageReportView as X6DatatypesPrivateMessageReportView import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.PrivateMessageResponse as X6DatatypesPrivateMessageResponse import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.PrivateMessageView as X6DatatypesPrivateMessageView -import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.PrivateMessagesResponse as X6DatatypesPrivateMessagesResponse import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.PurgeComment as X6DatatypesPurgeComment import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.PurgeCommunity as X6DatatypesPurgeCommunity import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.PurgePerson as X6DatatypesPurgePerson @@ -397,65 +331,6 @@ internal class Transformer : MapperGenerator { moderators = d.moderators.map { this.toUni(d = it) }, ) - override fun toUni(d: X6DatatypesAdminPurgeComment): LemmyapiDatatypesAdminPurgeComment = - LemmyapiDatatypesAdminPurgeComment( - id = d.id, - admin_person_id = d.admin_person_id, - post_id = d.post_id, - reason = d.reason ?: "", - published_at = d.when_, - ) - - override fun toUni(d: X6DatatypesAdminPurgeCommentView): LemmyapiDatatypesAdminPurgeCommentView = - LemmyapiDatatypesAdminPurgeCommentView( - admin_purge_comment = this.toUni(d = d.admin_purge_comment), - admin = d.admin?.let { this.toUni(d = it) }, - post = this.toUni(d = d.post, counts = X6DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), - ) - - override fun toUni(d: X6DatatypesAdminPurgeCommunity): LemmyapiDatatypesAdminPurgeCommunity = - LemmyapiDatatypesAdminPurgeCommunity( - id = d.id, - admin_person_id = d.admin_person_id, - reason = d.reason ?: "", - published_at = d.when_, - ) - - override fun toUni(d: X6DatatypesAdminPurgeCommunityView): LemmyapiDatatypesAdminPurgeCommunityView = LemmyapiDatatypesAdminPurgeCommunityView( - admin_purge_community = this.toUni(d = d.admin_purge_community), - admin = d.admin?.let { this.toUni(d = it) }, - ) - - override fun toUni(d: X6DatatypesAdminPurgePerson): LemmyapiDatatypesAdminPurgePerson = - LemmyapiDatatypesAdminPurgePerson( - id = d.id, - admin_person_id = d.admin_person_id, - reason = d.reason ?: "", - published_at = d.when_, - ) - - override fun toUni(d: X6DatatypesAdminPurgePersonView): LemmyapiDatatypesAdminPurgePersonView = - LemmyapiDatatypesAdminPurgePersonView( - admin_purge_person = this.toUni(d = d.admin_purge_person), - admin = d.admin?.let { this.toUni(d = it) }, - ) - - override fun toUni(d: X6DatatypesAdminPurgePost): LemmyapiDatatypesAdminPurgePost = - LemmyapiDatatypesAdminPurgePost( - id = d.id, - admin_person_id = d.admin_person_id, - community_id = d.community_id, - reason = d.reason ?: "", - published_at = d.when_, - ) - - override fun toUni(d: X6DatatypesAdminPurgePostView): LemmyapiDatatypesAdminPurgePostView = - LemmyapiDatatypesAdminPurgePostView( - admin_purge_post = this.toUni(d = d.admin_purge_post), - admin = d.admin?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community, counts = X6DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), - ) - override fun toUni(d: X6DatatypesBanFromCommunityResponse): it.vercruysse.lemmyapi.datatypes.PersonResponse = it.vercruysse.lemmyapi.datatypes.PersonResponse(person_view = this.toUni(d = d.person_view)) @@ -463,7 +338,7 @@ internal class Transformer : MapperGenerator { it.vercruysse.lemmyapi.datatypes.PersonResponse(person_view = this.toUni(d = d.person_view)) override fun toUni(d: X6DatatypesBlockCommunityResponse): it.vercruysse.lemmyapi.datatypes.CommunityResponse = - it.vercruysse.lemmyapi.datatypes.CommunityResponse(community_view = this.toUni(d = d.community_view), moderators = emptyList()) + it.vercruysse.lemmyapi.datatypes.CommunityResponse(community_view = this.toUni(d = d.community_view), discussion_languages = emptyList()) override fun toUni(d: X6DatatypesBlockPersonResponse): it.vercruysse.lemmyapi.datatypes.PersonResponse = it.vercruysse.lemmyapi.datatypes.PersonResponse(person_view = this.toUni(d = d.person_view)) @@ -644,13 +519,6 @@ internal class Transformer : MapperGenerator { keywords = d.keywords.map { this.toUni(d = it) }, ) - override fun toUni(d: X6DatatypesFederatedInstances): LemmyapiDatatypesFederatedInstances = - LemmyapiDatatypesFederatedInstances( - linked = d.linked.map { this.toUni(d = it) }, - allowed = d.allowed.map { this.toUni(d = it) }, - blocked = d.blocked.map { this.toUni(d = it) }, - ) - override fun toUni(d: X6DatatypesGenerateTotpSecretResponse): LemmyapiDatatypesGenerateTotpSecretResponse = LemmyapiDatatypesGenerateTotpSecretResponse( totp_secret_url = d.totp_secret_url, ) @@ -696,9 +564,7 @@ internal class Transformer : MapperGenerator { kind = NotificationType.Reply, post_id = d.post.id, ), - data = NotificationData.Comment( - comment = this.toUniCV(d), - ), + data = this.toUniCV(d), ) fun toUniCV(d: X6DatatypesCommentReplyView): LemmyapiDatatypesCommentView = @@ -730,9 +596,7 @@ internal class Transformer : MapperGenerator { kind = NotificationType.Mention, post_id = d.post.id, ), - data = NotificationData.Comment( - comment = this.toUniPV(d), - ), + data = this.toUniPV(d), ) fun toUniPV(d: X6DatatypesPersonMentionView): LemmyapiDatatypesCommentView = @@ -762,9 +626,7 @@ internal class Transformer : MapperGenerator { published_at = d.private_message.published, kind = NotificationType.PrivateMessage, ), - data = NotificationData.PrivateMessage( - private_message = this.toUni(d), - ), + data = this.toUni(d), ) override fun toUni(d: X6DatatypesGetSiteMetadataResponse): LemmyapiDatatypesGetSiteMetadataResponse = LemmyapiDatatypesGetSiteMetadataResponse( @@ -977,203 +839,6 @@ internal class Transformer : MapperGenerator { user_agent = d.user_agent, ) - override fun toUni(d: X6DatatypesModAdd): LemmyapiDatatypesModAdd = LemmyapiDatatypesModAdd( - id = d.id, - mod_person_id = d.mod_person_id, - other_person_id = d.other_person_id, - removed = d.removed, - published_at = d.when_, - ) - - override fun toUni(d: X6DatatypesModAddCommunity): LemmyapiDatatypesModAddCommunity = - LemmyapiDatatypesModAddCommunity( - id = d.id, - mod_person_id = d.mod_person_id, - other_person_id = d.other_person_id, - community_id = d.community_id, - removed = d.removed, - published_at = d.when_, - ) - - override fun toUni(d: X6DatatypesModAddCommunityView): LemmyapiDatatypesModAddCommunityView = - LemmyapiDatatypesModAddCommunityView( - mod_add_to_community = this.toUni(d = d.mod_add_community), - moderator = d.moderator?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community, counts = X6DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), - other_person = this.toUni(d = d.modded_person), - ) - - override fun toUni(d: X6DatatypesModAddView): LemmyapiDatatypesModAddView = - LemmyapiDatatypesModAddView( - admin_add = this.toUni(d = d.mod_add), - moderator = d.moderator?.let { this.toUni(d = it) }, - other_person = this.toUni(d = d.modded_person), - ) - - override fun toUni(d: X6DatatypesModBan): LemmyapiDatatypesModBan = LemmyapiDatatypesModBan( - id = d.id, - mod_person_id = d.mod_person_id, - other_person_id = d.other_person_id, - reason = d.reason, - banned = d.banned, - expires_at = d.expires, - published_at = d.when_, - instance_id = -1, - ) - - override fun toUni(d: X6DatatypesModBanFromCommunity): LemmyapiDatatypesModBanFromCommunity = - LemmyapiDatatypesModBanFromCommunity( - id = d.id, - mod_person_id = d.mod_person_id, - other_person_id = d.other_person_id, - community_id = d.community_id, - reason = d.reason ?: "", - banned = d.banned, - expires_at = d.expires, - published_at = d.when_, - ) - - override fun toUni(d: X6DatatypesModBanFromCommunityView): LemmyapiDatatypesModBanFromCommunityView = LemmyapiDatatypesModBanFromCommunityView( - mod_ban_from_community = this.toUni(d = d.mod_ban_from_community), - moderator = d.moderator?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community, counts = X6DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), - other_person = this.toUni(d = d.banned_person), - ) - - override fun toUni(d: X6DatatypesModBanView): LemmyapiDatatypesModBanView = - LemmyapiDatatypesModBanView( - admin_ban = this.toUni(d = d.mod_ban), - moderator = d.moderator?.let { this.toUni(d = it) }, - other_person = this.toUni(d = d.banned_person), - ) - - override fun toUni(d: X6DatatypesModFeaturePost): LemmyapiDatatypesModFeaturePost = - LemmyapiDatatypesModFeaturePost( - id = d.id, - mod_person_id = d.mod_person_id, - post_id = d.post_id, - featured = d.featured, - published_at = d.when_, - is_featured_community = d.is_featured_community, - ) - - override fun toUni(d: X6DatatypesModFeaturePostView): LemmyapiDatatypesModFeaturePostView = - LemmyapiDatatypesModFeaturePostView( - mod_feature_post = this.toUni(d = d.mod_feature_post), - moderator = d.moderator?.let { this.toUni(d = it) }, - post = this.toUni(d = d.post, counts = X6DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), - community = this.toUni(d = d.community, counts = X6DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), - ) - - override fun toUni(d: X6DatatypesModHideCommunity): LemmyapiDatatypesModChangeCommunityVisibility = - LemmyapiDatatypesModChangeCommunityVisibility( - id = d.id, - community_id = d.community_id, - mod_person_id = d.mod_person_id, - published_at = d.when_, - reason = d.reason, - visibility = if (d.hidden) { - it.vercruysse.lemmyapi.dto.CommunityVisibility.Unlisted - } else { - it.vercruysse.lemmyapi.dto.CommunityVisibility.Public - }, - ) - - override fun toUni(d: X6DatatypesModHideCommunityView): LemmyapiDatatypesModChangeCommunityVisibilityView = - LemmyapiDatatypesModChangeCommunityVisibilityView( - mod_change_community_visibility = this.toUni(d = d.mod_hide_community), - moderator = d.admin?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community, counts = X6DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), - ) - - override fun toUni(d: X6DatatypesModLockPost): LemmyapiDatatypesModLockPost = - LemmyapiDatatypesModLockPost( - id = d.id, - mod_person_id = d.mod_person_id, - post_id = d.post_id, - locked = d.locked, - published_at = d.when_, - reason = "", - ) - - override fun toUni(d: X6DatatypesModLockPostView): LemmyapiDatatypesModLockPostView = - LemmyapiDatatypesModLockPostView( - mod_lock_post = this.toUni(d = d.mod_lock_post), - moderator = d.moderator?.let { this.toUni(d = it) }, - post = this.toUni(d = d.post, counts = X6DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), - community = this.toUni(d = d.community, counts = X6DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), - ) - - override fun toUni(d: X6DatatypesModRemoveComment): LemmyapiDatatypesModRemoveComment = - LemmyapiDatatypesModRemoveComment( - id = d.id, - mod_person_id = d.mod_person_id, - comment_id = d.comment_id, - reason = d.reason ?: "", - removed = d.removed, - published_at = d.when_, - ) - - override fun toUni(d: X6DatatypesModRemoveCommentView): LemmyapiDatatypesModRemoveCommentView = - LemmyapiDatatypesModRemoveCommentView( - mod_remove_comment = this.toUni(d = d.mod_remove_comment), - moderator = d.moderator?.let { this.toUni(d = it) }, - comment = this.toUni(d = d.comment, X6DatatypesCommentAggregates(-1, -1, -1, -1, "", -1)), - other_person = this.toUni(d = d.commenter), - post = this.toUni(d = d.post, counts = X6DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), - community = this.toUni(d = d.community, counts = X6DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), - ) - - override fun toUni(d: X6DatatypesModRemoveCommunity): LemmyapiDatatypesModRemoveCommunity = - LemmyapiDatatypesModRemoveCommunity( - id = d.id, - mod_person_id = d.mod_person_id, - community_id = d.community_id, - reason = d.reason, - removed = d.removed, - published_at = d.when_, - ) - - override fun toUni(d: X6DatatypesModRemoveCommunityView): LemmyapiDatatypesModRemoveCommunityView = LemmyapiDatatypesModRemoveCommunityView( - admin_remove_community = this.toUni(d = d.mod_remove_community), - moderator = d.moderator?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community, counts = X6DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), - ) - - override fun toUni(d: X6DatatypesModRemovePost): LemmyapiDatatypesModRemovePost = - LemmyapiDatatypesModRemovePost( - id = d.id, - mod_person_id = d.mod_person_id, - post_id = d.post_id, - reason = d.reason ?: "", - removed = d.removed, - published_at = d.when_, - ) - - override fun toUni(d: X6DatatypesModRemovePostView): LemmyapiDatatypesModRemovePostView = - LemmyapiDatatypesModRemovePostView( - mod_remove_post = this.toUni(d = d.mod_remove_post), - moderator = d.moderator?.let { this.toUni(d = it) }, - post = this.toUni(d = d.post, counts = X6DatatypesPostAggregates(-1, -1, -1, -1, -1, "", "")), - community = this.toUni(d = d.community, counts = X6DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), - ) - - override fun toUni(d: X6DatatypesModTransferCommunity): LemmyapiDatatypesModTransferCommunity = - LemmyapiDatatypesModTransferCommunity( - id = d.id, - mod_person_id = d.mod_person_id, - other_person_id = d.other_person_id, - community_id = d.community_id, - published_at = d.when_, - ) - - override fun toUni(d: X6DatatypesModTransferCommunityView): LemmyapiDatatypesModTransferCommunityView = LemmyapiDatatypesModTransferCommunityView( - mod_transfer_community = this.toUni(d = d.mod_transfer_community), - moderator = d.moderator?.let { this.toUni(d = it) }, - community = this.toUni(d = d.community, counts = X6DatatypesCommunityAggregates(-1, -1, -1, -1, "", -1, -1, -1, -1, -1)), - other_person = this.toUni(d = d.modded_person), - ) - override fun toUni(d: X6DatatypesMyUserInfo): LemmyapiDatatypesMyUserInfo = LemmyapiDatatypesMyUserInfo( local_user_view = this.toUni(d = d.local_user_view), @@ -1372,7 +1037,6 @@ internal class Transformer : MapperGenerator { last_successful_published_time_at = d.last_successful_published_time, fail_count = d.fail_count, last_retry_at = d.last_retry, - next_retry_at = d.next_retry, ) override fun toUni(d: X6DatatypesRegistrationApplication): LemmyapiDatatypesRegistrationApplication = LemmyapiDatatypesRegistrationApplication( @@ -1711,10 +1375,10 @@ internal class Transformer : MapperGenerator { override fun fromUni(d: LemmyapiDatatypesEditCustomEmoji): X6DatatypesEditCustomEmoji = X6DatatypesEditCustomEmoji( id = d.id, - category = d.category, - image_url = d.image_url, - alt_text = d.alt_text, - keywords = d.keywords, + category = d.category ?: "", + image_url = d.image_url ?: "", + alt_text = d.alt_text ?: "", + keywords = d.keywords ?: emptyList(), ) override fun fromUni(d: LemmyapiDatatypesEditPost): X6DatatypesEditPost = X6DatatypesEditPost( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommunityPendingFollowsResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommunityPendingFollowsResponse.kt deleted file mode 100644 index bdf49489..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommunityPendingFollowsResponse.kt +++ /dev/null @@ -1,13 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.CommonParcelize -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -@CommonParcelize -@Serializable -data class ListCommunityPendingFollowsResponse( - val items: List, - val next_page: PaginationCursor? = null, - val prev_page: PaginationCursor? = null, -): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ResolveObjectResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ResolveObjectResponse.kt deleted file mode 100644 index c31145ea..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ResolveObjectResponse.kt +++ /dev/null @@ -1,17 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -// TODO: is removed - -@CommonParcelize -@Serializable -data class ResolveObjectResponse( - val comment: CommentView? = null, - val post: PostView? = null, - val community: CommunityView? = null, - val person: PersonView? = null, -) : DatatypeRoot From 0d9793e3467dffa24c8f55b632c345432537cba4 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Tue, 3 Mar 2026 20:33:49 +0100 Subject: [PATCH 039/110] Fix more changes --- .../lemmyapi/v0/x19/x0/Transformer.kt | 31 ------------------- 1 file changed, 31 deletions(-) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt index f3a663ba..e739bb5b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt @@ -152,14 +152,6 @@ import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.AddAdmin as X0DatatypesAddAdmi import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.AddAdminResponse as X0DatatypesAddAdminResponse import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.AddModToCommunity as X0DatatypesAddModToCommunity import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.AddModToCommunityResponse as X0DatatypesAddModToCommunityResponse -import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.AdminPurgeComment as X0DatatypesAdminPurgeComment -import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.AdminPurgeCommentView as X0DatatypesAdminPurgeCommentView -import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.AdminPurgeCommunity as X0DatatypesAdminPurgeCommunity -import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.AdminPurgeCommunityView as X0DatatypesAdminPurgeCommunityView -import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.AdminPurgePerson as X0DatatypesAdminPurgePerson -import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.AdminPurgePersonView as X0DatatypesAdminPurgePersonView -import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.AdminPurgePost as X0DatatypesAdminPurgePost -import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.AdminPurgePostView as X0DatatypesAdminPurgePostView import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.ApproveRegistrationApplication as X0DatatypesApproveRegistrationApplication import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.BanFromCommunity as X0DatatypesBanFromCommunity import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.BanFromCommunityResponse as X0DatatypesBanFromCommunityResponse @@ -258,28 +250,6 @@ import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.MarkCommentReplyAsRead as X0Da import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.MarkPersonMentionAsRead as X0DatatypesMarkPersonMentionAsRead import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.MarkPostAsRead as X0DatatypesMarkPostAsRead import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.MarkPrivateMessageAsRead as X0DatatypesMarkPrivateMessageAsRead -import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.ModAdd as X0DatatypesModAdd -import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.ModAddCommunity as X0DatatypesModAddCommunity -import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.ModAddCommunityView as X0DatatypesModAddCommunityView -import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.ModAddView as X0DatatypesModAddView -import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.ModBan as X0DatatypesModBan -import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.ModBanFromCommunity as X0DatatypesModBanFromCommunity -import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.ModBanFromCommunityView as X0DatatypesModBanFromCommunityView -import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.ModBanView as X0DatatypesModBanView -import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.ModFeaturePost as X0DatatypesModFeaturePost -import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.ModFeaturePostView as X0DatatypesModFeaturePostView -import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.ModHideCommunity as X0DatatypesModHideCommunity -import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.ModHideCommunityView as X0DatatypesModHideCommunityView -import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.ModLockPost as X0DatatypesModLockPost -import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.ModLockPostView as X0DatatypesModLockPostView -import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.ModRemoveComment as X0DatatypesModRemoveComment -import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.ModRemoveCommentView as X0DatatypesModRemoveCommentView -import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.ModRemoveCommunity as X0DatatypesModRemoveCommunity -import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.ModRemoveCommunityView as X0DatatypesModRemoveCommunityView -import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.ModRemovePost as X0DatatypesModRemovePost -import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.ModRemovePostView as X0DatatypesModRemovePostView -import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.ModTransferCommunity as X0DatatypesModTransferCommunity -import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.ModTransferCommunityView as X0DatatypesModTransferCommunityView import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.MyUserInfo as X0DatatypesMyUserInfo import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.PasswordChangeAfterReset as X0DatatypesPasswordChangeAfterReset import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.PasswordReset as X0DatatypesPasswordReset @@ -300,7 +270,6 @@ import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.PrivateMessageReportResponse a import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.PrivateMessageReportView as X0DatatypesPrivateMessageReportView import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.PrivateMessageResponse as X0DatatypesPrivateMessageResponse import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.PrivateMessageView as X0DatatypesPrivateMessageView -import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.PrivateMessagesResponse as X0DatatypesPrivateMessagesResponse import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.PurgeComment as X0DatatypesPurgeComment import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.PurgeCommunity as X0DatatypesPurgeCommunity import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.PurgePerson as X0DatatypesPurgePerson From e2615889ceffe62f6089d473492b8794946398d3 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Sat, 7 Mar 2026 10:32:45 +0100 Subject: [PATCH 040/110] Fix enums --- .../lemmyapi/enums/CommentSortType.kt | 11 +-- .../lemmyapi/enums/CommunityFollowerState.kt | 3 +- .../lemmyapi/enums/CommunityVisibility.kt | 13 +-- .../vercruysse/lemmyapi/enums/ListingType.kt | 11 +-- .../lemmyapi/enums/ModlogActionType.kt | 49 +++++------ .../lemmyapi/enums/PostFeatureType.kt | 5 +- .../lemmyapi/enums/PostListingMode.kt | 7 +- .../lemmyapi/enums/RegistrationMode.kt | 7 +- .../vercruysse/lemmyapi/enums/SearchType.kt | 13 +-- .../it/vercruysse/lemmyapi/enums/SortType.kt | 42 +++++---- .../lemmyapi/v0/enums/CommentSortType.kt | 39 +++++++++ .../lemmyapi/v0/enums/CommunityVisibility.kt | 31 +++++++ .../lemmyapi/v0/enums/ListingType.kt | 37 ++++++++ .../lemmyapi/v0/enums/ModlogActionType.kt | 73 ++++++++++++++++ .../lemmyapi/v0/enums/PostFeatureType.kt | 30 +++++++ .../lemmyapi/v0/enums/PostListingMode.kt | 33 +++++++ .../lemmyapi/v0/enums/RegistrationMode.kt | 33 +++++++ .../lemmyapi/v0/enums/SearchType.kt | 42 +++++++++ .../vercruysse/lemmyapi/v0/enums/SortType.kt | 81 ++++++++++++++++++ .../lemmyapi/{ => v0}/enums/SubscribedType.kt | 4 +- .../lemmyapi/v0/x18/x5/Transformer.kt | 57 +++++++------ .../v0/x18/x5/datatypes/CommentReplyView.kt | 2 +- .../v0/x18/x5/datatypes/CommentView.kt | 2 +- .../v0/x18/x5/datatypes/CommunityView.kt | 2 +- .../v0/x18/x5/datatypes/CreateSite.kt | 4 +- .../lemmyapi/v0/x18/x5/datatypes/EditSite.kt | 4 +- .../v0/x18/x5/datatypes/FeaturePost.kt | 2 +- .../v0/x18/x5/datatypes/GetComments.kt | 4 +- .../lemmyapi/v0/x18/x5/datatypes/GetModlog.kt | 2 +- .../v0/x18/x5/datatypes/GetPersonDetails.kt | 2 +- .../v0/x18/x5/datatypes/GetPersonMentions.kt | 2 +- .../lemmyapi/v0/x18/x5/datatypes/GetPosts.kt | 4 +- .../v0/x18/x5/datatypes/GetReplies.kt | 2 +- .../v0/x18/x5/datatypes/ListCommunities.kt | 4 +- .../lemmyapi/v0/x18/x5/datatypes/LocalSite.kt | 4 +- .../lemmyapi/v0/x18/x5/datatypes/LocalUser.kt | 4 +- .../v0/x18/x5/datatypes/PersonMentionView.kt | 2 +- .../lemmyapi/v0/x18/x5/datatypes/PostView.kt | 2 +- .../v0/x18/x5/datatypes/SaveUserSettings.kt | 4 +- .../lemmyapi/v0/x18/x5/datatypes/Search.kt | 6 +- .../v0/x18/x5/datatypes/SearchResponse.kt | 2 +- .../lemmyapi/v0/x19/x0/Transformer.kt | 63 ++++++++------ .../v0/x19/x0/datatypes/CommentReplyView.kt | 2 +- .../v0/x19/x0/datatypes/CommentView.kt | 2 +- .../v0/x19/x0/datatypes/CommunityView.kt | 2 +- .../v0/x19/x0/datatypes/CreateSite.kt | 4 +- .../lemmyapi/v0/x19/x0/datatypes/EditSite.kt | 4 +- .../v0/x19/x0/datatypes/FeaturePost.kt | 2 +- .../v0/x19/x0/datatypes/GetComments.kt | 4 +- .../lemmyapi/v0/x19/x0/datatypes/GetModlog.kt | 2 +- .../v0/x19/x0/datatypes/GetPersonDetails.kt | 2 +- .../v0/x19/x0/datatypes/GetPersonMentions.kt | 2 +- .../lemmyapi/v0/x19/x0/datatypes/GetPosts.kt | 4 +- .../v0/x19/x0/datatypes/GetReplies.kt | 2 +- .../v0/x19/x0/datatypes/ListCommunities.kt | 4 +- .../lemmyapi/v0/x19/x0/datatypes/LocalSite.kt | 4 +- .../lemmyapi/v0/x19/x0/datatypes/LocalUser.kt | 6 +- .../v0/x19/x0/datatypes/PersonMentionView.kt | 2 +- .../lemmyapi/v0/x19/x0/datatypes/PostView.kt | 2 +- .../v0/x19/x0/datatypes/SaveUserSettings.kt | 6 +- .../lemmyapi/v0/x19/x0/datatypes/Search.kt | 6 +- .../v0/x19/x0/datatypes/SearchResponse.kt | 2 +- .../lemmyapi/v0/x19/x11/Transformer.kt | 82 ++++++++++-------- .../v0/x19/x11/datatypes/CommentReplyView.kt | 2 +- .../v0/x19/x11/datatypes/CommentReportView.kt | 2 +- .../v0/x19/x11/datatypes/CommentView.kt | 2 +- .../v0/x19/x11/datatypes/Community.kt | 2 +- .../v0/x19/x11/datatypes/CommunityView.kt | 2 +- .../v0/x19/x11/datatypes/CreateCommunity.kt | 2 +- .../v0/x19/x11/datatypes/CreateSite.kt | 8 +- .../v0/x19/x11/datatypes/EditCommunity.kt | 2 +- .../lemmyapi/v0/x19/x11/datatypes/EditSite.kt | 8 +- .../v0/x19/x11/datatypes/FeaturePost.kt | 2 +- .../v0/x19/x11/datatypes/GetComments.kt | 4 +- .../v0/x19/x11/datatypes/GetModlog.kt | 2 +- .../v0/x19/x11/datatypes/GetPersonDetails.kt | 2 +- .../v0/x19/x11/datatypes/GetPersonMentions.kt | 2 +- .../lemmyapi/v0/x19/x11/datatypes/GetPosts.kt | 4 +- .../v0/x19/x11/datatypes/GetReplies.kt | 2 +- .../v0/x19/x11/datatypes/ListCommunities.kt | 4 +- .../v0/x19/x11/datatypes/LocalSite.kt | 8 +- .../v0/x19/x11/datatypes/LocalUser.kt | 6 +- .../v0/x19/x11/datatypes/PersonMentionView.kt | 2 +- .../v0/x19/x11/datatypes/PostReportView.kt | 2 +- .../lemmyapi/v0/x19/x11/datatypes/PostView.kt | 2 +- .../v0/x19/x11/datatypes/SaveUserSettings.kt | 6 +- .../lemmyapi/v0/x19/x11/datatypes/Search.kt | 6 +- .../v0/x19/x11/datatypes/SearchResponse.kt | 2 +- .../lemmyapi/v0/x19/x3/Transformer.kt | 65 +++++++------- .../v0/x19/x3/datatypes/CommentReplyView.kt | 2 +- .../v0/x19/x3/datatypes/CommentView.kt | 2 +- .../v0/x19/x3/datatypes/CommunityView.kt | 2 +- .../v0/x19/x3/datatypes/CreateSite.kt | 4 +- .../lemmyapi/v0/x19/x3/datatypes/EditSite.kt | 4 +- .../v0/x19/x3/datatypes/FeaturePost.kt | 2 +- .../v0/x19/x3/datatypes/GetComments.kt | 4 +- .../lemmyapi/v0/x19/x3/datatypes/GetModlog.kt | 2 +- .../v0/x19/x3/datatypes/GetPersonDetails.kt | 2 +- .../v0/x19/x3/datatypes/GetPersonMentions.kt | 2 +- .../lemmyapi/v0/x19/x3/datatypes/GetPosts.kt | 4 +- .../v0/x19/x3/datatypes/GetReplies.kt | 2 +- .../v0/x19/x3/datatypes/ListCommunities.kt | 4 +- .../lemmyapi/v0/x19/x3/datatypes/LocalSite.kt | 4 +- .../lemmyapi/v0/x19/x3/datatypes/LocalUser.kt | 6 +- .../v0/x19/x3/datatypes/PersonMentionView.kt | 2 +- .../lemmyapi/v0/x19/x3/datatypes/PostView.kt | 2 +- .../v0/x19/x3/datatypes/SaveUserSettings.kt | 6 +- .../lemmyapi/v0/x19/x3/datatypes/Search.kt | 6 +- .../v0/x19/x3/datatypes/SearchResponse.kt | 2 +- .../lemmyapi/v0/x19/x4/Transformer.kt | 85 ++++++++++--------- .../v0/x19/x4/datatypes/CommentReplyView.kt | 2 +- .../v0/x19/x4/datatypes/CommentReportView.kt | 2 +- .../v0/x19/x4/datatypes/CommentView.kt | 2 +- .../lemmyapi/v0/x19/x4/datatypes/Community.kt | 2 +- .../v0/x19/x4/datatypes/CommunityView.kt | 2 +- .../v0/x19/x4/datatypes/CreateCommunity.kt | 2 +- .../v0/x19/x4/datatypes/CreateSite.kt | 8 +- .../v0/x19/x4/datatypes/EditCommunity.kt | 2 +- .../lemmyapi/v0/x19/x4/datatypes/EditSite.kt | 8 +- .../v0/x19/x4/datatypes/FeaturePost.kt | 2 +- .../v0/x19/x4/datatypes/GetComments.kt | 4 +- .../lemmyapi/v0/x19/x4/datatypes/GetModlog.kt | 2 +- .../v0/x19/x4/datatypes/GetPersonDetails.kt | 2 +- .../v0/x19/x4/datatypes/GetPersonMentions.kt | 2 +- .../lemmyapi/v0/x19/x4/datatypes/GetPosts.kt | 4 +- .../v0/x19/x4/datatypes/GetReplies.kt | 2 +- .../v0/x19/x4/datatypes/ListCommunities.kt | 4 +- .../lemmyapi/v0/x19/x4/datatypes/LocalSite.kt | 8 +- .../lemmyapi/v0/x19/x4/datatypes/LocalUser.kt | 6 +- .../v0/x19/x4/datatypes/PersonMentionView.kt | 2 +- .../v0/x19/x4/datatypes/PostReportView.kt | 2 +- .../lemmyapi/v0/x19/x4/datatypes/PostView.kt | 2 +- .../v0/x19/x4/datatypes/SaveUserSettings.kt | 6 +- .../lemmyapi/v0/x19/x4/datatypes/Search.kt | 6 +- .../v0/x19/x4/datatypes/SearchResponse.kt | 2 +- .../lemmyapi/v0/x19/x6/Transformer.kt | 82 ++++++++++-------- .../v0/x19/x6/datatypes/CommentReplyView.kt | 2 +- .../v0/x19/x6/datatypes/CommentReportView.kt | 2 +- .../v0/x19/x6/datatypes/CommentView.kt | 2 +- .../lemmyapi/v0/x19/x6/datatypes/Community.kt | 2 +- .../v0/x19/x6/datatypes/CommunityView.kt | 2 +- .../v0/x19/x6/datatypes/CreateCommunity.kt | 2 +- .../v0/x19/x6/datatypes/CreateSite.kt | 8 +- .../v0/x19/x6/datatypes/EditCommunity.kt | 2 +- .../lemmyapi/v0/x19/x6/datatypes/EditSite.kt | 8 +- .../v0/x19/x6/datatypes/FeaturePost.kt | 2 +- .../v0/x19/x6/datatypes/GetComments.kt | 4 +- .../lemmyapi/v0/x19/x6/datatypes/GetModlog.kt | 2 +- .../v0/x19/x6/datatypes/GetPersonDetails.kt | 2 +- .../v0/x19/x6/datatypes/GetPersonMentions.kt | 2 +- .../lemmyapi/v0/x19/x6/datatypes/GetPosts.kt | 4 +- .../v0/x19/x6/datatypes/GetReplies.kt | 2 +- .../v0/x19/x6/datatypes/ListCommunities.kt | 4 +- .../lemmyapi/v0/x19/x6/datatypes/LocalSite.kt | 8 +- .../lemmyapi/v0/x19/x6/datatypes/LocalUser.kt | 6 +- .../v0/x19/x6/datatypes/PersonMentionView.kt | 2 +- .../v0/x19/x6/datatypes/PostReportView.kt | 2 +- .../lemmyapi/v0/x19/x6/datatypes/PostView.kt | 2 +- .../v0/x19/x6/datatypes/SaveUserSettings.kt | 6 +- .../lemmyapi/v0/x19/x6/datatypes/Search.kt | 6 +- .../v0/x19/x6/datatypes/SearchResponse.kt | 2 +- 161 files changed, 946 insertions(+), 498 deletions(-) create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/CommentSortType.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/CommunityVisibility.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/ListingType.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/ModlogActionType.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/PostFeatureType.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/PostListingMode.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/RegistrationMode.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/SearchType.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/SortType.kt rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/{ => v0}/enums/SubscribedType.kt (58%) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/CommentSortType.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/CommentSortType.kt index dbbf01ef..d869db42 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/CommentSortType.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/CommentSortType.kt @@ -3,14 +3,15 @@ package it.vercruysse.lemmyapi.enums import io.github.z4kn4fein.semver.Version import it.vercruysse.lemmyapi.MINIMUM_API_VERSION import it.vercruysse.lemmyapi.V0_19_0 +import kotlinx.serialization.SerialName import kotlinx.serialization.Serializable @Serializable enum class CommentSortType(override val minimumVersion: Version = MINIMUM_API_VERSION, override val maximumVersion: Version? = null) : VersionTracker { - Hot, - Top, - New, - Old, - Controversial(V0_19_0), + @SerialName("hot") Hot, + @SerialName("top") Top, + @SerialName("new") New, + @SerialName("old") Old, + @SerialName("controversial") Controversial(V0_19_0), } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/CommunityFollowerState.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/CommunityFollowerState.kt index 75b8d139..a7915c37 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/CommunityFollowerState.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/CommunityFollowerState.kt @@ -1,5 +1,6 @@ package it.vercruysse.lemmyapi.enums +import it.vercruysse.lemmyapi.v0.enums.SubscribedType import kotlinx.serialization.Serializable // TODO: mapped from previous version @@ -13,7 +14,7 @@ enum class CommunityFollowerState { ; companion object { - fun from(d: SubscribedType): CommunityFollowerState? = + internal fun from(d: SubscribedType): CommunityFollowerState? = when (d) { SubscribedType.Subscribed -> Accepted SubscribedType.NotSubscribed -> null diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/CommunityVisibility.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/CommunityVisibility.kt index 84eb8a90..33a458b5 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/CommunityVisibility.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/CommunityVisibility.kt @@ -3,15 +3,16 @@ package it.vercruysse.lemmyapi.enums import io.github.z4kn4fein.semver.Version import it.vercruysse.lemmyapi.V0_19_4 import it.vercruysse.lemmyapi.V1_0_0 +import kotlinx.serialization.SerialName import kotlinx.serialization.Serializable @Serializable enum class CommunityVisibility(override val minimumVersion: Version = V0_19_4, override val maximumVersion: Version? = null) : VersionTracker { - Public, - LocalOnly(V0_19_4, V1_0_0), - Unlisted(V1_0_0), - LocalOnlyPublic(V1_0_0), - LocalOnlyPrivate(V1_0_0), - Private(V1_0_0), + @SerialName("public") Public, + @SerialName("local_only") LocalOnly(V0_19_4, V1_0_0), + @SerialName("unlisted") Unlisted(V1_0_0), + @SerialName("local_only_public") LocalOnlyPublic(V1_0_0), + @SerialName("local_only_private") LocalOnlyPrivate(V1_0_0), + @SerialName("private") Private(V1_0_0), } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/ListingType.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/ListingType.kt index 9664f070..4adbac3e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/ListingType.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/ListingType.kt @@ -4,14 +4,15 @@ import io.github.z4kn4fein.semver.Version import it.vercruysse.lemmyapi.MINIMUM_API_VERSION import it.vercruysse.lemmyapi.V0_19_0 import it.vercruysse.lemmyapi.V1_0_0 +import kotlinx.serialization.SerialName import kotlinx.serialization.Serializable @Serializable enum class ListingType(override val minimumVersion: Version = MINIMUM_API_VERSION, override val maximumVersion: Version? = null) : VersionTracker { - All, - Local, - Subscribed, - ModeratorView(V0_19_0), - Suggested(V1_0_0), + @SerialName("all") All, + @SerialName("local") Local, + @SerialName("subscribed") Subscribed, + @SerialName("moderator_view") ModeratorView(V0_19_0), + @SerialName("suggested") Suggested(V1_0_0), } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/ModlogActionType.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/ModlogActionType.kt index 9198e3e2..669df911 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/ModlogActionType.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/ModlogActionType.kt @@ -3,42 +3,43 @@ package it.vercruysse.lemmyapi.enums import io.github.z4kn4fein.semver.Version import it.vercruysse.lemmyapi.MINIMUM_API_VERSION import it.vercruysse.lemmyapi.V1_0_0 +import kotlinx.serialization.SerialName import kotlinx.serialization.Serializable // TODO: changes @Serializable enum class ModlogActionType(override val minimumVersion: Version = MINIMUM_API_VERSION, override val maximumVersion: Version? = null) : VersionTracker { - All, - ModRemovePost, - ModLockPost, - ModFeaturePost, - ModRemoveComment, - ModLockComment(V1_0_0), + @SerialName("all") All, + @SerialName("mod_remove_post") ModRemovePost, + @SerialName("mod_lock_post") ModLockPost, + @SerialName("mod_feature_post") ModFeaturePost, + @SerialName("mod_remove_comment") ModRemoveComment, + @SerialName("mod_lock_comment") ModLockComment(V1_0_0), /** Deprecated alias for AdminRemoveCommunity */ - ModRemoveCommunity(MINIMUM_API_VERSION, V1_0_0), - AdminRemoveCommunity(V1_0_0), - ModBanFromCommunity, + @SerialName("mod_remove_community") ModRemoveCommunity(MINIMUM_API_VERSION, V1_0_0), + @SerialName("admin_remove_community") AdminRemoveCommunity(V1_0_0), + @SerialName("mod_ban_from_community") ModBanFromCommunity, /** Deprecated alias for ModAddToCommunity */ - ModAddCommunity(MINIMUM_API_VERSION, V1_0_0), - ModAddToCommunity(V1_0_0), - ModTransferCommunity, + @SerialName("mod_add_community") ModAddCommunity(MINIMUM_API_VERSION, V1_0_0), + @SerialName("mod_add_to_community") ModAddToCommunity(V1_0_0), + @SerialName("mod_transfer_community") ModTransferCommunity, /** Deprecated alias for AdminAdd */ - ModAdd(MINIMUM_API_VERSION, V1_0_0), + @SerialName("mod_add") ModAdd(MINIMUM_API_VERSION, V1_0_0), /** Deprecated alias for AdminBan */ - ModBan(MINIMUM_API_VERSION, V1_0_0), - AdminAdd(V1_0_0), - AdminBan(V1_0_0), - ModHideCommunity(MINIMUM_API_VERSION, V1_0_0), - ModChangeCommunityVisibility(V1_0_0), - AdminPurgePerson, - AdminPurgeCommunity, - AdminPurgePost, - AdminPurgeComment, - AdminBlockInstance(V1_0_0), - AdminAllowInstance(V1_0_0), + @SerialName("mod_ban") ModBan(MINIMUM_API_VERSION, V1_0_0), + @SerialName("admin_add") AdminAdd(V1_0_0), + @SerialName("admin_ban") AdminBan(V1_0_0), + @SerialName("mod_hide_community") ModHideCommunity(MINIMUM_API_VERSION, V1_0_0), + @SerialName("mod_change_community_visibility") ModChangeCommunityVisibility(V1_0_0), + @SerialName("admin_purge_person") AdminPurgePerson, + @SerialName("admin_purge_community") AdminPurgeCommunity, + @SerialName("admin_purge_post") AdminPurgePost, + @SerialName("admin_purge_comment") AdminPurgeComment, + @SerialName("admin_block_instance") AdminBlockInstance(V1_0_0), + @SerialName("admin_allow_instance") AdminAllowInstance(V1_0_0), } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/PostFeatureType.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/PostFeatureType.kt index dfba17d7..7a2f1635 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/PostFeatureType.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/PostFeatureType.kt @@ -1,9 +1,10 @@ package it.vercruysse.lemmyapi.enums +import kotlinx.serialization.SerialName import kotlinx.serialization.Serializable @Serializable enum class PostFeatureType { - Local, - Community, + @SerialName("local") Local, + @SerialName("community") Community, } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/PostListingMode.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/PostListingMode.kt index e650a60d..c61061f6 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/PostListingMode.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/PostListingMode.kt @@ -2,11 +2,12 @@ package it.vercruysse.lemmyapi.enums import io.github.z4kn4fein.semver.Version import it.vercruysse.lemmyapi.V0_19_0 +import kotlinx.serialization.SerialName import kotlinx.serialization.Serializable @Serializable enum class PostListingMode(override val minimumVersion: Version = V0_19_0, override val maximumVersion: Version? = null) : VersionTracker { - List, - Card, - SmallCard, + @SerialName("list") List, + @SerialName("card") Card, + @SerialName("small_card") SmallCard, } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/RegistrationMode.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/RegistrationMode.kt index d4ffdb16..a78ec4f5 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/RegistrationMode.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/RegistrationMode.kt @@ -2,12 +2,13 @@ package it.vercruysse.lemmyapi.enums import io.github.z4kn4fein.semver.Version import it.vercruysse.lemmyapi.MINIMUM_API_VERSION +import kotlinx.serialization.SerialName import kotlinx.serialization.Serializable @Serializable enum class RegistrationMode(override val minimumVersion: Version = MINIMUM_API_VERSION, override val maximumVersion: Version? = null) : VersionTracker { - Closed, - RequireApplication, - Open, + @SerialName("closed") Closed, + @SerialName("require_application") RequireApplication, + @SerialName("open") Open, } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/SearchType.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/SearchType.kt index 7dd89685..bc54e34a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/SearchType.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/SearchType.kt @@ -2,15 +2,16 @@ package it.vercruysse.lemmyapi.enums import io.github.z4kn4fein.semver.Version import it.vercruysse.lemmyapi.MINIMUM_API_VERSION +import kotlinx.serialization.SerialName import kotlinx.serialization.Serializable @Serializable enum class SearchType(override val minimumVersion: Version = MINIMUM_API_VERSION, override val maximumVersion: Version? = null) : VersionTracker { - All, - Comments, - Posts, - Communities, - Users, - Url, + @SerialName("all") All, + @SerialName("comments") Comments, + @SerialName("posts") Posts, + @SerialName("communities") Communities, + @SerialName("users") Users, + @SerialName("url") Url, } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/SortType.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/SortType.kt index 013a3a36..f28d8cfa 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/SortType.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/SortType.kt @@ -5,31 +5,29 @@ import io.github.z4kn4fein.semver.toVersion import it.vercruysse.lemmyapi.MINIMUM_API_VERSION import it.vercruysse.lemmyapi.V0_18_0 import it.vercruysse.lemmyapi.V0_19_0 +import kotlinx.serialization.SerialName import kotlinx.serialization.Serializable -// TODO: fix -// now only "Active" | "Hot" | "New" | "Old" | "Top" | "MostComments" | "NewComments" | "Controversial" | "Scaled" - @Serializable enum class SortType(override val minimumVersion: Version = MINIMUM_API_VERSION, override val maximumVersion: Version? = null) : VersionTracker { - Active, - Hot, - New, - Old, - TopDay, - TopWeek, - TopMonth, - TopYear, - TopAll, - MostComments, - NewComments, - TopHour(V0_18_0), - TopSixHour(V0_18_0), - TopTwelveHour(V0_18_0), - TopThreeMonths("0.18.1".toVersion()), - TopSixMonths("0.18.1".toVersion()), - TopNineMonths("0.18.1".toVersion()), - Controversial(V0_19_0), - Scaled(V0_19_0), + @SerialName("active") Active, + @SerialName("hot") Hot, + @SerialName("new") New, + @SerialName("old") Old, + @SerialName("top_day") TopDay, + @SerialName("top_week") TopWeek, + @SerialName("top_month") TopMonth, + @SerialName("top_year") TopYear, + @SerialName("top_all") TopAll, + @SerialName("most_comments") MostComments, + @SerialName("new_comments") NewComments, + @SerialName("top_hour") TopHour(V0_18_0), + @SerialName("top_six_hour") TopSixHour(V0_18_0), + @SerialName("top_twelve_hour") TopTwelveHour(V0_18_0), + @SerialName("top_three_months") TopThreeMonths("0.18.1".toVersion()), + @SerialName("top_six_months") TopSixMonths("0.18.1".toVersion()), + @SerialName("top_nine_months") TopNineMonths("0.18.1".toVersion()), + @SerialName("controversial") Controversial(V0_19_0), + @SerialName("scaled") Scaled(V0_19_0), } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/CommentSortType.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/CommentSortType.kt new file mode 100644 index 00000000..a0819e7b --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/CommentSortType.kt @@ -0,0 +1,39 @@ +package it.vercruysse.lemmyapi.v0.enums + +import it.vercruysse.lemmyapi.enums.CommentSortType as UniCommentSortType +import kotlinx.serialization.Serializable + +@Serializable +internal enum class CommentSortType { + Hot, + Top, + New, + Old, + Controversial, + ; + + fun toUni(): UniCommentSortType = + when (this) { + Hot -> UniCommentSortType.Hot + Top -> UniCommentSortType.Top + New -> UniCommentSortType.New + Old -> UniCommentSortType.Old + Controversial -> UniCommentSortType.Controversial + } + + companion object { + fun fromUniNullable(uni: UniCommentSortType?): CommentSortType? = + when (uni) { + null -> null + UniCommentSortType.Hot -> Hot + UniCommentSortType.Top -> Top + UniCommentSortType.New -> New + UniCommentSortType.Old -> Old + UniCommentSortType.Controversial -> Controversial + } + + fun fromUni(uni: UniCommentSortType): CommentSortType = fromUniNullable(uni) ?: error("No v0 mapping for $uni") + } +} + +internal fun CommentSortType?.toUni(): UniCommentSortType? = this?.toUni() diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/CommunityVisibility.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/CommunityVisibility.kt new file mode 100644 index 00000000..c51f1997 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/CommunityVisibility.kt @@ -0,0 +1,31 @@ +package it.vercruysse.lemmyapi.v0.enums + +import it.vercruysse.lemmyapi.enums.CommunityVisibility as UniCommunityVisibility +import kotlinx.serialization.Serializable + +@Serializable +internal enum class CommunityVisibility { + Public, + LocalOnly, + ; + + fun toUni(): UniCommunityVisibility = + when (this) { + Public -> UniCommunityVisibility.Public + LocalOnly -> UniCommunityVisibility.LocalOnly + } + + companion object { + fun fromUniNullable(uni: UniCommunityVisibility?): CommunityVisibility? = + when (uni) { + null -> null + UniCommunityVisibility.Public -> Public + UniCommunityVisibility.LocalOnly -> LocalOnly + else -> null + } + + fun fromUni(uni: UniCommunityVisibility): CommunityVisibility = fromUniNullable(uni) ?: error("No v0 mapping for $uni") + } +} + +internal fun CommunityVisibility?.toUni(): UniCommunityVisibility? = this?.toUni() diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/ListingType.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/ListingType.kt new file mode 100644 index 00000000..f992fdd0 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/ListingType.kt @@ -0,0 +1,37 @@ +package it.vercruysse.lemmyapi.v0.enums + +import it.vercruysse.lemmyapi.enums.ListingType as UniListingType +import kotlinx.serialization.Serializable + +@Serializable +internal enum class ListingType { + All, + Local, + Subscribed, + ModeratorView, + ; + + fun toUni(): UniListingType = + when (this) { + All -> UniListingType.All + Local -> UniListingType.Local + Subscribed -> UniListingType.Subscribed + ModeratorView -> UniListingType.ModeratorView + } + + companion object { + fun fromUniNullable(uni: UniListingType?): ListingType? = + when (uni) { + null -> null + UniListingType.All -> All + UniListingType.Local -> Local + UniListingType.Subscribed -> Subscribed + UniListingType.ModeratorView -> ModeratorView + else -> null + } + + fun fromUni(uni: UniListingType): ListingType = fromUniNullable(uni) ?: error("No v0 mapping for $uni") + } +} + +internal fun ListingType?.toUni(): UniListingType? = this?.toUni() diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/ModlogActionType.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/ModlogActionType.kt new file mode 100644 index 00000000..f0088169 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/ModlogActionType.kt @@ -0,0 +1,73 @@ +package it.vercruysse.lemmyapi.v0.enums + +import it.vercruysse.lemmyapi.enums.ModlogActionType as UniModlogActionType +import kotlinx.serialization.Serializable + +@Serializable +internal enum class ModlogActionType { + All, + ModRemovePost, + ModLockPost, + ModFeaturePost, + ModRemoveComment, + ModRemoveCommunity, + ModBanFromCommunity, + ModAddCommunity, + ModTransferCommunity, + ModAdd, + ModBan, + ModHideCommunity, + AdminPurgePerson, + AdminPurgeCommunity, + AdminPurgePost, + AdminPurgeComment, + ; + + fun toUni(): UniModlogActionType = + when (this) { + All -> UniModlogActionType.All + ModRemovePost -> UniModlogActionType.ModRemovePost + ModLockPost -> UniModlogActionType.ModLockPost + ModFeaturePost -> UniModlogActionType.ModFeaturePost + ModRemoveComment -> UniModlogActionType.ModRemoveComment + ModRemoveCommunity -> UniModlogActionType.ModRemoveCommunity + ModBanFromCommunity -> UniModlogActionType.ModBanFromCommunity + ModAddCommunity -> UniModlogActionType.ModAddCommunity + ModTransferCommunity -> UniModlogActionType.ModTransferCommunity + ModAdd -> UniModlogActionType.ModAdd + ModBan -> UniModlogActionType.ModBan + ModHideCommunity -> UniModlogActionType.ModHideCommunity + AdminPurgePerson -> UniModlogActionType.AdminPurgePerson + AdminPurgeCommunity -> UniModlogActionType.AdminPurgeCommunity + AdminPurgePost -> UniModlogActionType.AdminPurgePost + AdminPurgeComment -> UniModlogActionType.AdminPurgeComment + } + + companion object { + fun fromUniNullable(uni: UniModlogActionType?): ModlogActionType? = + when (uni) { + null -> null + UniModlogActionType.All -> All + UniModlogActionType.ModRemovePost -> ModRemovePost + UniModlogActionType.ModLockPost -> ModLockPost + UniModlogActionType.ModFeaturePost -> ModFeaturePost + UniModlogActionType.ModRemoveComment -> ModRemoveComment + UniModlogActionType.ModRemoveCommunity -> ModRemoveCommunity + UniModlogActionType.ModBanFromCommunity -> ModBanFromCommunity + UniModlogActionType.ModAddCommunity -> ModAddCommunity + UniModlogActionType.ModTransferCommunity -> ModTransferCommunity + UniModlogActionType.ModAdd -> ModAdd + UniModlogActionType.ModBan -> ModBan + UniModlogActionType.ModHideCommunity -> ModHideCommunity + UniModlogActionType.AdminPurgePerson -> AdminPurgePerson + UniModlogActionType.AdminPurgeCommunity -> AdminPurgeCommunity + UniModlogActionType.AdminPurgePost -> AdminPurgePost + UniModlogActionType.AdminPurgeComment -> AdminPurgeComment + else -> null + } + + fun fromUni(uni: UniModlogActionType): ModlogActionType = fromUniNullable(uni) ?: error("No v0 mapping for $uni") + } +} + +internal fun ModlogActionType?.toUni(): UniModlogActionType? = this?.toUni() diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/PostFeatureType.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/PostFeatureType.kt new file mode 100644 index 00000000..d318559c --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/PostFeatureType.kt @@ -0,0 +1,30 @@ +package it.vercruysse.lemmyapi.v0.enums + +import it.vercruysse.lemmyapi.enums.PostFeatureType as UniPostFeatureType +import kotlinx.serialization.Serializable + +@Serializable +internal enum class PostFeatureType { + Local, + Community, + ; + + fun toUni(): UniPostFeatureType = + when (this) { + Local -> UniPostFeatureType.Local + Community -> UniPostFeatureType.Community + } + + companion object { + fun fromUniNullable(uni: UniPostFeatureType?): PostFeatureType? = + when (uni) { + null -> null + UniPostFeatureType.Local -> Local + UniPostFeatureType.Community -> Community + } + + fun fromUni(uni: UniPostFeatureType): PostFeatureType = fromUniNullable(uni) ?: error("No v0 mapping for $uni") + } +} + +internal fun PostFeatureType?.toUni(): UniPostFeatureType? = this?.toUni() diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/PostListingMode.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/PostListingMode.kt new file mode 100644 index 00000000..df8896e1 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/PostListingMode.kt @@ -0,0 +1,33 @@ +package it.vercruysse.lemmyapi.v0.enums + +import it.vercruysse.lemmyapi.enums.PostListingMode as UniPostListingMode +import kotlinx.serialization.Serializable + +@Serializable +internal enum class PostListingMode { + List, + Card, + SmallCard, + ; + + fun toUni(): UniPostListingMode = + when (this) { + List -> UniPostListingMode.List + Card -> UniPostListingMode.Card + SmallCard -> UniPostListingMode.SmallCard + } + + companion object { + fun fromUniNullable(uni: UniPostListingMode?): PostListingMode? = + when (uni) { + null -> null + UniPostListingMode.List -> List + UniPostListingMode.Card -> Card + UniPostListingMode.SmallCard -> SmallCard + } + + fun fromUni(uni: UniPostListingMode): PostListingMode = fromUniNullable(uni) ?: error("No v0 mapping for $uni") + } +} + +internal fun PostListingMode?.toUni(): UniPostListingMode? = this?.toUni() diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/RegistrationMode.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/RegistrationMode.kt new file mode 100644 index 00000000..1082ea4f --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/RegistrationMode.kt @@ -0,0 +1,33 @@ +package it.vercruysse.lemmyapi.v0.enums + +import it.vercruysse.lemmyapi.enums.RegistrationMode as UniRegistrationMode +import kotlinx.serialization.Serializable + +@Serializable +internal enum class RegistrationMode { + Closed, + RequireApplication, + Open, + ; + + fun toUni(): UniRegistrationMode = + when (this) { + Closed -> UniRegistrationMode.Closed + RequireApplication -> UniRegistrationMode.RequireApplication + Open -> UniRegistrationMode.Open + } + + companion object { + fun fromUniNullable(uni: UniRegistrationMode?): RegistrationMode? = + when (uni) { + null -> null + UniRegistrationMode.Closed -> Closed + UniRegistrationMode.RequireApplication -> RequireApplication + UniRegistrationMode.Open -> Open + } + + fun fromUni(uni: UniRegistrationMode): RegistrationMode = fromUniNullable(uni) ?: error("No v0 mapping for $uni") + } +} + +internal fun RegistrationMode?.toUni(): UniRegistrationMode? = this?.toUni() diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/SearchType.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/SearchType.kt new file mode 100644 index 00000000..bb274483 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/SearchType.kt @@ -0,0 +1,42 @@ +package it.vercruysse.lemmyapi.v0.enums + +import it.vercruysse.lemmyapi.enums.SearchType as UniSearchType +import kotlinx.serialization.Serializable + +@Serializable +internal enum class SearchType { + All, + Comments, + Posts, + Communities, + Users, + Url, + ; + + fun toUni(): UniSearchType = + when (this) { + All -> UniSearchType.All + Comments -> UniSearchType.Comments + Posts -> UniSearchType.Posts + Communities -> UniSearchType.Communities + Users -> UniSearchType.Users + Url -> UniSearchType.Url + } + + companion object { + fun fromUniNullable(uni: UniSearchType?): SearchType? = + when (uni) { + null -> null + UniSearchType.All -> All + UniSearchType.Comments -> Comments + UniSearchType.Posts -> Posts + UniSearchType.Communities -> Communities + UniSearchType.Users -> Users + UniSearchType.Url -> Url + } + + fun fromUni(uni: UniSearchType): SearchType = fromUniNullable(uni) ?: error("No v0 mapping for $uni") + } +} + +internal fun SearchType?.toUni(): UniSearchType? = this?.toUni() diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/SortType.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/SortType.kt new file mode 100644 index 00000000..d46c3bbc --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/SortType.kt @@ -0,0 +1,81 @@ +package it.vercruysse.lemmyapi.v0.enums + +import it.vercruysse.lemmyapi.enums.SortType as UniSortType +import kotlinx.serialization.Serializable + +@Serializable +internal enum class SortType { + Active, + Hot, + New, + Old, + TopDay, + TopWeek, + TopMonth, + TopYear, + TopAll, + MostComments, + NewComments, + TopHour, + TopSixHour, + TopTwelveHour, + TopThreeMonths, + TopSixMonths, + TopNineMonths, + Controversial, + Scaled, + ; + + fun toUni(): UniSortType = + when (this) { + Active -> UniSortType.Active + Hot -> UniSortType.Hot + New -> UniSortType.New + Old -> UniSortType.Old + TopDay -> UniSortType.TopDay + TopWeek -> UniSortType.TopWeek + TopMonth -> UniSortType.TopMonth + TopYear -> UniSortType.TopYear + TopAll -> UniSortType.TopAll + MostComments -> UniSortType.MostComments + NewComments -> UniSortType.NewComments + TopHour -> UniSortType.TopHour + TopSixHour -> UniSortType.TopSixHour + TopTwelveHour -> UniSortType.TopTwelveHour + TopThreeMonths -> UniSortType.TopThreeMonths + TopSixMonths -> UniSortType.TopSixMonths + TopNineMonths -> UniSortType.TopNineMonths + Controversial -> UniSortType.Controversial + Scaled -> UniSortType.Scaled + } + + companion object { + fun fromUniNullable(uni: UniSortType?): SortType? = + when (uni) { + null -> null + UniSortType.Active -> Active + UniSortType.Hot -> Hot + UniSortType.New -> New + UniSortType.Old -> Old + UniSortType.TopDay -> TopDay + UniSortType.TopWeek -> TopWeek + UniSortType.TopMonth -> TopMonth + UniSortType.TopYear -> TopYear + UniSortType.TopAll -> TopAll + UniSortType.MostComments -> MostComments + UniSortType.NewComments -> NewComments + UniSortType.TopHour -> TopHour + UniSortType.TopSixHour -> TopSixHour + UniSortType.TopTwelveHour -> TopTwelveHour + UniSortType.TopThreeMonths -> TopThreeMonths + UniSortType.TopSixMonths -> TopSixMonths + UniSortType.TopNineMonths -> TopNineMonths + UniSortType.Controversial -> Controversial + UniSortType.Scaled -> Scaled + } + + fun fromUni(uni: UniSortType): SortType = fromUniNullable(uni) ?: error("No v0 mapping for $uni") + } +} + +internal fun SortType?.toUni(): UniSortType? = this?.toUni() diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/SubscribedType.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/SubscribedType.kt similarity index 58% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/SubscribedType.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/SubscribedType.kt index 55e4571b..b5470413 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/SubscribedType.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/SubscribedType.kt @@ -1,9 +1,9 @@ -package it.vercruysse.lemmyapi.enums +package it.vercruysse.lemmyapi.v0.enums import kotlinx.serialization.Serializable @Serializable -enum class SubscribedType { +internal enum class SubscribedType { Subscribed, NotSubscribed, Pending, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt index 0358964e..05800ef9 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt @@ -8,7 +8,7 @@ import it.vercruysse.lemmyapi.datatypes.Notification import it.vercruysse.lemmyapi.datatypes.NotificationView import it.vercruysse.lemmyapi.datatypes.PersonActions import it.vercruysse.lemmyapi.datatypes.PostActions -import it.vercruysse.lemmyapi.enums.CommentSortType +import it.vercruysse.lemmyapi.v0.enums.CommentSortType as V0CommentSortType import it.vercruysse.lemmyapi.enums.CommunityFollowerState import it.vercruysse.lemmyapi.enums.CommunityVisibility import it.vercruysse.lemmyapi.enums.FederationMode @@ -16,6 +16,13 @@ import it.vercruysse.lemmyapi.enums.NotificationType import it.vercruysse.lemmyapi.enums.PostListingMode import it.vercruysse.lemmyapi.enums.SortType import it.vercruysse.lemmyapi.enums.VoteShow +import it.vercruysse.lemmyapi.v0.enums.ListingType as V0ListingType +import it.vercruysse.lemmyapi.v0.enums.ModlogActionType as V0ModlogActionType +import it.vercruysse.lemmyapi.v0.enums.PostFeatureType as V0PostFeatureType +import it.vercruysse.lemmyapi.v0.enums.PostListingMode as V0PostListingMode +import it.vercruysse.lemmyapi.v0.enums.RegistrationMode as V0RegistrationMode +import it.vercruysse.lemmyapi.v0.enums.SearchType as V0SearchType +import it.vercruysse.lemmyapi.v0.enums.SortType as V0SortType import it.vercruysse.lemmyapi.utils.toAt import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.LocalUser import it.vercruysse.lemmyapi.datatypes.AddAdmin as LemmyapiDatatypesAddAdmin @@ -301,8 +308,8 @@ internal class Transformer(var auth: String) : MapperGenerator { email = d.email, show_nsfw = d.show_nsfw, theme = d.theme, - default_post_sort_type = d.default_sort_type, - default_listing_type = d.default_listing_type, + default_post_sort_type = d.default_sort_type.toUni(), + default_listing_type = d.default_listing_type.toUni(), interface_language = d.interface_language, show_avatars = d.show_avatars, send_notifications_to_email = d.send_notifications_to_email, @@ -466,7 +473,7 @@ internal class Transformer(var auth: String) : MapperGenerator { application_question = d.application_question, private_instance = d.private_instance, default_theme = d.default_theme, - default_post_listing_type = d.default_post_listing_type, + default_post_listing_type = d.default_post_listing_type.toUni(), legal_information = d.legal_information, application_email_admins = d.application_email_admins, slur_filter_regex = d.slur_filter_regex, @@ -475,7 +482,7 @@ internal class Transformer(var auth: String) : MapperGenerator { captcha_difficulty = d.captcha_difficulty, published_at = addTimezoneOffset(d.published), updated_at = addTimezoneOffsetNullable(d.updated), - registration_mode = d.registration_mode, + registration_mode = d.registration_mode.toUni(), reports_email_admins = d.reports_email_admins, federation_signed_fetch = false, default_post_listing_mode = PostListingMode.Card, @@ -1172,7 +1179,7 @@ internal class Transformer(var auth: String) : MapperGenerator { application_question = d.application_question, private_instance = d.private_instance, default_theme = d.default_theme, - default_post_listing_type = d.default_post_listing_type, + default_post_listing_type = V0ListingType.fromUniNullable(d.default_post_listing_type), legal_information = d.legal_information, application_email_admins = d.application_email_admins, discussion_languages = d.discussion_languages, @@ -1195,7 +1202,7 @@ internal class Transformer(var auth: String) : MapperGenerator { allowed_instances = d.allowed_instances, blocked_instances = d.blocked_instances, taglines = d.taglines, - registration_mode = d.registration_mode, + registration_mode = V0RegistrationMode.fromUniNullable(d.registration_mode), auth = auth, ) @@ -1307,7 +1314,7 @@ internal class Transformer(var auth: String) : MapperGenerator { application_question = d.application_question, private_instance = d.private_instance, default_theme = d.default_theme, - default_post_listing_type = d.default_post_listing_type, + default_post_listing_type = V0ListingType.fromUniNullable(d.default_post_listing_type), legal_information = d.legal_information, application_email_admins = d.application_email_admins, hide_modlog_mod_names = d.hide_modlog_mod_names, @@ -1332,7 +1339,7 @@ internal class Transformer(var auth: String) : MapperGenerator { allowed_instances = d.allowed_instances, blocked_instances = d.blocked_instances, taglines = d.taglines, - registration_mode = d.registration_mode, + registration_mode = V0RegistrationMode.fromUniNullable(d.registration_mode), reports_email_admins = d.reports_email_admins, auth = auth, ) @@ -1341,7 +1348,7 @@ internal class Transformer(var auth: String) : MapperGenerator { X5DatatypesFeaturePost( post_id = d.post_id, featured = d.featured, - feature_type = d.feature_type, + feature_type = V0PostFeatureType.fromUni(d.feature_type), auth = auth, ) @@ -1360,8 +1367,8 @@ internal class Transformer(var auth: String) : MapperGenerator { override fun fromUni(d: LemmyapiDatatypesGetComments): X5DatatypesGetComments = X5DatatypesGetComments( - type_ = d.type_, - sort = d.sort, + type_ = V0ListingType.fromUniNullable(d.type_), + sort = V0CommentSortType.fromUniNullable(d.sort), max_depth = d.max_depth, page = d.page, limit = d.limit, @@ -1385,7 +1392,7 @@ internal class Transformer(var auth: String) : MapperGenerator { community_id = d.community_id, page = d.page, limit = d.limit, - type_ = d.type_, + type_ = V0ModlogActionType.fromUniNullable(d.type_), other_person_id = d.other_person_id, auth = auth, ) @@ -1394,7 +1401,7 @@ internal class Transformer(var auth: String) : MapperGenerator { X5DatatypesGetPersonDetails( person_id = d.person_id, username = d.username, - sort = d.sort, + sort = V0SortType.fromUniNullable(d.sort), page = d.page, limit = d.limit, community_id = d.community_id, @@ -1409,8 +1416,8 @@ internal class Transformer(var auth: String) : MapperGenerator { ) override fun fromUni(d: LemmyapiDatatypesGetPosts): X5DatatypesGetPosts = X5DatatypesGetPosts( - type_ = d.type_, - sort = d.sort, + type_ = V0ListingType.fromUniNullable(d.type_), + sort = V0SortType.fromUniNullable(d.sort), page = d.page, limit = d.limit, community_id = d.community_id, @@ -1420,7 +1427,7 @@ internal class Transformer(var auth: String) : MapperGenerator { fun fromUniR(d: LemmyapiDatatypesListNotifications): X5DatatypesGetReplies = X5DatatypesGetReplies( - sort = CommentSortType.New, + sort = V0CommentSortType.New, page = d.page, limit = d.limit, unread_only = d.unread_only, @@ -1429,7 +1436,7 @@ internal class Transformer(var auth: String) : MapperGenerator { fun fromUniM(d: LemmyapiDatatypesListNotifications): X5DatatypesGetPersonMentions = X5DatatypesGetPersonMentions( - sort = CommentSortType.New, + sort = V0CommentSortType.New, page = d.page, limit = d.limit, unread_only = d.unread_only, @@ -1468,8 +1475,8 @@ internal class Transformer(var auth: String) : MapperGenerator { override fun fromUni(d: LemmyapiDatatypesListCommunities): X5DatatypesListCommunities = X5DatatypesListCommunities( - type_ = d.type_, - sort = d.sort, + type_ = V0ListingType.fromUniNullable(d.type_), + sort = V0SortType.fromUniNullable(d.sort), show_nsfw = d.show_nsfw, page = d.page, limit = d.limit, @@ -1647,8 +1654,8 @@ internal class Transformer(var auth: String) : MapperGenerator { show_nsfw = d.show_nsfw, show_scores = d.show_score, theme = d.theme, - default_sort_type = d.default_post_sort_type, - default_listing_type = d.default_listing_type, + default_sort_type = V0SortType.fromUniNullable(d.default_post_sort_type), + default_listing_type = V0ListingType.fromUniNullable(d.default_listing_type), interface_language = d.interface_language, avatar = d.avatar, banner = d.banner, @@ -1671,9 +1678,9 @@ internal class Transformer(var auth: String) : MapperGenerator { community_id = d.community_id, community_name = d.community_name, creator_id = d.creator_id, - type_ = d.type_, - sort = d.sort, - listing_type = d.listing_type, + type_ = V0SearchType.fromUniNullable(d.type_), + sort = V0SortType.fromUniNullable(d.sort), + listing_type = V0ListingType.fromUniNullable(d.listing_type), page = d.page, limit = d.limit, auth = auth, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/CommentReplyView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/CommentReplyView.kt index f9af77e2..8154f995 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/CommentReplyView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/CommentReplyView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x18.x5.datatypes -import it.vercruysse.lemmyapi.enums.SubscribedType +import it.vercruysse.lemmyapi.v0.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/CommentView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/CommentView.kt index eed7b01a..32210113 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/CommentView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/CommentView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x18.x5.datatypes -import it.vercruysse.lemmyapi.enums.SubscribedType +import it.vercruysse.lemmyapi.v0.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/CommunityView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/CommunityView.kt index ba44e2c9..c7c4cd3b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/CommunityView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/CommunityView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x18.x5.datatypes -import it.vercruysse.lemmyapi.enums.SubscribedType +import it.vercruysse.lemmyapi.v0.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/CreateSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/CreateSite.kt index ee97e3c4..842d109c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/CreateSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/CreateSite.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x18.x5.datatypes -import it.vercruysse.lemmyapi.enums.ListingType -import it.vercruysse.lemmyapi.enums.RegistrationMode +import it.vercruysse.lemmyapi.v0.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.RegistrationMode import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/EditSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/EditSite.kt index acbf2a8d..a67e2a7a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/EditSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/EditSite.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x18.x5.datatypes -import it.vercruysse.lemmyapi.enums.ListingType -import it.vercruysse.lemmyapi.enums.RegistrationMode +import it.vercruysse.lemmyapi.v0.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.RegistrationMode import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/FeaturePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/FeaturePost.kt index 03753378..aa0e26ac 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/FeaturePost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/FeaturePost.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x18.x5.datatypes -import it.vercruysse.lemmyapi.enums.PostFeatureType +import it.vercruysse.lemmyapi.v0.enums.PostFeatureType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/GetComments.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/GetComments.kt index 1fada4cb..689534c9 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/GetComments.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/GetComments.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x18.x5.datatypes -import it.vercruysse.lemmyapi.enums.CommentSortType -import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.CommentSortType +import it.vercruysse.lemmyapi.v0.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/GetModlog.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/GetModlog.kt index 15f08a12..aeed7d77 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/GetModlog.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/GetModlog.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x18.x5.datatypes -import it.vercruysse.lemmyapi.enums.ModlogActionType +import it.vercruysse.lemmyapi.v0.enums.ModlogActionType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/GetPersonDetails.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/GetPersonDetails.kt index 81e291e7..f082d08d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/GetPersonDetails.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/GetPersonDetails.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x18.x5.datatypes -import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.v0.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/GetPersonMentions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/GetPersonMentions.kt index 1dcb4cc2..b388a01a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/GetPersonMentions.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/GetPersonMentions.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x18.x5.datatypes -import it.vercruysse.lemmyapi.enums.CommentSortType +import it.vercruysse.lemmyapi.v0.enums.CommentSortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/GetPosts.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/GetPosts.kt index cc370e97..1dc67764 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/GetPosts.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/GetPosts.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x18.x5.datatypes -import it.vercruysse.lemmyapi.enums.ListingType -import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.v0.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/GetReplies.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/GetReplies.kt index 183aabed..7d73d492 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/GetReplies.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/GetReplies.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x18.x5.datatypes -import it.vercruysse.lemmyapi.enums.CommentSortType +import it.vercruysse.lemmyapi.v0.enums.CommentSortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/ListCommunities.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/ListCommunities.kt index 9e736786..d1642079 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/ListCommunities.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/ListCommunities.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x18.x5.datatypes -import it.vercruysse.lemmyapi.enums.ListingType -import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.v0.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/LocalSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/LocalSite.kt index 2d2be074..f9330717 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/LocalSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/LocalSite.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x18.x5.datatypes -import it.vercruysse.lemmyapi.enums.ListingType -import it.vercruysse.lemmyapi.enums.RegistrationMode +import it.vercruysse.lemmyapi.v0.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.RegistrationMode import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/LocalUser.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/LocalUser.kt index 4c11a952..2d226029 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/LocalUser.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/LocalUser.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x18.x5.datatypes -import it.vercruysse.lemmyapi.enums.ListingType -import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.v0.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/PersonMentionView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/PersonMentionView.kt index bff817af..36fe05db 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/PersonMentionView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/PersonMentionView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x18.x5.datatypes -import it.vercruysse.lemmyapi.enums.SubscribedType +import it.vercruysse.lemmyapi.v0.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/PostView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/PostView.kt index 18148d3c..f1d9543f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/PostView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/PostView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x18.x5.datatypes -import it.vercruysse.lemmyapi.enums.SubscribedType +import it.vercruysse.lemmyapi.v0.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/SaveUserSettings.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/SaveUserSettings.kt index 4fb39c35..25358b4d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/SaveUserSettings.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/SaveUserSettings.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x18.x5.datatypes -import it.vercruysse.lemmyapi.enums.ListingType -import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.v0.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/Search.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/Search.kt index 720920a4..b469b927 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/Search.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/Search.kt @@ -1,8 +1,8 @@ package it.vercruysse.lemmyapi.v0.x18.x5.datatypes -import it.vercruysse.lemmyapi.enums.ListingType -import it.vercruysse.lemmyapi.enums.SearchType -import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.v0.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.SearchType +import it.vercruysse.lemmyapi.v0.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/SearchResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/SearchResponse.kt index f123d10d..79116a96 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/SearchResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/datatypes/SearchResponse.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x18.x5.datatypes -import it.vercruysse.lemmyapi.enums.SearchType +import it.vercruysse.lemmyapi.v0.enums.SearchType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt index e739bb5b..38e72478 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt @@ -7,7 +7,7 @@ import it.vercruysse.lemmyapi.datatypes.Notification import it.vercruysse.lemmyapi.datatypes.NotificationView import it.vercruysse.lemmyapi.datatypes.PersonActions import it.vercruysse.lemmyapi.datatypes.PostActions -import it.vercruysse.lemmyapi.enums.CommentSortType +import it.vercruysse.lemmyapi.v0.enums.CommentSortType as V0CommentSortType import it.vercruysse.lemmyapi.enums.CommunityFollowerState import it.vercruysse.lemmyapi.enums.CommunityVisibility import it.vercruysse.lemmyapi.enums.FederationMode @@ -15,6 +15,13 @@ import it.vercruysse.lemmyapi.enums.NotificationType import it.vercruysse.lemmyapi.enums.PostListingMode import it.vercruysse.lemmyapi.enums.SortType import it.vercruysse.lemmyapi.enums.VoteShow +import it.vercruysse.lemmyapi.v0.enums.ListingType as V0ListingType +import it.vercruysse.lemmyapi.v0.enums.ModlogActionType as V0ModlogActionType +import it.vercruysse.lemmyapi.v0.enums.PostFeatureType as V0PostFeatureType +import it.vercruysse.lemmyapi.v0.enums.PostListingMode as V0PostListingMode +import it.vercruysse.lemmyapi.v0.enums.RegistrationMode as V0RegistrationMode +import it.vercruysse.lemmyapi.v0.enums.SearchType as V0SearchType +import it.vercruysse.lemmyapi.v0.enums.SortType as V0SortType import it.vercruysse.lemmyapi.utils.toAt import it.vercruysse.lemmyapi.datatypes.AddAdmin as LemmyapiDatatypesAddAdmin import it.vercruysse.lemmyapi.datatypes.AddAdminResponse as LemmyapiDatatypesAddAdminResponse @@ -404,7 +411,7 @@ internal class Transformer : MapperGenerator { application_question = d.application_question, private_instance = d.private_instance, default_theme = d.default_theme, - default_post_listing_type = d.default_post_listing_type, + default_post_listing_type = d.default_post_listing_type.toUni(), legal_information = d.legal_information, application_email_admins = d.application_email_admins, slur_filter_regex = d.slur_filter_regex, @@ -413,7 +420,7 @@ internal class Transformer : MapperGenerator { captcha_difficulty = d.captcha_difficulty, published_at = d.published, updated_at = d.updated, - registration_mode = d.registration_mode, + registration_mode = d.registration_mode.toUni(), reports_email_admins = d.reports_email_admins, federation_signed_fetch = d.federation_signed_fetch, default_post_listing_mode = PostListingMode.Card, @@ -759,8 +766,8 @@ internal class Transformer : MapperGenerator { email = d.email, show_nsfw = d.show_nsfw, theme = d.theme, - default_post_sort_type = d.default_sort_type, - default_listing_type = d.default_listing_type, + default_post_sort_type = d.default_sort_type.toUni(), + default_listing_type = d.default_listing_type.toUni(), interface_language = d.interface_language, show_avatars = d.show_avatars, send_notifications_to_email = d.send_notifications_to_email, @@ -772,8 +779,7 @@ internal class Transformer : MapperGenerator { blur_nsfw = d.blur_nsfw, infinite_scroll_enabled = d.infinite_scroll_enabled, admin = d.admin, - post_listing_mode = d.post_listing_mode, - totp_2fa_enabled = d.totp_2fa_enabled, + post_listing_mode = d.post_listing_mode.toUni(), enable_animated_images = d.enable_animated_images, collapse_bot_comments = d.collapse_bot_comments, last_donation_notification_at = "", @@ -788,6 +794,7 @@ internal class Transformer : MapperGenerator { auto_mark_fetched_posts_as_read = false, default_post_time_range_seconds = null, default_items_per_page = 20, + totp_2fa_enabled = d.totp_2fa_enabled, ) override fun toUni(d: X0DatatypesLocalUserView): LemmyapiDatatypesLocalUserView = @@ -1210,7 +1217,7 @@ internal class Transformer : MapperGenerator { application_question = d.application_question, private_instance = d.private_instance, default_theme = d.default_theme, - default_post_listing_type = d.default_post_listing_type, + default_post_listing_type = V0ListingType.fromUniNullable(d.default_post_listing_type), legal_information = d.legal_information, application_email_admins = d.application_email_admins, discussion_languages = d.discussion_languages, @@ -1233,7 +1240,7 @@ internal class Transformer : MapperGenerator { allowed_instances = d.allowed_instances, blocked_instances = d.blocked_instances, taglines = d.taglines, - registration_mode = d.registration_mode, + registration_mode = V0RegistrationMode.fromUniNullable(d.registration_mode), ) override fun fromUni(d: LemmyapiDatatypesDeleteAccount): X0DatatypesDeleteAccount = @@ -1333,7 +1340,7 @@ internal class Transformer : MapperGenerator { application_question = d.application_question, private_instance = d.private_instance, default_theme = d.default_theme, - default_post_listing_type = d.default_post_listing_type, + default_post_listing_type = V0ListingType.fromUniNullable(d.default_post_listing_type), legal_information = d.legal_information, application_email_admins = d.application_email_admins, hide_modlog_mod_names = d.hide_modlog_mod_names, @@ -1358,7 +1365,7 @@ internal class Transformer : MapperGenerator { allowed_instances = d.allowed_instances, blocked_instances = d.blocked_instances, taglines = d.taglines, - registration_mode = d.registration_mode, + registration_mode = V0RegistrationMode.fromUniNullable(d.registration_mode), reports_email_admins = d.reports_email_admins, ) @@ -1366,7 +1373,7 @@ internal class Transformer : MapperGenerator { X0DatatypesFeaturePost( post_id = d.post_id, featured = d.featured, - feature_type = d.feature_type, + feature_type = V0PostFeatureType.fromUni(d.feature_type), ) override fun fromUni(d: LemmyapiDatatypesFollowCommunity): X0DatatypesFollowCommunity = @@ -1382,8 +1389,8 @@ internal class Transformer : MapperGenerator { override fun fromUni(d: LemmyapiDatatypesGetComments): X0DatatypesGetComments = X0DatatypesGetComments( - type_ = d.type_, - sort = d.sort, + type_ = V0ListingType.fromUniNullable(d.type_), + sort = V0CommentSortType.fromUniNullable(d.sort), max_depth = d.max_depth, page = d.page, limit = d.limit, @@ -1407,7 +1414,7 @@ internal class Transformer : MapperGenerator { community_id = d.community_id, page = d.page, limit = d.limit, - type_ = d.type_, + type_ = V0ModlogActionType.fromUniNullable(d.type_), other_person_id = d.other_person_id, ) @@ -1415,7 +1422,7 @@ internal class Transformer : MapperGenerator { X0DatatypesGetPersonDetails( person_id = d.person_id, username = d.username, - sort = d.sort, + sort = V0SortType.fromUniNullable(d.sort), page = d.page, limit = d.limit, community_id = d.community_id, @@ -1428,8 +1435,8 @@ internal class Transformer : MapperGenerator { ) override fun fromUni(d: LemmyapiDatatypesGetPosts): X0DatatypesGetPosts = X0DatatypesGetPosts( - type_ = d.type_, - sort = d.sort, + type_ = V0ListingType.fromUniNullable(d.type_), + sort = V0SortType.fromUniNullable(d.sort), page = d.page, limit = d.limit, community_id = d.community_id, @@ -1439,7 +1446,7 @@ internal class Transformer : MapperGenerator { fun fromUniR(d: LemmyapiDatatypesListNotifications): X0DatatypesGetReplies = X0DatatypesGetReplies( - sort = CommentSortType.New, + sort = V0CommentSortType.New, page = d.page, limit = d.limit, unread_only = d.unread_only, @@ -1447,7 +1454,7 @@ internal class Transformer : MapperGenerator { fun fromUniM(d: LemmyapiDatatypesListNotifications): X0DatatypesGetPersonMentions = X0DatatypesGetPersonMentions( - sort = CommentSortType.New, + sort = V0CommentSortType.New, page = d.page, limit = d.limit, unread_only = d.unread_only, @@ -1499,8 +1506,8 @@ internal class Transformer : MapperGenerator { override fun fromUni(d: LemmyapiDatatypesListCommunities): X0DatatypesListCommunities = X0DatatypesListCommunities( - type_ = d.type_, - sort = d.sort, + type_ = V0ListingType.fromUniNullable(d.type_), + sort = V0SortType.fromUniNullable(d.sort), show_nsfw = d.show_nsfw, page = d.page, limit = d.limit, @@ -1650,8 +1657,8 @@ internal class Transformer : MapperGenerator { blur_nsfw = d.blur_nsfw, show_scores = d.show_score, theme = d.theme, - default_sort_type = d.default_post_sort_type, - default_listing_type = d.default_listing_type, + default_sort_type = V0SortType.fromUniNullable(d.default_post_sort_type), + default_listing_type = V0ListingType.fromUniNullable(d.default_listing_type), interface_language = d.interface_language, avatar = d.avatar, banner = d.banner, @@ -1667,7 +1674,7 @@ internal class Transformer : MapperGenerator { discussion_languages = d.discussion_languages, open_links_in_new_tab = d.open_links_in_new_tab, infinite_scroll_enabled = d.infinite_scroll_enabled, - post_listing_mode = d.post_listing_mode, + post_listing_mode = V0PostListingMode.fromUniNullable(d.post_listing_mode), enable_animated_images = d.enable_animated_images, collapse_bot_comments = d.collapse_bot_comments, ) @@ -1677,9 +1684,9 @@ internal class Transformer : MapperGenerator { community_id = d.community_id, community_name = d.community_name, creator_id = d.creator_id, - type_ = d.type_, - sort = d.sort, - listing_type = d.listing_type, + type_ = V0SearchType.fromUniNullable(d.type_), + sort = V0SortType.fromUniNullable(d.sort), + listing_type = V0ListingType.fromUniNullable(d.listing_type), page = d.page, limit = d.limit, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/CommentReplyView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/CommentReplyView.kt index 1c0c6ae4..538c0d36 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/CommentReplyView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/CommentReplyView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -import it.vercruysse.lemmyapi.enums.SubscribedType +import it.vercruysse.lemmyapi.v0.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/CommentView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/CommentView.kt index f1d55197..c0f6c293 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/CommentView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/CommentView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -import it.vercruysse.lemmyapi.enums.SubscribedType +import it.vercruysse.lemmyapi.v0.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/CommunityView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/CommunityView.kt index c7147b1c..7e5eef54 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/CommunityView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/CommunityView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -import it.vercruysse.lemmyapi.enums.SubscribedType +import it.vercruysse.lemmyapi.v0.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/CreateSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/CreateSite.kt index 9cb158a6..4aee2aef 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/CreateSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/CreateSite.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -import it.vercruysse.lemmyapi.enums.RegistrationMode -import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.RegistrationMode +import it.vercruysse.lemmyapi.v0.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/EditSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/EditSite.kt index c5c6bc69..d050856f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/EditSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/EditSite.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -import it.vercruysse.lemmyapi.enums.RegistrationMode -import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.RegistrationMode +import it.vercruysse.lemmyapi.v0.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/FeaturePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/FeaturePost.kt index ce967faf..cd2593e3 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/FeaturePost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/FeaturePost.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -import it.vercruysse.lemmyapi.enums.PostFeatureType +import it.vercruysse.lemmyapi.v0.enums.PostFeatureType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/GetComments.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/GetComments.kt index 3fa97eed..621e033d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/GetComments.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/GetComments.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -import it.vercruysse.lemmyapi.enums.CommentSortType -import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.CommentSortType +import it.vercruysse.lemmyapi.v0.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/GetModlog.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/GetModlog.kt index 1d952a3e..f80f79cb 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/GetModlog.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/GetModlog.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -import it.vercruysse.lemmyapi.enums.ModlogActionType +import it.vercruysse.lemmyapi.v0.enums.ModlogActionType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/GetPersonDetails.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/GetPersonDetails.kt index 67fd2ddb..c92d24fb 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/GetPersonDetails.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/GetPersonDetails.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.v0.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/GetPersonMentions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/GetPersonMentions.kt index 69f4b6d8..d6f222ec 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/GetPersonMentions.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/GetPersonMentions.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -import it.vercruysse.lemmyapi.enums.CommentSortType +import it.vercruysse.lemmyapi.v0.enums.CommentSortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/GetPosts.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/GetPosts.kt index fd42e765..e1d2d0cc 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/GetPosts.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/GetPosts.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -import it.vercruysse.lemmyapi.enums.SortType -import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.SortType +import it.vercruysse.lemmyapi.v0.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/GetReplies.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/GetReplies.kt index 6940457b..373bead8 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/GetReplies.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/GetReplies.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -import it.vercruysse.lemmyapi.enums.CommentSortType +import it.vercruysse.lemmyapi.v0.enums.CommentSortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/ListCommunities.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/ListCommunities.kt index b4c5b6cc..6427647b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/ListCommunities.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/ListCommunities.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -import it.vercruysse.lemmyapi.enums.SortType -import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.SortType +import it.vercruysse.lemmyapi.v0.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/LocalSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/LocalSite.kt index b7053abc..7ace4411 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/LocalSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/LocalSite.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -import it.vercruysse.lemmyapi.enums.RegistrationMode -import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.RegistrationMode +import it.vercruysse.lemmyapi.v0.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/LocalUser.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/LocalUser.kt index 22809a46..b0a1b4ee 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/LocalUser.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/LocalUser.kt @@ -1,8 +1,8 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -import it.vercruysse.lemmyapi.enums.PostListingMode -import it.vercruysse.lemmyapi.enums.ListingType -import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.v0.enums.PostListingMode +import it.vercruysse.lemmyapi.v0.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/PersonMentionView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/PersonMentionView.kt index 806ce50d..522b0b6d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/PersonMentionView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/PersonMentionView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -import it.vercruysse.lemmyapi.enums.SubscribedType +import it.vercruysse.lemmyapi.v0.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/PostView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/PostView.kt index a56bb1fc..0cbc908e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/PostView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/PostView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -import it.vercruysse.lemmyapi.enums.SubscribedType +import it.vercruysse.lemmyapi.v0.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/SaveUserSettings.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/SaveUserSettings.kt index 291746ec..e6c0d961 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/SaveUserSettings.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/SaveUserSettings.kt @@ -1,8 +1,8 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -import it.vercruysse.lemmyapi.enums.PostListingMode -import it.vercruysse.lemmyapi.enums.ListingType -import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.v0.enums.PostListingMode +import it.vercruysse.lemmyapi.v0.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/Search.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/Search.kt index 236ce4c4..563d8818 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/Search.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/Search.kt @@ -1,8 +1,8 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -import it.vercruysse.lemmyapi.enums.ListingType -import it.vercruysse.lemmyapi.enums.SortType -import it.vercruysse.lemmyapi.enums.SearchType +import it.vercruysse.lemmyapi.v0.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.SortType +import it.vercruysse.lemmyapi.v0.enums.SearchType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/SearchResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/SearchResponse.kt index 64d51fb2..10ef8906 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/SearchResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/SearchResponse.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -import it.vercruysse.lemmyapi.enums.SearchType +import it.vercruysse.lemmyapi.v0.enums.SearchType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt index 16662e71..3819aa5a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt @@ -7,12 +7,20 @@ import it.vercruysse.lemmyapi.datatypes.Notification import it.vercruysse.lemmyapi.datatypes.NotificationView import it.vercruysse.lemmyapi.datatypes.PersonActions import it.vercruysse.lemmyapi.datatypes.PostActions -import it.vercruysse.lemmyapi.enums.CommentSortType +import it.vercruysse.lemmyapi.v0.enums.CommentSortType as V0CommentSortType import it.vercruysse.lemmyapi.enums.CommunityFollowerState import it.vercruysse.lemmyapi.enums.FederationMode import it.vercruysse.lemmyapi.enums.NotificationType import it.vercruysse.lemmyapi.enums.SortType import it.vercruysse.lemmyapi.enums.VoteShow +import it.vercruysse.lemmyapi.v0.enums.CommunityVisibility as V0CommunityVisibility +import it.vercruysse.lemmyapi.v0.enums.ListingType as V0ListingType +import it.vercruysse.lemmyapi.v0.enums.ModlogActionType as V0ModlogActionType +import it.vercruysse.lemmyapi.v0.enums.PostFeatureType as V0PostFeatureType +import it.vercruysse.lemmyapi.v0.enums.PostListingMode as V0PostListingMode +import it.vercruysse.lemmyapi.v0.enums.RegistrationMode as V0RegistrationMode +import it.vercruysse.lemmyapi.v0.enums.SearchType as V0SearchType +import it.vercruysse.lemmyapi.v0.enums.SortType as V0SortType import it.vercruysse.lemmyapi.utils.toAt import it.vercruysse.lemmyapi.datatypes.AddAdmin as LemmyapiDatatypesAddAdmin import it.vercruysse.lemmyapi.datatypes.AddAdminResponse as LemmyapiDatatypesAddAdminResponse @@ -450,7 +458,7 @@ internal class Transformer : MapperGenerator { hidden = d.hidden, posting_restricted_to_mods = d.posting_restricted_to_mods, instance_id = d.instance_id, - visibility = d.visibility, + visibility = d.visibility.toUni(), subscribers = counts.subscribers, posts = counts.posts, comments = counts.comments, @@ -715,7 +723,7 @@ internal class Transformer : MapperGenerator { application_question = d.application_question, private_instance = d.private_instance, default_theme = d.default_theme, - default_post_listing_type = d.default_post_listing_type, + default_post_listing_type = d.default_post_listing_type.toUni(), legal_information = d.legal_information, application_email_admins = d.application_email_admins, slur_filter_regex = d.slur_filter_regex, @@ -724,11 +732,11 @@ internal class Transformer : MapperGenerator { captcha_difficulty = d.captcha_difficulty, published_at = d.published, updated_at = d.updated, - registration_mode = d.registration_mode, + registration_mode = d.registration_mode.toUni(), reports_email_admins = d.reports_email_admins, federation_signed_fetch = d.federation_signed_fetch, - default_post_listing_mode = d.default_post_listing_mode, - default_post_sort_type = d.default_sort_type, + default_post_listing_mode = d.default_post_listing_mode.toUni(), + default_post_sort_type = d.default_sort_type.toUni(), disallow_nsfw_content = !d.enable_nsfw, oauth_registration = false, disable_email_notifications = false, @@ -786,8 +794,8 @@ internal class Transformer : MapperGenerator { email = d.email, show_nsfw = d.show_nsfw, theme = d.theme, - default_post_sort_type = d.default_sort_type, - default_listing_type = d.default_listing_type, + default_post_sort_type = d.default_sort_type.toUni(), + default_listing_type = d.default_listing_type.toUni(), interface_language = d.interface_language, show_avatars = d.show_avatars, send_notifications_to_email = d.send_notifications_to_email, @@ -799,8 +807,7 @@ internal class Transformer : MapperGenerator { blur_nsfw = d.blur_nsfw, infinite_scroll_enabled = d.infinite_scroll_enabled, admin = d.admin, - post_listing_mode = d.post_listing_mode, - totp_2fa_enabled = d.totp_2fa_enabled, + post_listing_mode = d.post_listing_mode.toUni(), enable_animated_images = d.enable_animated_images, collapse_bot_comments = d.collapse_bot_comments, last_donation_notification_at = d.last_donation_notification, @@ -815,6 +822,7 @@ internal class Transformer : MapperGenerator { hide_media = false, default_post_time_range_seconds = null, default_items_per_page = 20, + totp_2fa_enabled = d.totp_2fa_enabled, ) override fun toUni(d: X11DatatypesLocalUserView): LemmyapiDatatypesLocalUserView = @@ -1222,7 +1230,7 @@ internal class Transformer : MapperGenerator { nsfw = d.nsfw, posting_restricted_to_mods = d.posting_restricted_to_mods, discussion_languages = d.discussion_languages, - visibility = d.visibility, + visibility = V0CommunityVisibility.fromUniNullable(d.visibility), ) override fun fromUni(d: LemmyapiDatatypesCreateCustomEmoji): X11DatatypesCreateCustomEmoji = @@ -1288,8 +1296,8 @@ internal class Transformer : MapperGenerator { application_question = d.application_question, private_instance = d.private_instance, default_theme = d.default_theme, - default_post_listing_type = d.default_post_listing_type, - default_sort_type = d.default_post_sort_type, + default_post_listing_type = V0ListingType.fromUniNullable(d.default_post_listing_type), + default_sort_type = V0SortType.fromUniNullable(d.default_post_sort_type), legal_information = d.legal_information, application_email_admins = d.application_email_admins, discussion_languages = d.discussion_languages, @@ -1312,9 +1320,9 @@ internal class Transformer : MapperGenerator { allowed_instances = d.allowed_instances, blocked_instances = d.blocked_instances, taglines = d.taglines, - registration_mode = d.registration_mode, + registration_mode = V0RegistrationMode.fromUniNullable(d.registration_mode), content_warning = d.content_warning, - default_post_listing_mode = d.default_post_listing_mode, + default_post_listing_mode = V0PostListingMode.fromUniNullable(d.default_post_listing_mode), ) override fun fromUni(d: LemmyapiDatatypesDeleteAccount): X11DatatypesDeleteAccount = @@ -1375,7 +1383,7 @@ internal class Transformer : MapperGenerator { nsfw = d.nsfw, posting_restricted_to_mods = d.posting_restricted_to_mods, discussion_languages = d.discussion_languages, - visibility = d.visibility, + visibility = V0CommunityVisibility.fromUniNullable(d.visibility), ) override fun fromUni(d: LemmyapiDatatypesEditCustomEmoji): X11DatatypesEditCustomEmoji = @@ -1417,8 +1425,8 @@ internal class Transformer : MapperGenerator { application_question = d.application_question, private_instance = d.private_instance, default_theme = d.default_theme, - default_post_listing_type = d.default_post_listing_type, - default_sort_type = d.default_post_sort_type, + default_post_listing_type = V0ListingType.fromUniNullable(d.default_post_listing_type), + default_sort_type = V0SortType.fromUniNullable(d.default_post_sort_type), legal_information = d.legal_information, application_email_admins = d.application_email_admins, hide_modlog_mod_names = d.hide_modlog_mod_names, @@ -1444,17 +1452,17 @@ internal class Transformer : MapperGenerator { blocked_instances = d.blocked_instances, blocked_urls = d.blocked_urls, taglines = d.taglines, - registration_mode = d.registration_mode, + registration_mode = V0RegistrationMode.fromUniNullable(d.registration_mode), reports_email_admins = d.reports_email_admins, content_warning = d.content_warning, - default_post_listing_mode = d.default_post_listing_mode, + default_post_listing_mode = V0PostListingMode.fromUniNullable(d.default_post_listing_mode), ) override fun fromUni(d: LemmyapiDatatypesFeaturePost): X11DatatypesFeaturePost = X11DatatypesFeaturePost( post_id = d.post_id, featured = d.featured, - feature_type = d.feature_type, + feature_type = V0PostFeatureType.fromUni(d.feature_type), ) override fun fromUni(d: LemmyapiDatatypesFollowCommunity): X11DatatypesFollowCommunity = @@ -1470,8 +1478,8 @@ internal class Transformer : MapperGenerator { override fun fromUni(d: LemmyapiDatatypesGetComments): X11DatatypesGetComments = X11DatatypesGetComments( - type_ = d.type_, - sort = d.sort, + type_ = V0ListingType.fromUniNullable(d.type_), + sort = V0CommentSortType.fromUniNullable(d.sort), max_depth = d.max_depth, page = d.page, limit = d.limit, @@ -1496,7 +1504,7 @@ internal class Transformer : MapperGenerator { community_id = d.community_id, page = d.page, limit = d.limit, - type_ = d.type_, + type_ = V0ModlogActionType.fromUniNullable(d.type_), other_person_id = d.other_person_id, post_id = d.post_id, comment_id = d.comment_id, @@ -1506,7 +1514,7 @@ internal class Transformer : MapperGenerator { X11DatatypesGetPersonDetails( person_id = d.person_id, username = d.username, - sort = d.sort, + sort = V0SortType.fromUniNullable(d.sort), page = d.page, limit = d.limit, community_id = d.community_id, @@ -1519,8 +1527,8 @@ internal class Transformer : MapperGenerator { ) override fun fromUni(d: LemmyapiDatatypesGetPosts): X11DatatypesGetPosts = X11DatatypesGetPosts( - type_ = d.type_, - sort = d.sort, + type_ = V0ListingType.fromUniNullable(d.type_), + sort = V0SortType.fromUniNullable(d.sort), page = d.page, limit = d.limit, community_id = d.community_id, @@ -1533,7 +1541,7 @@ internal class Transformer : MapperGenerator { fun fromUniR(d: LemmyapiDatatypesListNotifications): X11DatatypesGetReplies = X11DatatypesGetReplies( - sort = CommentSortType.New, + sort = V0CommentSortType.New, page = d.page, limit = d.limit, unread_only = d.unread_only, @@ -1541,7 +1549,7 @@ internal class Transformer : MapperGenerator { fun fromUniM(d: LemmyapiDatatypesListNotifications): X11DatatypesGetPersonMentions = X11DatatypesGetPersonMentions( - sort = CommentSortType.New, + sort = V0CommentSortType.New, page = d.page, limit = d.limit, unread_only = d.unread_only, @@ -1611,8 +1619,8 @@ internal class Transformer : MapperGenerator { override fun fromUni(d: LemmyapiDatatypesListCommunities): X11DatatypesListCommunities = X11DatatypesListCommunities( - type_ = d.type_, - sort = d.sort, + type_ = V0ListingType.fromUniNullable(d.type_), + sort = V0SortType.fromUniNullable(d.sort), show_nsfw = d.show_nsfw, page = d.page, limit = d.limit, @@ -1775,8 +1783,8 @@ internal class Transformer : MapperGenerator { show_nsfw = d.show_nsfw, blur_nsfw = d.blur_nsfw, theme = d.theme, - default_sort_type = d.default_post_sort_type, - default_listing_type = d.default_listing_type, + default_sort_type = V0SortType.fromUniNullable(d.default_post_sort_type), + default_listing_type = V0ListingType.fromUniNullable(d.default_listing_type), interface_language = d.interface_language, avatar = d.avatar, banner = d.banner, @@ -1792,7 +1800,7 @@ internal class Transformer : MapperGenerator { discussion_languages = d.discussion_languages, open_links_in_new_tab = d.open_links_in_new_tab, infinite_scroll_enabled = d.infinite_scroll_enabled, - post_listing_mode = d.post_listing_mode, + post_listing_mode = V0PostListingMode.fromUniNullable(d.post_listing_mode), enable_animated_images = d.enable_animated_images, collapse_bot_comments = d.collapse_bot_comments, show_scores = d.show_score, @@ -1810,9 +1818,9 @@ internal class Transformer : MapperGenerator { community_id = d.community_id, community_name = d.community_name, creator_id = d.creator_id, - type_ = d.type_, - sort = d.sort, - listing_type = d.listing_type, + type_ = V0SearchType.fromUniNullable(d.type_), + sort = V0SortType.fromUniNullable(d.sort), + listing_type = V0ListingType.fromUniNullable(d.listing_type), page = d.page, limit = d.limit, post_title_only = d.title_only, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CommentReplyView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CommentReplyView.kt index 92be924a..e071c8a2 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CommentReplyView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CommentReplyView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -import it.vercruysse.lemmyapi.enums.SubscribedType +import it.vercruysse.lemmyapi.v0.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CommentReportView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CommentReportView.kt index 17fe6652..c70fd60e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CommentReportView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CommentReportView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -import it.vercruysse.lemmyapi.enums.SubscribedType +import it.vercruysse.lemmyapi.v0.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CommentView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CommentView.kt index 2c3b6778..97c0ab4d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CommentView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CommentView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -import it.vercruysse.lemmyapi.enums.SubscribedType +import it.vercruysse.lemmyapi.v0.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/Community.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/Community.kt index 8dbbf70b..6ca4e02f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/Community.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/Community.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -import it.vercruysse.lemmyapi.enums.CommunityVisibility +import it.vercruysse.lemmyapi.v0.enums.CommunityVisibility import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CommunityView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CommunityView.kt index 66fc81ff..b8174219 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CommunityView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CommunityView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -import it.vercruysse.lemmyapi.enums.SubscribedType +import it.vercruysse.lemmyapi.v0.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CreateCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CreateCommunity.kt index d02e09e4..bd1d5490 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CreateCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CreateCommunity.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -import it.vercruysse.lemmyapi.enums.CommunityVisibility +import it.vercruysse.lemmyapi.v0.enums.CommunityVisibility import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CreateSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CreateSite.kt index 8fdc4ea3..499a0d54 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CreateSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/CreateSite.kt @@ -1,9 +1,9 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -import it.vercruysse.lemmyapi.enums.ListingType -import it.vercruysse.lemmyapi.enums.PostListingMode -import it.vercruysse.lemmyapi.enums.RegistrationMode -import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.v0.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.PostListingMode +import it.vercruysse.lemmyapi.v0.enums.RegistrationMode +import it.vercruysse.lemmyapi.v0.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/EditCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/EditCommunity.kt index bc6f9008..3218fb35 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/EditCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/EditCommunity.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -import it.vercruysse.lemmyapi.enums.CommunityVisibility +import it.vercruysse.lemmyapi.v0.enums.CommunityVisibility import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/EditSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/EditSite.kt index 4f23928d..9c30a327 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/EditSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/EditSite.kt @@ -1,9 +1,9 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -import it.vercruysse.lemmyapi.enums.ListingType -import it.vercruysse.lemmyapi.enums.PostListingMode -import it.vercruysse.lemmyapi.enums.RegistrationMode -import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.v0.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.PostListingMode +import it.vercruysse.lemmyapi.v0.enums.RegistrationMode +import it.vercruysse.lemmyapi.v0.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/FeaturePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/FeaturePost.kt index 53fa8377..acb41037 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/FeaturePost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/FeaturePost.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -import it.vercruysse.lemmyapi.enums.PostFeatureType +import it.vercruysse.lemmyapi.v0.enums.PostFeatureType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/GetComments.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/GetComments.kt index 7d776030..82596949 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/GetComments.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/GetComments.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -import it.vercruysse.lemmyapi.enums.CommentSortType -import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.CommentSortType +import it.vercruysse.lemmyapi.v0.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/GetModlog.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/GetModlog.kt index 84b1b94f..10c5eef0 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/GetModlog.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/GetModlog.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -import it.vercruysse.lemmyapi.enums.ModlogActionType +import it.vercruysse.lemmyapi.v0.enums.ModlogActionType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/GetPersonDetails.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/GetPersonDetails.kt index 30d67ae9..0e011e6c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/GetPersonDetails.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/GetPersonDetails.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.v0.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/GetPersonMentions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/GetPersonMentions.kt index 5b58a8db..fc106d27 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/GetPersonMentions.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/GetPersonMentions.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -import it.vercruysse.lemmyapi.enums.CommentSortType +import it.vercruysse.lemmyapi.v0.enums.CommentSortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/GetPosts.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/GetPosts.kt index fa425b67..512f125b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/GetPosts.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/GetPosts.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -import it.vercruysse.lemmyapi.enums.ListingType -import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.v0.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/GetReplies.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/GetReplies.kt index 7e59a156..694fbc36 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/GetReplies.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/GetReplies.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -import it.vercruysse.lemmyapi.enums.CommentSortType +import it.vercruysse.lemmyapi.v0.enums.CommentSortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/ListCommunities.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/ListCommunities.kt index 3677facb..8d2af658 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/ListCommunities.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/ListCommunities.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -import it.vercruysse.lemmyapi.enums.ListingType -import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.v0.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/LocalSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/LocalSite.kt index 8d2cc480..86f3595f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/LocalSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/LocalSite.kt @@ -1,9 +1,9 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -import it.vercruysse.lemmyapi.enums.ListingType -import it.vercruysse.lemmyapi.enums.PostListingMode -import it.vercruysse.lemmyapi.enums.RegistrationMode -import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.v0.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.PostListingMode +import it.vercruysse.lemmyapi.v0.enums.RegistrationMode +import it.vercruysse.lemmyapi.v0.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/LocalUser.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/LocalUser.kt index f17d04fa..d3457bd4 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/LocalUser.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/LocalUser.kt @@ -1,8 +1,8 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -import it.vercruysse.lemmyapi.enums.ListingType -import it.vercruysse.lemmyapi.enums.PostListingMode -import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.v0.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.PostListingMode +import it.vercruysse.lemmyapi.v0.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/PersonMentionView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/PersonMentionView.kt index dcbe75f2..2bfa94ed 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/PersonMentionView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/PersonMentionView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -import it.vercruysse.lemmyapi.enums.SubscribedType +import it.vercruysse.lemmyapi.v0.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/PostReportView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/PostReportView.kt index 6bf462be..418b2373 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/PostReportView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/PostReportView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -import it.vercruysse.lemmyapi.enums.SubscribedType +import it.vercruysse.lemmyapi.v0.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/PostView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/PostView.kt index 64321e0d..84cfaf8e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/PostView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/PostView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -import it.vercruysse.lemmyapi.enums.SubscribedType +import it.vercruysse.lemmyapi.v0.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/SaveUserSettings.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/SaveUserSettings.kt index 9bd9aba9..efb2f90f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/SaveUserSettings.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/SaveUserSettings.kt @@ -1,8 +1,8 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -import it.vercruysse.lemmyapi.enums.ListingType -import it.vercruysse.lemmyapi.enums.PostListingMode -import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.v0.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.PostListingMode +import it.vercruysse.lemmyapi.v0.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/Search.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/Search.kt index 174e86a9..20b5d9aa 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/Search.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/Search.kt @@ -1,8 +1,8 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -import it.vercruysse.lemmyapi.enums.ListingType -import it.vercruysse.lemmyapi.enums.SearchType -import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.v0.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.SearchType +import it.vercruysse.lemmyapi.v0.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/SearchResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/SearchResponse.kt index 6cb27e8f..ea6ffd51 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/SearchResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/datatypes/SearchResponse.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x11.datatypes -import it.vercruysse.lemmyapi.enums.SearchType +import it.vercruysse.lemmyapi.v0.enums.SearchType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt index ccb14b6a..56af68ca 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt @@ -8,7 +8,7 @@ import it.vercruysse.lemmyapi.datatypes.Notification import it.vercruysse.lemmyapi.datatypes.NotificationView import it.vercruysse.lemmyapi.datatypes.PersonActions import it.vercruysse.lemmyapi.datatypes.PostActions -import it.vercruysse.lemmyapi.enums.CommentSortType +import it.vercruysse.lemmyapi.v0.enums.CommentSortType as V0CommentSortType import it.vercruysse.lemmyapi.enums.CommunityFollowerState import it.vercruysse.lemmyapi.enums.CommunityVisibility import it.vercruysse.lemmyapi.enums.FederationMode @@ -16,6 +16,13 @@ import it.vercruysse.lemmyapi.enums.NotificationType import it.vercruysse.lemmyapi.enums.PostListingMode import it.vercruysse.lemmyapi.enums.SortType import it.vercruysse.lemmyapi.enums.VoteShow +import it.vercruysse.lemmyapi.v0.enums.ListingType as V0ListingType +import it.vercruysse.lemmyapi.v0.enums.ModlogActionType as V0ModlogActionType +import it.vercruysse.lemmyapi.v0.enums.PostFeatureType as V0PostFeatureType +import it.vercruysse.lemmyapi.v0.enums.PostListingMode as V0PostListingMode +import it.vercruysse.lemmyapi.v0.enums.RegistrationMode as V0RegistrationMode +import it.vercruysse.lemmyapi.v0.enums.SearchType as V0SearchType +import it.vercruysse.lemmyapi.v0.enums.SortType as V0SortType import it.vercruysse.lemmyapi.utils.toAt import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.SiteMetadata import it.vercruysse.lemmyapi.datatypes.AddAdmin as LemmyapiDatatypesAddAdmin @@ -415,7 +422,7 @@ internal class Transformer : MapperGenerator { application_question = d.application_question, private_instance = d.private_instance, default_theme = d.default_theme, - default_post_listing_type = d.default_post_listing_type, + default_post_listing_type = d.default_post_listing_type.toUni(), legal_information = d.legal_information, application_email_admins = d.application_email_admins, slur_filter_regex = d.slur_filter_regex, @@ -424,7 +431,7 @@ internal class Transformer : MapperGenerator { captcha_difficulty = d.captcha_difficulty, published_at = d.published, updated_at = d.updated, - registration_mode = d.registration_mode, + registration_mode = d.registration_mode.toUni(), reports_email_admins = d.reports_email_admins, federation_signed_fetch = d.federation_signed_fetch, default_post_listing_mode = PostListingMode.Card, @@ -775,8 +782,8 @@ internal class Transformer : MapperGenerator { email = d.email, show_nsfw = d.show_nsfw, theme = d.theme, - default_post_sort_type = d.default_sort_type, - default_listing_type = d.default_listing_type, + default_post_sort_type = d.default_sort_type.toUni(), + default_listing_type = d.default_listing_type.toUni(), interface_language = d.interface_language, show_avatars = d.show_avatars, send_notifications_to_email = d.send_notifications_to_email, @@ -788,8 +795,7 @@ internal class Transformer : MapperGenerator { blur_nsfw = d.blur_nsfw, infinite_scroll_enabled = d.infinite_scroll_enabled, admin = d.admin, - post_listing_mode = d.post_listing_mode, - totp_2fa_enabled = d.totp_2fa_enabled, + post_listing_mode = d.post_listing_mode.toUni(), enable_animated_images = d.enable_animated_images, collapse_bot_comments = d.collapse_bot_comments, last_donation_notification_at = "", @@ -804,6 +810,7 @@ internal class Transformer : MapperGenerator { auto_mark_fetched_posts_as_read = false, default_post_time_range_seconds = null, default_items_per_page = 20, + totp_2fa_enabled = d.totp_2fa_enabled, ) override fun toUni(d: X3DatatypesLocalUserView): LemmyapiDatatypesLocalUserView = @@ -1225,7 +1232,7 @@ internal class Transformer : MapperGenerator { application_question = d.application_question, private_instance = d.private_instance, default_theme = d.default_theme, - default_post_listing_type = d.default_post_listing_type, + default_post_listing_type = V0ListingType.fromUniNullable(d.default_post_listing_type), legal_information = d.legal_information, application_email_admins = d.application_email_admins, discussion_languages = d.discussion_languages, @@ -1248,7 +1255,7 @@ internal class Transformer : MapperGenerator { allowed_instances = d.allowed_instances, blocked_instances = d.blocked_instances, taglines = d.taglines, - registration_mode = d.registration_mode, + registration_mode = V0RegistrationMode.fromUniNullable(d.registration_mode), ) override fun fromUni(d: LemmyapiDatatypesDeleteAccount): X3DatatypesDeleteAccount = @@ -1348,7 +1355,7 @@ internal class Transformer : MapperGenerator { application_question = d.application_question, private_instance = d.private_instance, default_theme = d.default_theme, - default_post_listing_type = d.default_post_listing_type, + default_post_listing_type = V0ListingType.fromUniNullable(d.default_post_listing_type), legal_information = d.legal_information, application_email_admins = d.application_email_admins, hide_modlog_mod_names = d.hide_modlog_mod_names, @@ -1373,7 +1380,7 @@ internal class Transformer : MapperGenerator { allowed_instances = d.allowed_instances, blocked_instances = d.blocked_instances, taglines = d.taglines, - registration_mode = d.registration_mode, + registration_mode = V0RegistrationMode.fromUniNullable(d.registration_mode), reports_email_admins = d.reports_email_admins, ) @@ -1381,7 +1388,7 @@ internal class Transformer : MapperGenerator { X3DatatypesFeaturePost( post_id = d.post_id, featured = d.featured, - feature_type = d.feature_type, + feature_type = V0PostFeatureType.fromUni(d.feature_type), ) override fun fromUni(d: LemmyapiDatatypesFollowCommunity): X3DatatypesFollowCommunity = @@ -1397,9 +1404,8 @@ internal class Transformer : MapperGenerator { override fun fromUni(d: LemmyapiDatatypesGetComments): X3DatatypesGetComments = X3DatatypesGetComments( - type_ = d.type_, - sort = d.sort, - max_depth = d.max_depth, + type_ = V0ListingType.fromUniNullable(d.type_), + sort = V0CommentSortType.fromUniNullable(d.sort), page = d.page, limit = d.limit, community_id = d.community_id, @@ -1422,7 +1428,7 @@ internal class Transformer : MapperGenerator { community_id = d.community_id, page = d.page, limit = d.limit, - type_ = d.type_, + type_ = V0ModlogActionType.fromUniNullable(d.type_), other_person_id = d.other_person_id, ) @@ -1430,7 +1436,7 @@ internal class Transformer : MapperGenerator { X3DatatypesGetPersonDetails( person_id = d.person_id, username = d.username, - sort = d.sort, + sort = V0SortType.fromUniNullable(d.sort), page = d.page, limit = d.limit, community_id = d.community_id, @@ -1443,8 +1449,8 @@ internal class Transformer : MapperGenerator { ) override fun fromUni(d: LemmyapiDatatypesGetPosts): X3DatatypesGetPosts = X3DatatypesGetPosts( - type_ = d.type_, - sort = d.sort, + type_ = V0ListingType.fromUniNullable(d.type_), + sort = V0SortType.fromUniNullable(d.sort), page = d.page, limit = d.limit, community_id = d.community_id, @@ -1454,7 +1460,7 @@ internal class Transformer : MapperGenerator { fun fromUniR(d: LemmyapiDatatypesListNotifications): X3DatatypesGetReplies = X3DatatypesGetReplies( - sort = CommentSortType.New, + sort = V0CommentSortType.New, page = d.page, limit = d.limit, unread_only = d.unread_only, @@ -1462,7 +1468,7 @@ internal class Transformer : MapperGenerator { fun fromUniM(d: LemmyapiDatatypesListNotifications): X3DatatypesGetPersonMentions = X3DatatypesGetPersonMentions( - sort = CommentSortType.New, + sort = V0CommentSortType.New, page = d.page, limit = d.limit, unread_only = d.unread_only, @@ -1521,8 +1527,8 @@ internal class Transformer : MapperGenerator { override fun fromUni(d: LemmyapiDatatypesListCommunities): X3DatatypesListCommunities = X3DatatypesListCommunities( - type_ = d.type_, - sort = d.sort, + type_ = V0ListingType.fromUniNullable(d.type_), + sort = V0SortType.fromUniNullable(d.sort), show_nsfw = d.show_nsfw, page = d.page, limit = d.limit, @@ -1679,8 +1685,8 @@ internal class Transformer : MapperGenerator { blur_nsfw = d.blur_nsfw, show_scores = d.show_score, theme = d.theme, - default_sort_type = d.default_post_sort_type, - default_listing_type = d.default_listing_type, + default_sort_type = V0SortType.fromUniNullable(d.default_post_sort_type), + default_listing_type = V0ListingType.fromUniNullable(d.default_listing_type), interface_language = d.interface_language, avatar = d.avatar, banner = d.banner, @@ -1696,8 +1702,7 @@ internal class Transformer : MapperGenerator { discussion_languages = d.discussion_languages, open_links_in_new_tab = d.open_links_in_new_tab, infinite_scroll_enabled = d.infinite_scroll_enabled, - post_listing_mode = d.post_listing_mode, - enable_animated_images = d.enable_animated_images, + post_listing_mode = V0PostListingMode.fromUniNullable(d.post_listing_mode), collapse_bot_comments = d.collapse_bot_comments, ) @@ -1706,9 +1711,9 @@ internal class Transformer : MapperGenerator { community_id = d.community_id, community_name = d.community_name, creator_id = d.creator_id, - type_ = d.type_, - sort = d.sort, - listing_type = d.listing_type, + type_ = V0SearchType.fromUniNullable(d.type_), + sort = V0SortType.fromUniNullable(d.sort), + listing_type = V0ListingType.fromUniNullable(d.listing_type), page = d.page, limit = d.limit, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/CommentReplyView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/CommentReplyView.kt index fc6831fe..8040c9bf 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/CommentReplyView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/CommentReplyView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -import it.vercruysse.lemmyapi.enums.SubscribedType +import it.vercruysse.lemmyapi.v0.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/CommentView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/CommentView.kt index a38c58e5..3b56d678 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/CommentView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/CommentView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -import it.vercruysse.lemmyapi.enums.SubscribedType +import it.vercruysse.lemmyapi.v0.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/CommunityView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/CommunityView.kt index 349d317e..d610b683 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/CommunityView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/CommunityView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -import it.vercruysse.lemmyapi.enums.SubscribedType +import it.vercruysse.lemmyapi.v0.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/CreateSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/CreateSite.kt index 6ec6be30..1d43d6e4 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/CreateSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/CreateSite.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -import it.vercruysse.lemmyapi.enums.RegistrationMode -import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.RegistrationMode +import it.vercruysse.lemmyapi.v0.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/EditSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/EditSite.kt index ae743d39..395fa12a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/EditSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/EditSite.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -import it.vercruysse.lemmyapi.enums.RegistrationMode -import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.RegistrationMode +import it.vercruysse.lemmyapi.v0.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/FeaturePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/FeaturePost.kt index cb5e3fd6..b1b272a4 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/FeaturePost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/FeaturePost.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -import it.vercruysse.lemmyapi.enums.PostFeatureType +import it.vercruysse.lemmyapi.v0.enums.PostFeatureType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/GetComments.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/GetComments.kt index fb2db0a3..425f3b46 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/GetComments.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/GetComments.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -import it.vercruysse.lemmyapi.enums.CommentSortType -import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.CommentSortType +import it.vercruysse.lemmyapi.v0.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/GetModlog.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/GetModlog.kt index 23d74388..c3117f29 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/GetModlog.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/GetModlog.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -import it.vercruysse.lemmyapi.enums.ModlogActionType +import it.vercruysse.lemmyapi.v0.enums.ModlogActionType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/GetPersonDetails.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/GetPersonDetails.kt index 1ebf0a2d..18f63a40 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/GetPersonDetails.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/GetPersonDetails.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.v0.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/GetPersonMentions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/GetPersonMentions.kt index af789ab1..3521be20 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/GetPersonMentions.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/GetPersonMentions.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -import it.vercruysse.lemmyapi.enums.CommentSortType +import it.vercruysse.lemmyapi.v0.enums.CommentSortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/GetPosts.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/GetPosts.kt index cfdcd5ae..fcbaf01e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/GetPosts.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/GetPosts.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -import it.vercruysse.lemmyapi.enums.SortType -import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.SortType +import it.vercruysse.lemmyapi.v0.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/GetReplies.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/GetReplies.kt index 7bc7b709..a14f9742 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/GetReplies.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/GetReplies.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -import it.vercruysse.lemmyapi.enums.CommentSortType +import it.vercruysse.lemmyapi.v0.enums.CommentSortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/ListCommunities.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/ListCommunities.kt index 41f5a68d..17425225 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/ListCommunities.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/ListCommunities.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -import it.vercruysse.lemmyapi.enums.SortType -import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.SortType +import it.vercruysse.lemmyapi.v0.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/LocalSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/LocalSite.kt index 09f5731c..4535552e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/LocalSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/LocalSite.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -import it.vercruysse.lemmyapi.enums.RegistrationMode -import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.RegistrationMode +import it.vercruysse.lemmyapi.v0.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/LocalUser.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/LocalUser.kt index 00d1f64a..a17590e9 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/LocalUser.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/LocalUser.kt @@ -1,8 +1,8 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -import it.vercruysse.lemmyapi.enums.PostListingMode -import it.vercruysse.lemmyapi.enums.ListingType -import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.v0.enums.PostListingMode +import it.vercruysse.lemmyapi.v0.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/PersonMentionView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/PersonMentionView.kt index c1b2bd47..b7ada493 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/PersonMentionView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/PersonMentionView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -import it.vercruysse.lemmyapi.enums.SubscribedType +import it.vercruysse.lemmyapi.v0.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/PostView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/PostView.kt index 461b5897..19bbb5b9 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/PostView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/PostView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -import it.vercruysse.lemmyapi.enums.SubscribedType +import it.vercruysse.lemmyapi.v0.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/SaveUserSettings.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/SaveUserSettings.kt index ed19eb84..9bb86d34 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/SaveUserSettings.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/SaveUserSettings.kt @@ -1,8 +1,8 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -import it.vercruysse.lemmyapi.enums.PostListingMode -import it.vercruysse.lemmyapi.enums.ListingType -import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.v0.enums.PostListingMode +import it.vercruysse.lemmyapi.v0.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/Search.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/Search.kt index d92e6ae4..c91d7e42 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/Search.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/Search.kt @@ -1,8 +1,8 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -import it.vercruysse.lemmyapi.enums.ListingType -import it.vercruysse.lemmyapi.enums.SortType -import it.vercruysse.lemmyapi.enums.SearchType +import it.vercruysse.lemmyapi.v0.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.SortType +import it.vercruysse.lemmyapi.v0.enums.SearchType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/SearchResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/SearchResponse.kt index f61b0397..1444cb54 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/SearchResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/SearchResponse.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -import it.vercruysse.lemmyapi.enums.SearchType +import it.vercruysse.lemmyapi.v0.enums.SearchType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt index e6c249e5..6769c110 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt @@ -7,12 +7,20 @@ import it.vercruysse.lemmyapi.datatypes.Notification import it.vercruysse.lemmyapi.datatypes.NotificationView import it.vercruysse.lemmyapi.datatypes.PersonActions import it.vercruysse.lemmyapi.datatypes.PostActions -import it.vercruysse.lemmyapi.enums.CommentSortType +import it.vercruysse.lemmyapi.v0.enums.CommentSortType as V0CommentSortType import it.vercruysse.lemmyapi.enums.CommunityFollowerState import it.vercruysse.lemmyapi.enums.FederationMode import it.vercruysse.lemmyapi.enums.NotificationType import it.vercruysse.lemmyapi.enums.SortType import it.vercruysse.lemmyapi.enums.VoteShow +import it.vercruysse.lemmyapi.v0.enums.CommunityVisibility as V0CommunityVisibility +import it.vercruysse.lemmyapi.v0.enums.ListingType as V0ListingType +import it.vercruysse.lemmyapi.v0.enums.ModlogActionType as V0ModlogActionType +import it.vercruysse.lemmyapi.v0.enums.PostFeatureType as V0PostFeatureType +import it.vercruysse.lemmyapi.v0.enums.PostListingMode as V0PostListingMode +import it.vercruysse.lemmyapi.v0.enums.RegistrationMode as V0RegistrationMode +import it.vercruysse.lemmyapi.v0.enums.SearchType as V0SearchType +import it.vercruysse.lemmyapi.v0.enums.SortType as V0SortType import it.vercruysse.lemmyapi.utils.toAt import it.vercruysse.lemmyapi.datatypes.AddAdmin as LemmyapiDatatypesAddAdmin import it.vercruysse.lemmyapi.datatypes.AddAdminResponse as LemmyapiDatatypesAddAdminResponse @@ -448,7 +456,7 @@ internal class Transformer : MapperGenerator { hidden = d.hidden, posting_restricted_to_mods = d.posting_restricted_to_mods, instance_id = d.instance_id, - visibility = d.visibility, + visibility = d.visibility.toUni(), subscribers = counts.subscribers, posts = counts.posts, comments = counts.comments, @@ -711,7 +719,7 @@ internal class Transformer : MapperGenerator { application_question = d.application_question, private_instance = d.private_instance, default_theme = d.default_theme, - default_post_listing_type = d.default_post_listing_type, + default_post_listing_type = d.default_post_listing_type.toUni(), legal_information = d.legal_information, application_email_admins = d.application_email_admins, slur_filter_regex = d.slur_filter_regex, @@ -720,11 +728,11 @@ internal class Transformer : MapperGenerator { captcha_difficulty = d.captcha_difficulty, published_at = d.published, updated_at = d.updated, - registration_mode = d.registration_mode, + registration_mode = d.registration_mode.toUni(), reports_email_admins = d.reports_email_admins, federation_signed_fetch = d.federation_signed_fetch, - default_post_listing_mode = d.default_post_listing_mode, - default_post_sort_type = d.default_sort_type, + default_post_listing_mode = d.default_post_listing_mode.toUni(), + default_post_sort_type = d.default_sort_type.toUni(), disallow_nsfw_content = !d.enable_nsfw, oauth_registration = false, disable_email_notifications = false, @@ -782,8 +790,8 @@ internal class Transformer : MapperGenerator { email = d.email, show_nsfw = d.show_nsfw, theme = d.theme, - default_post_sort_type = d.default_sort_type, - default_listing_type = d.default_listing_type, + default_post_sort_type = d.default_sort_type.toUni(), + default_listing_type = d.default_listing_type.toUni(), interface_language = d.interface_language, show_avatars = d.show_avatars, send_notifications_to_email = d.send_notifications_to_email, @@ -795,8 +803,7 @@ internal class Transformer : MapperGenerator { blur_nsfw = d.blur_nsfw, infinite_scroll_enabled = d.infinite_scroll_enabled, admin = d.admin, - post_listing_mode = d.post_listing_mode, - totp_2fa_enabled = d.totp_2fa_enabled, + post_listing_mode = d.post_listing_mode.toUni(), enable_animated_images = d.enable_animated_images, collapse_bot_comments = d.collapse_bot_comments, last_donation_notification_at = "", @@ -811,8 +818,8 @@ internal class Transformer : MapperGenerator { auto_mark_fetched_posts_as_read = false, default_post_time_range_seconds = null, default_items_per_page = 20, - - ) + totp_2fa_enabled = d.totp_2fa_enabled, + ) override fun toUni(d: X4DatatypesLocalUserView): LemmyapiDatatypesLocalUserView = LemmyapiDatatypesLocalUserView( @@ -1214,7 +1221,7 @@ internal class Transformer : MapperGenerator { nsfw = d.nsfw, posting_restricted_to_mods = d.posting_restricted_to_mods, discussion_languages = d.discussion_languages, - visibility = d.visibility, + visibility = V0CommunityVisibility.fromUniNullable(d.visibility), ) override fun fromUni(d: LemmyapiDatatypesCreateCustomEmoji): X4DatatypesCreateCustomEmoji = @@ -1280,8 +1287,8 @@ internal class Transformer : MapperGenerator { application_question = d.application_question, private_instance = d.private_instance, default_theme = d.default_theme, - default_post_listing_type = d.default_post_listing_type, - default_sort_type = d.default_post_sort_type, + default_post_listing_type = V0ListingType.fromUniNullable(d.default_post_listing_type), + default_sort_type = V0SortType.fromUniNullable(d.default_post_sort_type), legal_information = d.legal_information, application_email_admins = d.application_email_admins, discussion_languages = d.discussion_languages, @@ -1304,9 +1311,9 @@ internal class Transformer : MapperGenerator { allowed_instances = d.allowed_instances, blocked_instances = d.blocked_instances, taglines = d.taglines, - registration_mode = d.registration_mode, + registration_mode = V0RegistrationMode.fromUniNullable(d.registration_mode), content_warning = d.content_warning, - default_post_listing_mode = d.default_post_listing_mode, + default_post_listing_mode = V0PostListingMode.fromUniNullable(d.default_post_listing_mode), ) override fun fromUni(d: LemmyapiDatatypesDeleteAccount): X4DatatypesDeleteAccount = @@ -1367,7 +1374,7 @@ internal class Transformer : MapperGenerator { nsfw = d.nsfw, posting_restricted_to_mods = d.posting_restricted_to_mods, discussion_languages = d.discussion_languages, - visibility = d.visibility, + visibility = V0CommunityVisibility.fromUniNullable(d.visibility), ) override fun fromUni(d: LemmyapiDatatypesEditCustomEmoji): X4DatatypesEditCustomEmoji = @@ -1409,8 +1416,8 @@ internal class Transformer : MapperGenerator { application_question = d.application_question, private_instance = d.private_instance, default_theme = d.default_theme, - default_post_listing_type = d.default_post_listing_type, - default_sort_type = d.default_post_sort_type, + default_post_listing_type = V0ListingType.fromUniNullable(d.default_post_listing_type), + default_sort_type = V0SortType.fromUniNullable(d.default_post_sort_type), legal_information = d.legal_information, application_email_admins = d.application_email_admins, hide_modlog_mod_names = d.hide_modlog_mod_names, @@ -1436,17 +1443,17 @@ internal class Transformer : MapperGenerator { blocked_instances = d.blocked_instances, blocked_urls = d.blocked_urls, taglines = d.taglines, - registration_mode = d.registration_mode, + registration_mode = V0RegistrationMode.fromUniNullable(d.registration_mode), reports_email_admins = d.reports_email_admins, content_warning = d.content_warning, - default_post_listing_mode = d.default_post_listing_mode, + default_post_listing_mode = V0PostListingMode.fromUniNullable(d.default_post_listing_mode), ) override fun fromUni(d: LemmyapiDatatypesFeaturePost): X4DatatypesFeaturePost = X4DatatypesFeaturePost( post_id = d.post_id, featured = d.featured, - feature_type = d.feature_type, + feature_type = V0PostFeatureType.fromUni(d.feature_type), ) override fun fromUni(d: LemmyapiDatatypesFollowCommunity): X4DatatypesFollowCommunity = @@ -1462,8 +1469,8 @@ internal class Transformer : MapperGenerator { override fun fromUni(d: LemmyapiDatatypesGetComments): X4DatatypesGetComments = X4DatatypesGetComments( - type_ = d.type_, - sort = d.sort, + type_ = V0ListingType.fromUniNullable(d.type_), + sort = V0CommentSortType.fromUniNullable(d.sort), max_depth = d.max_depth, page = d.page, limit = d.limit, @@ -1487,7 +1494,7 @@ internal class Transformer : MapperGenerator { community_id = d.community_id, page = d.page, limit = d.limit, - type_ = d.type_, + type_ = V0ModlogActionType.fromUniNullable(d.type_), other_person_id = d.other_person_id, post_id = d.post_id, comment_id = d.comment_id, @@ -1497,7 +1504,7 @@ internal class Transformer : MapperGenerator { X4DatatypesGetPersonDetails( person_id = d.person_id, username = d.username, - sort = d.sort, + sort = V0SortType.fromUniNullable(d.sort), page = d.page, limit = d.limit, community_id = d.community_id, @@ -1510,8 +1517,8 @@ internal class Transformer : MapperGenerator { ) override fun fromUni(d: LemmyapiDatatypesGetPosts): X4DatatypesGetPosts = X4DatatypesGetPosts( - type_ = d.type_, - sort = d.sort, + type_ = V0ListingType.fromUniNullable(d.type_), + sort = V0SortType.fromUniNullable(d.sort), page = d.page, limit = d.limit, community_id = d.community_id, @@ -1522,7 +1529,7 @@ internal class Transformer : MapperGenerator { fun fromUniR(d: LemmyapiDatatypesListNotifications): X4DatatypesGetReplies = X4DatatypesGetReplies( - sort = CommentSortType.New, + sort = V0CommentSortType.New, page = d.page, limit = d.limit, unread_only = d.unread_only, @@ -1530,7 +1537,7 @@ internal class Transformer : MapperGenerator { fun fromUniM(d: LemmyapiDatatypesListNotifications): X4DatatypesGetPersonMentions = X4DatatypesGetPersonMentions( - sort = CommentSortType.New, + sort = V0CommentSortType.New, page = d.page, limit = d.limit, unread_only = d.unread_only, @@ -1593,8 +1600,8 @@ internal class Transformer : MapperGenerator { override fun fromUni(d: LemmyapiDatatypesListCommunities): X4DatatypesListCommunities = X4DatatypesListCommunities( - type_ = d.type_, - sort = d.sort, + type_ = V0ListingType.fromUniNullable(d.type_), + sort = V0SortType.fromUniNullable(d.sort), show_nsfw = d.show_nsfw, page = d.page, limit = d.limit, @@ -1755,8 +1762,8 @@ internal class Transformer : MapperGenerator { show_nsfw = d.show_nsfw, blur_nsfw = d.blur_nsfw, theme = d.theme, - default_sort_type = d.default_post_sort_type, - default_listing_type = d.default_listing_type, + default_sort_type = V0SortType.fromUniNullable(d.default_post_sort_type), + default_listing_type = V0ListingType.fromUniNullable(d.default_listing_type), interface_language = d.interface_language, avatar = d.avatar, banner = d.banner, @@ -1772,7 +1779,7 @@ internal class Transformer : MapperGenerator { discussion_languages = d.discussion_languages, open_links_in_new_tab = d.open_links_in_new_tab, infinite_scroll_enabled = d.infinite_scroll_enabled, - post_listing_mode = d.post_listing_mode, + post_listing_mode = V0PostListingMode.fromUniNullable(d.post_listing_mode), enable_animated_images = d.enable_animated_images, collapse_bot_comments = d.collapse_bot_comments, show_scores = d.show_score, @@ -1790,9 +1797,9 @@ internal class Transformer : MapperGenerator { community_id = d.community_id, community_name = d.community_name, creator_id = d.creator_id, - type_ = d.type_, - sort = d.sort, - listing_type = d.listing_type, + type_ = V0SearchType.fromUniNullable(d.type_), + sort = V0SortType.fromUniNullable(d.sort), + listing_type = V0ListingType.fromUniNullable(d.listing_type), page = d.page, limit = d.limit, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CommentReplyView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CommentReplyView.kt index 4988eb19..8f240774 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CommentReplyView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CommentReplyView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -import it.vercruysse.lemmyapi.enums.SubscribedType +import it.vercruysse.lemmyapi.v0.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CommentReportView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CommentReportView.kt index 2b9e3514..05afb0e0 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CommentReportView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CommentReportView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -import it.vercruysse.lemmyapi.enums.SubscribedType +import it.vercruysse.lemmyapi.v0.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CommentView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CommentView.kt index 12cdba10..0ee22d53 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CommentView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CommentView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -import it.vercruysse.lemmyapi.enums.SubscribedType +import it.vercruysse.lemmyapi.v0.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/Community.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/Community.kt index 4eadd479..6ae7fec5 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/Community.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/Community.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -import it.vercruysse.lemmyapi.enums.CommunityVisibility +import it.vercruysse.lemmyapi.v0.enums.CommunityVisibility import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CommunityView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CommunityView.kt index 51cb73c1..79f45a58 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CommunityView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CommunityView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -import it.vercruysse.lemmyapi.enums.SubscribedType +import it.vercruysse.lemmyapi.v0.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CreateCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CreateCommunity.kt index 265f66c9..91031a04 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CreateCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CreateCommunity.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -import it.vercruysse.lemmyapi.enums.CommunityVisibility +import it.vercruysse.lemmyapi.v0.enums.CommunityVisibility import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CreateSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CreateSite.kt index d20f91d0..d14f0db7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CreateSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CreateSite.kt @@ -1,9 +1,9 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -import it.vercruysse.lemmyapi.enums.PostListingMode -import it.vercruysse.lemmyapi.enums.RegistrationMode -import it.vercruysse.lemmyapi.enums.SortType -import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.PostListingMode +import it.vercruysse.lemmyapi.v0.enums.RegistrationMode +import it.vercruysse.lemmyapi.v0.enums.SortType +import it.vercruysse.lemmyapi.v0.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/EditCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/EditCommunity.kt index e1ead553..d43d4b8f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/EditCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/EditCommunity.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -import it.vercruysse.lemmyapi.enums.CommunityVisibility +import it.vercruysse.lemmyapi.v0.enums.CommunityVisibility import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/EditSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/EditSite.kt index 5fccb9c9..27aebcba 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/EditSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/EditSite.kt @@ -1,9 +1,9 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -import it.vercruysse.lemmyapi.enums.PostListingMode -import it.vercruysse.lemmyapi.enums.RegistrationMode -import it.vercruysse.lemmyapi.enums.SortType -import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.PostListingMode +import it.vercruysse.lemmyapi.v0.enums.RegistrationMode +import it.vercruysse.lemmyapi.v0.enums.SortType +import it.vercruysse.lemmyapi.v0.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/FeaturePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/FeaturePost.kt index d0b7411d..37627b6b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/FeaturePost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/FeaturePost.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -import it.vercruysse.lemmyapi.enums.PostFeatureType +import it.vercruysse.lemmyapi.v0.enums.PostFeatureType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/GetComments.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/GetComments.kt index 7e0b7472..78f6a5d3 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/GetComments.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/GetComments.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -import it.vercruysse.lemmyapi.enums.CommentSortType -import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.CommentSortType +import it.vercruysse.lemmyapi.v0.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/GetModlog.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/GetModlog.kt index ae596e2e..6510b905 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/GetModlog.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/GetModlog.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -import it.vercruysse.lemmyapi.enums.ModlogActionType +import it.vercruysse.lemmyapi.v0.enums.ModlogActionType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/GetPersonDetails.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/GetPersonDetails.kt index d82d2616..6155f5c4 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/GetPersonDetails.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/GetPersonDetails.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.v0.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/GetPersonMentions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/GetPersonMentions.kt index b0a97607..4ccef2e8 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/GetPersonMentions.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/GetPersonMentions.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -import it.vercruysse.lemmyapi.enums.CommentSortType +import it.vercruysse.lemmyapi.v0.enums.CommentSortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/GetPosts.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/GetPosts.kt index 519b544f..ca9358d1 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/GetPosts.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/GetPosts.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -import it.vercruysse.lemmyapi.enums.SortType -import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.SortType +import it.vercruysse.lemmyapi.v0.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/GetReplies.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/GetReplies.kt index 089d7357..7008e3be 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/GetReplies.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/GetReplies.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -import it.vercruysse.lemmyapi.enums.CommentSortType +import it.vercruysse.lemmyapi.v0.enums.CommentSortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/ListCommunities.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/ListCommunities.kt index 55c09cc9..d33041e7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/ListCommunities.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/ListCommunities.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -import it.vercruysse.lemmyapi.enums.SortType -import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.SortType +import it.vercruysse.lemmyapi.v0.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/LocalSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/LocalSite.kt index 07ea0667..8264d93e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/LocalSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/LocalSite.kt @@ -1,9 +1,9 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -import it.vercruysse.lemmyapi.enums.SortType -import it.vercruysse.lemmyapi.enums.PostListingMode -import it.vercruysse.lemmyapi.enums.RegistrationMode -import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.SortType +import it.vercruysse.lemmyapi.v0.enums.PostListingMode +import it.vercruysse.lemmyapi.v0.enums.RegistrationMode +import it.vercruysse.lemmyapi.v0.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/LocalUser.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/LocalUser.kt index 8ce36c77..d8def300 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/LocalUser.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/LocalUser.kt @@ -1,8 +1,8 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -import it.vercruysse.lemmyapi.enums.PostListingMode -import it.vercruysse.lemmyapi.enums.ListingType -import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.v0.enums.PostListingMode +import it.vercruysse.lemmyapi.v0.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/PersonMentionView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/PersonMentionView.kt index 79f5c1e9..9f3504a3 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/PersonMentionView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/PersonMentionView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -import it.vercruysse.lemmyapi.enums.SubscribedType +import it.vercruysse.lemmyapi.v0.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/PostReportView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/PostReportView.kt index 236b6aa0..34bf3bb9 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/PostReportView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/PostReportView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -import it.vercruysse.lemmyapi.enums.SubscribedType +import it.vercruysse.lemmyapi.v0.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/PostView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/PostView.kt index ecb42c46..c93d65d3 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/PostView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/PostView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -import it.vercruysse.lemmyapi.enums.SubscribedType +import it.vercruysse.lemmyapi.v0.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/SaveUserSettings.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/SaveUserSettings.kt index e2fb1028..47781547 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/SaveUserSettings.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/SaveUserSettings.kt @@ -1,8 +1,8 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -import it.vercruysse.lemmyapi.enums.PostListingMode -import it.vercruysse.lemmyapi.enums.ListingType -import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.v0.enums.PostListingMode +import it.vercruysse.lemmyapi.v0.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/Search.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/Search.kt index af243da3..22455195 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/Search.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/Search.kt @@ -1,8 +1,8 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -import it.vercruysse.lemmyapi.enums.ListingType -import it.vercruysse.lemmyapi.enums.SortType -import it.vercruysse.lemmyapi.enums.SearchType +import it.vercruysse.lemmyapi.v0.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.SortType +import it.vercruysse.lemmyapi.v0.enums.SearchType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/SearchResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/SearchResponse.kt index 974f6276..93f9cb13 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/SearchResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/SearchResponse.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -import it.vercruysse.lemmyapi.enums.SearchType +import it.vercruysse.lemmyapi.v0.enums.SearchType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt index 768795a8..3db64e91 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt @@ -7,12 +7,20 @@ import it.vercruysse.lemmyapi.datatypes.Notification import it.vercruysse.lemmyapi.datatypes.NotificationView import it.vercruysse.lemmyapi.datatypes.PersonActions import it.vercruysse.lemmyapi.datatypes.PostActions -import it.vercruysse.lemmyapi.enums.CommentSortType +import it.vercruysse.lemmyapi.v0.enums.CommentSortType as V0CommentSortType import it.vercruysse.lemmyapi.enums.CommunityFollowerState import it.vercruysse.lemmyapi.enums.FederationMode import it.vercruysse.lemmyapi.enums.NotificationType import it.vercruysse.lemmyapi.enums.SortType import it.vercruysse.lemmyapi.enums.VoteShow +import it.vercruysse.lemmyapi.v0.enums.CommunityVisibility as V0CommunityVisibility +import it.vercruysse.lemmyapi.v0.enums.ListingType as V0ListingType +import it.vercruysse.lemmyapi.v0.enums.ModlogActionType as V0ModlogActionType +import it.vercruysse.lemmyapi.v0.enums.PostFeatureType as V0PostFeatureType +import it.vercruysse.lemmyapi.v0.enums.PostListingMode as V0PostListingMode +import it.vercruysse.lemmyapi.v0.enums.RegistrationMode as V0RegistrationMode +import it.vercruysse.lemmyapi.v0.enums.SearchType as V0SearchType +import it.vercruysse.lemmyapi.v0.enums.SortType as V0SortType import it.vercruysse.lemmyapi.utils.toAt import it.vercruysse.lemmyapi.datatypes.AddAdmin as LemmyapiDatatypesAddAdmin import it.vercruysse.lemmyapi.datatypes.AddAdminResponse as LemmyapiDatatypesAddAdminResponse @@ -451,7 +459,7 @@ internal class Transformer : MapperGenerator { hidden = d.hidden, posting_restricted_to_mods = d.posting_restricted_to_mods, instance_id = d.instance_id, - visibility = d.visibility, + visibility = d.visibility.toUni(), subscribers = counts.subscribers, posts = counts.posts, comments = counts.comments, @@ -714,7 +722,7 @@ internal class Transformer : MapperGenerator { application_question = d.application_question, private_instance = d.private_instance, default_theme = d.default_theme, - default_post_listing_type = d.default_post_listing_type, + default_post_listing_type = d.default_post_listing_type.toUni(), legal_information = d.legal_information, application_email_admins = d.application_email_admins, slur_filter_regex = d.slur_filter_regex, @@ -723,11 +731,11 @@ internal class Transformer : MapperGenerator { captcha_difficulty = d.captcha_difficulty, published_at = d.published, updated_at = d.updated, - registration_mode = d.registration_mode, + registration_mode = d.registration_mode.toUni(), reports_email_admins = d.reports_email_admins, federation_signed_fetch = d.federation_signed_fetch, - default_post_listing_mode = d.default_post_listing_mode, - default_post_sort_type = d.default_sort_type, + default_post_listing_mode = d.default_post_listing_mode.toUni(), + default_post_sort_type = d.default_sort_type.toUni(), disallow_nsfw_content = !d.enable_nsfw, oauth_registration = false, disable_email_notifications = false, @@ -785,8 +793,8 @@ internal class Transformer : MapperGenerator { email = d.email, show_nsfw = d.show_nsfw, theme = d.theme, - default_post_sort_type = d.default_sort_type, - default_listing_type = d.default_listing_type, + default_post_sort_type = d.default_sort_type.toUni(), + default_listing_type = d.default_listing_type.toUni(), interface_language = d.interface_language, show_avatars = d.show_avatars, send_notifications_to_email = d.send_notifications_to_email, @@ -798,8 +806,7 @@ internal class Transformer : MapperGenerator { blur_nsfw = d.blur_nsfw, infinite_scroll_enabled = d.infinite_scroll_enabled, admin = d.admin, - post_listing_mode = d.post_listing_mode, - totp_2fa_enabled = d.totp_2fa_enabled, + post_listing_mode = d.post_listing_mode.toUni(), enable_animated_images = d.enable_animated_images, collapse_bot_comments = d.collapse_bot_comments, last_donation_notification_at = "", @@ -814,6 +821,7 @@ internal class Transformer : MapperGenerator { auto_mark_fetched_posts_as_read = false, default_post_time_range_seconds = null, default_items_per_page = 20, + totp_2fa_enabled = d.totp_2fa_enabled, ) override fun toUni(d: X6DatatypesLocalUserView): LemmyapiDatatypesLocalUserView = @@ -1216,7 +1224,7 @@ internal class Transformer : MapperGenerator { nsfw = d.nsfw, posting_restricted_to_mods = d.posting_restricted_to_mods, discussion_languages = d.discussion_languages, - visibility = d.visibility, + visibility = V0CommunityVisibility.fromUniNullable(d.visibility), ) override fun fromUni(d: LemmyapiDatatypesCreateCustomEmoji): X6DatatypesCreateCustomEmoji = @@ -1282,8 +1290,8 @@ internal class Transformer : MapperGenerator { application_question = d.application_question, private_instance = d.private_instance, default_theme = d.default_theme, - default_post_listing_type = d.default_post_listing_type, - default_sort_type = d.default_post_sort_type, + default_post_listing_type = V0ListingType.fromUniNullable(d.default_post_listing_type), + default_sort_type = V0SortType.fromUniNullable(d.default_post_sort_type), legal_information = d.legal_information, application_email_admins = d.application_email_admins, discussion_languages = d.discussion_languages, @@ -1306,9 +1314,9 @@ internal class Transformer : MapperGenerator { allowed_instances = d.allowed_instances, blocked_instances = d.blocked_instances, taglines = d.taglines, - registration_mode = d.registration_mode, + registration_mode = V0RegistrationMode.fromUniNullable(d.registration_mode), content_warning = d.content_warning, - default_post_listing_mode = d.default_post_listing_mode, + default_post_listing_mode = V0PostListingMode.fromUniNullable(d.default_post_listing_mode), ) override fun fromUni(d: LemmyapiDatatypesDeleteAccount): X6DatatypesDeleteAccount = @@ -1369,7 +1377,7 @@ internal class Transformer : MapperGenerator { nsfw = d.nsfw, posting_restricted_to_mods = d.posting_restricted_to_mods, discussion_languages = d.discussion_languages, - visibility = d.visibility, + visibility = V0CommunityVisibility.fromUniNullable(d.visibility), ) override fun fromUni(d: LemmyapiDatatypesEditCustomEmoji): X6DatatypesEditCustomEmoji = @@ -1411,8 +1419,8 @@ internal class Transformer : MapperGenerator { application_question = d.application_question, private_instance = d.private_instance, default_theme = d.default_theme, - default_post_listing_type = d.default_post_listing_type, - default_sort_type = d.default_post_sort_type, + default_post_listing_type = V0ListingType.fromUniNullable(d.default_post_listing_type), + default_sort_type = V0SortType.fromUniNullable(d.default_post_sort_type), legal_information = d.legal_information, application_email_admins = d.application_email_admins, hide_modlog_mod_names = d.hide_modlog_mod_names, @@ -1438,17 +1446,17 @@ internal class Transformer : MapperGenerator { blocked_instances = d.blocked_instances, blocked_urls = d.blocked_urls, taglines = d.taglines, - registration_mode = d.registration_mode, + registration_mode = V0RegistrationMode.fromUniNullable(d.registration_mode), reports_email_admins = d.reports_email_admins, content_warning = d.content_warning, - default_post_listing_mode = d.default_post_listing_mode, + default_post_listing_mode = V0PostListingMode.fromUniNullable(d.default_post_listing_mode), ) override fun fromUni(d: LemmyapiDatatypesFeaturePost): X6DatatypesFeaturePost = X6DatatypesFeaturePost( post_id = d.post_id, featured = d.featured, - feature_type = d.feature_type, + feature_type = V0PostFeatureType.fromUni(d.feature_type), ) override fun fromUni(d: LemmyapiDatatypesFollowCommunity): X6DatatypesFollowCommunity = @@ -1464,8 +1472,8 @@ internal class Transformer : MapperGenerator { override fun fromUni(d: LemmyapiDatatypesGetComments): X6DatatypesGetComments = X6DatatypesGetComments( - type_ = d.type_, - sort = d.sort, + type_ = V0ListingType.fromUniNullable(d.type_), + sort = V0CommentSortType.fromUniNullable(d.sort), max_depth = d.max_depth, page = d.page, limit = d.limit, @@ -1489,7 +1497,7 @@ internal class Transformer : MapperGenerator { community_id = d.community_id, page = d.page, limit = d.limit, - type_ = d.type_, + type_ = V0ModlogActionType.fromUniNullable(d.type_), other_person_id = d.other_person_id, post_id = d.post_id, comment_id = d.comment_id, @@ -1499,7 +1507,7 @@ internal class Transformer : MapperGenerator { X6DatatypesGetPersonDetails( person_id = d.person_id, username = d.username, - sort = d.sort, + sort = V0SortType.fromUniNullable(d.sort), page = d.page, limit = d.limit, community_id = d.community_id, @@ -1512,8 +1520,8 @@ internal class Transformer : MapperGenerator { ) override fun fromUni(d: LemmyapiDatatypesGetPosts): X6DatatypesGetPosts = X6DatatypesGetPosts( - type_ = d.type_, - sort = d.sort, + type_ = V0ListingType.fromUniNullable(d.type_), + sort = V0SortType.fromUniNullable(d.sort), page = d.page, limit = d.limit, community_id = d.community_id, @@ -1526,7 +1534,7 @@ internal class Transformer : MapperGenerator { fun fromUniR(d: LemmyapiDatatypesListNotifications): X6DatatypesGetReplies = X6DatatypesGetReplies( - sort = CommentSortType.New, + sort = V0CommentSortType.New, page = d.page, limit = d.limit, unread_only = d.unread_only, @@ -1534,7 +1542,7 @@ internal class Transformer : MapperGenerator { fun fromUniM(d: LemmyapiDatatypesListNotifications): X6DatatypesGetPersonMentions = X6DatatypesGetPersonMentions( - sort = CommentSortType.New, + sort = V0CommentSortType.New, page = d.page, limit = d.limit, unread_only = d.unread_only, @@ -1604,8 +1612,8 @@ internal class Transformer : MapperGenerator { override fun fromUni(d: LemmyapiDatatypesListCommunities): X6DatatypesListCommunities = X6DatatypesListCommunities( - type_ = d.type_, - sort = d.sort, + type_ = V0ListingType.fromUniNullable(d.type_), + sort = V0SortType.fromUniNullable(d.sort), show_nsfw = d.show_nsfw, page = d.page, limit = d.limit, @@ -1766,8 +1774,8 @@ internal class Transformer : MapperGenerator { show_nsfw = d.show_nsfw, blur_nsfw = d.blur_nsfw, theme = d.theme, - default_sort_type = d.default_post_sort_type, - default_listing_type = d.default_listing_type, + default_sort_type = V0SortType.fromUniNullable(d.default_post_sort_type), + default_listing_type = V0ListingType.fromUniNullable(d.default_listing_type), interface_language = d.interface_language, avatar = d.avatar, banner = d.banner, @@ -1783,7 +1791,7 @@ internal class Transformer : MapperGenerator { discussion_languages = d.discussion_languages, open_links_in_new_tab = d.open_links_in_new_tab, infinite_scroll_enabled = d.infinite_scroll_enabled, - post_listing_mode = d.post_listing_mode, + post_listing_mode = V0PostListingMode.fromUniNullable(d.post_listing_mode), enable_animated_images = d.enable_animated_images, collapse_bot_comments = d.collapse_bot_comments, show_scores = d.show_score, @@ -1801,9 +1809,9 @@ internal class Transformer : MapperGenerator { community_id = d.community_id, community_name = d.community_name, creator_id = d.creator_id, - type_ = d.type_, - sort = d.sort, - listing_type = d.listing_type, + type_ = V0SearchType.fromUniNullable(d.type_), + sort = V0SortType.fromUniNullable(d.sort), + listing_type = V0ListingType.fromUniNullable(d.listing_type), page = d.page, limit = d.limit, post_title_only = d.title_only, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CommentReplyView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CommentReplyView.kt index 59749f43..7e04307a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CommentReplyView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CommentReplyView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -import it.vercruysse.lemmyapi.enums.SubscribedType +import it.vercruysse.lemmyapi.v0.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CommentReportView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CommentReportView.kt index eeacb627..01c6e065 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CommentReportView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CommentReportView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -import it.vercruysse.lemmyapi.enums.SubscribedType +import it.vercruysse.lemmyapi.v0.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CommentView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CommentView.kt index 5f76d1c9..7dbeeb7d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CommentView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CommentView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -import it.vercruysse.lemmyapi.enums.SubscribedType +import it.vercruysse.lemmyapi.v0.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/Community.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/Community.kt index 2cae9a7c..35c42bba 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/Community.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/Community.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -import it.vercruysse.lemmyapi.enums.CommunityVisibility +import it.vercruysse.lemmyapi.v0.enums.CommunityVisibility import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CommunityView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CommunityView.kt index b8f24870..0f997468 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CommunityView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CommunityView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -import it.vercruysse.lemmyapi.enums.SubscribedType +import it.vercruysse.lemmyapi.v0.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CreateCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CreateCommunity.kt index e96f40cb..a8586b7a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CreateCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CreateCommunity.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -import it.vercruysse.lemmyapi.enums.CommunityVisibility +import it.vercruysse.lemmyapi.v0.enums.CommunityVisibility import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CreateSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CreateSite.kt index 5eb3167d..ace9ca5e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CreateSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CreateSite.kt @@ -1,9 +1,9 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -import it.vercruysse.lemmyapi.enums.PostListingMode -import it.vercruysse.lemmyapi.enums.RegistrationMode -import it.vercruysse.lemmyapi.enums.SortType -import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.PostListingMode +import it.vercruysse.lemmyapi.v0.enums.RegistrationMode +import it.vercruysse.lemmyapi.v0.enums.SortType +import it.vercruysse.lemmyapi.v0.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/EditCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/EditCommunity.kt index 0af1419e..3876f90c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/EditCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/EditCommunity.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -import it.vercruysse.lemmyapi.enums.CommunityVisibility +import it.vercruysse.lemmyapi.v0.enums.CommunityVisibility import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/EditSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/EditSite.kt index 2d23e1aa..387203e9 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/EditSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/EditSite.kt @@ -1,9 +1,9 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -import it.vercruysse.lemmyapi.enums.PostListingMode -import it.vercruysse.lemmyapi.enums.RegistrationMode -import it.vercruysse.lemmyapi.enums.SortType -import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.PostListingMode +import it.vercruysse.lemmyapi.v0.enums.RegistrationMode +import it.vercruysse.lemmyapi.v0.enums.SortType +import it.vercruysse.lemmyapi.v0.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/FeaturePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/FeaturePost.kt index b781b122..f83102b6 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/FeaturePost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/FeaturePost.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -import it.vercruysse.lemmyapi.enums.PostFeatureType +import it.vercruysse.lemmyapi.v0.enums.PostFeatureType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/GetComments.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/GetComments.kt index 3b472eac..b143f77f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/GetComments.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/GetComments.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -import it.vercruysse.lemmyapi.enums.CommentSortType -import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.CommentSortType +import it.vercruysse.lemmyapi.v0.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/GetModlog.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/GetModlog.kt index 7ca0e078..d9d308bf 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/GetModlog.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/GetModlog.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -import it.vercruysse.lemmyapi.enums.ModlogActionType +import it.vercruysse.lemmyapi.v0.enums.ModlogActionType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/GetPersonDetails.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/GetPersonDetails.kt index d9d83dd7..ce1d3b72 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/GetPersonDetails.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/GetPersonDetails.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.v0.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/GetPersonMentions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/GetPersonMentions.kt index 49d4d309..c1778d5d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/GetPersonMentions.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/GetPersonMentions.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -import it.vercruysse.lemmyapi.enums.CommentSortType +import it.vercruysse.lemmyapi.v0.enums.CommentSortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/GetPosts.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/GetPosts.kt index fcc89f49..f2273fe8 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/GetPosts.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/GetPosts.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -import it.vercruysse.lemmyapi.enums.SortType -import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.SortType +import it.vercruysse.lemmyapi.v0.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/GetReplies.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/GetReplies.kt index bf265d57..67b0c1a7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/GetReplies.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/GetReplies.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -import it.vercruysse.lemmyapi.enums.CommentSortType +import it.vercruysse.lemmyapi.v0.enums.CommentSortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/ListCommunities.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/ListCommunities.kt index 9f6c5baf..37eeadc8 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/ListCommunities.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/ListCommunities.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -import it.vercruysse.lemmyapi.enums.SortType -import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.SortType +import it.vercruysse.lemmyapi.v0.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/LocalSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/LocalSite.kt index 74d989e7..e0ef1ac7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/LocalSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/LocalSite.kt @@ -1,9 +1,9 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -import it.vercruysse.lemmyapi.enums.SortType -import it.vercruysse.lemmyapi.enums.PostListingMode -import it.vercruysse.lemmyapi.enums.RegistrationMode -import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.SortType +import it.vercruysse.lemmyapi.v0.enums.PostListingMode +import it.vercruysse.lemmyapi.v0.enums.RegistrationMode +import it.vercruysse.lemmyapi.v0.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/LocalUser.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/LocalUser.kt index 47805018..c824b56a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/LocalUser.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/LocalUser.kt @@ -1,8 +1,8 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -import it.vercruysse.lemmyapi.enums.PostListingMode -import it.vercruysse.lemmyapi.enums.ListingType -import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.v0.enums.PostListingMode +import it.vercruysse.lemmyapi.v0.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/PersonMentionView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/PersonMentionView.kt index f29c26a0..6d9c487d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/PersonMentionView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/PersonMentionView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -import it.vercruysse.lemmyapi.enums.SubscribedType +import it.vercruysse.lemmyapi.v0.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/PostReportView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/PostReportView.kt index 16692f20..4aef7c87 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/PostReportView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/PostReportView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -import it.vercruysse.lemmyapi.enums.SubscribedType +import it.vercruysse.lemmyapi.v0.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/PostView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/PostView.kt index 9f95bc8d..b134cabb 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/PostView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/PostView.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -import it.vercruysse.lemmyapi.enums.SubscribedType +import it.vercruysse.lemmyapi.v0.enums.SubscribedType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/SaveUserSettings.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/SaveUserSettings.kt index 191328ec..35607528 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/SaveUserSettings.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/SaveUserSettings.kt @@ -1,8 +1,8 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -import it.vercruysse.lemmyapi.enums.PostListingMode -import it.vercruysse.lemmyapi.enums.ListingType -import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.v0.enums.PostListingMode +import it.vercruysse.lemmyapi.v0.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/Search.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/Search.kt index e22995c3..cb84decc 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/Search.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/Search.kt @@ -1,8 +1,8 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -import it.vercruysse.lemmyapi.enums.ListingType -import it.vercruysse.lemmyapi.enums.SortType -import it.vercruysse.lemmyapi.enums.SearchType +import it.vercruysse.lemmyapi.v0.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.SortType +import it.vercruysse.lemmyapi.v0.enums.SearchType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/SearchResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/SearchResponse.kt index af6be18c..db024bd5 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/SearchResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/SearchResponse.kt @@ -1,6 +1,6 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -import it.vercruysse.lemmyapi.enums.SearchType +import it.vercruysse.lemmyapi.v0.enums.SearchType import kotlinx.serialization.Serializable @Serializable From 9e0335c12c2f2398e77bcee18b96d23ae8ed559d Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Sat, 7 Mar 2026 13:46:11 +0100 Subject: [PATCH 041/110] Add remaining enums --- .../lemmyapi/datatypes/AdminListUsers.kt | 4 +-- .../datatypes/ListMultiCommunities.kt | 4 +-- .../lemmyapi/datatypes/ListPersonSaved.kt | 3 +- .../lemmyapi/enums/CommunityFollowerState.kt | 2 -- .../lemmyapi/enums/LocalUserSortType.kt | 12 ++++++++ .../lemmyapi/enums/ModlogActionType.kt | 28 ++++++------------- .../lemmyapi/enums/MultiCommunitySortType.kt | 17 +++++++++++ .../lemmyapi/enums/PersonContentType.kt | 13 +++++++++ .../lemmyapi/v0/enums/ModlogActionType.kt | 20 ++++++------- .../v1/x0/x0/datatypes/AdminListUsers.kt | 4 +-- .../v1/x0/x0/datatypes/CreatePostWarning.kt | 2 -- .../x0/x0/datatypes/ListMultiCommunities.kt | 5 ++-- .../v1/x0/x0/datatypes/ListPersonContent.kt | 4 +-- .../v1/x0/x0/datatypes/ListPersonSaved.kt | 4 +-- 14 files changed, 75 insertions(+), 47 deletions(-) create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/LocalUserSortType.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/MultiCommunitySortType.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/PersonContentType.kt diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminListUsers.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminListUsers.kt index 4ea96370..8e71ebb3 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminListUsers.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminListUsers.kt @@ -2,6 +2,7 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot +import it.vercruysse.lemmyapi.enums.LocalUserSortType import kotlinx.serialization.Serializable @CommonParcelize @@ -9,7 +10,6 @@ import kotlinx.serialization.Serializable data class AdminListUsers( val banned_only: Boolean? = null, val page_cursor: PaginationCursor? = null, - // TODO: AdminListSortType - val sort: String? /* "new" | "old" */ = null, + val sort: LocalUserSortType? /* "new" | "old" */ = null, val limit: Long? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListMultiCommunities.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListMultiCommunities.kt index ce87703a..23f2ecb8 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListMultiCommunities.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListMultiCommunities.kt @@ -3,14 +3,14 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import it.vercruysse.lemmyapi.enums.MultiCommunityListingType +import it.vercruysse.lemmyapi.enums.MultiCommunitySortType import kotlinx.serialization.Serializable @CommonParcelize @Serializable data class ListMultiCommunities( val type_: MultiCommunityListingType? /* "all" | "local" | "subscribed" */ = null, - // TODO: custom sort type - val sort: String? /* "new" | "old" | "name_asc" | "name_desc" | "communities" | "subscribers" | "subscribers_local" */ = null, + val sort: MultiCommunitySortType? /* "new" | "old" | "name_asc" | "name_desc" | "communities" | "subscribers" | "subscribers_local" */ = null, val creator_id: PersonId? = null, val time_range_seconds: Long? = null, val page_cursor: PaginationCursor? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonSaved.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonSaved.kt index 3d89f50b..d20c025c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonSaved.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonSaved.kt @@ -2,12 +2,13 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot +import it.vercruysse.lemmyapi.enums.PersonContentType import kotlinx.serialization.Serializable @CommonParcelize @Serializable data class ListPersonSaved( - val type_: String? /* "All" | "Comments" | "Posts" */ = null, + val type_: PersonContentType? /* "All" | "Comments" | "Posts" */ = null, val page_cursor: PaginationCursor? = null, val limit: Long? = null, ): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/CommunityFollowerState.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/CommunityFollowerState.kt index a7915c37..dc83ee8d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/CommunityFollowerState.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/CommunityFollowerState.kt @@ -3,8 +3,6 @@ package it.vercruysse.lemmyapi.enums import it.vercruysse.lemmyapi.v0.enums.SubscribedType import kotlinx.serialization.Serializable -// TODO: mapped from previous version - @Serializable enum class CommunityFollowerState { Accepted, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/LocalUserSortType.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/LocalUserSortType.kt new file mode 100644 index 00000000..6cb2a0c7 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/LocalUserSortType.kt @@ -0,0 +1,12 @@ +package it.vercruysse.lemmyapi.enums + +import io.github.z4kn4fein.semver.Version +import it.vercruysse.lemmyapi.V1_0_0 +import kotlinx.serialization.SerialName +import kotlinx.serialization.Serializable + +@Serializable +enum class LocalUserSortType(override val minimumVersion: Version = V1_0_0, override val maximumVersion: Version? = null) : VersionTracker { + @SerialName("new") New, + @SerialName("old") Old; +} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/ModlogActionType.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/ModlogActionType.kt index 669df911..d3252c66 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/ModlogActionType.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/ModlogActionType.kt @@ -6,7 +6,6 @@ import it.vercruysse.lemmyapi.V1_0_0 import kotlinx.serialization.SerialName import kotlinx.serialization.Serializable -// TODO: changes @Serializable enum class ModlogActionType(override val minimumVersion: Version = MINIMUM_API_VERSION, override val maximumVersion: Version? = null) : VersionTracker { @@ -16,30 +15,21 @@ enum class ModlogActionType(override val minimumVersion: Version = MINIMUM_API_V @SerialName("mod_feature_post") ModFeaturePost, @SerialName("mod_remove_comment") ModRemoveComment, @SerialName("mod_lock_comment") ModLockComment(V1_0_0), - - /** Deprecated alias for AdminRemoveCommunity */ - @SerialName("mod_remove_community") ModRemoveCommunity(MINIMUM_API_VERSION, V1_0_0), - @SerialName("admin_remove_community") AdminRemoveCommunity(V1_0_0), + @SerialName("admin_remove_community") AdminRemoveCommunity(MINIMUM_API_VERSION), @SerialName("mod_ban_from_community") ModBanFromCommunity, - - /** Deprecated alias for ModAddToCommunity */ - @SerialName("mod_add_community") ModAddCommunity(MINIMUM_API_VERSION, V1_0_0), - @SerialName("mod_add_to_community") ModAddToCommunity(V1_0_0), + @SerialName("mod_add_to_community") ModAddToCommunity(MINIMUM_API_VERSION), @SerialName("mod_transfer_community") ModTransferCommunity, - - /** Deprecated alias for AdminAdd */ - @SerialName("mod_add") ModAdd(MINIMUM_API_VERSION, V1_0_0), - - /** Deprecated alias for AdminBan */ - @SerialName("mod_ban") ModBan(MINIMUM_API_VERSION, V1_0_0), - @SerialName("admin_add") AdminAdd(V1_0_0), - @SerialName("admin_ban") AdminBan(V1_0_0), - @SerialName("mod_hide_community") ModHideCommunity(MINIMUM_API_VERSION, V1_0_0), - @SerialName("mod_change_community_visibility") ModChangeCommunityVisibility(V1_0_0), + @SerialName("admin_add") AdminAdd(MINIMUM_API_VERSION), + @SerialName("admin_ban") AdminBan(MINIMUM_API_VERSION), + @SerialName("mod_change_community_visibility") ModChangeCommunityVisibility(MINIMUM_API_VERSION), @SerialName("admin_purge_person") AdminPurgePerson, @SerialName("admin_purge_community") AdminPurgeCommunity, @SerialName("admin_purge_post") AdminPurgePost, @SerialName("admin_purge_comment") AdminPurgeComment, @SerialName("admin_block_instance") AdminBlockInstance(V1_0_0), @SerialName("admin_allow_instance") AdminAllowInstance(V1_0_0), + @SerialName("mod_warn_comment") ModWarnComment(V1_0_0), + @SerialName("mod_warn_post") ModWarnPost(V1_0_0), + @SerialName("admin_feature_post_site") AdminFeaturePostSite(V1_0_0), + ; } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/MultiCommunitySortType.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/MultiCommunitySortType.kt new file mode 100644 index 00000000..9de091d9 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/MultiCommunitySortType.kt @@ -0,0 +1,17 @@ +package it.vercruysse.lemmyapi.enums + +import io.github.z4kn4fein.semver.Version +import it.vercruysse.lemmyapi.V1_0_0 +import kotlinx.serialization.SerialName +import kotlinx.serialization.Serializable + +@Serializable +enum class MultiCommunitySortType(override val minimumVersion: Version = V1_0_0, override val maximumVersion: Version? = null) : VersionTracker { + @SerialName("new") New, + @SerialName("old") Old, + @SerialName("name_asc") NameAsc, + @SerialName("name_desc") NameDesc, + @SerialName("communities") Communities, + @SerialName("subscribers") Subscribers, + @SerialName("subscribers_local") SubscribersLocal, +} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/PersonContentType.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/PersonContentType.kt new file mode 100644 index 00000000..c3666eb0 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/PersonContentType.kt @@ -0,0 +1,13 @@ +package it.vercruysse.lemmyapi.enums + +import io.github.z4kn4fein.semver.Version +import it.vercruysse.lemmyapi.V1_0_0 +import kotlinx.serialization.SerialName +import kotlinx.serialization.Serializable + +@Serializable +enum class PersonContentType(override val minimumVersion: Version = V1_0_0, override val maximumVersion: Version? = null) : VersionTracker { + @SerialName("all") All, + @SerialName("comments") Comments, + @SerialName("posts") Posts, +} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/ModlogActionType.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/ModlogActionType.kt index f0088169..11db41b0 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/ModlogActionType.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/ModlogActionType.kt @@ -30,13 +30,13 @@ internal enum class ModlogActionType { ModLockPost -> UniModlogActionType.ModLockPost ModFeaturePost -> UniModlogActionType.ModFeaturePost ModRemoveComment -> UniModlogActionType.ModRemoveComment - ModRemoveCommunity -> UniModlogActionType.ModRemoveCommunity + ModRemoveCommunity -> UniModlogActionType.AdminRemoveCommunity ModBanFromCommunity -> UniModlogActionType.ModBanFromCommunity - ModAddCommunity -> UniModlogActionType.ModAddCommunity + ModAddCommunity -> UniModlogActionType.ModAddToCommunity ModTransferCommunity -> UniModlogActionType.ModTransferCommunity - ModAdd -> UniModlogActionType.ModAdd - ModBan -> UniModlogActionType.ModBan - ModHideCommunity -> UniModlogActionType.ModHideCommunity + ModAdd -> UniModlogActionType.AdminAdd + ModBan -> UniModlogActionType.AdminBan + ModHideCommunity -> UniModlogActionType.ModChangeCommunityVisibility AdminPurgePerson -> UniModlogActionType.AdminPurgePerson AdminPurgeCommunity -> UniModlogActionType.AdminPurgeCommunity AdminPurgePost -> UniModlogActionType.AdminPurgePost @@ -52,13 +52,13 @@ internal enum class ModlogActionType { UniModlogActionType.ModLockPost -> ModLockPost UniModlogActionType.ModFeaturePost -> ModFeaturePost UniModlogActionType.ModRemoveComment -> ModRemoveComment - UniModlogActionType.ModRemoveCommunity -> ModRemoveCommunity + UniModlogActionType.AdminRemoveCommunity -> ModRemoveCommunity UniModlogActionType.ModBanFromCommunity -> ModBanFromCommunity - UniModlogActionType.ModAddCommunity -> ModAddCommunity + UniModlogActionType.ModAddToCommunity -> ModAddCommunity UniModlogActionType.ModTransferCommunity -> ModTransferCommunity - UniModlogActionType.ModAdd -> ModAdd - UniModlogActionType.ModBan -> ModBan - UniModlogActionType.ModHideCommunity -> ModHideCommunity + UniModlogActionType.AdminAdd -> ModAdd + UniModlogActionType.AdminBan -> ModBan + UniModlogActionType.ModChangeCommunityVisibility -> ModHideCommunity UniModlogActionType.AdminPurgePerson -> AdminPurgePerson UniModlogActionType.AdminPurgeCommunity -> AdminPurgeCommunity UniModlogActionType.AdminPurgePost -> AdminPurgePost diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminListUsers.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminListUsers.kt index 9ed78bfa..908e5a5f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminListUsers.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminListUsers.kt @@ -1,12 +1,12 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes +import it.vercruysse.lemmyapi.enums.LocalUserSortType import kotlinx.serialization.Serializable @Serializable internal data class AdminListUsers( val banned_only: Boolean? = null, val page_cursor: PaginationCursor? = null, - // TODO: AdminListSortType - val sort: String? /* "new" | "old" */ = null, + val sort: LocalUserSortType? /* "new" | "old" */ = null, val limit: Long? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreatePostWarning.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreatePostWarning.kt index b52f21f0..ad41a802 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreatePostWarning.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreatePostWarning.kt @@ -2,8 +2,6 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes import kotlinx.serialization.Serializable -// TODO create UNI - @Serializable internal data class CreatePostWarning( val post_id: PostId, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListMultiCommunities.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListMultiCommunities.kt index 8b00b40d..2d4ec1ee 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListMultiCommunities.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListMultiCommunities.kt @@ -1,14 +1,13 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -import it.vercruysse.lemmyapi.enums.ListingType import it.vercruysse.lemmyapi.enums.MultiCommunityListingType +import it.vercruysse.lemmyapi.enums.MultiCommunitySortType import kotlinx.serialization.Serializable @Serializable internal data class ListMultiCommunities( val type_: MultiCommunityListingType? /* "all" | "local" | "subscribed" */ = null, - // TODO: custom sort type - val sort: String? /* "new" | "old" | "name_asc" | "name_desc" | "communities" | "subscribers" | "subscribers_local" */ = null, + val sort: MultiCommunitySortType? /* "new" | "old" | "name_asc" | "name_desc" | "communities" | "subscribers" | "subscribers_local" */ = null, val creator_id: PersonId? = null, val time_range_seconds: Long? = null, val page_cursor: PaginationCursor? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonContent.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonContent.kt index 95d98157..c2260576 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonContent.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonContent.kt @@ -1,11 +1,11 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes +import it.vercruysse.lemmyapi.enums.PersonContentType import kotlinx.serialization.Serializable @Serializable internal data class ListPersonContent( - // TODO: custom enum - val type_: String? /* "all" | "comments" | "posts" */ = null, + val type_: PersonContentType? /* "all" | "comments" | "posts" */ = null, val person_id: PersonId? = null, val username: String? = null, val page_cursor: PaginationCursor? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonSaved.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonSaved.kt index 70a32e33..81df1018 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonSaved.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonSaved.kt @@ -1,11 +1,11 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes +import it.vercruysse.lemmyapi.enums.PersonContentType import kotlinx.serialization.Serializable @Serializable internal data class ListPersonSaved( - // TODO: enum - val type_: String? /* "all" | "comments" | "posts" */ = null, + val type_: PersonContentType? /* "all" | "comments" | "posts" */ = null, val page_cursor: PaginationCursor? = null, val limit: Long? = null, ) From 30697fe7391f7a444e56fe7d50b82f74c74d0a27 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Sat, 7 Mar 2026 13:59:21 +0100 Subject: [PATCH 042/110] Fix imports --- .../kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt | 3 --- .../kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt | 3 --- .../lemmyapi/v1/x0/x0/combinedtypes/NotificationData.kt | 2 ++ 3 files changed, 2 insertions(+), 6 deletions(-) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt index 05800ef9..03bd8ed0 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt @@ -19,7 +19,6 @@ import it.vercruysse.lemmyapi.enums.VoteShow import it.vercruysse.lemmyapi.v0.enums.ListingType as V0ListingType import it.vercruysse.lemmyapi.v0.enums.ModlogActionType as V0ModlogActionType import it.vercruysse.lemmyapi.v0.enums.PostFeatureType as V0PostFeatureType -import it.vercruysse.lemmyapi.v0.enums.PostListingMode as V0PostListingMode import it.vercruysse.lemmyapi.v0.enums.RegistrationMode as V0RegistrationMode import it.vercruysse.lemmyapi.v0.enums.SearchType as V0SearchType import it.vercruysse.lemmyapi.v0.enums.SortType as V0SortType @@ -159,9 +158,7 @@ import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.ApproveRegistrationApplication import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.BanFromCommunity as X5DatatypesBanFromCommunity import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.BanFromCommunityResponse as X5DatatypesBanFromCommunityResponse import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.BanPerson as X5DatatypesBanPerson -import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.BanPersonResponse as X5DatatypesBanPersonResponse import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.BlockCommunity as X5DatatypesBlockCommunity -import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.BlockCommunityResponse as X5DatatypesBlockCommunityResponse import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.BlockPerson as X5DatatypesBlockPerson import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.CaptchaResponse as X5DatatypesCaptchaResponse import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.ChangePassword as X5DatatypesChangePassword diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt index 38e72478..43e294a7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt @@ -214,7 +214,6 @@ import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.EditPost as X0DatatypesEditPos import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.EditPrivateMessage as X0DatatypesEditPrivateMessage import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.EditSite as X0DatatypesEditSite import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.FeaturePost as X0DatatypesFeaturePost -import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.FederatedInstances as X0DatatypesFederatedInstances import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.FollowCommunity as X0DatatypesFollowCommunity import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.GenerateTotpSecretResponse as X0DatatypesGenerateTotpSecretResponse import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.GetCaptchaResponse as X0DatatypesGetCaptchaResponse @@ -226,13 +225,11 @@ import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.GetModlog as X0DatatypesGetMod import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.GetPersonDetails as X0DatatypesGetPersonDetails import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.GetPersonDetailsResponse as X0DatatypesGetPersonDetailsResponse import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.GetPersonMentions as X0DatatypesGetPersonMentions -import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.GetPersonMentionsResponse as X0DatatypesGetPersonMentionsResponse import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.GetPost as X0DatatypesGetPost import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.GetPostResponse as X0DatatypesGetPostResponse import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.GetPosts as X0DatatypesGetPosts import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.GetPrivateMessages as X0DatatypesGetPrivateMessages import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.GetReplies as X0DatatypesGetReplies -import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.GetRepliesResponse as X0DatatypesGetRepliesResponse import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.GetSiteMetadata as X0DatatypesGetSiteMetadata import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.GetSiteMetadataResponse as X0DatatypesGetSiteMetadataResponse import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.GetSiteResponse as X0DatatypesGetSiteResponse diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/NotificationData.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/NotificationData.kt index 18d481f8..b8548b7c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/NotificationData.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/NotificationData.kt @@ -8,6 +8,8 @@ import kotlinx.serialization.SerialName import kotlinx.serialization.Serializable import kotlinx.serialization.json.JsonClassDiscriminator +// TODO + @Serializable @OptIn(ExperimentalSerializationApi::class) @JsonClassDiscriminator("type_") From 0379e94e5822cb17235c918d41c3d7349344b464 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Sun, 8 Mar 2026 11:11:38 +0100 Subject: [PATCH 043/110] Fix listPostLikes and listCommentLikes --- .../lemmyapi/datatypes/AdminBlockInstanceParams.kt | 2 +- .../vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt | 6 ++++-- .../it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt | 7 ++++--- .../it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt | 6 ++++-- .../it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt | 6 ++++-- .../v1/x0/x0/datatypes/AdminBlockInstanceParams.kt | 1 - 6 files changed, 17 insertions(+), 11 deletions(-) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminBlockInstanceParams.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminBlockInstanceParams.kt index 61922d23..15570ce5 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminBlockInstanceParams.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminBlockInstanceParams.kt @@ -10,5 +10,5 @@ data class AdminBlockInstanceParams( val instance: String, val block: Boolean, val reason: String, - val expires_at: String? = null, + val expires_at: Long? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt index 46dfb773..12790aa7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt @@ -914,7 +914,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun listPostLikes( form: it.vercruysse.lemmyapi.datatypes.ListPostLikes, - ): Result> = notSupported() + ): Result> = + api.listPostLikes(transformer.fromUni(form)).map { PagedResponse(it.post_likes.map(transformer::toUni)) } /** * List a comment's likes. Admin-only. @@ -923,7 +924,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun listCommentLikes( form: it.vercruysse.lemmyapi.datatypes.ListCommentLikes, - ): Result> = notSupported() + ): Result> = + api.listCommentLikes(transformer.fromUni(form)).map { PagedResponse(it.comment_likes.map(transformer::toUni)) } /** * List all the media for your user diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt index d6c32c9f..b2607af0 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt @@ -907,7 +907,6 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun logout(): Result = api.logout() - // TODO: readd these if possible /** * List a post's likes. Admin-only. * @@ -915,7 +914,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun listPostLikes( form: it.vercruysse.lemmyapi.datatypes.ListPostLikes, - ): Result> = notSupported() + ): Result> = + api.listPostLikes(transformer.fromUni(form)).map { PagedResponse(it.post_likes.map(transformer::toUni)) } /** * List a comment's likes. Admin-only. @@ -924,7 +924,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun listCommentLikes( form: it.vercruysse.lemmyapi.datatypes.ListCommentLikes, - ): Result> = notSupported() + ): Result> = + api.listCommentLikes(transformer.fromUni(form)).map { PagedResponse(it.comment_likes.map(transformer::toUni)) } /** * List all the media for your user diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt index 8e8f087d..55fb52e7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt @@ -912,7 +912,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun listPostLikes( form: it.vercruysse.lemmyapi.datatypes.ListPostLikes, - ): Result> = notSupported() + ): Result> = + api.listPostLikes(transformer.fromUni(form)).map { PagedResponse(it.post_likes.map(transformer::toUni)) } /** * List a comment's likes. Admin-only. @@ -921,7 +922,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun listCommentLikes( form: it.vercruysse.lemmyapi.datatypes.ListCommentLikes, - ): Result> = notSupported() + ): Result> = + api.listCommentLikes(transformer.fromUni(form)).map { PagedResponse(it.comment_likes.map(transformer::toUni)) } /** * List all the media for your user diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt index 70d1dbb6..7f61f7fe 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt @@ -907,7 +907,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun listPostLikes( form: it.vercruysse.lemmyapi.datatypes.ListPostLikes, - ): Result> = notSupported() + ): Result> = + api.listPostLikes(transformer.fromUni(form)).map { PagedResponse(it.post_likes.map(transformer::toUni)) } /** * List a comment's likes. Admin-only. @@ -916,7 +917,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun listCommentLikes( form: it.vercruysse.lemmyapi.datatypes.ListCommentLikes, - ): Result> = notSupported() + ): Result> = + api.listCommentLikes(transformer.fromUni(form)).map { PagedResponse(it.comment_likes.map(transformer::toUni)) } /** * List all the media for your user diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBlockInstanceParams.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBlockInstanceParams.kt index d004cdcb..3d45fa10 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBlockInstanceParams.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/AdminBlockInstanceParams.kt @@ -7,6 +7,5 @@ internal data class AdminBlockInstanceParams( val instance: String, val block: Boolean, val reason: String, - // TODO: type change val expires_at: Long? = null, ) From b8947be76caef0446b1e30f86eafc038020c12b9 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Sun, 8 Mar 2026 12:35:34 +0100 Subject: [PATCH 044/110] Small tweaks --- .../kotlin/it/vercruysse/lemmyapi/datatypes/Community.kt | 4 +++- .../it/vercruysse/lemmyapi/datatypes/ListPersonContent.kt | 4 ++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Community.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Community.kt index 1d7a0ddd..a648af5b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Community.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Community.kt @@ -15,7 +15,7 @@ data class Community( override val id: CommunityId, val name: String, val title: String, - val summary: String? = null, + val sidebar: String? = null, val removed: Boolean, val published_at: String, val updated_at: String? = null, @@ -26,10 +26,12 @@ data class Community( val last_refreshed_at: String, val icon: String? = null, val banner: String? = null, + // TODO: might be replaced by visibility but currently is gone val hidden: Boolean, val posting_restricted_to_mods: Boolean, val instance_id: InstanceId, val visibility: CommunityVisibility /* "Public" | "Unlisted" | "LocalOnlyPublic" | "LocalOnlyPrivate" | "Private" */, + val summary: String? = null, val subscribers: Long, val posts: Long, val comments: Long, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonContent.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonContent.kt index 316c9f1d..bd7732f2 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonContent.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonContent.kt @@ -2,13 +2,13 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot +import it.vercruysse.lemmyapi.enums.PersonContentType import kotlinx.serialization.Serializable @CommonParcelize @Serializable data class ListPersonContent( - // TODO: custom enum - val type_: String? /* "all" | "comments" | "posts" */ = null, + val type_: PersonContentType? /* "all" | "comments" | "posts" */ = null, val person_id: PersonId? = null, val username: String? = null, val page_cursor: PaginationCursor? = null, From 51e6dba8ad48f3b9a7a913092ffca5323c578166 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Sun, 8 Mar 2026 12:56:21 +0100 Subject: [PATCH 045/110] SearchCombinedView changes --- .../lemmyapi/datatypes/CommentView.kt | 2 +- .../lemmyapi/datatypes/CommunityView.kt | 4 +- .../lemmyapi/datatypes/MultiCommunityView.kt | 4 +- .../lemmyapi/datatypes/PersonView.kt | 4 +- .../vercruysse/lemmyapi/datatypes/PostView.kt | 2 +- .../datatypes/ResolveObjectResponse.kt | 2 +- .../lemmyapi/datatypes/SearchCombinedView.kt | 30 +-------------- .../lemmyapi/v0/x18/x5/Transformer.kt | 8 ++-- .../lemmyapi/v0/x19/x0/Transformer.kt | 8 ++-- .../lemmyapi/v0/x19/x11/Transformer.kt | 8 ++-- .../lemmyapi/v0/x19/x3/Transformer.kt | 8 ++-- .../lemmyapi/v0/x19/x4/Transformer.kt | 8 ++-- .../lemmyapi/v0/x19/x6/Transformer.kt | 8 ++-- .../x0/x0/combinedtypes/SearchCombinedView.kt | 38 ------------------- .../lemmyapi/v1/x0/x0/datatypes/Comment.kt | 4 +- .../v1/x0/x0/datatypes/CommunityView.kt | 4 +- .../v1/x0/x0/datatypes/MultiCommunityView.kt | 4 +- .../lemmyapi/v1/x0/x0/datatypes/PersonView.kt | 4 +- .../lemmyapi/v1/x0/x0/datatypes/PostView.kt | 4 +- .../v1/x0/x0/datatypes/SearchCombinedView.kt | 9 +++++ .../v1/x0/x0/datatypes/SearchResponse.kt | 1 - 21 files changed, 61 insertions(+), 103 deletions(-) delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/SearchCombinedView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SearchCombinedView.kt diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentView.kt index 2c511eb7..8925c2c3 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentView.kt @@ -27,7 +27,7 @@ data class CommentView( val creator_banned_from_community: Boolean, val creator_community_ban_expires_at: String? = null, - ) : DatatypeRoot, Identity, NotificationData { + ) : DatatypeRoot, Identity, NotificationData, SearchCombinedView { override val id: Long get() = comment.id } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityView.kt index 52c39ccc..8c4fb1fa 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityView.kt @@ -3,12 +3,14 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +import kotlinx.serialization.SerialName @CommonParcelize @Serializable +@SerialName("community") data class CommunityView( val community: Community, val community_actions: CommunityActions? = null, val can_mod: Boolean, val tags: CommunityTagsView, -) : DatatypeRoot +) : DatatypeRoot, SearchCombinedView diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MultiCommunityView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MultiCommunityView.kt index 0225301c..c1099854 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MultiCommunityView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MultiCommunityView.kt @@ -3,12 +3,14 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import it.vercruysse.lemmyapi.enums.CommunityFollowerState +import kotlinx.serialization.SerialName import kotlinx.serialization.Serializable @CommonParcelize @Serializable +@SerialName("multi_community") data class MultiCommunityView( val multi: MultiCommunity, val follow_state: CommunityFollowerState? /* "accepted" | "pending" | "approval_required" | "denied" */ = null, val owner: Person, -) : DatatypeRoot +) : DatatypeRoot, SearchCombinedView diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonView.kt index 0373c85b..5cd26937 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonView.kt @@ -4,13 +4,15 @@ import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +import kotlinx.serialization.SerialName @CommonParcelize @Serializable +@SerialName("person") data class PersonView( val person: Person, val is_admin: Boolean, val person_actions: PersonActions? = null, val banned: Boolean, val ban_expires_at: String? = null, -) : DatatypeRoot +) : DatatypeRoot, SearchCombinedView diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostView.kt index 60ce2ffb..7b8f7e41 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostView.kt @@ -28,7 +28,7 @@ data class PostView( val creator_is_moderator: Boolean, val creator_banned_from_community: Boolean, val creator_community_ban_expires_at: String? = null, - ) : DatatypeRoot, Identity, NotificationData { + ) : DatatypeRoot, Identity, NotificationData, SearchCombinedView { override val id: Long get() = post.id } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ResolveObjectResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ResolveObjectResponse.kt index c31145ea..ba46ffba 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ResolveObjectResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ResolveObjectResponse.kt @@ -5,7 +5,7 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize -// TODO: is removed +// TODO: is removed, replaced by SearchResponse @CommonParcelize @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SearchCombinedView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SearchCombinedView.kt index a89afa18..f52065ba 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SearchCombinedView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SearchCombinedView.kt @@ -3,37 +3,9 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.ExperimentalSerializationApi -import kotlinx.serialization.SerialName -import kotlinx.serialization.Serializable import kotlinx.serialization.json.JsonClassDiscriminator @CommonParcelize -@Serializable @OptIn(ExperimentalSerializationApi::class) @JsonClassDiscriminator("type_") -sealed class SearchCombinedView : DatatypeRoot { - @CommonParcelize - @Serializable - @SerialName("Post") - data class Post(val post: PostView) : SearchCombinedView() - - @CommonParcelize - @Serializable - @SerialName("Comment") - data class Comment(val comment: CommentView) : SearchCombinedView() - - @CommonParcelize - @Serializable - @SerialName("Community") - data class Community(val community: CommunityView) : SearchCombinedView() - - @CommonParcelize - @Serializable - @SerialName("Person") - data class Person(val person: PersonView) : SearchCombinedView() - - @CommonParcelize - @Serializable - @SerialName("MultiCommunity") - data class MultiCommunity(val multiCommunity: MultiCommunityView) : SearchCombinedView() -} +sealed interface SearchCombinedView : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt index 03bd8ed0..07ea8942 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt @@ -967,10 +967,10 @@ internal class Transformer(var auth: String) : MapperGenerator { override fun toUni(d: X5DatatypesSearchResponse): LemmyapiDatatypesSearchResponse = LemmyapiDatatypesSearchResponse( search = buildList { - addAll(d.comments.map { LemmyapiDatatypesSearchCombinedView.Comment(comment = this@Transformer.toUni(d = it)) }) - addAll(d.posts.map { LemmyapiDatatypesSearchCombinedView.Post(post = this@Transformer.toUni(d = it)) }) - addAll(d.communities.map { LemmyapiDatatypesSearchCombinedView.Community(community = this@Transformer.toUni(d = it)) }) - addAll(d.users.map { LemmyapiDatatypesSearchCombinedView.Person(person = this@Transformer.toUni(d = it)) }) + addAll(d.comments.map(this@Transformer::toUni)) + addAll(d.posts.map(this@Transformer::toUni)) + addAll(d.communities.map(this@Transformer::toUni)) + addAll(d.users.map(this@Transformer::toUni)) }, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt index 43e294a7..374de4ec 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt @@ -1014,10 +1014,10 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X0DatatypesSearchResponse): LemmyapiDatatypesSearchResponse = LemmyapiDatatypesSearchResponse( search = buildList { - addAll(d.comments.map { LemmyapiDatatypesSearchCombinedView.Comment(comment = this@Transformer.toUni(d = it)) }) - addAll(d.posts.map { LemmyapiDatatypesSearchCombinedView.Post(post = this@Transformer.toUni(d = it)) }) - addAll(d.communities.map { LemmyapiDatatypesSearchCombinedView.Community(community = this@Transformer.toUni(d = it)) }) - addAll(d.users.map { LemmyapiDatatypesSearchCombinedView.Person(person = this@Transformer.toUni(d = it)) }) + addAll(d.comments.map(this@Transformer::toUni)) + addAll(d.posts.map(this@Transformer::toUni)) + addAll(d.communities.map(this@Transformer::toUni)) + addAll(d.users.map(this@Transformer::toUni)) }, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt index 3819aa5a..081c6e39 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt @@ -1082,10 +1082,10 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X11DatatypesSearchResponse): LemmyapiDatatypesSearchResponse = LemmyapiDatatypesSearchResponse( search = buildList { - addAll(d.comments.map { LemmyapiDatatypesSearchCombinedView.Comment(comment = this@Transformer.toUni(d = it)) }) - addAll(d.posts.map { LemmyapiDatatypesSearchCombinedView.Post(post = this@Transformer.toUni(d = it)) }) - addAll(d.communities.map { LemmyapiDatatypesSearchCombinedView.Community(community = this@Transformer.toUni(d = it)) }) - addAll(d.users.map { LemmyapiDatatypesSearchCombinedView.Person(person = this@Transformer.toUni(d = it)) }) + addAll(d.comments.map(this@Transformer::toUni)) + addAll(d.posts.map(this@Transformer::toUni)) + addAll(d.communities.map(this@Transformer::toUni)) + addAll(d.users.map(this@Transformer::toUni)) }, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt index 56af68ca..81c4b870 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt @@ -1032,10 +1032,10 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X3DatatypesSearchResponse): LemmyapiDatatypesSearchResponse = LemmyapiDatatypesSearchResponse( search = buildList { - addAll(d.comments.map { LemmyapiDatatypesSearchCombinedView.Comment(comment = this@Transformer.toUni(d = it)) }) - addAll(d.posts.map { LemmyapiDatatypesSearchCombinedView.Post(post = this@Transformer.toUni(d = it)) }) - addAll(d.communities.map { LemmyapiDatatypesSearchCombinedView.Community(community = this@Transformer.toUni(d = it)) }) - addAll(d.users.map { LemmyapiDatatypesSearchCombinedView.Person(person = this@Transformer.toUni(d = it)) }) + addAll(d.comments.map(this@Transformer::toUni)) + addAll(d.posts.map(this@Transformer::toUni)) + addAll(d.communities.map(this@Transformer::toUni)) + addAll(d.users.map(this@Transformer::toUni)) }, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt index 6769c110..32a4f9f9 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt @@ -1076,10 +1076,10 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X4DatatypesSearchResponse): LemmyapiDatatypesSearchResponse = LemmyapiDatatypesSearchResponse( search = buildList { - addAll(d.comments.map { LemmyapiDatatypesSearchCombinedView.Comment(comment = this@Transformer.toUni(d = it)) }) - addAll(d.posts.map { LemmyapiDatatypesSearchCombinedView.Post(post = this@Transformer.toUni(d = it)) }) - addAll(d.communities.map { LemmyapiDatatypesSearchCombinedView.Community(community = this@Transformer.toUni(d = it)) }) - addAll(d.users.map { LemmyapiDatatypesSearchCombinedView.Person(person = this@Transformer.toUni(d = it)) }) + addAll(d.comments.map(this@Transformer::toUni)) + addAll(d.posts.map(this@Transformer::toUni)) + addAll(d.communities.map(this@Transformer::toUni)) + addAll(d.users.map(this@Transformer::toUni)) }, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt index 3db64e91..c5530b97 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt @@ -1079,10 +1079,10 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X6DatatypesSearchResponse): LemmyapiDatatypesSearchResponse = LemmyapiDatatypesSearchResponse( search = buildList { - addAll(d.comments.map { LemmyapiDatatypesSearchCombinedView.Comment(comment = this@Transformer.toUni(d = it)) }) - addAll(d.posts.map { LemmyapiDatatypesSearchCombinedView.Post(post = this@Transformer.toUni(d = it)) }) - addAll(d.communities.map { LemmyapiDatatypesSearchCombinedView.Community(community = this@Transformer.toUni(d = it)) }) - addAll(d.users.map { LemmyapiDatatypesSearchCombinedView.Person(person = this@Transformer.toUni(d = it)) }) + addAll(d.comments.map(this@Transformer::toUni)) + addAll(d.posts.map(this@Transformer::toUni)) + addAll(d.communities.map(this@Transformer::toUni)) + addAll(d.users.map(this@Transformer::toUni)) }, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/SearchCombinedView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/SearchCombinedView.kt deleted file mode 100644 index d7906db1..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/SearchCombinedView.kt +++ /dev/null @@ -1,38 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.combinedtypes - -import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CommentView -import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CommunityView -import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.MultiCommunityView -import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PersonView -import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PostView -import kotlinx.serialization.ExperimentalSerializationApi -import kotlinx.serialization.SerialName -import kotlinx.serialization.Serializable -import kotlinx.serialization.json.JsonClassDiscriminator - -// TODO: wrong serialization - -@Serializable -@OptIn(ExperimentalSerializationApi::class) -@JsonClassDiscriminator("type_") -internal sealed class SearchCombinedView { - @Serializable - @SerialName("Post") - internal data class Post(val post: PostView) : SearchCombinedView() - - @Serializable - @SerialName("Comment") - internal data class Comment(val comment: CommentView) : SearchCombinedView() - - @Serializable - @SerialName("Community") - internal data class Community(val community: CommunityView) : SearchCombinedView() - - @Serializable - @SerialName("Person") - internal data class Person(val person: PersonView) : SearchCombinedView() - - @Serializable - @SerialName("MultiCommunity") - internal data class MultiCommunity(val multiCommunity: MultiCommunityView) : SearchCombinedView() -} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Comment.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Comment.kt index 25e62f47..e2464eb5 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Comment.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Comment.kt @@ -1,8 +1,10 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes +import kotlinx.serialization.SerialName import kotlinx.serialization.Serializable @Serializable +@SerialName("comment") internal data class Comment( val id: CommentId, val creator_id: PersonId, @@ -25,4 +27,4 @@ internal data class Comment( val unresolved_report_count: Long, val federation_pending: Boolean, val locked: Boolean, -) +) : SearchCombinedView diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityView.kt index 6cde97a3..2d9476c0 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityView.kt @@ -1,11 +1,13 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes +import kotlinx.serialization.SerialName import kotlinx.serialization.Serializable @Serializable +@SerialName("community") internal data class CommunityView( val community: Community, val community_actions: CommunityActions? = null, val can_mod: Boolean, val tags: CommunityTagsView, -) +) : SearchCombinedView diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MultiCommunityView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MultiCommunityView.kt index 7fa11998..392e869c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MultiCommunityView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MultiCommunityView.kt @@ -1,11 +1,13 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes import it.vercruysse.lemmyapi.enums.CommunityFollowerState +import kotlinx.serialization.SerialName import kotlinx.serialization.Serializable @Serializable +@SerialName("multi_community") internal data class MultiCommunityView( val multi: MultiCommunity, val follow_state: CommunityFollowerState? /* "accepted" | "pending" | "approval_required" | "denied" */ = null, val owner: Person, -) +) : SearchCombinedView diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonView.kt index 3e2fcef2..cf13cf89 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonView.kt @@ -1,12 +1,14 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes +import kotlinx.serialization.SerialName import kotlinx.serialization.Serializable @Serializable +@SerialName("person") internal data class PersonView( val person: Person, val is_admin: Boolean, val person_actions: PersonActions? = null, val banned: Boolean, val ban_expires_at: String? = null, -) +) : SearchCombinedView diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostView.kt index 62a2bc9a..e9904362 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostView.kt @@ -1,8 +1,10 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes +import kotlinx.serialization.SerialName import kotlinx.serialization.Serializable @Serializable +@SerialName("post") internal data class PostView( val post: Post, val creator: Person, @@ -19,4 +21,4 @@ internal data class PostView( val creator_is_moderator: Boolean, val creator_banned_from_community: Boolean, val creator_community_ban_expires_at: String? = null, -) +) : SearchCombinedView diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SearchCombinedView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SearchCombinedView.kt new file mode 100644 index 00000000..f6319c27 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SearchCombinedView.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.ExperimentalSerializationApi +import kotlinx.serialization.json.JsonClassDiscriminator + + +@OptIn(ExperimentalSerializationApi::class) +@JsonClassDiscriminator("type_") +internal sealed interface SearchCombinedView diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SearchResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SearchResponse.kt index 78ab6d51..8d4225fc 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SearchResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SearchResponse.kt @@ -1,6 +1,5 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -import it.vercruysse.lemmyapi.v1.x0.x0.combinedtypes.SearchCombinedView import kotlinx.serialization.Serializable @Serializable From 422e16d8aafe7a23de4dceab919fc5254a39ef5e Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Sun, 8 Mar 2026 13:18:37 +0100 Subject: [PATCH 046/110] Remove ResolveObjectResponse --- .../src/main/kotlin/MapperGenerator0x18x5.kt | 1 - .../src/main/kotlin/MapperGenerator0x19x0.kt | 1 - .../src/main/kotlin/MapperGenerator0x19x11.kt | 1 - .../src/main/kotlin/MapperGenerator0x19x3.kt | 1 - .../src/main/kotlin/MapperGenerator0x19x4.kt | 1 - .../src/main/kotlin/MapperGenerator0x19x6.kt | 1 - .../lemmyapi/LemmyApiBaseController.kt | 2 +- .../datatypes/ResolveObjectResponse.kt | 17 ----------------- .../lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt | 2 +- .../lemmyapi/v0/x18/x5/MapperGenerator.kt | 2 +- .../lemmyapi/v0/x18/x5/Transformer.kt | 18 ++++++++++-------- .../lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt | 2 +- .../lemmyapi/v0/x19/x0/MapperGenerator.kt | 2 +- .../lemmyapi/v0/x19/x0/Transformer.kt | 18 ++++++++++-------- .../lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt | 2 +- .../lemmyapi/v0/x19/x11/MapperGenerator.kt | 2 +- .../lemmyapi/v0/x19/x11/Transformer.kt | 18 ++++++++++-------- .../lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt | 2 +- .../lemmyapi/v0/x19/x3/MapperGenerator.kt | 2 +- .../lemmyapi/v0/x19/x3/Transformer.kt | 18 ++++++++++-------- .../lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt | 2 +- .../lemmyapi/v0/x19/x4/MapperGenerator.kt | 2 +- .../lemmyapi/v0/x19/x4/Transformer.kt | 18 ++++++++++-------- .../lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt | 2 +- .../lemmyapi/v0/x19/x6/MapperGenerator.kt | 2 +- .../lemmyapi/v0/x19/x6/Transformer.kt | 18 ++++++++++-------- 26 files changed, 73 insertions(+), 84 deletions(-) delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ResolveObjectResponse.kt diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x18x5.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x18x5.kt index fcd9716d..001f41bf 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x18x5.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x18x5.kt @@ -187,7 +187,6 @@ internal interface MapperGenerator0x18x5 { fun toUni(d: RegistrationApplication): it.vercruysse.lemmyapi.datatypes.RegistrationApplication fun toUni(d: RegistrationApplicationResponse): it.vercruysse.lemmyapi.datatypes.RegistrationApplicationResponse fun toUni(d: RegistrationApplicationView): it.vercruysse.lemmyapi.datatypes.RegistrationApplicationView - fun toUni(d: ResolveObjectResponse): it.vercruysse.lemmyapi.datatypes.ResolveObjectResponse fun toUni(d: SearchResponse): it.vercruysse.lemmyapi.datatypes.SearchResponse fun toUni(d: Site): it.vercruysse.lemmyapi.datatypes.Site fun toUni(d: SiteResponse): it.vercruysse.lemmyapi.datatypes.SiteResponse diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x0.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x0.kt index 6b80489a..2bd97142 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x0.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x0.kt @@ -149,7 +149,6 @@ internal interface MapperGenerator0x19x0 { fun toUni(d: RegistrationApplication): it.vercruysse.lemmyapi.datatypes.RegistrationApplication fun toUni(d: RegistrationApplicationResponse): it.vercruysse.lemmyapi.datatypes.RegistrationApplicationResponse fun toUni(d: RegistrationApplicationView): it.vercruysse.lemmyapi.datatypes.RegistrationApplicationView - fun toUni(d: ResolveObjectResponse): it.vercruysse.lemmyapi.datatypes.ResolveObjectResponse fun toUni(d: SearchResponse): it.vercruysse.lemmyapi.datatypes.SearchResponse fun toUni(d: Site): it.vercruysse.lemmyapi.datatypes.Site fun toUni(d: SiteResponse): it.vercruysse.lemmyapi.datatypes.SiteResponse diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt index 0f1c97e1..e443f707 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt @@ -69,7 +69,6 @@ internal interface MapperGenerator0x19x11 { fun toUni(d: RegistrationApplication): it.vercruysse.lemmyapi.datatypes.RegistrationApplication fun toUni(d: RegistrationApplicationResponse): it.vercruysse.lemmyapi.datatypes.RegistrationApplicationResponse fun toUni(d: RegistrationApplicationView): it.vercruysse.lemmyapi.datatypes.RegistrationApplicationView - fun toUni(d: ResolveObjectResponse): it.vercruysse.lemmyapi.datatypes.ResolveObjectResponse fun toUni(d: SearchResponse): it.vercruysse.lemmyapi.datatypes.SearchResponse fun toUni(d: Site): it.vercruysse.lemmyapi.datatypes.Site fun toUni(d: SiteResponse): it.vercruysse.lemmyapi.datatypes.SiteResponse diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x3.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x3.kt index 5d1e348f..a17b69bc 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x3.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x3.kt @@ -148,7 +148,6 @@ internal interface MapperGenerator0x19x3 { fun toUni(d: RegistrationApplication): it.vercruysse.lemmyapi.datatypes.RegistrationApplication fun toUni(d: RegistrationApplicationResponse): it.vercruysse.lemmyapi.datatypes.RegistrationApplicationResponse fun toUni(d: RegistrationApplicationView): it.vercruysse.lemmyapi.datatypes.RegistrationApplicationView - fun toUni(d: ResolveObjectResponse): it.vercruysse.lemmyapi.datatypes.ResolveObjectResponse fun toUni(d: SearchResponse): it.vercruysse.lemmyapi.datatypes.SearchResponse fun toUni(d: Site): it.vercruysse.lemmyapi.datatypes.Site fun toUni(d: SiteResponse): it.vercruysse.lemmyapi.datatypes.SiteResponse diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt index 7792d496..34b22c84 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt @@ -68,7 +68,6 @@ internal interface MapperGenerator0x19x4 { fun toUni(d: RegistrationApplication): it.vercruysse.lemmyapi.datatypes.RegistrationApplication fun toUni(d: RegistrationApplicationResponse): it.vercruysse.lemmyapi.datatypes.RegistrationApplicationResponse fun toUni(d: RegistrationApplicationView): it.vercruysse.lemmyapi.datatypes.RegistrationApplicationView - fun toUni(d: ResolveObjectResponse): it.vercruysse.lemmyapi.datatypes.ResolveObjectResponse fun toUni(d: SearchResponse): it.vercruysse.lemmyapi.datatypes.SearchResponse fun toUni(d: Site): it.vercruysse.lemmyapi.datatypes.Site fun toUni(d: SiteResponse): it.vercruysse.lemmyapi.datatypes.SiteResponse diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt index 0cb22a70..bf6b07b1 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt @@ -69,7 +69,6 @@ internal interface MapperGenerator0x19x6 { fun toUni(d: RegistrationApplication): it.vercruysse.lemmyapi.datatypes.RegistrationApplication fun toUni(d: RegistrationApplicationResponse): it.vercruysse.lemmyapi.datatypes.RegistrationApplicationResponse fun toUni(d: RegistrationApplicationView): it.vercruysse.lemmyapi.datatypes.RegistrationApplicationView - fun toUni(d: ResolveObjectResponse): it.vercruysse.lemmyapi.datatypes.ResolveObjectResponse fun toUni(d: SearchResponse): it.vercruysse.lemmyapi.datatypes.SearchResponse fun toUni(d: Site): it.vercruysse.lemmyapi.datatypes.Site fun toUni(d: SiteResponse): it.vercruysse.lemmyapi.datatypes.SiteResponse diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt index 720b801b..f3a06184 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt @@ -53,7 +53,7 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version * * @GET("resolve_object") */ - abstract suspend fun resolveObject(form: ResolveObject): Result + abstract suspend fun resolveObject(form: ResolveObject): Result /** * Get / fetch a community. diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ResolveObjectResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ResolveObjectResponse.kt deleted file mode 100644 index ba46ffba..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ResolveObjectResponse.kt +++ /dev/null @@ -1,17 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -// TODO: is removed, replaced by SearchResponse - -@CommonParcelize -@Serializable -data class ResolveObjectResponse( - val comment: CommentView? = null, - val post: PostView? = null, - val community: CommunityView? = null, - val person: PersonView? = null, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt index d5030f55..c58804c8 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt @@ -87,7 +87,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun resolveObject( form: it.vercruysse.lemmyapi.datatypes.ResolveObject, - ): Result = + ): Result = apiV18.resolveObject(transformer.fromUni(form)).map(transformer::toUni) /** diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/MapperGenerator.kt index b72863a8..ef897268 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/MapperGenerator.kt @@ -93,7 +93,7 @@ internal interface MapperGenerator { fun toUni(d: RegistrationApplication): it.vercruysse.lemmyapi.datatypes.RegistrationApplication fun toUni(d: RegistrationApplicationResponse): it.vercruysse.lemmyapi.datatypes.RegistrationApplicationResponse fun toUni(d: RegistrationApplicationView): it.vercruysse.lemmyapi.datatypes.RegistrationApplicationView - fun toUni(d: ResolveObjectResponse): it.vercruysse.lemmyapi.datatypes.ResolveObjectResponse + fun toUni(d: ResolveObjectResponse): it.vercruysse.lemmyapi.datatypes.SearchResponse fun toUni(d: SearchResponse): it.vercruysse.lemmyapi.datatypes.SearchResponse fun toUni(d: Site): it.vercruysse.lemmyapi.datatypes.Site fun toUni(d: SiteResponse): it.vercruysse.lemmyapi.datatypes.SiteResponse diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt index 07ea8942..83ed4257 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt @@ -135,14 +135,12 @@ import it.vercruysse.lemmyapi.datatypes.RemoveCommunity as LemmyapiDatatypesRemo import it.vercruysse.lemmyapi.datatypes.RemovePost as LemmyapiDatatypesRemovePost import it.vercruysse.lemmyapi.datatypes.ResolveCommentReport as LemmyapiDatatypesResolveCommentReport import it.vercruysse.lemmyapi.datatypes.ResolveObject as LemmyapiDatatypesResolveObject -import it.vercruysse.lemmyapi.datatypes.ResolveObjectResponse as LemmyapiDatatypesResolveObjectResponse import it.vercruysse.lemmyapi.datatypes.ResolvePostReport as LemmyapiDatatypesResolvePostReport import it.vercruysse.lemmyapi.datatypes.ResolvePrivateMessageReport as LemmyapiDatatypesResolvePrivateMessageReport import it.vercruysse.lemmyapi.datatypes.SaveComment as LemmyapiDatatypesSaveComment import it.vercruysse.lemmyapi.datatypes.SavePost as LemmyapiDatatypesSavePost import it.vercruysse.lemmyapi.datatypes.SaveUserSettings as LemmyapiDatatypesSaveUserSettings import it.vercruysse.lemmyapi.datatypes.Search as LemmyapiDatatypesSearch -import it.vercruysse.lemmyapi.datatypes.SearchCombinedView as LemmyapiDatatypesSearchCombinedView import it.vercruysse.lemmyapi.datatypes.SearchResponse as LemmyapiDatatypesSearchResponse import it.vercruysse.lemmyapi.datatypes.Site as LemmyapiDatatypesSite import it.vercruysse.lemmyapi.datatypes.SiteResponse as LemmyapiDatatypesSiteResponse @@ -956,12 +954,16 @@ internal class Transformer(var auth: String) : MapperGenerator { admin = d.admin?.let { this.toUni(d = it) }, ) - override fun toUni(d: X5DatatypesResolveObjectResponse): LemmyapiDatatypesResolveObjectResponse = - LemmyapiDatatypesResolveObjectResponse( - comment = d.comment?.let { this.toUni(d = it) }, - post = d.post?.let { this.toUni(d = it) }, - community = d.community?.let { this.toUni(d = it) }, - person = d.person?.let { this.toUni(d = it) }, + override fun toUni(d: X5DatatypesResolveObjectResponse): LemmyapiDatatypesSearchResponse = + LemmyapiDatatypesSearchResponse( + resolve = when { + d.post != null -> toUni(d.post) + d.comment != null -> toUni(d.comment) + d.community != null -> toUni(d.community) + d.person != null -> toUni(d.person) + else -> null + }, + search = emptyList(), ) override fun toUni(d: X5DatatypesSearchResponse): LemmyapiDatatypesSearchResponse = diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt index b3fe964a..0012abc8 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt @@ -75,7 +75,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun resolveObject( form: it.vercruysse.lemmyapi.datatypes.ResolveObject, - ): Result = + ): Result = api.resolveObject(transformer.fromUni(form)).map(transformer::toUni) /** diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt index 3d2236bd..7525b441 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt @@ -87,7 +87,7 @@ internal interface MapperGenerator { fun toUni(d: RegistrationApplication): it.vercruysse.lemmyapi.datatypes.RegistrationApplication fun toUni(d: RegistrationApplicationResponse): it.vercruysse.lemmyapi.datatypes.RegistrationApplicationResponse fun toUni(d: RegistrationApplicationView): it.vercruysse.lemmyapi.datatypes.RegistrationApplicationView - fun toUni(d: ResolveObjectResponse): it.vercruysse.lemmyapi.datatypes.ResolveObjectResponse + fun toUni(d: ResolveObjectResponse): it.vercruysse.lemmyapi.datatypes.SearchResponse fun toUni(d: SearchResponse): it.vercruysse.lemmyapi.datatypes.SearchResponse fun toUni(d: Site): it.vercruysse.lemmyapi.datatypes.Site fun toUni(d: SiteResponse): it.vercruysse.lemmyapi.datatypes.SiteResponse diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt index 374de4ec..959609b9 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt @@ -137,14 +137,12 @@ import it.vercruysse.lemmyapi.datatypes.RemoveCommunity as LemmyapiDatatypesRemo import it.vercruysse.lemmyapi.datatypes.RemovePost as LemmyapiDatatypesRemovePost import it.vercruysse.lemmyapi.datatypes.ResolveCommentReport as LemmyapiDatatypesResolveCommentReport import it.vercruysse.lemmyapi.datatypes.ResolveObject as LemmyapiDatatypesResolveObject -import it.vercruysse.lemmyapi.datatypes.ResolveObjectResponse as LemmyapiDatatypesResolveObjectResponse import it.vercruysse.lemmyapi.datatypes.ResolvePostReport as LemmyapiDatatypesResolvePostReport import it.vercruysse.lemmyapi.datatypes.ResolvePrivateMessageReport as LemmyapiDatatypesResolvePrivateMessageReport import it.vercruysse.lemmyapi.datatypes.SaveComment as LemmyapiDatatypesSaveComment import it.vercruysse.lemmyapi.datatypes.SavePost as LemmyapiDatatypesSavePost import it.vercruysse.lemmyapi.datatypes.SaveUserSettings as LemmyapiDatatypesSaveUserSettings import it.vercruysse.lemmyapi.datatypes.Search as LemmyapiDatatypesSearch -import it.vercruysse.lemmyapi.datatypes.SearchCombinedView as LemmyapiDatatypesSearchCombinedView import it.vercruysse.lemmyapi.datatypes.SearchResponse as LemmyapiDatatypesSearchResponse import it.vercruysse.lemmyapi.datatypes.Site as LemmyapiDatatypesSite import it.vercruysse.lemmyapi.datatypes.SiteResponse as LemmyapiDatatypesSiteResponse @@ -1003,12 +1001,16 @@ internal class Transformer : MapperGenerator { admin = d.admin?.let { this.toUni(d = it) }, ) - override fun toUni(d: X0DatatypesResolveObjectResponse): LemmyapiDatatypesResolveObjectResponse = - LemmyapiDatatypesResolveObjectResponse( - comment = d.comment?.let { this.toUni(d = it) }, - post = d.post?.let { this.toUni(d = it) }, - community = d.community?.let { this.toUni(d = it) }, - person = d.person?.let { this.toUni(d = it) }, + override fun toUni(d: X0DatatypesResolveObjectResponse): LemmyapiDatatypesSearchResponse = + LemmyapiDatatypesSearchResponse( + resolve = when { + d.post != null -> toUni(d.post) + d.comment != null -> toUni(d.comment) + d.community != null -> toUni(d.community) + d.person != null -> toUni(d.person) + else -> null + }, + search = emptyList(), ) override fun toUni(d: X0DatatypesSearchResponse): LemmyapiDatatypesSearchResponse = diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt index 12790aa7..27c62e61 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt @@ -75,7 +75,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun resolveObject( form: it.vercruysse.lemmyapi.datatypes.ResolveObject, - ): Result = + ): Result = api.resolveObject(transformer.fromUni(form)).map(transformer::toUni) /** diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt index 266a334a..177a1de8 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt @@ -66,7 +66,7 @@ internal interface MapperGenerator { fun toUni(d: RegistrationApplication): it.vercruysse.lemmyapi.datatypes.RegistrationApplication fun toUni(d: RegistrationApplicationResponse): it.vercruysse.lemmyapi.datatypes.RegistrationApplicationResponse fun toUni(d: RegistrationApplicationView): it.vercruysse.lemmyapi.datatypes.RegistrationApplicationView - fun toUni(d: ResolveObjectResponse): it.vercruysse.lemmyapi.datatypes.ResolveObjectResponse + fun toUni(d: ResolveObjectResponse): it.vercruysse.lemmyapi.datatypes.SearchResponse fun toUni(d: SearchResponse): it.vercruysse.lemmyapi.datatypes.SearchResponse fun toUni(d: Site): it.vercruysse.lemmyapi.datatypes.Site fun toUni(d: SiteResponse): it.vercruysse.lemmyapi.datatypes.SiteResponse diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt index 081c6e39..5ce29a44 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt @@ -146,14 +146,12 @@ import it.vercruysse.lemmyapi.datatypes.RemoveCommunity as LemmyapiDatatypesRemo import it.vercruysse.lemmyapi.datatypes.RemovePost as LemmyapiDatatypesRemovePost import it.vercruysse.lemmyapi.datatypes.ResolveCommentReport as LemmyapiDatatypesResolveCommentReport import it.vercruysse.lemmyapi.datatypes.ResolveObject as LemmyapiDatatypesResolveObject -import it.vercruysse.lemmyapi.datatypes.ResolveObjectResponse as LemmyapiDatatypesResolveObjectResponse import it.vercruysse.lemmyapi.datatypes.ResolvePostReport as LemmyapiDatatypesResolvePostReport import it.vercruysse.lemmyapi.datatypes.ResolvePrivateMessageReport as LemmyapiDatatypesResolvePrivateMessageReport import it.vercruysse.lemmyapi.datatypes.SaveComment as LemmyapiDatatypesSaveComment import it.vercruysse.lemmyapi.datatypes.SavePost as LemmyapiDatatypesSavePost import it.vercruysse.lemmyapi.datatypes.SaveUserSettings as LemmyapiDatatypesSaveUserSettings import it.vercruysse.lemmyapi.datatypes.Search as LemmyapiDatatypesSearch -import it.vercruysse.lemmyapi.datatypes.SearchCombinedView as LemmyapiDatatypesSearchCombinedView import it.vercruysse.lemmyapi.datatypes.SearchResponse as LemmyapiDatatypesSearchResponse import it.vercruysse.lemmyapi.datatypes.Site as LemmyapiDatatypesSite import it.vercruysse.lemmyapi.datatypes.SiteResponse as LemmyapiDatatypesSiteResponse @@ -1071,12 +1069,16 @@ internal class Transformer : MapperGenerator { admin = d.admin?.let { this.toUni(d = it) }, ) - override fun toUni(d: X11DatatypesResolveObjectResponse): LemmyapiDatatypesResolveObjectResponse = - LemmyapiDatatypesResolveObjectResponse( - comment = d.comment?.let { this.toUni(d = it) }, - post = d.post?.let { this.toUni(d = it) }, - community = d.community?.let { this.toUni(d = it) }, - person = d.person?.let { this.toUni(d = it) }, + override fun toUni(d: X11DatatypesResolveObjectResponse): LemmyapiDatatypesSearchResponse = + LemmyapiDatatypesSearchResponse( + resolve = when { + d.post != null -> toUni(d.post) + d.comment != null -> toUni(d.comment) + d.community != null -> toUni(d.community) + d.person != null -> toUni(d.person) + else -> null + }, + search = emptyList(), ) override fun toUni(d: X11DatatypesSearchResponse): LemmyapiDatatypesSearchResponse = diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt index b2607af0..ecd3ad69 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt @@ -76,7 +76,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun resolveObject( form: it.vercruysse.lemmyapi.datatypes.ResolveObject, - ): Result = + ): Result = api.resolveObject(transformer.fromUni(form)).map(transformer::toUni) /** diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt index 549bbd00..7c9de2d9 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt @@ -81,7 +81,7 @@ internal interface MapperGenerator { fun toUni(d: RegistrationApplication): it.vercruysse.lemmyapi.datatypes.RegistrationApplication fun toUni(d: RegistrationApplicationResponse): it.vercruysse.lemmyapi.datatypes.RegistrationApplicationResponse fun toUni(d: RegistrationApplicationView): it.vercruysse.lemmyapi.datatypes.RegistrationApplicationView - fun toUni(d: ResolveObjectResponse): it.vercruysse.lemmyapi.datatypes.ResolveObjectResponse + fun toUni(d: ResolveObjectResponse): it.vercruysse.lemmyapi.datatypes.SearchResponse fun toUni(d: SearchResponse): it.vercruysse.lemmyapi.datatypes.SearchResponse fun toUni(d: Site): it.vercruysse.lemmyapi.datatypes.Site fun toUni(d: SiteResponse): it.vercruysse.lemmyapi.datatypes.SiteResponse diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt index 81c4b870..d65002a0 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt @@ -141,14 +141,12 @@ import it.vercruysse.lemmyapi.datatypes.RemoveCommunity as LemmyapiDatatypesRemo import it.vercruysse.lemmyapi.datatypes.RemovePost as LemmyapiDatatypesRemovePost import it.vercruysse.lemmyapi.datatypes.ResolveCommentReport as LemmyapiDatatypesResolveCommentReport import it.vercruysse.lemmyapi.datatypes.ResolveObject as LemmyapiDatatypesResolveObject -import it.vercruysse.lemmyapi.datatypes.ResolveObjectResponse as LemmyapiDatatypesResolveObjectResponse import it.vercruysse.lemmyapi.datatypes.ResolvePostReport as LemmyapiDatatypesResolvePostReport import it.vercruysse.lemmyapi.datatypes.ResolvePrivateMessageReport as LemmyapiDatatypesResolvePrivateMessageReport import it.vercruysse.lemmyapi.datatypes.SaveComment as LemmyapiDatatypesSaveComment import it.vercruysse.lemmyapi.datatypes.SavePost as LemmyapiDatatypesSavePost import it.vercruysse.lemmyapi.datatypes.SaveUserSettings as LemmyapiDatatypesSaveUserSettings import it.vercruysse.lemmyapi.datatypes.Search as LemmyapiDatatypesSearch -import it.vercruysse.lemmyapi.datatypes.SearchCombinedView as LemmyapiDatatypesSearchCombinedView import it.vercruysse.lemmyapi.datatypes.SearchResponse as LemmyapiDatatypesSearchResponse import it.vercruysse.lemmyapi.datatypes.Site as LemmyapiDatatypesSite import it.vercruysse.lemmyapi.datatypes.SiteResponse as LemmyapiDatatypesSiteResponse @@ -1021,12 +1019,16 @@ internal class Transformer : MapperGenerator { admin = d.admin?.let { this.toUni(d = it) }, ) - override fun toUni(d: X3DatatypesResolveObjectResponse): LemmyapiDatatypesResolveObjectResponse = - LemmyapiDatatypesResolveObjectResponse( - comment = d.comment?.let { this.toUni(d = it) }, - post = d.post?.let { this.toUni(d = it) }, - community = d.community?.let { this.toUni(d = it) }, - person = d.person?.let { this.toUni(d = it) }, + override fun toUni(d: X3DatatypesResolveObjectResponse): LemmyapiDatatypesSearchResponse = + LemmyapiDatatypesSearchResponse( + resolve = when { + d.post != null -> toUni(d.post) + d.comment != null -> toUni(d.comment) + d.community != null -> toUni(d.community) + d.person != null -> toUni(d.person) + else -> null + }, + search = emptyList(), ) override fun toUni(d: X3DatatypesSearchResponse): LemmyapiDatatypesSearchResponse = diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt index 55fb52e7..55781470 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt @@ -75,7 +75,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun resolveObject( form: it.vercruysse.lemmyapi.datatypes.ResolveObject, - ): Result = + ): Result = api.resolveObject(transformer.fromUni(form)).map(transformer::toUni) /** diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt index 796cd3bd..1e30a4c3 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt @@ -64,7 +64,7 @@ internal interface MapperGenerator { fun toUni(d: RegistrationApplication): it.vercruysse.lemmyapi.datatypes.RegistrationApplication fun toUni(d: RegistrationApplicationResponse): it.vercruysse.lemmyapi.datatypes.RegistrationApplicationResponse fun toUni(d: RegistrationApplicationView): it.vercruysse.lemmyapi.datatypes.RegistrationApplicationView - fun toUni(d: ResolveObjectResponse): it.vercruysse.lemmyapi.datatypes.ResolveObjectResponse + fun toUni(d: ResolveObjectResponse): it.vercruysse.lemmyapi.datatypes.SearchResponse fun toUni(d: SearchResponse): it.vercruysse.lemmyapi.datatypes.SearchResponse fun toUni(d: Site): it.vercruysse.lemmyapi.datatypes.Site fun toUni(d: SiteResponse): it.vercruysse.lemmyapi.datatypes.SiteResponse diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt index 32a4f9f9..ab5dbfb5 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt @@ -144,14 +144,12 @@ import it.vercruysse.lemmyapi.datatypes.RemoveCommunity as LemmyapiDatatypesRemo import it.vercruysse.lemmyapi.datatypes.RemovePost as LemmyapiDatatypesRemovePost import it.vercruysse.lemmyapi.datatypes.ResolveCommentReport as LemmyapiDatatypesResolveCommentReport import it.vercruysse.lemmyapi.datatypes.ResolveObject as LemmyapiDatatypesResolveObject -import it.vercruysse.lemmyapi.datatypes.ResolveObjectResponse as LemmyapiDatatypesResolveObjectResponse import it.vercruysse.lemmyapi.datatypes.ResolvePostReport as LemmyapiDatatypesResolvePostReport import it.vercruysse.lemmyapi.datatypes.ResolvePrivateMessageReport as LemmyapiDatatypesResolvePrivateMessageReport import it.vercruysse.lemmyapi.datatypes.SaveComment as LemmyapiDatatypesSaveComment import it.vercruysse.lemmyapi.datatypes.SavePost as LemmyapiDatatypesSavePost import it.vercruysse.lemmyapi.datatypes.SaveUserSettings as LemmyapiDatatypesSaveUserSettings import it.vercruysse.lemmyapi.datatypes.Search as LemmyapiDatatypesSearch -import it.vercruysse.lemmyapi.datatypes.SearchCombinedView as LemmyapiDatatypesSearchCombinedView import it.vercruysse.lemmyapi.datatypes.SearchResponse as LemmyapiDatatypesSearchResponse import it.vercruysse.lemmyapi.datatypes.Site as LemmyapiDatatypesSite import it.vercruysse.lemmyapi.datatypes.SiteResponse as LemmyapiDatatypesSiteResponse @@ -1065,12 +1063,16 @@ internal class Transformer : MapperGenerator { admin = d.admin?.let { this.toUni(d = it) }, ) - override fun toUni(d: X4DatatypesResolveObjectResponse): LemmyapiDatatypesResolveObjectResponse = - LemmyapiDatatypesResolveObjectResponse( - comment = d.comment?.let { this.toUni(d = it) }, - post = d.post?.let { this.toUni(d = it) }, - community = d.community?.let { this.toUni(d = it) }, - person = d.person?.let { this.toUni(d = it) }, + override fun toUni(d: X4DatatypesResolveObjectResponse): LemmyapiDatatypesSearchResponse = + LemmyapiDatatypesSearchResponse( + resolve = when { + d.post != null -> toUni(d.post) + d.comment != null -> toUni(d.comment) + d.community != null -> toUni(d.community) + d.person != null -> toUni(d.person) + else -> null + }, + search = emptyList(), ) override fun toUni(d: X4DatatypesSearchResponse): LemmyapiDatatypesSearchResponse = diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt index 7f61f7fe..e340b002 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt @@ -76,7 +76,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun resolveObject( form: it.vercruysse.lemmyapi.datatypes.ResolveObject, - ): Result = + ): Result = api.resolveObject(transformer.fromUni(form)).map(transformer::toUni) /** diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt index 6db7333c..e805740b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt @@ -66,7 +66,7 @@ internal interface MapperGenerator { fun toUni(d: RegistrationApplication): it.vercruysse.lemmyapi.datatypes.RegistrationApplication fun toUni(d: RegistrationApplicationResponse): it.vercruysse.lemmyapi.datatypes.RegistrationApplicationResponse fun toUni(d: RegistrationApplicationView): it.vercruysse.lemmyapi.datatypes.RegistrationApplicationView - fun toUni(d: ResolveObjectResponse): it.vercruysse.lemmyapi.datatypes.ResolveObjectResponse + fun toUni(d: ResolveObjectResponse): it.vercruysse.lemmyapi.datatypes.SearchResponse fun toUni(d: SearchResponse): it.vercruysse.lemmyapi.datatypes.SearchResponse fun toUni(d: Site): it.vercruysse.lemmyapi.datatypes.Site fun toUni(d: SiteResponse): it.vercruysse.lemmyapi.datatypes.SiteResponse diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt index c5530b97..0a8b548a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt @@ -146,14 +146,12 @@ import it.vercruysse.lemmyapi.datatypes.RemoveCommunity as LemmyapiDatatypesRemo import it.vercruysse.lemmyapi.datatypes.RemovePost as LemmyapiDatatypesRemovePost import it.vercruysse.lemmyapi.datatypes.ResolveCommentReport as LemmyapiDatatypesResolveCommentReport import it.vercruysse.lemmyapi.datatypes.ResolveObject as LemmyapiDatatypesResolveObject -import it.vercruysse.lemmyapi.datatypes.ResolveObjectResponse as LemmyapiDatatypesResolveObjectResponse import it.vercruysse.lemmyapi.datatypes.ResolvePostReport as LemmyapiDatatypesResolvePostReport import it.vercruysse.lemmyapi.datatypes.ResolvePrivateMessageReport as LemmyapiDatatypesResolvePrivateMessageReport import it.vercruysse.lemmyapi.datatypes.SaveComment as LemmyapiDatatypesSaveComment import it.vercruysse.lemmyapi.datatypes.SavePost as LemmyapiDatatypesSavePost import it.vercruysse.lemmyapi.datatypes.SaveUserSettings as LemmyapiDatatypesSaveUserSettings import it.vercruysse.lemmyapi.datatypes.Search as LemmyapiDatatypesSearch -import it.vercruysse.lemmyapi.datatypes.SearchCombinedView as LemmyapiDatatypesSearchCombinedView import it.vercruysse.lemmyapi.datatypes.SearchResponse as LemmyapiDatatypesSearchResponse import it.vercruysse.lemmyapi.datatypes.Site as LemmyapiDatatypesSite import it.vercruysse.lemmyapi.datatypes.SiteResponse as LemmyapiDatatypesSiteResponse @@ -1068,12 +1066,16 @@ internal class Transformer : MapperGenerator { admin = d.admin?.let { this.toUni(d = it) }, ) - override fun toUni(d: X6DatatypesResolveObjectResponse): LemmyapiDatatypesResolveObjectResponse = - LemmyapiDatatypesResolveObjectResponse( - comment = d.comment?.let { this.toUni(d = it) }, - post = d.post?.let { this.toUni(d = it) }, - community = d.community?.let { this.toUni(d = it) }, - person = d.person?.let { this.toUni(d = it) }, + override fun toUni(d: X6DatatypesResolveObjectResponse): LemmyapiDatatypesSearchResponse = + LemmyapiDatatypesSearchResponse( + resolve = when { + d.post != null -> toUni(d.post) + d.comment != null -> toUni(d.comment) + d.community != null -> toUni(d.community) + d.person != null -> toUni(d.person) + else -> null + }, + search = emptyList(), ) override fun toUni(d: X6DatatypesSearchResponse): LemmyapiDatatypesSearchResponse = From 8e563d27f65f02b9ca8cfe2d17ec8087cc2bb870 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Sun, 8 Mar 2026 13:29:41 +0100 Subject: [PATCH 047/110] Fix NotificationData --- .../vercruysse/lemmyapi/datatypes/VoteView.kt | 2 -- .../x0/x0/combinedtypes/NotificationData.kt | 34 ------------------- .../lemmyapi/v1/x0/x0/datatypes/Comment.kt | 3 +- .../v1/x0/x0/datatypes/CommentView.kt | 4 ++- .../lemmyapi/v1/x0/x0/datatypes/ModlogView.kt | 4 ++- .../v1/x0/x0/datatypes/NotificationData.kt | 10 ++++++ .../v1/x0/x0/datatypes/NotificationView.kt | 1 - .../v1/x0/x0/datatypes/PrivateMessageView.kt | 4 ++- 8 files changed, 20 insertions(+), 42 deletions(-) delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/NotificationData.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/NotificationData.kt diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/VoteView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/VoteView.kt index 1d91bba9..13e766cb 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/VoteView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/VoteView.kt @@ -6,8 +6,6 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize -// TODO add new files and remove old files - @CommonParcelize @Serializable data class VoteView( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/NotificationData.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/NotificationData.kt deleted file mode 100644 index b8548b7c..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/NotificationData.kt +++ /dev/null @@ -1,34 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.combinedtypes - -import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CommentView -import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PostView -import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PrivateMessageView -import kotlinx.serialization.ExperimentalSerializationApi -import kotlinx.serialization.SerialName -import kotlinx.serialization.Serializable -import kotlinx.serialization.json.JsonClassDiscriminator - -// TODO - -@Serializable -@OptIn(ExperimentalSerializationApi::class) -@JsonClassDiscriminator("type_") -internal sealed class NotificationData { - @Serializable - @SerialName("Post") - internal data class Post( - val post: PostView, - ) : NotificationData() - - @Serializable - @SerialName("Comment") - internal data class Comment( - val comment: CommentView, - ) : NotificationData() - - @Serializable - @SerialName("PrivateMessage") - internal data class PrivateMessage( - val private_message: PrivateMessageView, - ) : NotificationData() -} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Comment.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Comment.kt index e2464eb5..a1bb77c1 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Comment.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Comment.kt @@ -4,7 +4,6 @@ import kotlinx.serialization.SerialName import kotlinx.serialization.Serializable @Serializable -@SerialName("comment") internal data class Comment( val id: CommentId, val creator_id: PersonId, @@ -27,4 +26,4 @@ internal data class Comment( val unresolved_report_count: Long, val federation_pending: Boolean, val locked: Boolean, -) : SearchCombinedView +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentView.kt index 00a990fb..1ccdaf3f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentView.kt @@ -1,8 +1,10 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes +import kotlinx.serialization.SerialName import kotlinx.serialization.Serializable @Serializable +@SerialName("comment") internal data class CommentView( val comment: Comment, val creator: Person, @@ -19,4 +21,4 @@ internal data class CommentView( val creator_is_moderator: Boolean, val creator_banned_from_community: Boolean, val creator_community_ban_expires_at: String? = null, -) +) : SearchCombinedView, NotificationData diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModlogView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModlogView.kt index a1a7ca73..55cbb394 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModlogView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ModlogView.kt @@ -1,8 +1,10 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes +import kotlinx.serialization.SerialName import kotlinx.serialization.Serializable @Serializable +@SerialName("mod_action") internal data class ModlogView( val modlog: Modlog, val moderator: Person? = null, @@ -11,4 +13,4 @@ internal data class ModlogView( val target_community: Community? = null, val target_post: Post? = null, val target_comment: Comment? = null, -) +) : NotificationData diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/NotificationData.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/NotificationData.kt new file mode 100644 index 00000000..719d089f --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/NotificationData.kt @@ -0,0 +1,10 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.ExperimentalSerializationApi +import kotlinx.serialization.Serializable +import kotlinx.serialization.json.JsonClassDiscriminator + +@OptIn(ExperimentalSerializationApi::class) +@Serializable +@JsonClassDiscriminator("type_") +internal sealed interface NotificationData diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/NotificationView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/NotificationView.kt index 9f0be07e..03ead1b1 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/NotificationView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/NotificationView.kt @@ -1,6 +1,5 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -import it.vercruysse.lemmyapi.v1.x0.x0.combinedtypes.NotificationData import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessageView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessageView.kt index d56bb04f..9c3cd1fa 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessageView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessageView.kt @@ -1,10 +1,12 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes +import kotlinx.serialization.SerialName import kotlinx.serialization.Serializable @Serializable +@SerialName("private_message") internal data class PrivateMessageView( val private_message: PrivateMessage, val creator: Person, val recipient: Person, -) +) : NotificationData From 1f8b5f61a73c11c28d5d6c699254c3229f9ec72f Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Sun, 8 Mar 2026 15:31:48 +0100 Subject: [PATCH 048/110] Remove remnants --- .../datatypes/MarkPrivateMessageAsRead.kt | 15 ----------- .../PersonContentCombinedView.kt | 21 ---------------- .../combinedtypes/PersonLikedCombinedView.kt | 25 ------------------- .../combinedtypes/PersonSavedCombinedView.kt | 25 ------------------- 4 files changed, 86 deletions(-) delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkPrivateMessageAsRead.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/PersonContentCombinedView.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/PersonLikedCombinedView.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/PersonSavedCombinedView.kt diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkPrivateMessageAsRead.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkPrivateMessageAsRead.kt deleted file mode 100644 index 13c6a230..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkPrivateMessageAsRead.kt +++ /dev/null @@ -1,15 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -// TODO: removed - -@CommonParcelize -@Serializable -data class MarkPrivateMessageAsRead( - val private_message_id: PrivateMessageId, - val read: Boolean, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/PersonContentCombinedView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/PersonContentCombinedView.kt deleted file mode 100644 index 465af53e..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/PersonContentCombinedView.kt +++ /dev/null @@ -1,21 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.combinedtypes - -import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CommentView -import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PostView -import kotlinx.serialization.ExperimentalSerializationApi -import kotlinx.serialization.SerialName -import kotlinx.serialization.Serializable -import kotlinx.serialization.json.JsonClassDiscriminator - -@Serializable -@OptIn(ExperimentalSerializationApi::class) -@JsonClassDiscriminator("type_") -internal sealed class PersonContentCombinedView { - @Serializable - @SerialName("Post") - internal data class Post(val post: PostView) : PersonContentCombinedView() - - @Serializable - @SerialName("Comment") - internal data class Comment(val comment: CommentView) : PersonContentCombinedView() -} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/PersonLikedCombinedView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/PersonLikedCombinedView.kt deleted file mode 100644 index dbe9a2d7..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/PersonLikedCombinedView.kt +++ /dev/null @@ -1,25 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.combinedtypes - -import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CommentView -import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PostView -import kotlinx.serialization.ExperimentalSerializationApi -import kotlinx.serialization.SerialName -import kotlinx.serialization.Serializable -import kotlinx.serialization.json.JsonClassDiscriminator - -@Serializable -@OptIn(ExperimentalSerializationApi::class) -@JsonClassDiscriminator("type_") -internal sealed class PersonLikedCombinedView { - @Serializable - @SerialName("Post") - internal data class Post( - val post: PostView, - ) : PersonLikedCombinedView() - - @Serializable - @SerialName("Comment") - internal data class Comment( - val comment: CommentView, - ) : PersonLikedCombinedView() -} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/PersonSavedCombinedView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/PersonSavedCombinedView.kt deleted file mode 100644 index aa263b16..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/PersonSavedCombinedView.kt +++ /dev/null @@ -1,25 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.combinedtypes - -import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CommentView -import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PostView -import kotlinx.serialization.ExperimentalSerializationApi -import kotlinx.serialization.SerialName -import kotlinx.serialization.Serializable -import kotlinx.serialization.json.JsonClassDiscriminator - -@Serializable -@OptIn(ExperimentalSerializationApi::class) -@JsonClassDiscriminator("type_") -internal sealed class PersonSavedCombinedView { - @Serializable - @SerialName("Post") - internal data class Post( - val post: PostView, - ) : PersonSavedCombinedView() - - @Serializable - @SerialName("Comment") - internal data class Comment( - val comment: CommentView, - ) : PersonSavedCombinedView() -} From b7958c3d9ccd88c90a7a438319f4baf93e3ce19d Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Sun, 8 Mar 2026 15:41:54 +0100 Subject: [PATCH 049/110] Fix ReportCombinedView --- .../lemmyapi/datatypes/ReportCombinedView.kt | 2 + .../x0/x0/combinedtypes/ReportCombinedView.kt | 39 ------------------- .../v1/x0/x0/datatypes/CommentReportView.kt | 4 +- .../v1/x0/x0/datatypes/CommunityReportView.kt | 4 +- .../v1/x0/x0/datatypes/PostReportView.kt | 4 +- .../x0/datatypes/PrivateMessageReportView.kt | 4 +- .../v1/x0/x0/datatypes/ReportCombinedView.kt | 9 +++++ 7 files changed, 23 insertions(+), 43 deletions(-) delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/ReportCombinedView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ReportCombinedView.kt diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ReportCombinedView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ReportCombinedView.kt index 31f2b056..f66724db 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ReportCombinedView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ReportCombinedView.kt @@ -1,9 +1,11 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.ExperimentalSerializationApi import kotlinx.serialization.json.JsonClassDiscriminator +@CommonParcelize @OptIn(ExperimentalSerializationApi::class) @JsonClassDiscriminator("type_") sealed interface ReportCombinedView : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/ReportCombinedView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/ReportCombinedView.kt deleted file mode 100644 index 6c418c64..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/ReportCombinedView.kt +++ /dev/null @@ -1,39 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.combinedtypes - -import it.vercruysse.lemmyapi.datatypes.CommentReportView -import it.vercruysse.lemmyapi.datatypes.CommunityReportView -import it.vercruysse.lemmyapi.datatypes.PostReportView -import it.vercruysse.lemmyapi.datatypes.PrivateMessageReportView -import kotlinx.serialization.ExperimentalSerializationApi -import kotlinx.serialization.SerialName -import kotlinx.serialization.Serializable -import kotlinx.serialization.json.JsonClassDiscriminator - -@Serializable -@OptIn(ExperimentalSerializationApi::class) -@JsonClassDiscriminator("type_") -internal sealed class ReportCombinedView { - @Serializable - @SerialName("Post") - internal data class Post( - val post: PostReportView, - ) : ReportCombinedView() - - @Serializable - @SerialName("Comment") - internal data class Comment( - val comment: CommentReportView, - ) : ReportCombinedView() - - @Serializable - @SerialName("PrivateMessage") - internal data class PrivateMessage( - val private_message: PrivateMessageReportView, - ) : ReportCombinedView() - - @Serializable - @SerialName("Community") - internal data class Community( - val community: CommunityReportView, - ) : ReportCombinedView() -} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReportView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReportView.kt index d864b6e9..c0e3a1ef 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReportView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReportView.kt @@ -1,8 +1,10 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes +import kotlinx.serialization.SerialName import kotlinx.serialization.Serializable @Serializable +@SerialName("comment") internal data class CommentReportView( val comment_report: CommentReport, val comment: Comment, @@ -20,4 +22,4 @@ internal data class CommentReportView( val creator_ban_expires_at: String? = null, val creator_banned_from_community: Boolean, val creator_community_ban_expires_at: String? = null, -) +) : ReportCombinedView diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityReportView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityReportView.kt index 0ee60109..6a306079 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityReportView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityReportView.kt @@ -1,8 +1,10 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes +import kotlinx.serialization.SerialName import kotlinx.serialization.Serializable @Serializable +@SerialName("community") internal data class CommunityReportView( val community_report: CommunityReport, val community: Community, @@ -14,4 +16,4 @@ internal data class CommunityReportView( val creator_ban_expires_at: String? = null, val creator_banned_from_community: Boolean, val creator_community_ban_expires_at: String? = null, -) +) : ReportCombinedView diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostReportView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostReportView.kt index ffb9f9cc..f29279e1 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostReportView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostReportView.kt @@ -1,8 +1,10 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes +import kotlinx.serialization.SerialName import kotlinx.serialization.Serializable @Serializable +@SerialName("post") internal data class PostReportView( val post_report: PostReport, val post: Post, @@ -19,4 +21,4 @@ internal data class PostReportView( val creator_ban_expires_at: String? = null, val creator_banned_from_community: Boolean, val creator_community_ban_expires_at: String? = null, -) +) : ReportCombinedView diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessageReportView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessageReportView.kt index e45ae0f5..dc4f5cb0 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessageReportView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessageReportView.kt @@ -1,8 +1,10 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes +import kotlinx.serialization.SerialName import kotlinx.serialization.Serializable @Serializable +@SerialName("private_message") internal data class PrivateMessageReportView( val private_message_report: PrivateMessageReport, val private_message: PrivateMessage, @@ -12,4 +14,4 @@ internal data class PrivateMessageReportView( val creator_is_admin: Boolean, val creator_banned: Boolean, val creator_ban_expires_at: String? = null, -) +) : ReportCombinedView diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ReportCombinedView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ReportCombinedView.kt new file mode 100644 index 00000000..579b9e51 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ReportCombinedView.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.ExperimentalSerializationApi +import kotlinx.serialization.json.JsonClassDiscriminator + + +@OptIn(ExperimentalSerializationApi::class) +@JsonClassDiscriminator("type_") +internal sealed interface ReportCombinedView From 1ef61adac4aab0bd2894838f28a0bbfd60688993 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Sun, 8 Mar 2026 16:54:27 +0100 Subject: [PATCH 050/110] Fix PostOrCommentOrPrivateMessage interface --- .../vercruysse/lemmyapi/datatypes/Comment.kt | 4 ++- .../it/vercruysse/lemmyapi/datatypes/Post.kt | 4 ++- .../PostOrCommentOrPrivateMessage.kt | 26 +---------------- .../lemmyapi/datatypes/PrivateMessage.kt | 4 ++- .../PostOrCommentOrPrivateMessage.kt | 29 ------------------- .../lemmyapi/v1/x0/x0/datatypes/Comment.kt | 3 +- .../v1/x0/x0/datatypes/ExportDataResponse.kt | 1 - .../lemmyapi/v1/x0/x0/datatypes/Post.kt | 4 ++- .../PostOrCommentOrPrivateMessage.kt | 8 +++++ .../v1/x0/x0/datatypes/PrivateMessage.kt | 4 ++- 10 files changed, 26 insertions(+), 61 deletions(-) delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/PostOrCommentOrPrivateMessage.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostOrCommentOrPrivateMessage.kt diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Comment.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Comment.kt index 6d2f26ef..615792f0 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Comment.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Comment.kt @@ -5,9 +5,11 @@ import it.vercruysse.lemmyapi.Identity import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +import kotlinx.serialization.SerialName @CommonParcelize @Serializable +@SerialName("comment") data class Comment( override val id: CommentId, val creator_id: PersonId, @@ -34,4 +36,4 @@ data class Comment( val federation_pending: Boolean, /** Added in Lemmy 1.0.0 */ val locked: Boolean, -) : DatatypeRoot, Identity +) : DatatypeRoot, Identity, PostOrCommentOrPrivateMessage diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Post.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Post.kt index 875682cc..ceb4451b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Post.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Post.kt @@ -5,9 +5,11 @@ import it.vercruysse.lemmyapi.Identity import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +import kotlinx.serialization.SerialName @CommonParcelize @Serializable +@SerialName("post") data class Post( override val id: PostId, val name: String, @@ -43,4 +45,4 @@ data class Post( val federation_pending: Boolean, val embed_video_width: Long? = null, val embed_video_height: Long? = null, -) : DatatypeRoot, Identity +) : DatatypeRoot, Identity, PostOrCommentOrPrivateMessage diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostOrCommentOrPrivateMessage.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostOrCommentOrPrivateMessage.kt index c6bf1ebd..4b3e85f1 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostOrCommentOrPrivateMessage.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostOrCommentOrPrivateMessage.kt @@ -3,33 +3,9 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.ExperimentalSerializationApi -import kotlinx.serialization.SerialName -import kotlinx.serialization.Serializable import kotlinx.serialization.json.JsonClassDiscriminator @CommonParcelize -@Serializable @OptIn(ExperimentalSerializationApi::class) @JsonClassDiscriminator("type_") -sealed class PostOrCommentOrPrivateMessage : DatatypeRoot { - @CommonParcelize - @Serializable - @SerialName("Post") - data class Post( - val post: it.vercruysse.lemmyapi.datatypes.Post - ) : PostOrCommentOrPrivateMessage() - - @CommonParcelize - @Serializable - @SerialName("Comment") - data class Comment( - val comment: it.vercruysse.lemmyapi.datatypes.Comment - ) : PostOrCommentOrPrivateMessage() - - @CommonParcelize - @Serializable - @SerialName("PrivateMessage") - data class PrivateMessage( - val private_message: it.vercruysse.lemmyapi.datatypes.PrivateMessage - ) : PostOrCommentOrPrivateMessage() -} +sealed interface PostOrCommentOrPrivateMessage : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessage.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessage.kt index e690cad8..54af08b5 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessage.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessage.kt @@ -5,9 +5,11 @@ import it.vercruysse.lemmyapi.Identity import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +import kotlinx.serialization.SerialName @CommonParcelize @Serializable +@SerialName("private_message") data class PrivateMessage( override val id: PrivateMessageId, val creator_id: PersonId, @@ -22,4 +24,4 @@ data class PrivateMessage( val local: Boolean, /** Added in Lemmy 1.0.0 */ val removed: Boolean, -) : DatatypeRoot, Identity +) : DatatypeRoot, Identity, PostOrCommentOrPrivateMessage diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/PostOrCommentOrPrivateMessage.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/PostOrCommentOrPrivateMessage.kt deleted file mode 100644 index 748ac07e..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/combinedtypes/PostOrCommentOrPrivateMessage.kt +++ /dev/null @@ -1,29 +0,0 @@ -package it.vercruysse.lemmyapi.v1.x0.x0.combinedtypes - -import kotlinx.serialization.ExperimentalSerializationApi -import kotlinx.serialization.SerialName -import kotlinx.serialization.Serializable -import kotlinx.serialization.json.JsonClassDiscriminator - -@Serializable -@OptIn(ExperimentalSerializationApi::class) -@JsonClassDiscriminator("type_") -internal sealed class PostOrCommentOrPrivateMessage { - @Serializable - @SerialName("Post") - internal data class Post( - val post: it.vercruysse.lemmyapi.v1.x0.x0.datatypes.Post, - ) : PostOrCommentOrPrivateMessage() - - @Serializable - @SerialName("Comment") - internal data class Comment( - val comment: it.vercruysse.lemmyapi.v1.x0.x0.datatypes.Comment, - ) : PostOrCommentOrPrivateMessage() - - @Serializable - @SerialName("PrivateMessage") - internal data class PrivateMessage( - val private_message: it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PrivateMessage, - ) : PostOrCommentOrPrivateMessage() -} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Comment.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Comment.kt index a1bb77c1..622a06a9 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Comment.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Comment.kt @@ -4,6 +4,7 @@ import kotlinx.serialization.SerialName import kotlinx.serialization.Serializable @Serializable +@SerialName("comment") internal data class Comment( val id: CommentId, val creator_id: PersonId, @@ -26,4 +27,4 @@ internal data class Comment( val unresolved_report_count: Long, val federation_pending: Boolean, val locked: Boolean, -) +) : PostOrCommentOrPrivateMessage diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ExportDataResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ExportDataResponse.kt index 33840e96..9c92f50b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ExportDataResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ExportDataResponse.kt @@ -1,6 +1,5 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -import it.vercruysse.lemmyapi.v1.x0.x0.combinedtypes.PostOrCommentOrPrivateMessage import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Post.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Post.kt index 117579a6..95028de6 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Post.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Post.kt @@ -1,8 +1,10 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes +import kotlinx.serialization.SerialName import kotlinx.serialization.Serializable @Serializable +@SerialName("post") internal data class Post( val id: PostId, val name: String, @@ -38,4 +40,4 @@ internal data class Post( val federation_pending: Boolean, val embed_video_width: Long? = null, val embed_video_height: Long? = null, -) +) : PostOrCommentOrPrivateMessage diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostOrCommentOrPrivateMessage.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostOrCommentOrPrivateMessage.kt new file mode 100644 index 00000000..186dff67 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostOrCommentOrPrivateMessage.kt @@ -0,0 +1,8 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.ExperimentalSerializationApi +import kotlinx.serialization.json.JsonClassDiscriminator + +@OptIn(ExperimentalSerializationApi::class) +@JsonClassDiscriminator("type_") +internal sealed interface PostOrCommentOrPrivateMessage diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessage.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessage.kt index 80c26298..96172383 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessage.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessage.kt @@ -1,8 +1,10 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes +import kotlinx.serialization.SerialName import kotlinx.serialization.Serializable @Serializable +@SerialName("private_message") internal data class PrivateMessage( val id: PrivateMessageId, val creator_id: PersonId, @@ -14,4 +16,4 @@ internal data class PrivateMessage( val ap_id: DbUrl, val local: Boolean, val removed: Boolean, -) +) : PostOrCommentOrPrivateMessage From f6a72a8ad778848ea610a7e5879ee4f1aebd22a4 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Mon, 9 Mar 2026 08:34:26 +0100 Subject: [PATCH 051/110] Fix Community --- .../kotlin/it/vercruysse/lemmyapi/datatypes/Community.kt | 4 ---- .../kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt | 3 +-- .../kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt | 3 +-- .../kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt | 4 ++-- .../kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt | 3 +-- .../kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt | 4 ++-- .../kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt | 4 ++-- 7 files changed, 9 insertions(+), 16 deletions(-) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Community.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Community.kt index a648af5b..843271cc 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Community.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Community.kt @@ -7,8 +7,6 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize -// TODO: not correct yet - @CommonParcelize @Serializable data class Community( @@ -26,8 +24,6 @@ data class Community( val last_refreshed_at: String, val icon: String? = null, val banner: String? = null, - // TODO: might be replaced by visibility but currently is gone - val hidden: Boolean, val posting_restricted_to_mods: Boolean, val instance_id: InstanceId, val visibility: CommunityVisibility /* "Public" | "Unlisted" | "LocalOnlyPublic" | "LocalOnlyPrivate" | "Private" */, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt index 83ed4257..ca45a52b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt @@ -417,10 +417,9 @@ internal class Transformer(var auth: String) : MapperGenerator { local = d.local, icon = d.icon, banner = d.banner, - hidden = d.hidden, posting_restricted_to_mods = d.posting_restricted_to_mods, instance_id = d.instance_id, - visibility = CommunityVisibility.Public, + visibility = if (d.hidden) CommunityVisibility.Unlisted else CommunityVisibility.Public, subscribers = counts.subscribers, posts = counts.posts, comments = counts.comments, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt index 959609b9..33cdfc9c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt @@ -355,10 +355,9 @@ internal class Transformer : MapperGenerator { local = d.local, icon = d.icon, banner = d.banner, - hidden = d.hidden, posting_restricted_to_mods = d.posting_restricted_to_mods, instance_id = d.instance_id, - visibility = CommunityVisibility.Public, + visibility = if (d.hidden) CommunityVisibility.Unlisted else CommunityVisibility.Public, subscribers = counts.subscribers, posts = counts.posts, comments = counts.comments, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt index 5ce29a44..266d781a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt @@ -9,6 +9,7 @@ import it.vercruysse.lemmyapi.datatypes.PersonActions import it.vercruysse.lemmyapi.datatypes.PostActions import it.vercruysse.lemmyapi.v0.enums.CommentSortType as V0CommentSortType import it.vercruysse.lemmyapi.enums.CommunityFollowerState +import it.vercruysse.lemmyapi.enums.CommunityVisibility import it.vercruysse.lemmyapi.enums.FederationMode import it.vercruysse.lemmyapi.enums.NotificationType import it.vercruysse.lemmyapi.enums.SortType @@ -453,10 +454,9 @@ internal class Transformer : MapperGenerator { local = d.local, icon = d.icon, banner = d.banner, - hidden = d.hidden, posting_restricted_to_mods = d.posting_restricted_to_mods, instance_id = d.instance_id, - visibility = d.visibility.toUni(), + visibility = if (d.hidden) CommunityVisibility.Unlisted else d.visibility.toUni(), subscribers = counts.subscribers, posts = counts.posts, comments = counts.comments, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt index d65002a0..c0e13dfb 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt @@ -362,10 +362,9 @@ internal class Transformer : MapperGenerator { local = d.local, icon = d.icon, banner = d.banner, - hidden = d.hidden, posting_restricted_to_mods = d.posting_restricted_to_mods, instance_id = d.instance_id, - visibility = CommunityVisibility.Public, + visibility = if (d.hidden) CommunityVisibility.Unlisted else CommunityVisibility.Public, subscribers = counts.subscribers, posts = counts.posts, comments = counts.comments, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt index ab5dbfb5..ceabdc0b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt @@ -9,6 +9,7 @@ import it.vercruysse.lemmyapi.datatypes.PersonActions import it.vercruysse.lemmyapi.datatypes.PostActions import it.vercruysse.lemmyapi.v0.enums.CommentSortType as V0CommentSortType import it.vercruysse.lemmyapi.enums.CommunityFollowerState +import it.vercruysse.lemmyapi.enums.CommunityVisibility import it.vercruysse.lemmyapi.enums.FederationMode import it.vercruysse.lemmyapi.enums.NotificationType import it.vercruysse.lemmyapi.enums.SortType @@ -451,10 +452,9 @@ internal class Transformer : MapperGenerator { local = d.local, icon = d.icon, banner = d.banner, - hidden = d.hidden, posting_restricted_to_mods = d.posting_restricted_to_mods, instance_id = d.instance_id, - visibility = d.visibility.toUni(), + visibility = if (d.hidden) CommunityVisibility.Unlisted else d.visibility.toUni(), subscribers = counts.subscribers, posts = counts.posts, comments = counts.comments, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt index 0a8b548a..02bdf509 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt @@ -9,6 +9,7 @@ import it.vercruysse.lemmyapi.datatypes.PersonActions import it.vercruysse.lemmyapi.datatypes.PostActions import it.vercruysse.lemmyapi.v0.enums.CommentSortType as V0CommentSortType import it.vercruysse.lemmyapi.enums.CommunityFollowerState +import it.vercruysse.lemmyapi.enums.CommunityVisibility import it.vercruysse.lemmyapi.enums.FederationMode import it.vercruysse.lemmyapi.enums.NotificationType import it.vercruysse.lemmyapi.enums.SortType @@ -454,10 +455,9 @@ internal class Transformer : MapperGenerator { local = d.local, icon = d.icon, banner = d.banner, - hidden = d.hidden, posting_restricted_to_mods = d.posting_restricted_to_mods, instance_id = d.instance_id, - visibility = d.visibility.toUni(), + visibility = if (d.hidden) CommunityVisibility.Unlisted else d.visibility.toUni(), subscribers = counts.subscribers, posts = counts.posts, comments = counts.comments, From 854572aeca84d7f0546e4d22658cbfe08e44ebf3 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Mon, 9 Mar 2026 08:37:56 +0100 Subject: [PATCH 052/110] Add PostCommentCombinedView --- .../it/vercruysse/lemmyapi/datatypes/CommentView.kt | 2 +- .../lemmyapi/datatypes/PostCommentCombinedView.kt | 11 +++++++++++ .../it/vercruysse/lemmyapi/datatypes/PostView.kt | 2 +- .../lemmyapi/v1/x0/x0/datatypes/CommentView.kt | 2 +- .../v1/x0/x0/datatypes/PostCommentCombinedView.kt | 8 ++++++++ .../lemmyapi/v1/x0/x0/datatypes/PostView.kt | 2 +- 6 files changed, 23 insertions(+), 4 deletions(-) create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostCommentCombinedView.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostCommentCombinedView.kt diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentView.kt index 8925c2c3..e1927481 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentView.kt @@ -27,7 +27,7 @@ data class CommentView( val creator_banned_from_community: Boolean, val creator_community_ban_expires_at: String? = null, - ) : DatatypeRoot, Identity, NotificationData, SearchCombinedView { + ) : DatatypeRoot, Identity, NotificationData, SearchCombinedView, PostCommentCombinedView { override val id: Long get() = comment.id } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostCommentCombinedView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostCommentCombinedView.kt new file mode 100644 index 00000000..fba27363 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostCommentCombinedView.kt @@ -0,0 +1,11 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.ExperimentalSerializationApi +import kotlinx.serialization.json.JsonClassDiscriminator + +@CommonParcelize +@OptIn(ExperimentalSerializationApi::class) +@JsonClassDiscriminator("type_") +sealed interface PostCommentCombinedView : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostView.kt index 7b8f7e41..bbfb1901 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostView.kt @@ -28,7 +28,7 @@ data class PostView( val creator_is_moderator: Boolean, val creator_banned_from_community: Boolean, val creator_community_ban_expires_at: String? = null, - ) : DatatypeRoot, Identity, NotificationData, SearchCombinedView { + ) : DatatypeRoot, Identity, NotificationData, SearchCombinedView, PostCommentCombinedView { override val id: Long get() = post.id } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentView.kt index 1ccdaf3f..cbed9e3c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentView.kt @@ -21,4 +21,4 @@ internal data class CommentView( val creator_is_moderator: Boolean, val creator_banned_from_community: Boolean, val creator_community_ban_expires_at: String? = null, -) : SearchCombinedView, NotificationData +) : SearchCombinedView, NotificationData, PostCommentCombinedView diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostCommentCombinedView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostCommentCombinedView.kt new file mode 100644 index 00000000..85b71485 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostCommentCombinedView.kt @@ -0,0 +1,8 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.ExperimentalSerializationApi +import kotlinx.serialization.json.JsonClassDiscriminator + +@OptIn(ExperimentalSerializationApi::class) +@JsonClassDiscriminator("type_") +internal sealed interface PostCommentCombinedView diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostView.kt index e9904362..467faa40 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostView.kt @@ -21,4 +21,4 @@ internal data class PostView( val creator_is_moderator: Boolean, val creator_banned_from_community: Boolean, val creator_community_ban_expires_at: String? = null, -) : SearchCombinedView +) : SearchCombinedView, PostCommentCombinedView From 0208212ae5f66bbe252021bac50cb51f47c61ab8 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Mon, 9 Mar 2026 10:17:15 +0100 Subject: [PATCH 053/110] Add ListPersonContent --- .../lemmyapi/LemmyApiBaseController.kt | 7 +++++ .../lemmyapi/datatypes/ListPersonContent.kt | 2 ++ .../lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt | 27 +++++++++++++++++++ .../lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt | 27 +++++++++++++++++++ .../lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt | 27 +++++++++++++++++++ .../lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt | 27 +++++++++++++++++++ .../lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt | 27 +++++++++++++++++++ .../lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt | 27 +++++++++++++++++++ 8 files changed, 171 insertions(+) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt index f3a06184..a212fd69 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt @@ -368,6 +368,13 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version */ abstract suspend fun getPersonDetails(form: GetPersonDetails): Result + /** + * List the content for a person. + * + * @GET("person/content") + */ + abstract suspend fun listPersonContent(form: ListPersonContent): Result> + /** * Register a new user. * diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonContent.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonContent.kt index bd7732f2..ec4bd754 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonContent.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonContent.kt @@ -13,4 +13,6 @@ data class ListPersonContent( val username: String? = null, val page_cursor: PaginationCursor? = null, val limit: Long? = null, + /** Removed in 1.0.0 */ + val page: Long? = null, ): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt index c58804c8..a7510a21 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt @@ -1017,4 +1017,31 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun getRegistrationApplication( form: it.vercruysse.lemmyapi.datatypes.GetRegistrationApplication, ): Result = notSupported() + + /** + * List the content for a person. + * + * @GET("person/content") + */ + override suspend fun listPersonContent( + form: it.vercruysse.lemmyapi.datatypes.ListPersonContent, + ): Result> { + val getPersonDetailsForm = it.vercruysse.lemmyapi.datatypes.GetPersonDetails( + person_id = form.person_id, + username = form.username, + page = form.page, + limit = form.limit, + ) + return apiV18.getPersonDetails(transformer.fromUni(getPersonDetailsForm)).map { response -> + val comments = when (form.type_) { + it.vercruysse.lemmyapi.enums.PersonContentType.Posts -> emptyList() + else -> response.comments.map { transformer.toUni(it) } + } + val posts = when (form.type_) { + it.vercruysse.lemmyapi.enums.PersonContentType.Comments -> emptyList() + else -> response.posts.map { transformer.toUni(it) } + } + PagedResponse(items = comments + posts) + } + } } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt index 0012abc8..ea3dc7fb 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt @@ -972,4 +972,31 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba api.getSite() .mapCatching { it.my_user ?: throw IllegalStateException("Auth invalid") } .map { transformer.toUni(it) } + + /** + * List the content for a person. + * + * @GET("person/content") + */ + override suspend fun listPersonContent( + form: it.vercruysse.lemmyapi.datatypes.ListPersonContent, + ): Result> { + val getPersonDetailsForm = it.vercruysse.lemmyapi.datatypes.GetPersonDetails( + person_id = form.person_id, + username = form.username, + page = form.page, + limit = form.limit, + ) + return api.getPersonDetails(transformer.fromUni(getPersonDetailsForm)).map { response -> + val comments = when (form.type_) { + it.vercruysse.lemmyapi.enums.PersonContentType.Posts -> emptyList() + else -> response.comments.map { transformer.toUni(it) } + } + val posts = when (form.type_) { + it.vercruysse.lemmyapi.enums.PersonContentType.Comments -> emptyList() + else -> response.posts.map { transformer.toUni(it) } + } + PagedResponse(items = comments + posts) + } + } } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt index 27c62e61..3d3334bf 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt @@ -972,4 +972,31 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba api.getSite() .mapCatching { it.my_user ?: throw IllegalStateException("Auth invalid") } .map { transformer.toUni(it) } + + /** + * List the content for a person. + * + * @GET("person/content") + */ + override suspend fun listPersonContent( + form: it.vercruysse.lemmyapi.datatypes.ListPersonContent, + ): Result> { + val getPersonDetailsForm = it.vercruysse.lemmyapi.datatypes.GetPersonDetails( + person_id = form.person_id, + username = form.username, + page = form.page, + limit = form.limit, + ) + return api.getPersonDetails(transformer.fromUni(getPersonDetailsForm)).map { response -> + val comments = when (form.type_) { + it.vercruysse.lemmyapi.enums.PersonContentType.Posts -> emptyList() + else -> response.comments.map { transformer.toUni(it) } + } + val posts = when (form.type_) { + it.vercruysse.lemmyapi.enums.PersonContentType.Comments -> emptyList() + else -> response.posts.map { transformer.toUni(it) } + } + PagedResponse(items = comments + posts) + } + } } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt index ecd3ad69..4c9118a8 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt @@ -971,4 +971,31 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba api.getSite() .mapCatching { it.my_user ?: throw IllegalStateException("Auth invalid") } .map { transformer.toUni(it) } + + /** + * List the content for a person. + * + * @GET("person/content") + */ + override suspend fun listPersonContent( + form: it.vercruysse.lemmyapi.datatypes.ListPersonContent, + ): Result> { + val getPersonDetailsForm = it.vercruysse.lemmyapi.datatypes.GetPersonDetails( + person_id = form.person_id, + username = form.username, + page = form.page, + limit = form.limit, + ) + return api.getPersonDetails(transformer.fromUni(getPersonDetailsForm)).map { response -> + val comments = when (form.type_) { + it.vercruysse.lemmyapi.enums.PersonContentType.Posts -> emptyList() + else -> response.comments.map { transformer.toUni(it) } + } + val posts = when (form.type_) { + it.vercruysse.lemmyapi.enums.PersonContentType.Comments -> emptyList() + else -> response.posts.map { transformer.toUni(it) } + } + PagedResponse(items = comments + posts) + } + } } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt index 55781470..7ff9d98c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt @@ -969,4 +969,31 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba api.getSite() .mapCatching { it.my_user ?: throw IllegalStateException("Auth invalid") } .map { transformer.toUni(it) } + + /** + * List the content for a person. + * + * @GET("person/content") + */ + override suspend fun listPersonContent( + form: it.vercruysse.lemmyapi.datatypes.ListPersonContent, + ): Result> { + val getPersonDetailsForm = it.vercruysse.lemmyapi.datatypes.GetPersonDetails( + person_id = form.person_id, + username = form.username, + page = form.page, + limit = form.limit, + ) + return api.getPersonDetails(transformer.fromUni(getPersonDetailsForm)).map { response -> + val comments = when (form.type_) { + it.vercruysse.lemmyapi.enums.PersonContentType.Posts -> emptyList() + else -> response.comments.map { transformer.toUni(it) } + } + val posts = when (form.type_) { + it.vercruysse.lemmyapi.enums.PersonContentType.Comments -> emptyList() + else -> response.posts.map { transformer.toUni(it) } + } + PagedResponse(items = comments + posts) + } + } } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt index e340b002..5b326dd8 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt @@ -965,4 +965,31 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba api.getSite() .mapCatching { it.my_user ?: throw IllegalStateException("Auth invalid") } .map { transformer.toUni(it) } + + /** + * List the content for a person. + * + * @GET("person/content") + */ + override suspend fun listPersonContent( + form: it.vercruysse.lemmyapi.datatypes.ListPersonContent, + ): Result> { + val getPersonDetailsForm = it.vercruysse.lemmyapi.datatypes.GetPersonDetails( + person_id = form.person_id, + username = form.username, + page = form.page, + limit = form.limit, + ) + return api.getPersonDetails(transformer.fromUni(getPersonDetailsForm)).map { response -> + val comments = when (form.type_) { + it.vercruysse.lemmyapi.enums.PersonContentType.Posts -> emptyList() + else -> response.comments.map { transformer.toUni(it) } + } + val posts = when (form.type_) { + it.vercruysse.lemmyapi.enums.PersonContentType.Comments -> emptyList() + else -> response.posts.map { transformer.toUni(it) } + } + PagedResponse(items = comments + posts) + } + } } From 5145c5bf1390b4f82400165be0dc69c8a932945f Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Mon, 9 Mar 2026 10:45:01 +0100 Subject: [PATCH 054/110] Fix GetPersonDetails endpoint --- .../kotlin/it/vercruysse/lemmyapi/FeatureFlags.kt | 5 +++++ .../it/vercruysse/lemmyapi/datatypes/GetPersonDetails.kt | 8 -------- .../lemmyapi/datatypes/GetPersonDetailsResponse.kt | 6 ------ .../vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt | 8 +++++--- .../it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt | 7 ------- .../vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt | 7 ++++--- .../it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt | 7 ------- .../vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt | 5 +++-- .../it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt | 7 ------- .../vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt | 5 +++-- .../it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt | 7 ------- .../vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt | 7 ++++--- .../it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt | 7 ------- .../vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt | 5 +++-- .../it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt | 7 ------- 15 files changed, 27 insertions(+), 71 deletions(-) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/FeatureFlags.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/FeatureFlags.kt index ab79131a..ed009c37 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/FeatureFlags.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/FeatureFlags.kt @@ -105,4 +105,9 @@ class FeatureFlags(val version: Version) { * Mark donation dialog as shown, feature added in 0.19.11 */ fun markDonationDialogShown(): Boolean = v0x19x11Plus + + /** + * V1 Feature added in 1.0 + */ + fun v1(): Boolean = v1 } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPersonDetails.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPersonDetails.kt index a56d9a47..4fe220d2 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPersonDetails.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPersonDetails.kt @@ -1,21 +1,13 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.enums.SortType import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize -// TODO: many fields removed, research - @CommonParcelize @Serializable data class GetPersonDetails( val person_id: PersonId? = null, val username: String? = null, - val sort: SortType? /* "Active" | "Hot" | "New" | "Old" | "TopDay" | "TopWeek" | "TopMonth" | "TopYear" | "TopAll" | "MostComments" | "NewComments" | "TopHour" | "TopSixHour" | "TopTwelveHour" | "TopThreeMonths" | "TopSixMonths" | "TopNineMonths" | "Controversial" | "Scaled" */ = null, - val page: Long? = null, - val limit: Long? = null, - val community_id: CommunityId? = null, - val saved_only: Boolean? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPersonDetailsResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPersonDetailsResponse.kt index b1c3d583..db68f41b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPersonDetailsResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPersonDetailsResponse.kt @@ -5,17 +5,11 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize -// TODO research, comments posts - @CommonParcelize @Serializable data class GetPersonDetailsResponse( val person_view: PersonView, val site: Site? = null, - // TODO: removed - val comments: List, - // TODO: removed - val posts: List, val moderates: List, val multi_communities_created: List, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt index a7510a21..2235ba11 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt @@ -15,6 +15,7 @@ import it.vercruysse.lemmyapi.dto.ImportUserSettings import it.vercruysse.lemmyapi.enums.NotificationDataType import it.vercruysse.lemmyapi.enums.NotificationType import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.GetCaptcha +import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.GetPersonDetails import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.GetReportCount import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.GetUnreadCount import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.GetUnreadRegistrationApplicationCount @@ -1026,13 +1027,14 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun listPersonContent( form: it.vercruysse.lemmyapi.datatypes.ListPersonContent, ): Result> { - val getPersonDetailsForm = it.vercruysse.lemmyapi.datatypes.GetPersonDetails( - person_id = form.person_id, + val getPersonDetailsForm = GetPersonDetails( username = form.username, + person_id = form.person_id, page = form.page, limit = form.limit, + auth = auth, ) - return apiV18.getPersonDetails(transformer.fromUni(getPersonDetailsForm)).map { response -> + return apiV18.getPersonDetails(getPersonDetailsForm).map { response -> val comments = when (form.type_) { it.vercruysse.lemmyapi.enums.PersonContentType.Posts -> emptyList() else -> response.comments.map { transformer.toUni(it) } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt index ca45a52b..81b0d984 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt @@ -671,8 +671,6 @@ internal class Transformer(var auth: String) : MapperGenerator { override fun toUni(d: X5DatatypesGetPersonDetailsResponse): LemmyapiDatatypesGetPersonDetailsResponse = LemmyapiDatatypesGetPersonDetailsResponse( person_view = this.toUni(d = d.person_view), - comments = d.comments.map { this.toUni(d = it) }, - posts = d.posts.map { this.toUni(d = it) }, moderates = d.moderates.map { this.toUni(d = it) }, multi_communities_created = emptyList() ) @@ -1399,11 +1397,6 @@ internal class Transformer(var auth: String) : MapperGenerator { X5DatatypesGetPersonDetails( person_id = d.person_id, username = d.username, - sort = V0SortType.fromUniNullable(d.sort), - page = d.page, - limit = d.limit, - community_id = d.community_id, - saved_only = d.saved_only, auth = auth, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt index ea3dc7fb..ca733abd 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt @@ -14,6 +14,7 @@ import it.vercruysse.lemmyapi.dto.ExportUserSettingsResponse import it.vercruysse.lemmyapi.dto.ImportUserSettings import it.vercruysse.lemmyapi.enums.NotificationDataType import it.vercruysse.lemmyapi.enums.NotificationType +import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.GetPersonDetails internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, baseUrl: String, auth: String?) : LemmyApiBaseController(client, actualVersion, baseUrl, auth) { @@ -981,13 +982,13 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun listPersonContent( form: it.vercruysse.lemmyapi.datatypes.ListPersonContent, ): Result> { - val getPersonDetailsForm = it.vercruysse.lemmyapi.datatypes.GetPersonDetails( - person_id = form.person_id, + val getPersonDetailsForm = GetPersonDetails( username = form.username, + person_id = form.person_id, page = form.page, limit = form.limit, ) - return api.getPersonDetails(transformer.fromUni(getPersonDetailsForm)).map { response -> + return api.getPersonDetails(getPersonDetailsForm).map { response -> val comments = when (form.type_) { it.vercruysse.lemmyapi.enums.PersonContentType.Posts -> emptyList() else -> response.comments.map { transformer.toUni(it) } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt index 33cdfc9c..46470610 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt @@ -613,8 +613,6 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X0DatatypesGetPersonDetailsResponse): LemmyapiDatatypesGetPersonDetailsResponse = LemmyapiDatatypesGetPersonDetailsResponse( person_view = this.toUni(d = d.person_view), - comments = d.comments.map { this.toUni(d = it) }, - posts = d.posts.map { this.toUni(d = it) }, moderates = d.moderates.map { this.toUni(d = it) }, multi_communities_created = emptyList() ) @@ -1420,11 +1418,6 @@ internal class Transformer : MapperGenerator { X0DatatypesGetPersonDetails( person_id = d.person_id, username = d.username, - sort = V0SortType.fromUniNullable(d.sort), - page = d.page, - limit = d.limit, - community_id = d.community_id, - saved_only = d.saved_only, ) override fun fromUni(d: LemmyapiDatatypesGetPost): X0DatatypesGetPost = X0DatatypesGetPost( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt index 3d3334bf..1e509a46 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt @@ -14,6 +14,7 @@ import it.vercruysse.lemmyapi.dto.ExportUserSettingsResponse import it.vercruysse.lemmyapi.dto.ImportUserSettings import it.vercruysse.lemmyapi.enums.NotificationDataType import it.vercruysse.lemmyapi.enums.NotificationType +import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.GetPersonDetails internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, baseUrl: String, auth: String?) : LemmyApiBaseController(client, actualVersion, baseUrl, auth) { @@ -981,13 +982,13 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun listPersonContent( form: it.vercruysse.lemmyapi.datatypes.ListPersonContent, ): Result> { - val getPersonDetailsForm = it.vercruysse.lemmyapi.datatypes.GetPersonDetails( + val getPersonDetailsForm = GetPersonDetails( person_id = form.person_id, username = form.username, page = form.page, limit = form.limit, ) - return api.getPersonDetails(transformer.fromUni(getPersonDetailsForm)).map { response -> + return api.getPersonDetails(getPersonDetailsForm).map { response -> val comments = when (form.type_) { it.vercruysse.lemmyapi.enums.PersonContentType.Posts -> emptyList() else -> response.comments.map { transformer.toUni(it) } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt index 266d781a..9e52f847 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt @@ -544,8 +544,6 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X11DatatypesGetPersonDetailsResponse): LemmyapiDatatypesGetPersonDetailsResponse = LemmyapiDatatypesGetPersonDetailsResponse( person_view = this.toUni(d = d.person_view), site = d.site?.let { this.toUni(d = it) }, - comments = d.comments.map { this.toUni(d = it) }, - posts = d.posts.map { this.toUni(d = it) }, moderates = d.moderates.map { this.toUni(d = it) }, multi_communities_created = emptyList() ) @@ -1516,11 +1514,6 @@ internal class Transformer : MapperGenerator { X11DatatypesGetPersonDetails( person_id = d.person_id, username = d.username, - sort = V0SortType.fromUniNullable(d.sort), - page = d.page, - limit = d.limit, - community_id = d.community_id, - saved_only = d.saved_only, ) override fun fromUni(d: LemmyapiDatatypesGetPost): X11DatatypesGetPost = X11DatatypesGetPost( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt index 4c9118a8..b2de1ffe 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt @@ -14,6 +14,7 @@ import it.vercruysse.lemmyapi.dto.ExportUserSettingsResponse import it.vercruysse.lemmyapi.dto.ImportUserSettings import it.vercruysse.lemmyapi.enums.NotificationDataType import it.vercruysse.lemmyapi.enums.NotificationType +import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.GetPersonDetails // Based on tags/0.19.3-alpha.6 internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, baseUrl: String, auth: String?) : @@ -980,13 +981,13 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun listPersonContent( form: it.vercruysse.lemmyapi.datatypes.ListPersonContent, ): Result> { - val getPersonDetailsForm = it.vercruysse.lemmyapi.datatypes.GetPersonDetails( + val getPersonDetailsForm = GetPersonDetails( person_id = form.person_id, username = form.username, page = form.page, limit = form.limit, ) - return api.getPersonDetails(transformer.fromUni(getPersonDetailsForm)).map { response -> + return api.getPersonDetails(getPersonDetailsForm).map { response -> val comments = when (form.type_) { it.vercruysse.lemmyapi.enums.PersonContentType.Posts -> emptyList() else -> response.comments.map { transformer.toUni(it) } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt index c0e13dfb..ce858c71 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt @@ -632,8 +632,6 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X3DatatypesGetPersonDetailsResponse): LemmyapiDatatypesGetPersonDetailsResponse = LemmyapiDatatypesGetPersonDetailsResponse( person_view = this.toUni(d = d.person_view), site = d.site?.let { this.toUni(d = it) }, - comments = d.comments.map { this.toUni(d = it) }, - posts = d.posts.map { this.toUni(d = it) }, moderates = d.moderates.map { this.toUni(d = it) }, multi_communities_created = emptyList() ) @@ -1437,11 +1435,6 @@ internal class Transformer : MapperGenerator { X3DatatypesGetPersonDetails( person_id = d.person_id, username = d.username, - sort = V0SortType.fromUniNullable(d.sort), - page = d.page, - limit = d.limit, - community_id = d.community_id, - saved_only = d.saved_only, ) override fun fromUni(d: LemmyapiDatatypesGetPost): X3DatatypesGetPost = X3DatatypesGetPost( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt index 7ff9d98c..d4d4f6f1 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt @@ -14,6 +14,7 @@ import it.vercruysse.lemmyapi.dto.ExportUserSettingsResponse import it.vercruysse.lemmyapi.dto.ImportUserSettings import it.vercruysse.lemmyapi.enums.NotificationDataType import it.vercruysse.lemmyapi.enums.NotificationType +import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.GetPersonDetails internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, baseUrl: String, auth: String?) : LemmyApiBaseController(client, actualVersion, baseUrl, auth) { @@ -978,13 +979,13 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun listPersonContent( form: it.vercruysse.lemmyapi.datatypes.ListPersonContent, ): Result> { - val getPersonDetailsForm = it.vercruysse.lemmyapi.datatypes.GetPersonDetails( - person_id = form.person_id, + val getPersonDetailsForm = GetPersonDetails( username = form.username, + person_id = form.person_id, page = form.page, limit = form.limit, ) - return api.getPersonDetails(transformer.fromUni(getPersonDetailsForm)).map { response -> + return api.getPersonDetails(getPersonDetailsForm).map { response -> val comments = when (form.type_) { it.vercruysse.lemmyapi.enums.PersonContentType.Posts -> emptyList() else -> response.comments.map { transformer.toUni(it) } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt index ceabdc0b..f3656133 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt @@ -550,8 +550,6 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X4DatatypesGetPersonDetailsResponse): LemmyapiDatatypesGetPersonDetailsResponse = LemmyapiDatatypesGetPersonDetailsResponse( person_view = this.toUni(d = d.person_view), site = d.site?.let { this.toUni(d = it) }, - comments = d.comments.map { this.toUni(d = it) }, - posts = d.posts.map { this.toUni(d = it) }, moderates = d.moderates.map { this.toUni(d = it) }, multi_communities_created = emptyList() ) @@ -1506,11 +1504,6 @@ internal class Transformer : MapperGenerator { X4DatatypesGetPersonDetails( person_id = d.person_id, username = d.username, - sort = V0SortType.fromUniNullable(d.sort), - page = d.page, - limit = d.limit, - community_id = d.community_id, - saved_only = d.saved_only, ) override fun fromUni(d: LemmyapiDatatypesGetPost): X4DatatypesGetPost = X4DatatypesGetPost( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt index 5b326dd8..3f40190e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt @@ -15,6 +15,7 @@ import it.vercruysse.lemmyapi.dto.ExportUserSettingsResponse import it.vercruysse.lemmyapi.dto.ImportUserSettings import it.vercruysse.lemmyapi.enums.NotificationDataType import it.vercruysse.lemmyapi.enums.NotificationType +import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.GetPersonDetails internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, baseUrl: String, auth: String?) : LemmyApiBaseController(client, actualVersion, baseUrl, auth) { @@ -974,13 +975,13 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun listPersonContent( form: it.vercruysse.lemmyapi.datatypes.ListPersonContent, ): Result> { - val getPersonDetailsForm = it.vercruysse.lemmyapi.datatypes.GetPersonDetails( + val getPersonDetailsForm = GetPersonDetails( person_id = form.person_id, username = form.username, page = form.page, limit = form.limit, ) - return api.getPersonDetails(transformer.fromUni(getPersonDetailsForm)).map { response -> + return api.getPersonDetails(getPersonDetailsForm).map { response -> val comments = when (form.type_) { it.vercruysse.lemmyapi.enums.PersonContentType.Posts -> emptyList() else -> response.comments.map { transformer.toUni(it) } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt index 02bdf509..cf005a89 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt @@ -545,8 +545,6 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X6DatatypesGetPersonDetailsResponse): LemmyapiDatatypesGetPersonDetailsResponse = LemmyapiDatatypesGetPersonDetailsResponse( person_view = this.toUni(d = d.person_view), site = d.site?.let { this.toUni(d = it) }, - comments = d.comments.map { this.toUni(d = it) }, - posts = d.posts.map { this.toUni(d = it) }, moderates = d.moderates.map { this.toUni(d = it) }, multi_communities_created = emptyList() ) @@ -1509,11 +1507,6 @@ internal class Transformer : MapperGenerator { X6DatatypesGetPersonDetails( person_id = d.person_id, username = d.username, - sort = V0SortType.fromUniNullable(d.sort), - page = d.page, - limit = d.limit, - community_id = d.community_id, - saved_only = d.saved_only, ) override fun fromUni(d: LemmyapiDatatypesGetPost): X6DatatypesGetPost = X6DatatypesGetPost( From c20d5a9f5d3e583fe5048e53feecd7f6e28c4afb Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Sat, 23 May 2026 04:10:17 +0200 Subject: [PATCH 055/110] Add init version of LemmyApiController LemmyApiRouter --- .../main/kotlin/autogenscripts/GenRoutes.kt | 2 +- .../it/vercruysse/lemmyapi/FeatureFlags.kt | 9 +- .../lemmyapi/LemmyApiBaseController.kt | 9 +- .../lemmyapi/datatypes/ListPersonHidden.kt | 2 +- .../it/vercruysse/lemmyapi/utils/Ktor.kt | 10 + .../lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt | 3 +- .../lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt | 3 +- .../lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt | 3 +- .../lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt | 3 +- .../lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt | 3 +- .../lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt | 3 +- .../lemmyapi/v1/x0/x0/LemmyApiController.kt | 607 ++++++++++++++++++ .../lemmyapi/v1/x0/x0/LemmyApiRouter.kt | 446 +++++++++++++ 13 files changed, 1089 insertions(+), 14 deletions(-) create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiController.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiRouter.kt diff --git a/GeneratorScripts/src/main/kotlin/autogenscripts/GenRoutes.kt b/GeneratorScripts/src/main/kotlin/autogenscripts/GenRoutes.kt index fbf61999..a50f332f 100644 --- a/GeneratorScripts/src/main/kotlin/autogenscripts/GenRoutes.kt +++ b/GeneratorScripts/src/main/kotlin/autogenscripts/GenRoutes.kt @@ -18,7 +18,7 @@ enum class HttpMethod { PUT, } -const val LEMMY_SPEC_LINK = """https://raw.githubusercontent.com/MV-GH/lemmy_openapi_spec/master/lemmy_spec.yaml""" +const val LEMMY_SPEC_LINK = """blob:https://join-lemmy.org/7fe59b0d-6b94-40d4-bba8-d03a1a0ab8b7""" data class RouteInfo( val path: String, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/FeatureFlags.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/FeatureFlags.kt index ed009c37..1f2ba752 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/FeatureFlags.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/FeatureFlags.kt @@ -14,6 +14,10 @@ class FeatureFlags(val version: Version) { private val v0x19x4Plus = version.withoutSuffixes() >= "0.19.4".toVersion() private val v0x19x6Plus = version.withoutSuffixes() >= "0.19.6".toVersion() private val v0x19x11Plus = version.withoutSuffixes() >= "0.19.11".toVersion() + + /** + * V1 Feature added in 1.0 + */ val v1 = version.withoutSuffixes() >= "1".toVersion() /** @@ -105,9 +109,4 @@ class FeatureFlags(val version: Version) { * Mark donation dialog as shown, feature added in 0.19.11 */ fun markDonationDialogShown(): Boolean = v0x19x11Plus - - /** - * V1 Feature added in 1.0 - */ - fun v1(): Boolean = v1 } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt index a212fd69..6ac61f1b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt @@ -406,7 +406,7 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version */ abstract suspend fun banPerson(form: BanPerson): Result -// TODO: merged into list of users +// TODO: remove it /** * Get a list of banned users * @@ -686,4 +686,11 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version * @GET("admin/registration_application") */ abstract suspend fun getRegistrationApplication(form: GetRegistrationApplication): Result + + /** + * Get a list of users. + * + * @GET("admin/users") + */ + abstract suspend fun adminListUsers(form: AdminListUsers): Result> } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonHidden.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonHidden.kt index 165c3dc9..45092aab 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonHidden.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonHidden.kt @@ -4,7 +4,7 @@ import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -// TODO: renamed prob changed in latest types +// TODO: for new endpoint @CommonParcelize @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/utils/Ktor.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/utils/Ktor.kt index 3d07d3a7..82d8409b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/utils/Ktor.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/utils/Ktor.kt @@ -5,6 +5,16 @@ import io.ktor.client.call.* import io.ktor.client.request.* import io.ktor.http.* +suspend inline fun HttpClient.deleteResult( + urlString: String, + builder: HttpRequestBuilder.() -> Unit = {}, +): Result = runCatching { delete(urlString, builder).body() } + +suspend inline fun HttpClient.deleteResult( + urlString: String, + body: T, +): Result = this.deleteResult(urlString) { setJsonBody(body) } + suspend inline fun HttpClient.getResult( urlString: String, builder: HttpRequestBuilder.() -> Unit = {}, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt index 2235ba11..6d447ab8 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt @@ -1046,4 +1046,5 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba PagedResponse(items = comments + posts) } } -} + override suspend fun adminListUsers(form: it.vercruysse.lemmyapi.datatypes.AdminListUsers): Result> = notSupported() +} \ No newline at end of file diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt index ca733abd..9b8d71fa 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt @@ -1000,4 +1000,5 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba PagedResponse(items = comments + posts) } } -} + override suspend fun adminListUsers(form: it.vercruysse.lemmyapi.datatypes.AdminListUsers): Result> = notSupported() +} \ No newline at end of file diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt index 1e509a46..135c3e08 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt @@ -1000,4 +1000,5 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba PagedResponse(items = comments + posts) } } -} + override suspend fun adminListUsers(form: it.vercruysse.lemmyapi.datatypes.AdminListUsers): Result> = notSupported() +} \ No newline at end of file diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt index b2de1ffe..4494135b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt @@ -999,4 +999,5 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba PagedResponse(items = comments + posts) } } -} + override suspend fun adminListUsers(form: it.vercruysse.lemmyapi.datatypes.AdminListUsers): Result> = notSupported() +} \ No newline at end of file diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt index d4d4f6f1..3244371e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt @@ -997,4 +997,5 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba PagedResponse(items = comments + posts) } } -} + override suspend fun adminListUsers(form: it.vercruysse.lemmyapi.datatypes.AdminListUsers): Result> = notSupported() +} \ No newline at end of file diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt index 3f40190e..d2756dac 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt @@ -993,4 +993,5 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba PagedResponse(items = comments + posts) } } -} + override suspend fun adminListUsers(form: it.vercruysse.lemmyapi.datatypes.AdminListUsers): Result> = notSupported() +} \ No newline at end of file diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiController.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiController.kt new file mode 100644 index 00000000..b3eb40d5 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiController.kt @@ -0,0 +1,607 @@ +package it.vercruysse.lemmyapi.v1.x0.x0 + +import io.ktor.client.HttpClient +import it.vercruysse.lemmyapi.dto.ExportUserSettingsResponse +import it.vercruysse.lemmyapi.dto.ImportUserSettings +import it.vercruysse.lemmyapi.utils.deleteResult +import it.vercruysse.lemmyapi.utils.getResult +import it.vercruysse.lemmyapi.utils.postResult +import it.vercruysse.lemmyapi.utils.putResult +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.* + +internal class LemmyApiController(client: HttpClient, auth: String?) : + LemmyApiRouter( + client, + auth, + ) { + + /** @GET("site") */ + override suspend fun getSite(): Result = + client.getResult("site") + + /** @POST("site") */ + override suspend fun createSite(form: CreateSite): Result = + client.postResult("site", form) + + /** @PUT("site") */ + override suspend fun editSite(form: EditSite): Result = + client.putResult("site", form) + + /** @DELETE("site/banner") */ + override suspend fun deleteSiteBanner(): Result = + client.deleteResult("site/banner") + + /** @DELETE("site/icon") */ + override suspend fun deleteSiteIcon(): Result = + client.deleteResult("site/icon") + + /** @GET("modlog") */ + override suspend fun getModlog(form: GetModlog): Result> = + client.getResult("modlog", form) + + /** @GET("search") */ + override suspend fun search(form: Search): Result = + client.getResult("search", form) + + /** @GET("resolve_object") */ + override suspend fun resolveObject(form: ResolveObject): Result = + client.getResult("resolve_object", form) + + /** @GET("community") */ + override suspend fun getCommunity(form: GetCommunity): Result = + client.getResult("community", form) + + /** @POST("community") */ + override suspend fun createCommunity(form: CreateCommunity): Result = + client.postResult("community", form) + + /** @PUT("community") */ + override suspend fun editCommunity(form: EditCommunity): Result = + client.putResult("community", form) + + /** @DELETE("community") */ + override suspend fun deleteCommunity(form: DeleteCommunity): Result = + client.deleteResult("community", form) + + /** @PUT("community/hide") */ + override suspend fun hideCommunity(form: HideCommunity): Result = + client.putResult("community/hide", form) + + /** @GET("community/list") */ + override suspend fun listCommunities(form: ListCommunities): Result> = + client.getResult("community/list", form) + + /** @POST("community/follow") */ + override suspend fun followCommunity(form: FollowCommunity): Result = + client.postResult("community/follow", form) + + /** @POST("community/remove") */ + override suspend fun removeCommunity(form: RemoveCommunity): Result = + client.postResult("community/remove", form) + + /** @POST("community/transfer") */ + override suspend fun transferCommunity(form: TransferCommunity): Result = + client.postResult("community/transfer", form) + + /** @POST("community/ban_user") */ + override suspend fun banFromCommunity(form: BanFromCommunity): Result = + client.postResult("community/ban_user", form) + + /** @POST("community/mod") */ + override suspend fun addModToCommunity(form: AddModToCommunity): Result = + client.postResult("community/mod", form) + + /** @GET("community/random") */ + override suspend fun getRandomCommunity(form: GetRandomCommunity): Result = + client.getResult("community/random", form) + + /** @POST("community/report") */ + override suspend fun createCommunityReport(form: CreateCommunityReport): Result = + client.postResult("community/report", form) + + /** @PUT("community/report/resolve") */ + override suspend fun resolveCommunityReport(form: ResolveCommunityReport): Result = + client.putResult("community/report/resolve", form) + + /** @POST("community/tag") */ + override suspend fun createCommunityTag(form: CreateCommunityTag): Result = + client.postResult("community/tag", form) + + /** @PUT("community/tag") */ + override suspend fun editCommunityTag(form: EditCommunityTag): Result = + client.putResult("community/tag", form) + + /** @DELETE("community/tag") */ + override suspend fun deleteCommunityTag(form: DeleteCommunityTag): Result = + client.deleteResult("community/tag", form) + + /** @PUT("community/notifications") */ + override suspend fun editCommunityNotifications(form: EditCommunityNotifications): Result = + client.putResult("community/notifications", form) + + /** @POST("community/pending_follows/approve") */ + override suspend fun approveCommunityPendingFollow(form: ApproveCommunityPendingFollower): Result = + client.postResult("community/pending_follows/approve", form) + + /** @GET("community/pending_follows/list") */ + override suspend fun listCommunityPendingFollows(form: ListCommunityPendingFollows): Result> = + client.getResult("community/pending_follows/list", form) + + /** @DELETE("community/banner") */ + override suspend fun deleteCommunityBanner(form: CommunityIdQuery): Result = + client.deleteResult("community/banner", form) + + /** @DELETE("community/icon") */ + override suspend fun deleteCommunityIcon(form: CommunityIdQuery): Result = + client.deleteResult("community/icon", form) + + /** @GET("federated_instances") */ + override suspend fun getFederatedInstances(form: GetFederatedInstances): Result> = + client.getResult("federated_instances", form) + + /** @GET("post") */ + override suspend fun getPost(form: GetPost): Result = + client.getResult("post", form) + + /** @POST("post") */ + override suspend fun createPost(form: CreatePost): Result = + client.postResult("post", form) + + /** @PUT("post") */ + override suspend fun editPost(form: EditPost): Result = + client.putResult("post", form) + + /** @DELETE("post") */ + override suspend fun deletePost(form: DeletePost): Result = + client.deleteResult("post", form) + + /** @GET("post/list") */ + override suspend fun getPosts(form: GetPosts): Result> = + client.getResult("post/list", form) + + /** @POST("post/remove") */ + override suspend fun removePost(form: RemovePost): Result = + client.postResult("post/remove", form) + + /** @POST("post/mark_as_read") */ + override suspend fun markPostAsRead(form: MarkPostAsRead): Result = + client.postResult("post/mark_as_read", form) + + /** @POST("post/mark_as_read/many") */ + override suspend fun markManyPostsAsRead(form: MarkManyPostsAsRead): Result = + client.postResult("post/mark_as_read/many", form) + + /** @POST("post/lock") */ + override suspend fun lockPost(form: LockPost): Result = + client.postResult("post/lock", form) + + /** @POST("post/feature") */ + override suspend fun featurePost(form: FeaturePost): Result = + client.postResult("post/feature", form) + + /** @POST("post/like") */ + override suspend fun createPostLike(form: CreatePostLike): Result = + client.postResult("post/like", form) + + /** @PUT("post/save") */ + override suspend fun savePost(form: SavePost): Result = + client.putResult("post/save", form) + + /** @POST("post/report") */ + override suspend fun createPostReport(form: CreatePostReport): Result = + client.postResult("post/report", form) + + /** @PUT("post/report/resolve") */ + override suspend fun resolvePostReport(form: ResolvePostReport): Result = + client.putResult("post/report/resolve", form) + + /** @GET("post/site_metadata") */ + override suspend fun getSiteMetadata(form: GetSiteMetadata): Result = + client.getResult("post/site_metadata", form) + + /** @POST("post/hide") */ + override suspend fun hidePost(form: HidePost): Result = + client.postResult("post/hide", form) + + /** @GET("post/like/list") */ + override suspend fun listPostLikes(form: ListPostLikes): Result> = + client.getResult("post/like/list", form) + + /** @PUT("post/mod_edit") */ + override suspend fun modEditPost(form: ModEditPost): Result = + client.putResult("post/mod_edit", form) + + /** @PUT("post/notifications") */ + override suspend fun editPostNotifications(form: EditPostNotifications): Result = + client.putResult("post/notifications", form) + + /** @POST("post/warn") */ + override suspend fun warnPost(form: CreatePostWarning): Result = + client.postResult("post/warn", form) + + /** @GET("comment") */ + override suspend fun getComment(form: GetComment): Result = + client.getResult("comment", form) + + /** @POST("comment") */ + override suspend fun createComment(form: CreateComment): Result = + client.postResult("comment", form) + + /** @PUT("comment") */ + override suspend fun editComment(form: EditComment): Result = + client.putResult("comment", form) + + /** @DELETE("comment") */ + override suspend fun deleteComment(form: DeleteComment): Result = + client.deleteResult("comment", form) + + /** @GET("comment/list") */ + override suspend fun getComments(form: GetComments): Result> = + client.getResult("comment/list", form) + + /** @GET("comment/list/slim") */ + override suspend fun getCommentsSlim(form: GetComments): Result> = + client.getResult("comment/list/slim", form) + + /** @POST("comment/remove") */ + override suspend fun removeComment(form: RemoveComment): Result = + client.postResult("comment/remove", form) + + /** @POST("comment/lock") */ + override suspend fun lockComment(form: LockComment): Result = + client.postResult("comment/lock", form) + + /** @POST("comment/distinguish") */ + override suspend fun distinguishComment(form: DistinguishComment): Result = + client.postResult("comment/distinguish", form) + + /** @POST("comment/like") */ + override suspend fun createCommentLike(form: CreateCommentLike): Result = + client.postResult("comment/like", form) + + /** @PUT("comment/save") */ + override suspend fun saveComment(form: SaveComment): Result = + client.putResult("comment/save", form) + + /** @POST("comment/report") */ + override suspend fun createCommentReport(form: CreateCommentReport): Result = + client.postResult("comment/report", form) + + /** @PUT("comment/report/resolve") */ + override suspend fun resolveCommentReport(form: ResolveCommentReport): Result = + client.putResult("comment/report/resolve", form) + + /** @GET("comment/like/list") */ + override suspend fun listCommentLikes(form: ListCommentLikes): Result> = + client.getResult("comment/like/list", form) + + /** @POST("comment/warn") */ + override suspend fun warnComment(form: CreateCommentWarning): Result = + client.postResult("comment/warn", form) + + /** @POST("private_message") */ + override suspend fun createPrivateMessage(form: CreatePrivateMessage): Result = + client.postResult("private_message", form) + + /** @PUT("private_message") */ + override suspend fun editPrivateMessage(form: EditPrivateMessage): Result = + client.putResult("private_message", form) + + /** @DELETE("private_message") */ + override suspend fun deletePrivateMessage(form: DeletePrivateMessage): Result = + client.deleteResult("private_message", form) + + /** @POST("private_message/report") */ + override suspend fun createPrivateMessageReport(form: CreatePrivateMessageReport): Result = + client.postResult("private_message/report", form) + + /** @PUT("private_message/report/resolve") */ + override suspend fun resolvePrivateMessageReport(form: ResolvePrivateMessageReport): Result = + client.putResult("private_message/report/resolve", form) + + /** @GET("person") */ + override suspend fun getPersonDetails(form: GetPersonDetails): Result = + client.getResult("person", form) + + /** @GET("person/content") */ + override suspend fun listPersonContent(form: ListPersonContent): Result> = + client.getResult("person/content", form) + + /** @POST("person/note") */ + override suspend fun notePerson(form: NotePerson): Result = + client.postResult("person/note", form) + + /** @GET("account") */ + override suspend fun getMyUser(): Result = + client.getResult("account") + + /** @DELETE("account") */ + override suspend fun deleteAccount(form: DeleteAccount): Result = + client.deleteResult("account", form) + + /** @POST("account/auth/login") */ + override suspend fun login(form: Login): Result = + client.postResult("account/auth/login", form) + + /** @POST("account/auth/logout") */ + override suspend fun logout(): Result = + client.postResult("account/auth/logout") + + /** @POST("account/auth/register") */ + override suspend fun register(form: Register): Result = + client.postResult("account/auth/register", form) + + /** @GET("account/auth/get_captcha") */ + override suspend fun getCaptcha(): Result = + client.getResult("account/auth/get_captcha") + + /** @POST("account/auth/password_reset") */ + override suspend fun resetPassword(form: PasswordReset): Result = + client.postResult("account/auth/password_reset", form) + + /** @POST("account/auth/password_change") */ + override suspend fun changePasswordAfterReset(form: PasswordChangeAfterReset): Result = + client.postResult("account/auth/password_change", form) + + /** @PUT("account/auth/change_password") */ + override suspend fun changePassword(form: ChangePassword): Result = + client.putResult("account/auth/change_password", form) + + /** @POST("account/auth/verify_email") */ + override suspend fun verifyEmail(form: VerifyEmail): Result = + client.postResult("account/auth/verify_email", form) + + /** @POST("account/auth/resend_verification_email") */ + override suspend fun resendVerificationEmail(form: ResendVerificationEmail): Result = + client.postResult("account/auth/resend_verification_email", form) + + /** @POST("account/auth/totp/generate") */ + override suspend fun generateTotpSecret(): Result = + client.postResult("account/auth/totp/generate") + + /** @POST("account/auth/totp/edit") */ + override suspend fun editTotp(form: EditTotp): Result = + client.postResult("account/auth/totp/edit", form) + + /** @PUT("account/settings/save") */ + override suspend fun saveUserSettings(form: SaveUserSettings): Result = + client.putResult("account/settings/save", form) + + /** @GET("account/settings/export") */ + override suspend fun exportUserSettings(): Result = + client.getResult("account/settings/export") + + /** @POST("account/settings/import") */ + override suspend fun importUserSettings(form: ImportUserSettings): Result = + client.postResult("account/settings/import", form) + + /** @POST("account/block/community") */ + override suspend fun blockCommunity(form: BlockCommunity): Result = + client.postResult("account/block/community", form) + + /** @POST("account/block/person") */ + override suspend fun blockPerson(form: BlockPerson): Result = + client.postResult("account/block/person", form) + + /** @POST("account/block/instance/communities") */ + override suspend fun userBlockInstanceCommunities(form: UserBlockInstanceCommunitiesParams): Result = + client.postResult("account/block/instance/communities", form) + + /** @POST("account/block/instance/persons") */ + override suspend fun userBlockInstancePersons(form: UserBlockInstancePersonsParams): Result = + client.postResult("account/block/instance/persons", form) + + /** @POST("account/donation_dialog_shown") */ + override suspend fun markDonationDialogShown(): Result = + client.postResult("account/donation_dialog_shown") + + /** @GET("account/login/list") */ + override suspend fun listLogins(): Result = + client.getResult("account/login/list") + + /** @GET("account/validate_auth") */ + override suspend fun validateAuth(): Result = + client.getResult("account/validate_auth") + + /** @GET("account/unread_counts") */ + override suspend fun getUnreadCounts(): Result = + client.getResult("account/unread_counts") + + /** @POST("account/notification/mark_as_read") */ + override suspend fun markNotificationAsRead(form: MarkNotificationAsRead): Result = + client.postResult("account/notification/mark_as_read", form) + + /** @POST("account/notification/mark_as_read/all") */ + override suspend fun markAllNotificationsAsRead(): Result = + client.postResult("account/notification/mark_as_read/all") + + /** @GET("account/notification/list") */ + override suspend fun listNotifications(form: ListNotifications): Result> = + client.getResult("account/notification/list", form) + + /** @GET("account/saved") */ + override suspend fun listPersonSaved(form: ListPersonSaved): Result> = + client.getResult("account/saved", form) + + /** @GET("account/read") */ + override suspend fun listPersonRead(form: ListPersonRead): Result> = + client.getResult("account/read", form) + + /** @GET("account/hidden") */ + override suspend fun listPersonHidden(form: ListPersonHidden): Result> = + client.getResult("account/hidden", form) + + /** @GET("account/liked") */ + override suspend fun listPersonLiked(form: ListPersonLiked): Result> = + client.getResult("account/liked", form) + + /** @GET("account/media/list") */ + override suspend fun listMedia(form: ListMedia): Result> = + client.getResult("account/media/list", form) + + /** @DELETE("account/media") */ + override suspend fun deleteMedia(form: DeleteImageParams): Result = + client.deleteResult("account/media", form) + + /** @DELETE("account/avatar") */ + override suspend fun deleteUserAvatar(): Result = + client.deleteResult("account/avatar") + + /** @DELETE("account/banner") */ + override suspend fun deleteUserBanner(): Result = + client.deleteResult("account/banner") + + /** @POST("admin/add") */ + override suspend fun addAdmin(form: AddAdmin): Result = + client.postResult("admin/add", form) + + /** @POST("admin/ban") */ + override suspend fun banPerson(form: BanPerson): Result = + client.postResult("admin/ban", form) + + /** @POST("admin/leave") */ + override suspend fun leaveAdmin(): Result = + client.postResult("admin/leave") + + /** @GET("admin/registration_application") */ + override suspend fun getRegistrationApplication(form: GetRegistrationApplication): Result = + client.getResult("admin/registration_application", form) + + /** @PUT("admin/registration_application/approve") */ + override suspend fun approveRegistrationApplication(form: ApproveRegistrationApplication): Result = + client.putResult("admin/registration_application/approve", form) + + /** @GET("admin/registration_application/list") */ + override suspend fun listRegistrationApplications(form: ListRegistrationApplications): Result> = + client.getResult("admin/registration_application/list", form) + + /** @POST("admin/purge/person") */ + override suspend fun purgePerson(form: PurgePerson): Result = + client.postResult("admin/purge/person", form) + + /** @POST("admin/purge/community") */ + override suspend fun purgeCommunity(form: PurgeCommunity): Result = + client.postResult("admin/purge/community", form) + + /** @POST("admin/purge/post") */ + override suspend fun purgePost(form: PurgePost): Result = + client.postResult("admin/purge/post", form) + + /** @POST("admin/purge/comment") */ + override suspend fun purgeComment(form: PurgeComment): Result = + client.postResult("admin/purge/comment", form) + + /** @POST("admin/instance/block") */ + override suspend fun adminBlockInstance(form: AdminBlockInstanceParams): Result = + client.postResult("admin/instance/block", form) + + /** @POST("admin/instance/allow") */ + override suspend fun adminAllowInstance(form: AdminAllowInstanceParams): Result = + client.postResult("admin/instance/allow", form) + + /** @POST("admin/tagline") */ + override suspend fun createTagline(form: CreateTagline): Result = + client.postResult("admin/tagline", form) + + /** @PUT("admin/tagline") */ + override suspend fun editTagline(form: EditTagline): Result = + client.putResult("admin/tagline", form) + + /** @DELETE("admin/tagline") */ + override suspend fun deleteTagline(form: DeleteTagline): Result = + client.deleteResult("admin/tagline", form) + + /** @GET("admin/tagline/list") */ + override suspend fun listTaglines(form: ListTaglines): Result> = + client.getResult("admin/tagline/list", form) + + /** @GET("admin/users") */ + override suspend fun listUsers(form: AdminListUsers): Result> = + client.getResult("admin/users", form) + + /** @POST("custom_emoji") */ + override suspend fun createCustomEmoji(form: CreateCustomEmoji): Result = + client.postResult("custom_emoji", form) + + /** @PUT("custom_emoji") */ + override suspend fun editCustomEmoji(form: EditCustomEmoji): Result = + client.putResult("custom_emoji", form) + + /** @POST("custom_emoji/delete") */ + override suspend fun deleteCustomEmoji(form: DeleteCustomEmoji): Result = + client.postResult("custom_emoji/delete", form) + + /** @GET("custom_emoji/list") */ + override suspend fun listCustomEmojis(form: ListCustomEmojis): Result = + client.getResult("custom_emoji/list", form) + + /** @POST("oauth/authenticate") */ + override suspend fun authenticateWithOAuth(form: AuthenticateWithOauth): Result = + client.postResult("oauth/authenticate", form) + + /** @POST("oauth_provider") */ + override suspend fun createOAuthProvider(form: CreateOAuthProvider): Result = + client.postResult("oauth_provider", form) + + /** @PUT("oauth_provider") */ + override suspend fun editOAuthProvider(form: EditOAuthProvider): Result = + client.putResult("oauth_provider", form) + + /** @DELETE("oauth_provider") */ + override suspend fun deleteOAuthProvider(form: DeleteOAuthProvider): Result = + client.deleteResult("oauth_provider", form) + + /** @GET("report/list") */ + override suspend fun listReports(form: ListReports): Result> = + client.getResult("report/list", form) + + /** @GET("multi_community") */ + override suspend fun getMultiCommunity(form: GetMultiCommunity): Result = + client.getResult("multi_community", form) + + /** @POST("multi_community") */ + override suspend fun createMultiCommunity(form: CreateMultiCommunity): Result = + client.postResult("multi_community", form) + + /** @PUT("multi_community") */ + override suspend fun editMultiCommunity(form: EditMultiCommunity): Result = + client.putResult("multi_community", form) + + /** @POST("multi_community/entry") */ + override suspend fun createMultiCommunityEntry(form: CreateOrDeleteMultiCommunityEntry): Result = + client.postResult("multi_community/entry", form) + + /** @DELETE("multi_community/entry") */ + override suspend fun deleteMultiCommunityEntry(form: CreateOrDeleteMultiCommunityEntry): Result = + client.deleteResult("multi_community/entry", form) + + /** @POST("multi_community/follow") */ + override suspend fun followMultiCommunity(form: FollowMultiCommunity): Result = + client.postResult("multi_community/follow", form) + + /** @GET("multi_community/list") */ + override suspend fun listMultiCommunities(form: ListMultiCommunities): Result> = + client.getResult("multi_community/list", form) + + /** @DELETE("image") */ + override suspend fun deleteMediaAdmin(form: DeleteImageParams): Result = + client.deleteResult("image", form) + + /** @GET("image/health") */ + override suspend fun imageHealth(): Result = + client.getResult("image/health") + + /** @GET("image/list") */ + override suspend fun listMediaAdmin(form: ListMedia): Result> = + client.getResult("image/list", form) + + // TODO: + //uploadCommunityBanner,DELETE,CommunityIdQuery,Unit + //uploadCommunityIcon,DELETE,CommunityIdQuery,Unit + //uploadImage,GET,object,Unit + //uploadSiteBanner,DELETE,object,Unit + //uploadSiteIcon,DELETE,object,Unit + //uploadUserAvatar,DELETE,object,Unit + //uploadUserBanner,DELETE,object,Unit +} + diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiRouter.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiRouter.kt new file mode 100644 index 00000000..4992e3ac --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiRouter.kt @@ -0,0 +1,446 @@ +package it.vercruysse.lemmyapi.v1.x0.x0 + +import io.ktor.client.HttpClient +import it.vercruysse.lemmyapi.AuthBaseClient +import it.vercruysse.lemmyapi.dto.ExportUserSettingsResponse +import it.vercruysse.lemmyapi.dto.ImportUserSettings +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.* + +internal abstract class LemmyApiRouter(client: HttpClient, auth: String?) : AuthBaseClient(client, auth) { + + /** @GET("site") */ + abstract suspend fun getSite(): Result + + /** @POST("site") */ + abstract suspend fun createSite(form: CreateSite): Result + + /** @PUT("site") */ + abstract suspend fun editSite(form: EditSite): Result + + /** @DELETE("site/banner") */ + abstract suspend fun deleteSiteBanner(): Result + + /** @DELETE("site/icon") */ + abstract suspend fun deleteSiteIcon(): Result + + /** @GET("modlog") */ + abstract suspend fun getModlog(form: GetModlog): Result> + + /** @GET("search") */ + abstract suspend fun search(form: Search): Result + + /** @GET("resolve_object") */ + abstract suspend fun resolveObject(form: ResolveObject): Result + + /** @GET("community") */ + abstract suspend fun getCommunity(form: GetCommunity): Result + + /** @POST("community") */ + abstract suspend fun createCommunity(form: CreateCommunity): Result + + /** @PUT("community") */ + abstract suspend fun editCommunity(form: EditCommunity): Result + + /** @DELETE("community") */ + abstract suspend fun deleteCommunity(form: DeleteCommunity): Result + + /** @PUT("community/hide") */ + abstract suspend fun hideCommunity(form: HideCommunity): Result + + /** @GET("community/list") */ + abstract suspend fun listCommunities(form: ListCommunities): Result> + + /** @POST("community/follow") */ + abstract suspend fun followCommunity(form: FollowCommunity): Result + + /** @POST("community/remove") */ + abstract suspend fun removeCommunity(form: RemoveCommunity): Result + + /** @POST("community/transfer") */ + abstract suspend fun transferCommunity(form: TransferCommunity): Result + + /** @POST("community/ban_user") */ + abstract suspend fun banFromCommunity(form: BanFromCommunity): Result + + /** @POST("community/mod") */ + abstract suspend fun addModToCommunity(form: AddModToCommunity): Result + + /** @GET("community/random") */ + abstract suspend fun getRandomCommunity(form: GetRandomCommunity): Result + + /** @POST("community/report") */ + abstract suspend fun createCommunityReport(form: CreateCommunityReport): Result + + /** @PUT("community/report/resolve") */ + abstract suspend fun resolveCommunityReport(form: ResolveCommunityReport): Result + + /** @POST("community/tag") */ + abstract suspend fun createCommunityTag(form: CreateCommunityTag): Result + + /** @PUT("community/tag") */ + abstract suspend fun editCommunityTag(form: EditCommunityTag): Result + + /** @DELETE("community/tag") */ + abstract suspend fun deleteCommunityTag(form: DeleteCommunityTag): Result + + /** @PUT("community/notifications") */ + abstract suspend fun editCommunityNotifications(form: EditCommunityNotifications): Result + + /** @POST("community/pending_follows/approve") */ + abstract suspend fun approveCommunityPendingFollow(form: ApproveCommunityPendingFollower): Result + + /** @GET("community/pending_follows/list") */ + abstract suspend fun listCommunityPendingFollows(form: ListCommunityPendingFollows): Result> + + /** @DELETE("community/banner") */ + abstract suspend fun deleteCommunityBanner(form: CommunityIdQuery): Result + + /** @DELETE("community/icon") */ + abstract suspend fun deleteCommunityIcon(form: CommunityIdQuery): Result + + /** @GET("federated_instances") */ + abstract suspend fun getFederatedInstances(form: GetFederatedInstances): Result> + + /** @GET("post") */ + abstract suspend fun getPost(form: GetPost): Result + + /** @POST("post") */ + abstract suspend fun createPost(form: CreatePost): Result + + /** @PUT("post") */ + abstract suspend fun editPost(form: EditPost): Result + + /** @DELETE("post") */ + abstract suspend fun deletePost(form: DeletePost): Result + + /** @GET("post/list") */ + abstract suspend fun getPosts(form: GetPosts): Result> + + /** @POST("post/remove") */ + abstract suspend fun removePost(form: RemovePost): Result + + /** @POST("post/mark_as_read") */ + abstract suspend fun markPostAsRead(form: MarkPostAsRead): Result + + /** @POST("post/mark_as_read/many") */ + abstract suspend fun markManyPostsAsRead(form: MarkManyPostsAsRead): Result + + /** @POST("post/lock") */ + abstract suspend fun lockPost(form: LockPost): Result + + /** @POST("post/feature") */ + abstract suspend fun featurePost(form: FeaturePost): Result + + /** @POST("post/like") */ + abstract suspend fun createPostLike(form: CreatePostLike): Result + + /** @PUT("post/save") */ + abstract suspend fun savePost(form: SavePost): Result + + /** @POST("post/report") */ + abstract suspend fun createPostReport(form: CreatePostReport): Result + + /** @PUT("post/report/resolve") */ + abstract suspend fun resolvePostReport(form: ResolvePostReport): Result + + /** @GET("post/site_metadata") */ + abstract suspend fun getSiteMetadata(form: GetSiteMetadata): Result + + /** @POST("post/hide") */ + abstract suspend fun hidePost(form: HidePost): Result + + /** @GET("post/like/list") */ + abstract suspend fun listPostLikes(form: ListPostLikes): Result> + + /** @PUT("post/mod_edit") */ + abstract suspend fun modEditPost(form: ModEditPost): Result + + /** @PUT("post/notifications") */ + abstract suspend fun editPostNotifications(form: EditPostNotifications): Result + + /** @POST("post/warn") */ + abstract suspend fun warnPost(form: CreatePostWarning): Result + + /** @GET("comment") */ + abstract suspend fun getComment(form: GetComment): Result + + /** @POST("comment") */ + abstract suspend fun createComment(form: CreateComment): Result + + /** @PUT("comment") */ + abstract suspend fun editComment(form: EditComment): Result + + /** @DELETE("comment") */ + abstract suspend fun deleteComment(form: DeleteComment): Result + + /** @GET("comment/list") */ + abstract suspend fun getComments(form: GetComments): Result> + + /** @GET("comment/list/slim") */ + abstract suspend fun getCommentsSlim(form: GetComments): Result> + + /** @POST("comment/remove") */ + abstract suspend fun removeComment(form: RemoveComment): Result + + /** @POST("comment/lock") */ + abstract suspend fun lockComment(form: LockComment): Result + + /** @POST("comment/distinguish") */ + abstract suspend fun distinguishComment(form: DistinguishComment): Result + + /** @POST("comment/like") */ + abstract suspend fun createCommentLike(form: CreateCommentLike): Result + + /** @PUT("comment/save") */ + abstract suspend fun saveComment(form: SaveComment): Result + + /** @POST("comment/report") */ + abstract suspend fun createCommentReport(form: CreateCommentReport): Result + + /** @PUT("comment/report/resolve") */ + abstract suspend fun resolveCommentReport(form: ResolveCommentReport): Result + + /** @GET("comment/like/list") */ + abstract suspend fun listCommentLikes(form: ListCommentLikes): Result> + + /** @POST("comment/warn") */ + abstract suspend fun warnComment(form: CreateCommentWarning): Result + + /** @POST("private_message") */ + abstract suspend fun createPrivateMessage(form: CreatePrivateMessage): Result + + /** @PUT("private_message") */ + abstract suspend fun editPrivateMessage(form: EditPrivateMessage): Result + + /** @DELETE("private_message") */ + abstract suspend fun deletePrivateMessage(form: DeletePrivateMessage): Result + + /** @POST("private_message/report") */ + abstract suspend fun createPrivateMessageReport(form: CreatePrivateMessageReport): Result + + /** @PUT("private_message/report/resolve") */ + abstract suspend fun resolvePrivateMessageReport(form: ResolvePrivateMessageReport): Result + + /** @GET("person") */ + abstract suspend fun getPersonDetails(form: GetPersonDetails): Result + + /** @GET("person/content") */ + abstract suspend fun listPersonContent(form: ListPersonContent): Result> + + /** @POST("person/note") */ + abstract suspend fun notePerson(form: NotePerson): Result + + /** @GET("account") */ + abstract suspend fun getMyUser(): Result + + /** @DELETE("account") */ + abstract suspend fun deleteAccount(form: DeleteAccount): Result + + /** @POST("account/auth/login") */ + abstract suspend fun login(form: Login): Result + + /** @POST("account/auth/logout") */ + abstract suspend fun logout(): Result + + /** @POST("account/auth/register") */ + abstract suspend fun register(form: Register): Result + + /** @GET("account/auth/get_captcha") */ + abstract suspend fun getCaptcha(): Result + + /** @POST("account/auth/password_reset") */ + abstract suspend fun resetPassword(form: PasswordReset): Result + + /** @POST("account/auth/password_change") */ + abstract suspend fun changePasswordAfterReset(form: PasswordChangeAfterReset): Result + + /** @PUT("account/auth/change_password") */ + abstract suspend fun changePassword(form: ChangePassword): Result + + /** @POST("account/auth/verify_email") */ + abstract suspend fun verifyEmail(form: VerifyEmail): Result + + /** @POST("account/auth/resend_verification_email") */ + abstract suspend fun resendVerificationEmail(form: ResendVerificationEmail): Result + + /** @POST("account/auth/totp/generate") */ + abstract suspend fun generateTotpSecret(): Result + + /** @POST("account/auth/totp/edit") */ + abstract suspend fun editTotp(form: EditTotp): Result + + /** @PUT("account/settings/save") */ + abstract suspend fun saveUserSettings(form: SaveUserSettings): Result + + /** @GET("account/settings/export") */ + abstract suspend fun exportUserSettings(): Result + + /** @POST("account/settings/import") */ + abstract suspend fun importUserSettings(form: ImportUserSettings): Result + + /** @POST("account/block/community") */ + abstract suspend fun blockCommunity(form: BlockCommunity): Result + + /** @POST("account/block/person") */ + abstract suspend fun blockPerson(form: BlockPerson): Result + + /** @POST("account/block/instance/communities") */ + abstract suspend fun userBlockInstanceCommunities(form: UserBlockInstanceCommunitiesParams): Result + + /** @POST("account/block/instance/persons") */ + abstract suspend fun userBlockInstancePersons(form: UserBlockInstancePersonsParams): Result + + /** @POST("account/donation_dialog_shown") */ + abstract suspend fun markDonationDialogShown(): Result + + /** @GET("account/login/list") */ + abstract suspend fun listLogins(): Result + + /** @GET("account/validate_auth") */ + abstract suspend fun validateAuth(): Result + + /** @GET("account/unread_counts") */ + abstract suspend fun getUnreadCounts(): Result + + /** @POST("account/notification/mark_as_read") */ + abstract suspend fun markNotificationAsRead(form: MarkNotificationAsRead): Result + + /** @POST("account/notification/mark_as_read/all") */ + abstract suspend fun markAllNotificationsAsRead(): Result + + /** @GET("account/notification/list") */ + abstract suspend fun listNotifications(form: ListNotifications): Result> + + /** @GET("account/saved") */ + abstract suspend fun listPersonSaved(form: ListPersonSaved): Result> + + /** @GET("account/read") */ + abstract suspend fun listPersonRead(form: ListPersonRead): Result> + + /** @GET("account/hidden") */ + abstract suspend fun listPersonHidden(form: ListPersonHidden): Result> + + /** @GET("account/liked") */ + abstract suspend fun listPersonLiked(form: ListPersonLiked): Result> + + /** @GET("account/media/list") */ + abstract suspend fun listMedia(form: ListMedia): Result> + + /** @DELETE("account/media") */ + abstract suspend fun deleteMedia(form: DeleteImageParams): Result + + /** @DELETE("account/avatar") */ + abstract suspend fun deleteUserAvatar(): Result + + /** @DELETE("account/banner") */ + abstract suspend fun deleteUserBanner(): Result + + /** @POST("admin/add") */ + abstract suspend fun addAdmin(form: AddAdmin): Result + + /** @POST("admin/ban") */ + abstract suspend fun banPerson(form: BanPerson): Result + + /** @POST("admin/leave") */ + abstract suspend fun leaveAdmin(): Result + + /** @GET("admin/registration_application") */ + abstract suspend fun getRegistrationApplication(form: GetRegistrationApplication): Result + + /** @PUT("admin/registration_application/approve") */ + abstract suspend fun approveRegistrationApplication(form: ApproveRegistrationApplication): Result + + /** @GET("admin/registration_application/list") */ + abstract suspend fun listRegistrationApplications(form: ListRegistrationApplications): Result> + + /** @POST("admin/purge/person") */ + abstract suspend fun purgePerson(form: PurgePerson): Result + + /** @POST("admin/purge/community") */ + abstract suspend fun purgeCommunity(form: PurgeCommunity): Result + + /** @POST("admin/purge/post") */ + abstract suspend fun purgePost(form: PurgePost): Result + + /** @POST("admin/purge/comment") */ + abstract suspend fun purgeComment(form: PurgeComment): Result + + /** @POST("admin/instance/block") */ + abstract suspend fun adminBlockInstance(form: AdminBlockInstanceParams): Result + + /** @POST("admin/instance/allow") */ + abstract suspend fun adminAllowInstance(form: AdminAllowInstanceParams): Result + + /** @POST("admin/tagline") */ + abstract suspend fun createTagline(form: CreateTagline): Result + + /** @PUT("admin/tagline") */ + abstract suspend fun editTagline(form: EditTagline): Result + + /** @DELETE("admin/tagline") */ + abstract suspend fun deleteTagline(form: DeleteTagline): Result + + /** @GET("admin/tagline/list") */ + abstract suspend fun listTaglines(form: ListTaglines): Result> + + /** @GET("admin/users") */ + abstract suspend fun listUsers(form: AdminListUsers): Result> + + /** @POST("custom_emoji") */ + abstract suspend fun createCustomEmoji(form: CreateCustomEmoji): Result + + /** @PUT("custom_emoji") */ + abstract suspend fun editCustomEmoji(form: EditCustomEmoji): Result + + /** @POST("custom_emoji/delete") */ + abstract suspend fun deleteCustomEmoji(form: DeleteCustomEmoji): Result + + /** @GET("custom_emoji/list") */ + abstract suspend fun listCustomEmojis(form: ListCustomEmojis): Result + + /** @POST("oauth/authenticate") */ + abstract suspend fun authenticateWithOAuth(form: AuthenticateWithOauth): Result + + /** @POST("oauth_provider") */ + abstract suspend fun createOAuthProvider(form: CreateOAuthProvider): Result + + /** @PUT("oauth_provider") */ + abstract suspend fun editOAuthProvider(form: EditOAuthProvider): Result + + /** @DELETE("oauth_provider") */ + abstract suspend fun deleteOAuthProvider(form: DeleteOAuthProvider): Result + + /** @GET("report/list") */ + abstract suspend fun listReports(form: ListReports): Result> + + /** @GET("multi_community") */ + abstract suspend fun getMultiCommunity(form: GetMultiCommunity): Result + + /** @POST("multi_community") */ + abstract suspend fun createMultiCommunity(form: CreateMultiCommunity): Result + + /** @PUT("multi_community") */ + abstract suspend fun editMultiCommunity(form: EditMultiCommunity): Result + + /** @POST("multi_community/entry") */ + abstract suspend fun createMultiCommunityEntry(form: CreateOrDeleteMultiCommunityEntry): Result + + /** @DELETE("multi_community/entry") */ + abstract suspend fun deleteMultiCommunityEntry(form: CreateOrDeleteMultiCommunityEntry): Result + + /** @POST("multi_community/follow") */ + abstract suspend fun followMultiCommunity(form: FollowMultiCommunity): Result + + /** @GET("multi_community/list") */ + abstract suspend fun listMultiCommunities(form: ListMultiCommunities): Result> + + /** @DELETE("image") */ + abstract suspend fun deleteMediaAdmin(form: DeleteImageParams): Result + + /** @GET("image/health") */ + abstract suspend fun imageHealth(): Result + + /** @GET("image/list") */ + abstract suspend fun listMediaAdmin(form: ListMedia): Result> +} + From 4c9677ceb3bb693dcda4f4f1f17a094c0d8c1007 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Sat, 23 May 2026 14:32:42 +0200 Subject: [PATCH 056/110] v1 endpoint tweaks --- .../lemmyapi/LemmyApiBaseController.kt | 63 ++++++++++++++++++- .../lemmyapi/datatypes/NotificationData.kt | 28 +-------- .../it/vercruysse/lemmyapi/utils/Ktor.kt | 24 +++++++ .../lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt | 20 +++++- .../lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt | 26 +++++++- .../lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt | 26 +++++++- .../lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt | 26 +++++++- .../lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt | 26 +++++++- .../lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt | 26 +++++++- .../lemmyapi/v1/x0/x0/LemmyApiController.kt | 39 +++++++++--- .../lemmyapi/v1/x0/x0/LemmyApiRouter.kt | 23 ++++++- 11 files changed, 270 insertions(+), 57 deletions(-) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt index 6ac61f1b..45376c12 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt @@ -6,6 +6,8 @@ import it.vercruysse.lemmyapi.datatypes.* import it.vercruysse.lemmyapi.dto.ExportUserSettingsResponse import it.vercruysse.lemmyapi.dto.ImportUserSettings +// TODO: update these descriptions + abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version, baseUrl: String, override var auth: String?) : LemmyApiBase( client, @@ -193,7 +195,14 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version * * @POST("post/mark_as_read") */ - abstract suspend fun markManyPostAsRead(form: MarkManyPostsAsRead): Result + abstract suspend fun markPostAsRead(form: MarkPostAsRead): Result + + /** + * Mark multiple posts as read. + * + * @POST("post/mark_as_read") + */ + abstract suspend fun markManyPostsAsRead(form: MarkManyPostsAsRead): Result /** * A moderator can lock a post ( IE disable new comments ). @@ -600,7 +609,7 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version * * @POST("user/totp/update") */ - abstract suspend fun updateTotp(form: EditTotp): Result + abstract suspend fun editTotp(form: EditTotp): Result /** * Export a backup of your user settings, including your saved content, @@ -666,6 +675,56 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version */ abstract suspend fun listMedia(form: ListMedia): Result> + // TODO: implement later + /** + * Upload a generic image. + * + * @POST("image") + */ + open suspend fun uploadImage(image: ByteArray): Result = notSupported() + + /** + * Upload a user avatar image. + * + * @POST("account/avatar") + */ + open suspend fun uploadUserAvatar(image: ByteArray): Result = notSupported() + + /** + * Upload a user banner image. + * + * @POST("account/banner") + */ + open suspend fun uploadUserBanner(image: ByteArray): Result = notSupported() + + /** + * Upload a site banner image. + * + * @POST("site/banner") + */ + open suspend fun uploadSiteBanner(image: ByteArray): Result = notSupported() + + /** + * Upload a site icon image. + * + * @POST("site/icon") + */ + open suspend fun uploadSiteIcon(image: ByteArray): Result = notSupported() + + /** + * Upload a community banner image. + * + * @POST("community/banner") + */ + open suspend fun uploadCommunityBanner(image: ByteArray, form: CommunityIdQuery): Result = notSupported() + + /** + * Upload a community icon image. + * + * @POST("community/icon") + */ + open suspend fun uploadCommunityIcon(image: ByteArray, form: CommunityIdQuery): Result = notSupported() + /** * List all the media known to your instance. * diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/NotificationData.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/NotificationData.kt index f379d233..30b9e4b4 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/NotificationData.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/NotificationData.kt @@ -8,37 +8,11 @@ import kotlinx.serialization.SerialName import kotlinx.serialization.Serializable import kotlinx.serialization.json.JsonClassDiscriminator -// TODO: uses custom serializers, idk if better solution, also maybe move to combined types @CommonParcelize -//@Serializable(with = NotificationDataSerializer::class) @OptIn(ExperimentalSerializationApi::class) @JsonClassDiscriminator("type_") -sealed interface NotificationData : DatatypeRoot { -// @CommonParcelize -// @Serializable -// data class Post( -// val post: PostView -// ) : NotificationData() -// -// @CommonParcelize -// @Serializable -// data class Comment( -// val comment: CommentView -// ) : NotificationData() -// -// @CommonParcelize -// @Serializable -// data class PrivateMessage( -// val private_message: PrivateMessageView -// ) : NotificationData() -// -// @CommonParcelize -// @Serializable -// data class ModAction( -// val mod_action: ModlogView -// ) : NotificationData() -} +sealed interface NotificationData : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/utils/Ktor.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/utils/Ktor.kt index 82d8409b..e6daef64 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/utils/Ktor.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/utils/Ktor.kt @@ -3,6 +3,7 @@ package it.vercruysse.lemmyapi.utils import io.ktor.client.* import io.ktor.client.call.* import io.ktor.client.request.* +import io.ktor.client.request.forms.* import io.ktor.http.* suspend inline fun HttpClient.deleteResult( @@ -45,6 +46,29 @@ suspend inline fun HttpClient.putResult( body: T, ): Result = this.putResult(urlString) { setJsonBody(body) } +suspend inline fun HttpClient.postUploadResult( + urlString: String, + image: ByteArray, + builder: HttpRequestBuilder.() -> Unit = {}, +): Result = runCatching { + post(urlString) { + setBody( + MultiPartFormDataContent( + formData { + append( + "image", // TODO: this might need to be images[] + image, + Headers.build { + append(HttpHeaders.ContentDisposition, "filename=\"image.jpg\"") + }, + ) + }, + ), + ) + builder() + }.body() +} + inline fun HttpRequestBuilder.addQueryParams(form: T) { toMap(form).forEach { (key, value) -> when (value) { diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt index 6d447ab8..20ec5330 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt @@ -287,11 +287,25 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba /** * Mark a post as read. * + * @POST("post/mark_as_read") + */ + override suspend fun markPostAsRead(form: it.vercruysse.lemmyapi.datatypes.MarkPostAsRead): Result = + apiV18.markPostAsRead( + MarkPostAsRead( + post_id = form.post_id, + read = form.read, + auth = "" + auth, + ), + ).map(transformer::toUni) + + /** + * Mark multiple posts as read. + * * Maps v19 logic * * @POST("post/mark_as_read") */ - override suspend fun markManyPostAsRead(form: it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead): Result = form.post_ids + override suspend fun markManyPostsAsRead(form: it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead): Result = form.post_ids .map { MarkPostAsRead(post_id = it, read = form.read, auth = "" + auth) } .map { apiV18.markPostAsRead(it) } .map { it.map { } } @@ -915,7 +929,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @POST("user/totp/update") */ - override suspend fun updateTotp( + override suspend fun editTotp( form: it.vercruysse.lemmyapi.datatypes.EditTotp, ): Result = notSupported() @@ -1047,4 +1061,4 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba } } override suspend fun adminListUsers(form: it.vercruysse.lemmyapi.datatypes.AdminListUsers): Result> = notSupported() -} \ No newline at end of file +} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt index 9b8d71fa..0c9f8907 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt @@ -265,7 +265,27 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @POST("post/mark_as_read") */ - override suspend fun markManyPostAsRead(form: it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead): Result = + override suspend fun markPostAsRead(form: it.vercruysse.lemmyapi.datatypes.MarkPostAsRead): Result = + api.markPostAsRead( + it.vercruysse.lemmyapi.v0.x19.x0.datatypes.MarkPostAsRead( + post_ids = listOf(form.post_id), + read = form.read, + ), + ).fold( + onSuccess = { _ -> + api.getPost(it.vercruysse.lemmyapi.v0.x19.x0.datatypes.GetPost(id = form.post_id)) + .map(transformer::toUni) + .map { post -> it.vercruysse.lemmyapi.datatypes.PostResponse(post_view = post.post_view) } + }, + onFailure = { Result.failure(it) }, + ) + + /** + * Mark multiple posts as read. + * + * @POST("post/mark_as_read") + */ + override suspend fun markManyPostsAsRead(form: it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead): Result = api.markPostAsRead(transformer.fromUni(form)) /** @@ -863,7 +883,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @POST("user/totp/update") */ - override suspend fun updateTotp( + override suspend fun editTotp( form: it.vercruysse.lemmyapi.datatypes.EditTotp, ): Result = api.updateTotp(transformer.fromUni(form)).map(transformer::toUni) @@ -1001,4 +1021,4 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba } } override suspend fun adminListUsers(form: it.vercruysse.lemmyapi.datatypes.AdminListUsers): Result> = notSupported() -} \ No newline at end of file +} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt index 135c3e08..cc7a4557 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt @@ -265,7 +265,27 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @POST("post/mark_as_read") */ - override suspend fun markManyPostAsRead(form: it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead): Result = + override suspend fun markPostAsRead(form: it.vercruysse.lemmyapi.datatypes.MarkPostAsRead): Result = + api.markPostAsRead( + it.vercruysse.lemmyapi.v0.x19.x11.datatypes.MarkPostAsRead( + post_ids = listOf(form.post_id), + read = form.read, + ), + ).fold( + onSuccess = { _ -> + api.getPost(it.vercruysse.lemmyapi.v0.x19.x11.datatypes.GetPost(id = form.post_id)) + .map(transformer::toUni) + .map { post -> it.vercruysse.lemmyapi.datatypes.PostResponse(post_view = post.post_view) } + }, + onFailure = { Result.failure(it) }, + ) + + /** + * Mark multiple posts as read. + * + * @POST("post/mark_as_read") + */ + override suspend fun markManyPostsAsRead(form: it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead): Result = api.markPostAsRead(transformer.fromUni(form)) /** @@ -864,7 +884,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @POST("user/totp/update") */ - override suspend fun updateTotp( + override suspend fun editTotp( form: it.vercruysse.lemmyapi.datatypes.EditTotp, ): Result = api.updateTotp(transformer.fromUni(form)).map(transformer::toUni) @@ -1001,4 +1021,4 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba } } override suspend fun adminListUsers(form: it.vercruysse.lemmyapi.datatypes.AdminListUsers): Result> = notSupported() -} \ No newline at end of file +} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt index 4494135b..6a88f522 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt @@ -266,7 +266,27 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @POST("post/mark_as_read") */ - override suspend fun markManyPostAsRead(form: it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead): Result = + override suspend fun markPostAsRead(form: it.vercruysse.lemmyapi.datatypes.MarkPostAsRead): Result = + api.markPostAsRead( + it.vercruysse.lemmyapi.v0.x19.x3.datatypes.MarkPostAsRead( + post_ids = listOf(form.post_id), + read = form.read, + ), + ).fold( + onSuccess = { _ -> + api.getPost(it.vercruysse.lemmyapi.v0.x19.x3.datatypes.GetPost(id = form.post_id)) + .map(transformer::toUni) + .map { post -> it.vercruysse.lemmyapi.datatypes.PostResponse(post_view = post.post_view) } + }, + onFailure = { Result.failure(it) }, + ) + + /** + * Mark multiple posts as read. + * + * @POST("post/mark_as_read") + */ + override suspend fun markManyPostsAsRead(form: it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead): Result = api.markPostAsRead(transformer.fromUni(form)) /** @@ -864,7 +884,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @POST("user/totp/update") */ - override suspend fun updateTotp( + override suspend fun editTotp( form: it.vercruysse.lemmyapi.datatypes.EditTotp, ): Result = api.updateTotp(transformer.fromUni(form)).map(transformer::toUni) @@ -1000,4 +1020,4 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba } } override suspend fun adminListUsers(form: it.vercruysse.lemmyapi.datatypes.AdminListUsers): Result> = notSupported() -} \ No newline at end of file +} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt index 3244371e..8e749ef8 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt @@ -265,7 +265,27 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @POST("post/mark_as_read") */ - override suspend fun markManyPostAsRead(form: it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead): Result = + override suspend fun markPostAsRead(form: it.vercruysse.lemmyapi.datatypes.MarkPostAsRead): Result = + api.markPostAsRead( + it.vercruysse.lemmyapi.v0.x19.x4.datatypes.MarkPostAsRead( + post_ids = listOf(form.post_id), + read = form.read, + ), + ).fold( + onSuccess = { _ -> + api.getPost(it.vercruysse.lemmyapi.v0.x19.x4.datatypes.GetPost(id = form.post_id)) + .map(transformer::toUni) + .map { post -> it.vercruysse.lemmyapi.datatypes.PostResponse(post_view = post.post_view) } + }, + onFailure = { Result.failure(it) }, + ) + + /** + * Mark multiple posts as read. + * + * @POST("post/mark_as_read") + */ + override suspend fun markManyPostsAsRead(form: it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead): Result = api.markPostAsRead(transformer.fromUni(form)) /** @@ -862,7 +882,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @POST("user/totp/update") */ - override suspend fun updateTotp( + override suspend fun editTotp( form: it.vercruysse.lemmyapi.datatypes.EditTotp, ): Result = api.updateTotp(transformer.fromUni(form)).map(transformer::toUni) @@ -998,4 +1018,4 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba } } override suspend fun adminListUsers(form: it.vercruysse.lemmyapi.datatypes.AdminListUsers): Result> = notSupported() -} \ No newline at end of file +} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt index d2756dac..9fdf6427 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt @@ -266,7 +266,27 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @POST("post/mark_as_read") */ - override suspend fun markManyPostAsRead(form: it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead): Result = + override suspend fun markPostAsRead(form: it.vercruysse.lemmyapi.datatypes.MarkPostAsRead): Result = + api.markPostAsRead( + it.vercruysse.lemmyapi.v0.x19.x6.datatypes.MarkPostAsRead( + post_ids = listOf(form.post_id), + read = form.read, + ), + ).fold( + onSuccess = { _ -> + api.getPost(it.vercruysse.lemmyapi.v0.x19.x6.datatypes.GetPost(id = form.post_id)) + .map(transformer::toUni) + .map { post -> it.vercruysse.lemmyapi.datatypes.PostResponse(post_view = post.post_view) } + }, + onFailure = { Result.failure(it) }, + ) + + /** + * Mark multiple posts as read. + * + * @POST("post/mark_as_read") + */ + override suspend fun markManyPostsAsRead(form: it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead): Result = api.markPostAsRead(transformer.fromUni(form)) /** @@ -857,7 +877,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @POST("user/totp/update") */ - override suspend fun updateTotp( + override suspend fun editTotp( form: it.vercruysse.lemmyapi.datatypes.EditTotp, ): Result = api.updateTotp(transformer.fromUni(form)).map(transformer::toUni) @@ -994,4 +1014,4 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba } } override suspend fun adminListUsers(form: it.vercruysse.lemmyapi.datatypes.AdminListUsers): Result> = notSupported() -} \ No newline at end of file +} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiController.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiController.kt index b3eb40d5..4e1a257e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiController.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiController.kt @@ -3,9 +3,11 @@ package it.vercruysse.lemmyapi.v1.x0.x0 import io.ktor.client.HttpClient import it.vercruysse.lemmyapi.dto.ExportUserSettingsResponse import it.vercruysse.lemmyapi.dto.ImportUserSettings +import it.vercruysse.lemmyapi.utils.addQueryParams import it.vercruysse.lemmyapi.utils.deleteResult import it.vercruysse.lemmyapi.utils.getResult import it.vercruysse.lemmyapi.utils.postResult +import it.vercruysse.lemmyapi.utils.postUploadResult import it.vercruysse.lemmyapi.utils.putResult import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.* @@ -516,7 +518,7 @@ internal class LemmyApiController(client: HttpClient, auth: String?) : client.getResult("admin/tagline/list", form) /** @GET("admin/users") */ - override suspend fun listUsers(form: AdminListUsers): Result> = + override suspend fun adminListUsers(form: AdminListUsers): Result> = client.getResult("admin/users", form) /** @POST("custom_emoji") */ @@ -595,13 +597,32 @@ internal class LemmyApiController(client: HttpClient, auth: String?) : override suspend fun listMediaAdmin(form: ListMedia): Result> = client.getResult("image/list", form) - // TODO: - //uploadCommunityBanner,DELETE,CommunityIdQuery,Unit - //uploadCommunityIcon,DELETE,CommunityIdQuery,Unit - //uploadImage,GET,object,Unit - //uploadSiteBanner,DELETE,object,Unit - //uploadSiteIcon,DELETE,object,Unit - //uploadUserAvatar,DELETE,object,Unit - //uploadUserBanner,DELETE,object,Unit + /** @POST("community/banner") */ + override suspend fun uploadCommunityBanner(image: ByteArray, form: CommunityIdQuery): Result = + client.postUploadResult("community/banner", image) { addQueryParams(form) } + + /** @POST("community/icon") */ + override suspend fun uploadCommunityIcon(image: ByteArray, form: CommunityIdQuery): Result = + client.postUploadResult("community/icon", image) { addQueryParams(form) } + + /** @POST("image") */ + override suspend fun uploadImage(image: ByteArray): Result = + client.postUploadResult("image", image) + + /** @POST("site/banner") */ + override suspend fun uploadSiteBanner(image: ByteArray): Result = + client.postUploadResult("site/banner", image) + + /** @POST("site/icon") */ + override suspend fun uploadSiteIcon(image: ByteArray): Result = + client.postUploadResult("site/icon", image) + + /** @POST("account/avatar") */ + override suspend fun uploadUserAvatar(image: ByteArray): Result = + client.postUploadResult("account/avatar", image) + + /** @POST("account/banner") */ + override suspend fun uploadUserBanner(image: ByteArray): Result = + client.postUploadResult("account/banner", image) } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiRouter.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiRouter.kt index 4992e3ac..353d1215 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiRouter.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiRouter.kt @@ -384,7 +384,7 @@ internal abstract class LemmyApiRouter(client: HttpClient, auth: String?) : Auth abstract suspend fun listTaglines(form: ListTaglines): Result> /** @GET("admin/users") */ - abstract suspend fun listUsers(form: AdminListUsers): Result> + abstract suspend fun adminListUsers(form: AdminListUsers): Result> /** @POST("custom_emoji") */ abstract suspend fun createCustomEmoji(form: CreateCustomEmoji): Result @@ -442,5 +442,26 @@ internal abstract class LemmyApiRouter(client: HttpClient, auth: String?) : Auth /** @GET("image/list") */ abstract suspend fun listMediaAdmin(form: ListMedia): Result> + + /** @POST("community/banner") */ + abstract suspend fun uploadCommunityBanner(image: ByteArray, form: CommunityIdQuery): Result + + /** @POST("community/icon") */ + abstract suspend fun uploadCommunityIcon(image: ByteArray, form: CommunityIdQuery): Result + + /** @POST("image") */ + abstract suspend fun uploadImage(image: ByteArray): Result + + /** @POST("site/banner") */ + abstract suspend fun uploadSiteBanner(image: ByteArray): Result + + /** @POST("site/icon") */ + abstract suspend fun uploadSiteIcon(image: ByteArray): Result + + /** @POST("account/avatar") */ + abstract suspend fun uploadUserAvatar(image: ByteArray): Result + + /** @POST("account/banner") */ + abstract suspend fun uploadUserBanner(image: ByteArray): Result } From ee53202fca7215d028986e918dffe1b02259f701 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Sat, 23 May 2026 15:07:23 +0200 Subject: [PATCH 057/110] v1 endpoint tweaks --- .../lemmyapi/LemmyApiBaseController.kt | 24 ++++++++++++------- .../lemmyapi/datatypes/NotificationData.kt | 3 --- .../lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt | 4 ++-- .../lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt | 4 ++-- .../lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt | 4 ++-- .../lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt | 4 ++-- .../lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt | 4 ++-- .../lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt | 4 ++-- 8 files changed, 28 insertions(+), 23 deletions(-) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt index 45376c12..4f576f04 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt @@ -589,7 +589,7 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version * * @POST("site/block") */ - abstract suspend fun blockInstance(form: UserBlockInstanceCommunitiesParams): Result + abstract suspend fun userBlockInstanceCommunities(form: UserBlockInstanceCommunitiesParams): Result /** * Generate a TOTP / two-factor secret. @@ -676,12 +676,6 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version abstract suspend fun listMedia(form: ListMedia): Result> // TODO: implement later - /** - * Upload a generic image. - * - * @POST("image") - */ - open suspend fun uploadImage(image: ByteArray): Result = notSupported() /** * Upload a user avatar image. @@ -730,7 +724,7 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version * * @GET("admin/list_all_media") */ - abstract suspend fun listAllMedia(form: ListMedia): Result> + abstract suspend fun listMediaAdmin(form: ListMedia): Result> /** * Hide a post from list views. @@ -752,4 +746,18 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version * @GET("admin/users") */ abstract suspend fun adminListUsers(form: AdminListUsers): Result> + + /** + * Upload a generic image. + * + * @POST("image") + */ + open suspend fun uploadImage(image: ByteArray): Result = notSupported() + + /** + * Delete media for your account. + * + * @DELETE("account/media") + */ + open suspend fun deleteMedia(form: DeleteImageParams): Result = notSupported() } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/NotificationData.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/NotificationData.kt index 30b9e4b4..d7548d91 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/NotificationData.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/NotificationData.kt @@ -2,10 +2,7 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot -//import it.vercruysse.lemmyapi.serializers.NotificationDataSerializer import kotlinx.serialization.ExperimentalSerializationApi -import kotlinx.serialization.SerialName -import kotlinx.serialization.Serializable import kotlinx.serialization.json.JsonClassDiscriminator diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt index 20ec5330..a7cfff8d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt @@ -905,7 +905,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @POST("site/block") */ - override suspend fun blockInstance( + override suspend fun userBlockInstanceCommunities( form: it.vercruysse.lemmyapi.datatypes.UserBlockInstanceCommunitiesParams, ): Result = notSupported() @@ -1013,7 +1013,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @GET("admin/list_all_media") */ - override suspend fun listAllMedia( + override suspend fun listMediaAdmin( form: it.vercruysse.lemmyapi.datatypes.ListMedia, ): Result> = notSupported() diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt index 0c9f8907..11b491ec 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt @@ -859,7 +859,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @POST("site/block") */ - override suspend fun blockInstance( + override suspend fun userBlockInstanceCommunities( form: it.vercruysse.lemmyapi.datatypes.UserBlockInstanceCommunitiesParams, ): Result = api.blockInstance(transformer.fromUni(form)) @@ -962,7 +962,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @GET("admin/list_all_media") */ - override suspend fun listAllMedia( + override suspend fun listMediaAdmin( form: it.vercruysse.lemmyapi.datatypes.ListMedia, ): Result> = notSupported() diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt index cc7a4557..d1e27fd7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt @@ -860,7 +860,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @POST("site/block") */ - override suspend fun blockInstance( + override suspend fun userBlockInstanceCommunities( form: it.vercruysse.lemmyapi.datatypes.UserBlockInstanceCommunitiesParams, ): Result = api.blockInstance(transformer.fromUni(form)) @@ -962,7 +962,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @GET("admin/list_all_media") */ - override suspend fun listAllMedia( + override suspend fun listMediaAdmin( form: it.vercruysse.lemmyapi.datatypes.ListMedia, ): Result> = notSupported() diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt index 6a88f522..81c6a96c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt @@ -860,7 +860,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @POST("site/block") */ - override suspend fun blockInstance( + override suspend fun userBlockInstanceCommunities( form: it.vercruysse.lemmyapi.datatypes.UserBlockInstanceCommunitiesParams, ): Result = api.blockInstance(transformer.fromUni(form)) @@ -962,7 +962,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @GET("admin/list_all_media") */ - override suspend fun listAllMedia( + override suspend fun listMediaAdmin( form: it.vercruysse.lemmyapi.datatypes.ListMedia, ): Result> = notSupported() diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt index 8e749ef8..4c39a865 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt @@ -858,7 +858,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @POST("site/block") */ - override suspend fun blockInstance( + override suspend fun userBlockInstanceCommunities( form: it.vercruysse.lemmyapi.datatypes.UserBlockInstanceCommunitiesParams, ): Result = api.blockInstance(transformer.fromUni(form)) @@ -960,7 +960,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @GET("admin/list_all_media") */ - override suspend fun listAllMedia( + override suspend fun listMediaAdmin( form: it.vercruysse.lemmyapi.datatypes.ListMedia, ): Result> = notSupported() diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt index 9fdf6427..4a3dc1c3 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt @@ -853,7 +853,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @POST("site/block") */ - override suspend fun blockInstance( + override suspend fun userBlockInstanceCommunities( form: it.vercruysse.lemmyapi.datatypes.UserBlockInstanceCommunitiesParams, ): Result = api.blockInstance(transformer.fromUni(form)) @@ -955,7 +955,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @GET("admin/list_all_media") */ - override suspend fun listAllMedia( + override suspend fun listMediaAdmin( form: it.vercruysse.lemmyapi.datatypes.ListMedia, ): Result> = notSupported() From 1585033113218e133d680c51eb477a22b16ec23b Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Sat, 23 May 2026 17:17:03 +0200 Subject: [PATCH 058/110] Pictrs changes --- ACTIVE_CHANGES.md | 12 ++++ .../it/vercruysse/lemmyapi/LemmyApiBase.kt | 4 +- .../lemmyapi/LemmyApiBaseController.kt | 4 +- .../lemmyapi/datatypes/UploadImageResponse.kt | 1 + .../vercruysse/lemmyapi/pictrs/PictrsAPI.kt | 30 -------- .../lemmyapi/pictrs/PictrsService.kt | 72 ++++++++++++------- .../lemmyapi/pictrs/datatypes/DeleteImage.kt | 9 --- .../lemmyapi/pictrs/datatypes/ImageFile.kt | 14 ---- .../lemmyapi/pictrs/datatypes/UploadImage.kt | 8 --- .../pictrs/datatypes/UploadImageResponse.kt | 12 ---- .../lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt | 18 +++-- .../lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt | 10 +++ .../lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt | 10 +++ .../lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt | 10 +++ .../lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt | 10 +++ .../lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt | 10 +++ 16 files changed, 125 insertions(+), 109 deletions(-) delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/pictrs/PictrsAPI.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/pictrs/datatypes/DeleteImage.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/pictrs/datatypes/ImageFile.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/pictrs/datatypes/UploadImage.kt delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/pictrs/datatypes/UploadImageResponse.kt diff --git a/ACTIVE_CHANGES.md b/ACTIVE_CHANGES.md index 2f378942..5adebbda 100644 --- a/ACTIVE_CHANGES.md +++ b/ACTIVE_CHANGES.md @@ -3,6 +3,18 @@ This document lists the changes that you will need to actively handle, through feature flags. +## V1 + +### Image upload / delete compatibility + +- Consumers should use `LemmyApiBaseController.uploadImage()` and `LemmyApiBaseController.deleteMedia()`. +- Pre-1.0 Lemmy instances are now wired internally to legacy pictrs endpoints; callers should not use pictrs APIs directly anymore. +- `UploadImageResponse` now includes `delete_filename`. +- Always pass `uploadImage(...).delete_filename` into `deleteMedia(DeleteImageParams(...))`. +- On Lemmy `1.x`, `delete_filename == filename`. +- On pre-`1.0`, `delete_filename` contains the full legacy pictrs delete path, like `/pictrs/image/delete/{delete_token}/{file}`. + + ## 0.19.11 - Added `last_donation_notification` field to LocalUser diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBase.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBase.kt index eee957d7..7745e989 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBase.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBase.kt @@ -6,11 +6,9 @@ import it.vercruysse.lemmyapi.dto.NodeInfo import it.vercruysse.lemmyapi.enums.VersionTracker import it.vercruysse.lemmyapi.dto.getSupportedEntries import it.vercruysse.lemmyapi.exception.NotSupportedException -import it.vercruysse.lemmyapi.pictrs.PictrsService // Wanted to keep this as an interface, but interfaces can't keep state -abstract class LemmyApiBase(httpClient: HttpClient, val version: Version, val baseUrl: String, override var auth: String?) : - PictrsService(httpClient, auth), +abstract class LemmyApiBase(httpClient: HttpClient, val version: Version, val baseUrl: String, open var auth: String?) : OldRoutes { @Suppress("PropertyName") val FF = FeatureFlags(version) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt index 4f576f04..5534948f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt @@ -752,12 +752,12 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version * * @POST("image") */ - open suspend fun uploadImage(image: ByteArray): Result = notSupported() + abstract suspend fun uploadImage(image: ByteArray): Result /** * Delete media for your account. * * @DELETE("account/media") */ - open suspend fun deleteMedia(form: DeleteImageParams): Result = notSupported() + abstract suspend fun deleteMedia(form: DeleteImageParams): Result } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UploadImageResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UploadImageResponse.kt index 857c78e2..f75f2559 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UploadImageResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UploadImageResponse.kt @@ -9,4 +9,5 @@ import kotlinx.serialization.Serializable data class UploadImageResponse( val image_url: String, val filename: String, + val delete_filename: String = filename, ): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/pictrs/PictrsAPI.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/pictrs/PictrsAPI.kt deleted file mode 100644 index d60d724f..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/pictrs/PictrsAPI.kt +++ /dev/null @@ -1,30 +0,0 @@ -package it.vercruysse.lemmyapi.pictrs - -import it.vercruysse.lemmyapi.pictrs.datatypes.DeleteImage -import it.vercruysse.lemmyapi.pictrs.datatypes.UploadImage -import it.vercruysse.lemmyapi.pictrs.datatypes.UploadImageResponse - -interface PictrsAPI { - var auth: String? - - /** - * Upload an image to the server. - * - * @POST(/pictrs/image) - */ - suspend fun uploadImage(form: UploadImage): Result - - /** - * Delete an image from the server. - * - * @POST(/pictrs/image/delete) - */ - suspend fun deleteImage(form: DeleteImage) = deleteImage("/pictrs/image/delete/${form.delete_token}/${form.filename}") - - /** - * Delete an image from the server. - * - * @POST(/pictrs/image/delete) - */ - suspend fun deleteImage(relativeUrl: String): Result -} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/pictrs/PictrsService.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/pictrs/PictrsService.kt index 2d9a2051..d71dbc58 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/pictrs/PictrsService.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/pictrs/PictrsService.kt @@ -5,57 +5,75 @@ import io.ktor.client.call.* import io.ktor.client.request.* import io.ktor.client.request.forms.* import io.ktor.http.* -import it.vercruysse.lemmyapi.pictrs.datatypes.UploadImage -import it.vercruysse.lemmyapi.pictrs.datatypes.UploadImageResponse +import it.vercruysse.lemmyapi.datatypes.DeleteImageParams +import it.vercruysse.lemmyapi.datatypes.UploadImageResponse +import kotlinx.serialization.Serializable + +open class PictrsService(private val client: HttpClient, var auth: String?) { -open class PictrsService(private val client: HttpClient, override var auth: String?) : PictrsAPI { /** * Upload an image to the server. * * @POST(/pictrs/image) */ - override suspend fun uploadImage(form: UploadImage): Result = runCatching { + open suspend fun uploadImage(image: ByteArray): Result = runCatching { val resp = client.post("/pictrs/image") { auth?.let { cookie("jwt", it) } - setBody(createFormData(form.images)) + setBody(createFormData(image)) } - val imageResp = resp.body() + val imageResp = resp.body() + require(imageResp.msg == "ok") { "Pictrs upload failed: ${imageResp.msg}" } - imageResp.copy( - files = imageResp.files.map { - it.copy( - url = "${resp.call.request.url}/${it.file}", - delete_url = "${resp.call.request.url}/delete/${it.delete_token}/${it.file}", - ) - }, + val file = imageResp.files.firstOrNull() + ?: throw IllegalStateException("Pictrs upload response did not contain any files") + + UploadImageResponse( + image_url = "${resp.call.request.url}/${file.file}", + filename = file.file, + // Pre-v1 delete route needs the full relative pictrs delete path. + delete_filename = "/pictrs/image/delete/${file.delete_token}/${file.file}", ) } /** * Delete an image from the server. * - * @POST(/pictrs/image/delete) + * @GET(/pictrs/image/delete/{delete_token}/{file}) */ - override suspend fun deleteImage(relativeUrl: String): Result = runCatching { - client.get(relativeUrl) { + open suspend fun deleteMedia(form: DeleteImageParams): Result = runCatching { + require(form.filename.startsWith("/pictrs/image/delete/")) { + "For pre-v1 Lemmy, deleteMedia filename must be /pictrs/image/delete/{delete_token}/{file}" + } + + client.get(form.filename) { auth?.let { cookie("jwt", it) } }.body() } - private fun createFormData(images: List): MultiPartFormDataContent = + private fun createFormData(image: ByteArray): MultiPartFormDataContent = MultiPartFormDataContent( formData { - for (image in images) { - append( - "images[]", - image, - Headers.build { - // This is somehow needed, but it doesn't matter what you send - append(HttpHeaders.ContentDisposition, "filename=\"test.jpg\"") - }, - ) - } + append( + "images[]", + image, + Headers.build { + // Pictrs expects a file-like part with a content disposition. + append(HttpHeaders.ContentDisposition, "filename=\"image.jpg\"") + }, + ) }, ) + + @Serializable + private data class PictrsUploadImageResponse( + val msg: String, + val files: List = listOf(), + ) + + @Serializable + private data class PictrsImageFile( + val file: String, + val delete_token: String, + ) } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/pictrs/datatypes/DeleteImage.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/pictrs/datatypes/DeleteImage.kt deleted file mode 100644 index 7d1fcdc9..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/pictrs/datatypes/DeleteImage.kt +++ /dev/null @@ -1,9 +0,0 @@ -package it.vercruysse.lemmyapi.pictrs.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -data class DeleteImage( - val delete_token: String, - val filename: String, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/pictrs/datatypes/ImageFile.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/pictrs/datatypes/ImageFile.kt deleted file mode 100644 index 440387f5..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/pictrs/datatypes/ImageFile.kt +++ /dev/null @@ -1,14 +0,0 @@ -package it.vercruysse.lemmyapi.pictrs.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -data class ImageFile( - val file: String, - val delete_token: String, - /** - * Set manually based on the above info, for convenience - */ - val url: String? = null, - val delete_url: String? = null, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/pictrs/datatypes/UploadImage.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/pictrs/datatypes/UploadImage.kt deleted file mode 100644 index 507f1f11..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/pictrs/datatypes/UploadImage.kt +++ /dev/null @@ -1,8 +0,0 @@ -package it.vercruysse.lemmyapi.pictrs.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -data class UploadImage( - val images: List, -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/pictrs/datatypes/UploadImageResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/pictrs/datatypes/UploadImageResponse.kt deleted file mode 100644 index f7114d87..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/pictrs/datatypes/UploadImageResponse.kt +++ /dev/null @@ -1,12 +0,0 @@ -package it.vercruysse.lemmyapi.pictrs.datatypes - -import kotlinx.serialization.Serializable - -@Serializable -data class UploadImageResponse( - /** - * "ok" if good includes files, else error message - */ - val msg: String, - val files: List = listOf(), -) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt index a7cfff8d..138c7142 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt @@ -14,6 +14,7 @@ import it.vercruysse.lemmyapi.dto.ExportUserSettingsResponse import it.vercruysse.lemmyapi.dto.ImportUserSettings import it.vercruysse.lemmyapi.enums.NotificationDataType import it.vercruysse.lemmyapi.enums.NotificationType +import it.vercruysse.lemmyapi.pictrs.PictrsService import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.GetCaptcha import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.GetPersonDetails import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.GetReportCount @@ -25,13 +26,15 @@ import kotlin.map internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, baseUrl: String, auth: String?) : LemmyApiBaseController(client, actualVersion, baseUrl, auth) { private val apiV18 = LemmyApiController(client, actualVersion, baseUrl, auth) + private val pictrsApi = PictrsService(client, auth) private val transformer = Transformer(auth ?: "") - override var auth: String? = auth + override var auth: String? + get() = super.auth set(value) { - transformer.auth = value ?: "" - field = value - apiV18.auth = value // Not sure if this needed + super.auth = value + apiV18.auth = value + pictrsApi.auth = value } // START @@ -1060,5 +1063,12 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba PagedResponse(items = comments + posts) } } + + override suspend fun uploadImage(image: ByteArray): Result = + pictrsApi.uploadImage(image) + + override suspend fun deleteMedia(form: it.vercruysse.lemmyapi.datatypes.DeleteImageParams): Result = + pictrsApi.deleteMedia(form) + override suspend fun adminListUsers(form: it.vercruysse.lemmyapi.datatypes.AdminListUsers): Result> = notSupported() } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt index 11b491ec..6e192908 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt @@ -14,11 +14,13 @@ import it.vercruysse.lemmyapi.dto.ExportUserSettingsResponse import it.vercruysse.lemmyapi.dto.ImportUserSettings import it.vercruysse.lemmyapi.enums.NotificationDataType import it.vercruysse.lemmyapi.enums.NotificationType +import it.vercruysse.lemmyapi.pictrs.PictrsService import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.GetPersonDetails internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, baseUrl: String, auth: String?) : LemmyApiBaseController(client, actualVersion, baseUrl, auth) { private val api = LemmyApiController(client, auth) + private val pictrsApi = PictrsService(client, auth) private val transformer = Transformer() override var auth: String? @@ -26,6 +28,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba set(value) { super.auth = value api.auth = value + pictrsApi.auth = value } /** @@ -1020,5 +1023,12 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba PagedResponse(items = comments + posts) } } + + override suspend fun uploadImage(image: ByteArray): Result = + pictrsApi.uploadImage(image) + + override suspend fun deleteMedia(form: it.vercruysse.lemmyapi.datatypes.DeleteImageParams): Result = + pictrsApi.deleteMedia(form) + override suspend fun adminListUsers(form: it.vercruysse.lemmyapi.datatypes.AdminListUsers): Result> = notSupported() } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt index d1e27fd7..0043f396 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt @@ -14,11 +14,13 @@ import it.vercruysse.lemmyapi.dto.ExportUserSettingsResponse import it.vercruysse.lemmyapi.dto.ImportUserSettings import it.vercruysse.lemmyapi.enums.NotificationDataType import it.vercruysse.lemmyapi.enums.NotificationType +import it.vercruysse.lemmyapi.pictrs.PictrsService import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.GetPersonDetails internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, baseUrl: String, auth: String?) : LemmyApiBaseController(client, actualVersion, baseUrl, auth) { private val api = LemmyApiController(client, auth) + private val pictrsApi = PictrsService(client, auth) private val transformer = Transformer() override var auth: String? @@ -26,6 +28,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba set(value) { super.auth = value api.auth = value + pictrsApi.auth = value } /** @@ -1020,5 +1023,12 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba PagedResponse(items = comments + posts) } } + + override suspend fun uploadImage(image: ByteArray): Result = + pictrsApi.uploadImage(image) + + override suspend fun deleteMedia(form: it.vercruysse.lemmyapi.datatypes.DeleteImageParams): Result = + pictrsApi.deleteMedia(form) + override suspend fun adminListUsers(form: it.vercruysse.lemmyapi.datatypes.AdminListUsers): Result> = notSupported() } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt index 81c6a96c..afbee1f3 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt @@ -14,12 +14,14 @@ import it.vercruysse.lemmyapi.dto.ExportUserSettingsResponse import it.vercruysse.lemmyapi.dto.ImportUserSettings import it.vercruysse.lemmyapi.enums.NotificationDataType import it.vercruysse.lemmyapi.enums.NotificationType +import it.vercruysse.lemmyapi.pictrs.PictrsService import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.GetPersonDetails // Based on tags/0.19.3-alpha.6 internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, baseUrl: String, auth: String?) : LemmyApiBaseController(client, actualVersion, baseUrl, auth) { private val api = LemmyApiController(client, auth) + private val pictrsApi = PictrsService(client, auth) private val transformer = Transformer() override var auth: String? @@ -27,6 +29,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba set(value) { super.auth = value api.auth = value + pictrsApi.auth = value } /** @@ -1019,5 +1022,12 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba PagedResponse(items = comments + posts) } } + + override suspend fun uploadImage(image: ByteArray): Result = + pictrsApi.uploadImage(image) + + override suspend fun deleteMedia(form: it.vercruysse.lemmyapi.datatypes.DeleteImageParams): Result = + pictrsApi.deleteMedia(form) + override suspend fun adminListUsers(form: it.vercruysse.lemmyapi.datatypes.AdminListUsers): Result> = notSupported() } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt index 4c39a865..561a7bbc 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt @@ -14,11 +14,13 @@ import it.vercruysse.lemmyapi.dto.ExportUserSettingsResponse import it.vercruysse.lemmyapi.dto.ImportUserSettings import it.vercruysse.lemmyapi.enums.NotificationDataType import it.vercruysse.lemmyapi.enums.NotificationType +import it.vercruysse.lemmyapi.pictrs.PictrsService import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.GetPersonDetails internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, baseUrl: String, auth: String?) : LemmyApiBaseController(client, actualVersion, baseUrl, auth) { private val api = LemmyApiController(client, auth) + private val pictrsApi = PictrsService(client, auth) private val transformer = Transformer() override var auth: String? @@ -26,6 +28,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba set(value) { super.auth = value api.auth = value + pictrsApi.auth = value } /** @@ -1017,5 +1020,12 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba PagedResponse(items = comments + posts) } } + + override suspend fun uploadImage(image: ByteArray): Result = + pictrsApi.uploadImage(image) + + override suspend fun deleteMedia(form: it.vercruysse.lemmyapi.datatypes.DeleteImageParams): Result = + pictrsApi.deleteMedia(form) + override suspend fun adminListUsers(form: it.vercruysse.lemmyapi.datatypes.AdminListUsers): Result> = notSupported() } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt index 4a3dc1c3..fd1c447c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt @@ -15,11 +15,13 @@ import it.vercruysse.lemmyapi.dto.ExportUserSettingsResponse import it.vercruysse.lemmyapi.dto.ImportUserSettings import it.vercruysse.lemmyapi.enums.NotificationDataType import it.vercruysse.lemmyapi.enums.NotificationType +import it.vercruysse.lemmyapi.pictrs.PictrsService import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.GetPersonDetails internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, baseUrl: String, auth: String?) : LemmyApiBaseController(client, actualVersion, baseUrl, auth) { private val api = LemmyApiController(client, auth) + private val pictrsApi = PictrsService(client, auth) private val transformer = Transformer() override var auth: String? @@ -27,6 +29,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba set(value) { super.auth = value api.auth = value + pictrsApi.auth = value } /** @@ -1013,5 +1016,12 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba PagedResponse(items = comments + posts) } } + + override suspend fun uploadImage(image: ByteArray): Result = + pictrsApi.uploadImage(image) + + override suspend fun deleteMedia(form: it.vercruysse.lemmyapi.datatypes.DeleteImageParams): Result = + pictrsApi.deleteMedia(form) + override suspend fun adminListUsers(form: it.vercruysse.lemmyapi.datatypes.AdminListUsers): Result> = notSupported() } From f86201dd6ac5068059e6d9a8a94acea6be19f211 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Sat, 23 May 2026 19:35:55 +0200 Subject: [PATCH 059/110] Implement image endpoints --- .../it/vercruysse/lemmyapi/FeatureFlags.kt | 2 +- .../kotlin/it/vercruysse/lemmyapi/LemmyApi.kt | 2 +- .../lemmyapi/LemmyApiBaseController.kt | 90 +++++++++++++------ .../vercruysse/lemmyapi/datatypes/EditSite.kt | 2 +- .../lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt | 88 ++++++++++++++++++ .../lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt | 88 ++++++++++++++++++ .../lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt | 88 ++++++++++++++++++ .../lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt | 88 ++++++++++++++++++ .../lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt | 88 ++++++++++++++++++ .../lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt | 88 ++++++++++++++++++ .../lemmyapi/v1/x0/x0/LemmyApiRouter.kt | 48 +++++----- 11 files changed, 621 insertions(+), 51 deletions(-) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/FeatureFlags.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/FeatureFlags.kt index 1f2ba752..ff2079e1 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/FeatureFlags.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/FeatureFlags.kt @@ -18,7 +18,7 @@ class FeatureFlags(val version: Version) { /** * V1 Feature added in 1.0 */ - val v1 = version.withoutSuffixes() >= "1".toVersion() + val v1 = version.withoutSuffixes() >= "1.0.0".toVersion() /** * InstanceBlock Feature added in 0.19 diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApi.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApi.kt index 017dde40..bad00bd2 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApi.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApi.kt @@ -151,5 +151,5 @@ object LemmyApi { } // Good enough approximation for now - private fun getApiVersion(version: io.github.z4kn4fein.semver.Version): String = if (version.major == 0) "V3" else "V4" + private fun getApiVersion(version: io.github.z4kn4fein.semver.Version): String = if (version.major == 0) "v3" else "v4" } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt index 5534948f..2c359f83 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt @@ -675,89 +675,129 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version */ abstract suspend fun listMedia(form: ListMedia): Result> - // TODO: implement later + /** + * List all the media known to your instance. + * + * @GET("admin/list_all_media") + */ + abstract suspend fun listMediaAdmin(form: ListMedia): Result> + + /** + * Hide a post from list views. + * + * @POST("post/hide") + */ + abstract suspend fun hidePost(form: HidePost): Result + + /** + * Get the application a user submitted when they first registered their account + * + * @GET("admin/registration_application") + */ + abstract suspend fun getRegistrationApplication(form: GetRegistrationApplication): Result + + /** + * Get a list of users. + * + * @GET("admin/users") + */ + abstract suspend fun adminListUsers(form: AdminListUsers): Result> + + /** + * Upload a generic image. + * + * @POST("image") + */ + abstract suspend fun uploadImage(image: ByteArray): Result + + /** + * Delete media for your account. + * + * @DELETE("account/media") + */ + abstract suspend fun deleteMedia(form: DeleteImageParams): Result /** * Upload a user avatar image. * * @POST("account/avatar") */ - open suspend fun uploadUserAvatar(image: ByteArray): Result = notSupported() + abstract suspend fun uploadUserAvatar(image: ByteArray): Result /** * Upload a user banner image. * * @POST("account/banner") */ - open suspend fun uploadUserBanner(image: ByteArray): Result = notSupported() + abstract suspend fun uploadUserBanner(image: ByteArray): Result /** * Upload a site banner image. * * @POST("site/banner") */ - open suspend fun uploadSiteBanner(image: ByteArray): Result = notSupported() + abstract suspend fun uploadSiteBanner(image: ByteArray): Result /** * Upload a site icon image. * * @POST("site/icon") */ - open suspend fun uploadSiteIcon(image: ByteArray): Result = notSupported() + abstract suspend fun uploadSiteIcon(image: ByteArray): Result /** * Upload a community banner image. * * @POST("community/banner") */ - open suspend fun uploadCommunityBanner(image: ByteArray, form: CommunityIdQuery): Result = notSupported() + abstract suspend fun uploadCommunityBanner(image: ByteArray, form: CommunityIdQuery): Result /** * Upload a community icon image. * * @POST("community/icon") */ - open suspend fun uploadCommunityIcon(image: ByteArray, form: CommunityIdQuery): Result = notSupported() + abstract suspend fun uploadCommunityIcon(image: ByteArray, form: CommunityIdQuery): Result /** - * List all the media known to your instance. + * Delete a user avatar image. * - * @GET("admin/list_all_media") + * @DELETE("account/avatar") */ - abstract suspend fun listMediaAdmin(form: ListMedia): Result> + abstract suspend fun deleteUserAvatar(): Result /** - * Hide a post from list views. + * Delete a user banner image. * - * @POST("post/hide") + * @DELETE("account/banner") */ - abstract suspend fun hidePost(form: HidePost): Result + abstract suspend fun deleteUserBanner(): Result /** - * Get the application a user submitted when they first registered their account + * Delete a community banner image. * - * @GET("admin/registration_application") + * @DELETE("community/banner") */ - abstract suspend fun getRegistrationApplication(form: GetRegistrationApplication): Result + abstract suspend fun deleteCommunityBanner(form: CommunityIdQuery): Result /** - * Get a list of users. + * Delete a community icon image. * - * @GET("admin/users") + * @DELETE("community/icon") */ - abstract suspend fun adminListUsers(form: AdminListUsers): Result> + abstract suspend fun deleteCommunityIcon(form: CommunityIdQuery): Result /** - * Upload a generic image. + * Delete a site banner image. * - * @POST("image") + * @DELETE("site/banner") */ - abstract suspend fun uploadImage(image: ByteArray): Result + abstract suspend fun deleteSiteBanner(): Result /** - * Delete media for your account. + * Delete a site icon image. * - * @DELETE("account/media") + * @DELETE("site/icon") */ - abstract suspend fun deleteMedia(form: DeleteImageParams): Result + abstract suspend fun deleteSiteIcon(): Result } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt index cbc4fb5d..c02c0dcc 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt @@ -28,7 +28,7 @@ data class EditSite( val default_post_listing_mode: PostListingMode? /* "List" | "Card" | "SmallCard" */ = null, val default_post_sort_type: SortType? /* "Active" | "Hot" | "New" | "Old" | "TopDay" | "TopWeek" | "TopMonth" | "TopYear" | "TopAll" | "MostComments" | "NewComments" | "TopHour" | "TopSixHour" | "TopTwelveHour" | "TopThreeMonths" | "TopSixMonths" | "TopNineMonths" | "Controversial" | "Scaled" */ = null, val default_post_time_range_seconds: Long? = null, - val default_items_per_page: Long, + val default_items_per_page: Long? = null, val default_comment_sort_type: SortType? /* "hot" | "top" | "new" | "old" | "controversial" */ = null, val legal_information: String? = null, val application_email_admins: Boolean? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt index 138c7142..5ef5435b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt @@ -37,6 +37,20 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba pictrsApi.auth = value } + private suspend fun uploadAndApplyImage( + image: ByteArray, + applyImage: suspend (String) -> Result, + ): Result = runCatching { + val uploadResponse = uploadImage(image).getOrThrow() + try { + applyImage(uploadResponse.image_url).getOrThrow() + uploadResponse + } catch (e: Throwable) { + deleteMedia(it.vercruysse.lemmyapi.datatypes.DeleteImageParams(uploadResponse.delete_filename)).getOrNull() + throw e + } + } + // START /** @@ -1067,6 +1081,80 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun uploadImage(image: ByteArray): Result = pictrsApi.uploadImage(image) + override suspend fun uploadCommunityBanner( + image: ByteArray, + form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery, + ): Result = + uploadAndApplyImage(image) { imageUrl -> + editCommunity( + it.vercruysse.lemmyapi.datatypes.EditCommunity( + community_id = form.id, + banner = imageUrl, + ), + ).map {} + } + + override suspend fun uploadCommunityIcon( + image: ByteArray, + form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery, + ): Result = + uploadAndApplyImage(image) { imageUrl -> + editCommunity( + it.vercruysse.lemmyapi.datatypes.EditCommunity( + community_id = form.id, + icon = imageUrl, + ), + ).map {} + } + + override suspend fun uploadSiteBanner(image: ByteArray): Result = + uploadAndApplyImage(image) { imageUrl -> + editSite( + it.vercruysse.lemmyapi.datatypes.EditSite( + banner = imageUrl, + ), + ).map {} + } + + override suspend fun uploadSiteIcon(image: ByteArray): Result = + uploadAndApplyImage(image) { imageUrl -> + editSite( + it.vercruysse.lemmyapi.datatypes.EditSite( + icon = imageUrl, + ), + ).map {} + } + + override suspend fun uploadUserAvatar(image: ByteArray): Result = + uploadAndApplyImage(image) { imageUrl -> + saveUserSettings( + it.vercruysse.lemmyapi.datatypes.SaveUserSettings( + avatar = imageUrl, + ), + ) + } + + override suspend fun uploadUserBanner(image: ByteArray): Result = + uploadAndApplyImage(image) { imageUrl -> + saveUserSettings( + it.vercruysse.lemmyapi.datatypes.SaveUserSettings( + banner = imageUrl, + ), + ) + } + + override suspend fun deleteUserAvatar(): Result = notSupported() + + override suspend fun deleteUserBanner(): Result = notSupported() + + override suspend fun deleteCommunityBanner(form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery): Result = notSupported() + + override suspend fun deleteCommunityIcon(form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery): Result = notSupported() + + override suspend fun deleteSiteBanner(): Result = notSupported() + + override suspend fun deleteSiteIcon(): Result = notSupported() + override suspend fun deleteMedia(form: it.vercruysse.lemmyapi.datatypes.DeleteImageParams): Result = pictrsApi.deleteMedia(form) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt index 6e192908..783b8122 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt @@ -31,6 +31,20 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba pictrsApi.auth = value } + private suspend fun uploadAndApplyImage( + image: ByteArray, + applyImage: suspend (String) -> Result, + ): Result = runCatching { + val uploadResponse = uploadImage(image).getOrThrow() + try { + applyImage(uploadResponse.image_url).getOrThrow() + uploadResponse + } catch (e: Throwable) { + deleteMedia(it.vercruysse.lemmyapi.datatypes.DeleteImageParams(uploadResponse.delete_filename)).getOrNull() + throw e + } + } + /** * Gets the site, and your user data. * @@ -1027,6 +1041,80 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun uploadImage(image: ByteArray): Result = pictrsApi.uploadImage(image) + override suspend fun uploadCommunityBanner( + image: ByteArray, + form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery, + ): Result = + uploadAndApplyImage(image) { imageUrl -> + editCommunity( + it.vercruysse.lemmyapi.datatypes.EditCommunity( + community_id = form.id, + banner = imageUrl, + ), + ).map {} + } + + override suspend fun uploadCommunityIcon( + image: ByteArray, + form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery, + ): Result = + uploadAndApplyImage(image) { imageUrl -> + editCommunity( + it.vercruysse.lemmyapi.datatypes.EditCommunity( + community_id = form.id, + icon = imageUrl, + ), + ).map {} + } + + override suspend fun uploadSiteBanner(image: ByteArray): Result = + uploadAndApplyImage(image) { imageUrl -> + editSite( + it.vercruysse.lemmyapi.datatypes.EditSite( + banner = imageUrl, + ), + ).map {} + } + + override suspend fun uploadSiteIcon(image: ByteArray): Result = + uploadAndApplyImage(image) { imageUrl -> + editSite( + it.vercruysse.lemmyapi.datatypes.EditSite( + icon = imageUrl, + ), + ).map {} + } + + override suspend fun uploadUserAvatar(image: ByteArray): Result = + uploadAndApplyImage(image) { imageUrl -> + saveUserSettings( + it.vercruysse.lemmyapi.datatypes.SaveUserSettings( + avatar = imageUrl, + ), + ) + } + + override suspend fun uploadUserBanner(image: ByteArray): Result = + uploadAndApplyImage(image) { imageUrl -> + saveUserSettings( + it.vercruysse.lemmyapi.datatypes.SaveUserSettings( + banner = imageUrl, + ), + ) + } + + override suspend fun deleteUserAvatar(): Result = notSupported() + + override suspend fun deleteUserBanner(): Result = notSupported() + + override suspend fun deleteCommunityBanner(form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery): Result = notSupported() + + override suspend fun deleteCommunityIcon(form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery): Result = notSupported() + + override suspend fun deleteSiteBanner(): Result = notSupported() + + override suspend fun deleteSiteIcon(): Result = notSupported() + override suspend fun deleteMedia(form: it.vercruysse.lemmyapi.datatypes.DeleteImageParams): Result = pictrsApi.deleteMedia(form) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt index 0043f396..f5029c96 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt @@ -31,6 +31,20 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba pictrsApi.auth = value } + private suspend fun uploadAndApplyImage( + image: ByteArray, + applyImage: suspend (String) -> Result, + ): Result = runCatching { + val uploadResponse = uploadImage(image).getOrThrow() + try { + applyImage(uploadResponse.image_url).getOrThrow() + uploadResponse + } catch (e: Throwable) { + deleteMedia(it.vercruysse.lemmyapi.datatypes.DeleteImageParams(uploadResponse.delete_filename)).getOrNull() + throw e + } + } + /** * Gets the site, and your user data. * @@ -1027,6 +1041,80 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun uploadImage(image: ByteArray): Result = pictrsApi.uploadImage(image) + override suspend fun uploadCommunityBanner( + image: ByteArray, + form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery, + ): Result = + uploadAndApplyImage(image) { imageUrl -> + editCommunity( + it.vercruysse.lemmyapi.datatypes.EditCommunity( + community_id = form.id, + banner = imageUrl, + ), + ).map {} + } + + override suspend fun uploadCommunityIcon( + image: ByteArray, + form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery, + ): Result = + uploadAndApplyImage(image) { imageUrl -> + editCommunity( + it.vercruysse.lemmyapi.datatypes.EditCommunity( + community_id = form.id, + icon = imageUrl, + ), + ).map {} + } + + override suspend fun uploadSiteBanner(image: ByteArray): Result = + uploadAndApplyImage(image) { imageUrl -> + editSite( + it.vercruysse.lemmyapi.datatypes.EditSite( + banner = imageUrl, + ), + ).map {} + } + + override suspend fun uploadSiteIcon(image: ByteArray): Result = + uploadAndApplyImage(image) { imageUrl -> + editSite( + it.vercruysse.lemmyapi.datatypes.EditSite( + icon = imageUrl, + ), + ).map {} + } + + override suspend fun uploadUserAvatar(image: ByteArray): Result = + uploadAndApplyImage(image) { imageUrl -> + saveUserSettings( + it.vercruysse.lemmyapi.datatypes.SaveUserSettings( + avatar = imageUrl, + ), + ) + } + + override suspend fun uploadUserBanner(image: ByteArray): Result = + uploadAndApplyImage(image) { imageUrl -> + saveUserSettings( + it.vercruysse.lemmyapi.datatypes.SaveUserSettings( + banner = imageUrl, + ), + ) + } + + override suspend fun deleteUserAvatar(): Result = notSupported() + + override suspend fun deleteUserBanner(): Result = notSupported() + + override suspend fun deleteCommunityBanner(form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery): Result = notSupported() + + override suspend fun deleteCommunityIcon(form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery): Result = notSupported() + + override suspend fun deleteSiteBanner(): Result = notSupported() + + override suspend fun deleteSiteIcon(): Result = notSupported() + override suspend fun deleteMedia(form: it.vercruysse.lemmyapi.datatypes.DeleteImageParams): Result = pictrsApi.deleteMedia(form) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt index afbee1f3..6176a243 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt @@ -32,6 +32,20 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba pictrsApi.auth = value } + private suspend fun uploadAndApplyImage( + image: ByteArray, + applyImage: suspend (String) -> Result, + ): Result = runCatching { + val uploadResponse = uploadImage(image).getOrThrow() + try { + applyImage(uploadResponse.image_url).getOrThrow() + uploadResponse + } catch (e: Throwable) { + deleteMedia(it.vercruysse.lemmyapi.datatypes.DeleteImageParams(uploadResponse.delete_filename)).getOrNull() + throw e + } + } + /** * Gets the site, and your user data. * @@ -1026,6 +1040,80 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun uploadImage(image: ByteArray): Result = pictrsApi.uploadImage(image) + override suspend fun uploadCommunityBanner( + image: ByteArray, + form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery, + ): Result = + uploadAndApplyImage(image) { imageUrl -> + editCommunity( + it.vercruysse.lemmyapi.datatypes.EditCommunity( + community_id = form.id, + banner = imageUrl, + ), + ).map {} + } + + override suspend fun uploadCommunityIcon( + image: ByteArray, + form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery, + ): Result = + uploadAndApplyImage(image) { imageUrl -> + editCommunity( + it.vercruysse.lemmyapi.datatypes.EditCommunity( + community_id = form.id, + icon = imageUrl, + ), + ).map {} + } + + override suspend fun uploadSiteBanner(image: ByteArray): Result = + uploadAndApplyImage(image) { imageUrl -> + editSite( + it.vercruysse.lemmyapi.datatypes.EditSite( + banner = imageUrl, + ), + ).map {} + } + + override suspend fun uploadSiteIcon(image: ByteArray): Result = + uploadAndApplyImage(image) { imageUrl -> + editSite( + it.vercruysse.lemmyapi.datatypes.EditSite( + icon = imageUrl, + ), + ).map {} + } + + override suspend fun uploadUserAvatar(image: ByteArray): Result = + uploadAndApplyImage(image) { imageUrl -> + saveUserSettings( + it.vercruysse.lemmyapi.datatypes.SaveUserSettings( + avatar = imageUrl, + ), + ) + } + + override suspend fun uploadUserBanner(image: ByteArray): Result = + uploadAndApplyImage(image) { imageUrl -> + saveUserSettings( + it.vercruysse.lemmyapi.datatypes.SaveUserSettings( + banner = imageUrl, + ), + ) + } + + override suspend fun deleteUserAvatar(): Result = notSupported() + + override suspend fun deleteUserBanner(): Result = notSupported() + + override suspend fun deleteCommunityBanner(form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery): Result = notSupported() + + override suspend fun deleteCommunityIcon(form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery): Result = notSupported() + + override suspend fun deleteSiteBanner(): Result = notSupported() + + override suspend fun deleteSiteIcon(): Result = notSupported() + override suspend fun deleteMedia(form: it.vercruysse.lemmyapi.datatypes.DeleteImageParams): Result = pictrsApi.deleteMedia(form) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt index 561a7bbc..9239b7fe 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt @@ -31,6 +31,20 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba pictrsApi.auth = value } + private suspend fun uploadAndApplyImage( + image: ByteArray, + applyImage: suspend (String) -> Result, + ): Result = runCatching { + val uploadResponse = uploadImage(image).getOrThrow() + try { + applyImage(uploadResponse.image_url).getOrThrow() + uploadResponse + } catch (e: Throwable) { + deleteMedia(it.vercruysse.lemmyapi.datatypes.DeleteImageParams(uploadResponse.delete_filename)).getOrNull() + throw e + } + } + /** * Gets the site, and your user data. * @@ -1024,6 +1038,80 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun uploadImage(image: ByteArray): Result = pictrsApi.uploadImage(image) + override suspend fun uploadCommunityBanner( + image: ByteArray, + form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery, + ): Result = + uploadAndApplyImage(image) { imageUrl -> + editCommunity( + it.vercruysse.lemmyapi.datatypes.EditCommunity( + community_id = form.id, + banner = imageUrl, + ), + ).map {} + } + + override suspend fun uploadCommunityIcon( + image: ByteArray, + form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery, + ): Result = + uploadAndApplyImage(image) { imageUrl -> + editCommunity( + it.vercruysse.lemmyapi.datatypes.EditCommunity( + community_id = form.id, + icon = imageUrl, + ), + ).map {} + } + + override suspend fun uploadSiteBanner(image: ByteArray): Result = + uploadAndApplyImage(image) { imageUrl -> + editSite( + it.vercruysse.lemmyapi.datatypes.EditSite( + banner = imageUrl, + ), + ).map {} + } + + override suspend fun uploadSiteIcon(image: ByteArray): Result = + uploadAndApplyImage(image) { imageUrl -> + editSite( + it.vercruysse.lemmyapi.datatypes.EditSite( + icon = imageUrl, + ), + ).map {} + } + + override suspend fun uploadUserAvatar(image: ByteArray): Result = + uploadAndApplyImage(image) { imageUrl -> + saveUserSettings( + it.vercruysse.lemmyapi.datatypes.SaveUserSettings( + avatar = imageUrl, + ), + ) + } + + override suspend fun uploadUserBanner(image: ByteArray): Result = + uploadAndApplyImage(image) { imageUrl -> + saveUserSettings( + it.vercruysse.lemmyapi.datatypes.SaveUserSettings( + banner = imageUrl, + ), + ) + } + + override suspend fun deleteUserAvatar(): Result = notSupported() + + override suspend fun deleteUserBanner(): Result = notSupported() + + override suspend fun deleteCommunityBanner(form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery): Result = notSupported() + + override suspend fun deleteCommunityIcon(form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery): Result = notSupported() + + override suspend fun deleteSiteBanner(): Result = notSupported() + + override suspend fun deleteSiteIcon(): Result = notSupported() + override suspend fun deleteMedia(form: it.vercruysse.lemmyapi.datatypes.DeleteImageParams): Result = pictrsApi.deleteMedia(form) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt index fd1c447c..12a6c87f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt @@ -32,6 +32,20 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba pictrsApi.auth = value } + private suspend fun uploadAndApplyImage( + image: ByteArray, + applyImage: suspend (String) -> Result, + ): Result = runCatching { + val uploadResponse = uploadImage(image).getOrThrow() + try { + applyImage(uploadResponse.image_url).getOrThrow() + uploadResponse + } catch (e: Throwable) { + deleteMedia(it.vercruysse.lemmyapi.datatypes.DeleteImageParams(uploadResponse.delete_filename)).getOrNull() + throw e + } + } + /** * Gets the site, and your user data. * @@ -1020,6 +1034,80 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun uploadImage(image: ByteArray): Result = pictrsApi.uploadImage(image) + override suspend fun uploadCommunityBanner( + image: ByteArray, + form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery, + ): Result = + uploadAndApplyImage(image) { imageUrl -> + editCommunity( + it.vercruysse.lemmyapi.datatypes.EditCommunity( + community_id = form.id, + banner = imageUrl, + ), + ).map {} + } + + override suspend fun uploadCommunityIcon( + image: ByteArray, + form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery, + ): Result = + uploadAndApplyImage(image) { imageUrl -> + editCommunity( + it.vercruysse.lemmyapi.datatypes.EditCommunity( + community_id = form.id, + icon = imageUrl, + ), + ).map {} + } + + override suspend fun uploadSiteBanner(image: ByteArray): Result = + uploadAndApplyImage(image) { imageUrl -> + editSite( + it.vercruysse.lemmyapi.datatypes.EditSite( + banner = imageUrl, + ), + ).map {} + } + + override suspend fun uploadSiteIcon(image: ByteArray): Result = + uploadAndApplyImage(image) { imageUrl -> + editSite( + it.vercruysse.lemmyapi.datatypes.EditSite( + icon = imageUrl, + ), + ).map {} + } + + override suspend fun uploadUserAvatar(image: ByteArray): Result = + uploadAndApplyImage(image) { imageUrl -> + saveUserSettings( + it.vercruysse.lemmyapi.datatypes.SaveUserSettings( + avatar = imageUrl, + ), + ) + } + + override suspend fun uploadUserBanner(image: ByteArray): Result = + uploadAndApplyImage(image) { imageUrl -> + saveUserSettings( + it.vercruysse.lemmyapi.datatypes.SaveUserSettings( + banner = imageUrl, + ), + ) + } + + override suspend fun deleteUserAvatar(): Result = notSupported() + + override suspend fun deleteUserBanner(): Result = notSupported() + + override suspend fun deleteCommunityBanner(form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery): Result = notSupported() + + override suspend fun deleteCommunityIcon(form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery): Result = notSupported() + + override suspend fun deleteSiteBanner(): Result = notSupported() + + override suspend fun deleteSiteIcon(): Result = notSupported() + override suspend fun deleteMedia(form: it.vercruysse.lemmyapi.datatypes.DeleteImageParams): Result = pictrsApi.deleteMedia(form) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiRouter.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiRouter.kt index 353d1215..b5fb32e5 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiRouter.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiRouter.kt @@ -17,12 +17,6 @@ internal abstract class LemmyApiRouter(client: HttpClient, auth: String?) : Auth /** @PUT("site") */ abstract suspend fun editSite(form: EditSite): Result - /** @DELETE("site/banner") */ - abstract suspend fun deleteSiteBanner(): Result - - /** @DELETE("site/icon") */ - abstract suspend fun deleteSiteIcon(): Result - /** @GET("modlog") */ abstract suspend fun getModlog(form: GetModlog): Result> @@ -92,12 +86,6 @@ internal abstract class LemmyApiRouter(client: HttpClient, auth: String?) : Auth /** @GET("community/pending_follows/list") */ abstract suspend fun listCommunityPendingFollows(form: ListCommunityPendingFollows): Result> - /** @DELETE("community/banner") */ - abstract suspend fun deleteCommunityBanner(form: CommunityIdQuery): Result - - /** @DELETE("community/icon") */ - abstract suspend fun deleteCommunityIcon(form: CommunityIdQuery): Result - /** @GET("federated_instances") */ abstract suspend fun getFederatedInstances(form: GetFederatedInstances): Result> @@ -326,14 +314,6 @@ internal abstract class LemmyApiRouter(client: HttpClient, auth: String?) : Auth /** @GET("account/media/list") */ abstract suspend fun listMedia(form: ListMedia): Result> - /** @DELETE("account/media") */ - abstract suspend fun deleteMedia(form: DeleteImageParams): Result - - /** @DELETE("account/avatar") */ - abstract suspend fun deleteUserAvatar(): Result - - /** @DELETE("account/banner") */ - abstract suspend fun deleteUserBanner(): Result /** @POST("admin/add") */ abstract suspend fun addAdmin(form: AddAdmin): Result @@ -443,15 +423,18 @@ internal abstract class LemmyApiRouter(client: HttpClient, auth: String?) : Auth /** @GET("image/list") */ abstract suspend fun listMediaAdmin(form: ListMedia): Result> + /** @POST("image") */ + abstract suspend fun uploadImage(image: ByteArray): Result + + /** @DELETE("account/media") */ + abstract suspend fun deleteMedia(form: DeleteImageParams): Result + /** @POST("community/banner") */ abstract suspend fun uploadCommunityBanner(image: ByteArray, form: CommunityIdQuery): Result /** @POST("community/icon") */ abstract suspend fun uploadCommunityIcon(image: ByteArray, form: CommunityIdQuery): Result - /** @POST("image") */ - abstract suspend fun uploadImage(image: ByteArray): Result - /** @POST("site/banner") */ abstract suspend fun uploadSiteBanner(image: ByteArray): Result @@ -463,5 +446,24 @@ internal abstract class LemmyApiRouter(client: HttpClient, auth: String?) : Auth /** @POST("account/banner") */ abstract suspend fun uploadUserBanner(image: ByteArray): Result + + /** @DELETE("account/avatar") */ + abstract suspend fun deleteUserAvatar(): Result + + /** @DELETE("account/banner") */ + abstract suspend fun deleteUserBanner(): Result + + /** @DELETE("community/banner") */ + abstract suspend fun deleteCommunityBanner(form: CommunityIdQuery): Result + + /** @DELETE("community/icon") */ + abstract suspend fun deleteCommunityIcon(form: CommunityIdQuery): Result + + /** @DELETE("site/banner") */ + abstract suspend fun deleteSiteBanner(): Result + + /** @DELETE("site/icon") */ + abstract suspend fun deleteSiteIcon(): Result + } From 17e7814056b165905083fa88b874f92a22fbefc8 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Sat, 23 May 2026 21:05:03 +0200 Subject: [PATCH 060/110] Fix datatypes --- .../lemmyapi/datatypes/ApproveCommunityPendingFollower.kt | 2 +- .../it/vercruysse/lemmyapi/datatypes/CreatePostWarning.kt | 2 +- .../kotlin/it/vercruysse/lemmyapi/datatypes/CreateTagline.kt | 2 +- .../it/vercruysse/lemmyapi/datatypes/EditOAuthProvider.kt | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ApproveCommunityPendingFollower.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ApproveCommunityPendingFollower.kt index 7693afc1..6a8ea72a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ApproveCommunityPendingFollower.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ApproveCommunityPendingFollower.kt @@ -6,7 +6,7 @@ import kotlinx.serialization.Serializable @CommonParcelize @Serializable -internal data class ApproveCommunityPendingFollower( +data class ApproveCommunityPendingFollower( val community_id: CommunityId, val follower_id: PersonId, val approve: Boolean, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreatePostWarning.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreatePostWarning.kt index 262b289f..bd44dc52 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreatePostWarning.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreatePostWarning.kt @@ -8,7 +8,7 @@ import kotlinx.serialization.Serializable @CommonParcelize @Serializable -internal data class CreatePostWarning( +data class CreatePostWarning( val post_id: PostId, val reason: String, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateTagline.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateTagline.kt index 898418c2..285d8a97 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateTagline.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateTagline.kt @@ -6,6 +6,6 @@ import kotlinx.serialization.Serializable @CommonParcelize @Serializable -internal data class CreateTagline( +data class CreateTagline( val content: String, ): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditOAuthProvider.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditOAuthProvider.kt index 31c12ef6..32993e98 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditOAuthProvider.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditOAuthProvider.kt @@ -6,7 +6,7 @@ import kotlinx.serialization.Serializable @CommonParcelize @Serializable -internal data class EditOAuthProvider( +data class EditOAuthProvider( val id: OAuthProviderId, val display_name: String? = null, val authorization_endpoint: String? = null, From 0101cbffb42a7e46d9ead138e29a5561d89c0432 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Sat, 23 May 2026 21:28:44 +0200 Subject: [PATCH 061/110] Add non supported v1 endpoints --- .../lemmyapi/LemmyApiBaseController.kt | 287 ++++++++++++++++++ .../lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt | 82 +++++ .../lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt | 82 +++++ .../lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt | 82 +++++ .../lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt | 82 +++++ .../lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt | 82 +++++ .../lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt | 82 +++++ 7 files changed, 779 insertions(+) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt index 2c359f83..16a7284a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt @@ -800,4 +800,291 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version * @DELETE("site/icon") */ abstract suspend fun deleteSiteIcon(): Result + + /** + * Get a random community. + * + * @GET("community/random") + */ + abstract suspend fun getRandomCommunity(form: GetRandomCommunity): Result + + /** + * Report a community. + * + * @POST("community/report") + */ + abstract suspend fun createCommunityReport(form: CreateCommunityReport): Result + + /** + * Resolve a community report. + * + * @PUT("community/report/resolve") + */ + abstract suspend fun resolveCommunityReport(form: ResolveCommunityReport): Result + + /** + * Create a community tag. + * + * @POST("community/tag") + */ + abstract suspend fun createCommunityTag(form: CreateCommunityTag): Result + + /** + * Edit a community tag. + * + * @PUT("community/tag") + */ + abstract suspend fun editCommunityTag(form: EditCommunityTag): Result + + /** + * Delete a community tag. + * + * @DELETE("community/tag") + */ + abstract suspend fun deleteCommunityTag(form: DeleteCommunityTag): Result + + /** + * Edit community notifications. + * + * @PUT("community/notifications") + */ + abstract suspend fun editCommunityNotifications(form: EditCommunityNotifications): Result + + /** + * Approve a community pending follower. + * + * @POST("community/pending_follows/approve") + */ + abstract suspend fun approveCommunityPendingFollow(form: ApproveCommunityPendingFollower): Result + + /** + * List community pending follows. + * + * @GET("community/pending_follows/list") + */ + abstract suspend fun listCommunityPendingFollows(form: ListCommunityPendingFollows): Result> + + /** + * Mod edit a post. + * + * @PUT("post/mod_edit") + */ + abstract suspend fun modEditPost(form: ModEditPost): Result + + /** + * Edit post notifications. + * + * @PUT("post/notifications") + */ + abstract suspend fun editPostNotifications(form: EditPostNotifications): Result + + /** + * Warn a post. + * + * @POST("post/warn") + */ + abstract suspend fun warnPost(form: CreatePostWarning): Result + + /** + * Get slim comment list. + * + * @GET("comment/list/slim") + */ + abstract suspend fun getCommentsSlim(form: GetComments): Result> + + /** + * Lock a comment. + * + * @POST("comment/lock") + */ + abstract suspend fun lockComment(form: LockComment): Result + + /** + * Warn a comment. + * + * @POST("comment/warn") + */ + abstract suspend fun warnComment(form: CreateCommentWarning): Result + + /** + * Note a person (moderator note). + * + * @POST("person/note") + */ + abstract suspend fun notePerson(form: NotePerson): Result + + /** + * List saved posts and comments for a person. + * + * @GET("account/saved") + */ + abstract suspend fun listPersonSaved(form: ListPersonSaved): Result> + + /** + * List read posts for a person. + * + * @GET("account/read") + */ + abstract suspend fun listPersonRead(form: ListPersonRead): Result> + + /** + * List hidden posts for a person. + * + * @GET("account/hidden") + */ + abstract suspend fun listPersonHidden(form: ListPersonHidden): Result> + + /** + * List liked posts and comments for a person. + * + * @GET("account/liked") + */ + abstract suspend fun listPersonLiked(form: ListPersonLiked): Result> + + /** + * Resend verification email. + * + * @POST("account/auth/resend_verification_email") + */ + abstract suspend fun resendVerificationEmail(form: ResendVerificationEmail): Result + + /** + * Authenticate with OAuth. + * + * @POST("oauth/authenticate") + */ + abstract suspend fun authenticateWithOAuth(form: AuthenticateWithOauth): Result + + /** + * Block an instance for persons. + * + * @POST("account/block/instance/persons") + */ + abstract suspend fun userBlockInstancePersons(form: UserBlockInstancePersonsParams): Result + + /** + * Allow an instance (admin). + * + * @POST("admin/instance/allow") + */ + abstract suspend fun adminAllowInstance(form: AdminAllowInstanceParams): Result + + /** + * Block an instance (admin). + * + * @POST("admin/instance/block") + */ + abstract suspend fun adminBlockInstance(form: AdminBlockInstanceParams): Result + + /** + * Create a tagline. + * + * @POST("admin/tagline") + */ + abstract suspend fun createTagline(form: CreateTagline): Result + + /** + * Edit a tagline. + * + * @PUT("admin/tagline") + */ + abstract suspend fun editTagline(form: EditTagline): Result + + /** + * Delete a tagline. + * + * @DELETE("admin/tagline") + */ + abstract suspend fun deleteTagline(form: DeleteTagline): Result + + /** + * List taglines. + * + * @GET("admin/tagline/list") + */ + abstract suspend fun listTaglines(form: ListTaglines): Result> + + /** + * Create an OAuth provider. + * + * @POST("oauth_provider") + */ + abstract suspend fun createOAuthProvider(form: CreateOAuthProvider): Result + + /** + * Edit an OAuth provider. + * + * @PUT("oauth_provider") + */ + abstract suspend fun editOAuthProvider(form: EditOAuthProvider): Result + + /** + * Delete an OAuth provider. + * + * @DELETE("oauth_provider") + */ + abstract suspend fun deleteOAuthProvider(form: DeleteOAuthProvider): Result + + /** + * Get a multi-community. + * + * @GET("multi_community") + */ + abstract suspend fun getMultiCommunity(form: GetMultiCommunity): Result + + /** + * Create a multi-community. + * + * @POST("multi_community") + */ + abstract suspend fun createMultiCommunity(form: CreateMultiCommunity): Result + + /** + * Edit a multi-community. + * + * @PUT("multi_community") + */ + abstract suspend fun editMultiCommunity(form: EditMultiCommunity): Result + + /** + * Add a community to a multi-community. + * + * @POST("multi_community/entry") + */ + abstract suspend fun createMultiCommunityEntry(form: CreateOrDeleteMultiCommunityEntry): Result + + /** + * Remove a community from a multi-community. + * + * @DELETE("multi_community/entry") + */ + abstract suspend fun deleteMultiCommunityEntry(form: CreateOrDeleteMultiCommunityEntry): Result + + /** + * Follow a multi-community. + * + * @POST("multi_community/follow") + */ + abstract suspend fun followMultiCommunity(form: FollowMultiCommunity): Result + + /** + * List multi-communities. + * + * @GET("multi_community/list") + */ + abstract suspend fun listMultiCommunities(form: ListMultiCommunities): Result> + + /** + * Delete admin media. + * + * @DELETE("image") + */ + abstract suspend fun deleteMediaAdmin(form: DeleteImageParams): Result + + /** + * Check image service health. + * + * @GET("image/health") + */ + abstract suspend fun imageHealth(): Result } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt index 5ef5435b..ecad888c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt @@ -1159,4 +1159,86 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba pictrsApi.deleteMedia(form) override suspend fun adminListUsers(form: it.vercruysse.lemmyapi.datatypes.AdminListUsers): Result> = notSupported() + + override suspend fun getRandomCommunity(form: it.vercruysse.lemmyapi.datatypes.GetRandomCommunity): Result = notSupported() + + override suspend fun createCommunityReport(form: it.vercruysse.lemmyapi.datatypes.CreateCommunityReport): Result = notSupported() + + override suspend fun resolveCommunityReport(form: it.vercruysse.lemmyapi.datatypes.ResolveCommunityReport): Result = notSupported() + + override suspend fun createCommunityTag(form: it.vercruysse.lemmyapi.datatypes.CreateCommunityTag): Result = notSupported() + + override suspend fun editCommunityTag(form: it.vercruysse.lemmyapi.datatypes.EditCommunityTag): Result = notSupported() + + override suspend fun deleteCommunityTag(form: it.vercruysse.lemmyapi.datatypes.DeleteCommunityTag): Result = notSupported() + + override suspend fun editCommunityNotifications(form: it.vercruysse.lemmyapi.datatypes.EditCommunityNotifications): Result = notSupported() + + override suspend fun approveCommunityPendingFollow(form: it.vercruysse.lemmyapi.datatypes.ApproveCommunityPendingFollower): Result = notSupported() + + override suspend fun listCommunityPendingFollows(form: it.vercruysse.lemmyapi.datatypes.ListCommunityPendingFollows): Result> = notSupported() + + override suspend fun modEditPost(form: it.vercruysse.lemmyapi.datatypes.ModEditPost): Result = notSupported() + + override suspend fun editPostNotifications(form: it.vercruysse.lemmyapi.datatypes.EditPostNotifications): Result = notSupported() + + override suspend fun warnPost(form: it.vercruysse.lemmyapi.datatypes.CreatePostWarning): Result = notSupported() + + override suspend fun getCommentsSlim(form: it.vercruysse.lemmyapi.datatypes.GetComments): Result> = notSupported() + + override suspend fun lockComment(form: it.vercruysse.lemmyapi.datatypes.LockComment): Result = notSupported() + + override suspend fun warnComment(form: it.vercruysse.lemmyapi.datatypes.CreateCommentWarning): Result = notSupported() + + override suspend fun notePerson(form: it.vercruysse.lemmyapi.datatypes.NotePerson): Result = notSupported() + + override suspend fun listPersonSaved(form: it.vercruysse.lemmyapi.datatypes.ListPersonSaved): Result> = notSupported() + + override suspend fun listPersonRead(form: it.vercruysse.lemmyapi.datatypes.ListPersonRead): Result> = notSupported() + + override suspend fun listPersonHidden(form: it.vercruysse.lemmyapi.datatypes.ListPersonHidden): Result> = notSupported() + + override suspend fun listPersonLiked(form: it.vercruysse.lemmyapi.datatypes.ListPersonLiked): Result> = notSupported() + + override suspend fun resendVerificationEmail(form: it.vercruysse.lemmyapi.datatypes.ResendVerificationEmail): Result = notSupported() + + override suspend fun authenticateWithOAuth(form: it.vercruysse.lemmyapi.datatypes.AuthenticateWithOauth): Result = notSupported() + + override suspend fun userBlockInstancePersons(form: it.vercruysse.lemmyapi.datatypes.UserBlockInstancePersonsParams): Result = notSupported() + + override suspend fun adminAllowInstance(form: it.vercruysse.lemmyapi.datatypes.AdminAllowInstanceParams): Result = notSupported() + + override suspend fun adminBlockInstance(form: it.vercruysse.lemmyapi.datatypes.AdminBlockInstanceParams): Result = notSupported() + + override suspend fun createTagline(form: it.vercruysse.lemmyapi.datatypes.CreateTagline): Result = notSupported() + + override suspend fun editTagline(form: it.vercruysse.lemmyapi.datatypes.EditTagline): Result = notSupported() + + override suspend fun deleteTagline(form: it.vercruysse.lemmyapi.datatypes.DeleteTagline): Result = notSupported() + + override suspend fun listTaglines(form: it.vercruysse.lemmyapi.datatypes.ListTaglines): Result> = notSupported() + + override suspend fun createOAuthProvider(form: it.vercruysse.lemmyapi.datatypes.CreateOAuthProvider): Result = notSupported() + + override suspend fun editOAuthProvider(form: it.vercruysse.lemmyapi.datatypes.EditOAuthProvider): Result = notSupported() + + override suspend fun deleteOAuthProvider(form: it.vercruysse.lemmyapi.datatypes.DeleteOAuthProvider): Result = notSupported() + + override suspend fun getMultiCommunity(form: it.vercruysse.lemmyapi.datatypes.GetMultiCommunity): Result = notSupported() + + override suspend fun createMultiCommunity(form: it.vercruysse.lemmyapi.datatypes.CreateMultiCommunity): Result = notSupported() + + override suspend fun editMultiCommunity(form: it.vercruysse.lemmyapi.datatypes.EditMultiCommunity): Result = notSupported() + + override suspend fun createMultiCommunityEntry(form: it.vercruysse.lemmyapi.datatypes.CreateOrDeleteMultiCommunityEntry): Result = notSupported() + + override suspend fun deleteMultiCommunityEntry(form: it.vercruysse.lemmyapi.datatypes.CreateOrDeleteMultiCommunityEntry): Result = notSupported() + + override suspend fun followMultiCommunity(form: it.vercruysse.lemmyapi.datatypes.FollowMultiCommunity): Result = notSupported() + + override suspend fun listMultiCommunities(form: it.vercruysse.lemmyapi.datatypes.ListMultiCommunities): Result> = notSupported() + + override suspend fun deleteMediaAdmin(form: it.vercruysse.lemmyapi.datatypes.DeleteImageParams): Result = notSupported() + + override suspend fun imageHealth(): Result = notSupported() } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt index 783b8122..c6864ed7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt @@ -1119,4 +1119,86 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba pictrsApi.deleteMedia(form) override suspend fun adminListUsers(form: it.vercruysse.lemmyapi.datatypes.AdminListUsers): Result> = notSupported() + + override suspend fun getRandomCommunity(form: it.vercruysse.lemmyapi.datatypes.GetRandomCommunity): Result = notSupported() + + override suspend fun createCommunityReport(form: it.vercruysse.lemmyapi.datatypes.CreateCommunityReport): Result = notSupported() + + override suspend fun resolveCommunityReport(form: it.vercruysse.lemmyapi.datatypes.ResolveCommunityReport): Result = notSupported() + + override suspend fun createCommunityTag(form: it.vercruysse.lemmyapi.datatypes.CreateCommunityTag): Result = notSupported() + + override suspend fun editCommunityTag(form: it.vercruysse.lemmyapi.datatypes.EditCommunityTag): Result = notSupported() + + override suspend fun deleteCommunityTag(form: it.vercruysse.lemmyapi.datatypes.DeleteCommunityTag): Result = notSupported() + + override suspend fun editCommunityNotifications(form: it.vercruysse.lemmyapi.datatypes.EditCommunityNotifications): Result = notSupported() + + override suspend fun approveCommunityPendingFollow(form: it.vercruysse.lemmyapi.datatypes.ApproveCommunityPendingFollower): Result = notSupported() + + override suspend fun listCommunityPendingFollows(form: it.vercruysse.lemmyapi.datatypes.ListCommunityPendingFollows): Result> = notSupported() + + override suspend fun modEditPost(form: it.vercruysse.lemmyapi.datatypes.ModEditPost): Result = notSupported() + + override suspend fun editPostNotifications(form: it.vercruysse.lemmyapi.datatypes.EditPostNotifications): Result = notSupported() + + override suspend fun warnPost(form: it.vercruysse.lemmyapi.datatypes.CreatePostWarning): Result = notSupported() + + override suspend fun getCommentsSlim(form: it.vercruysse.lemmyapi.datatypes.GetComments): Result> = notSupported() + + override suspend fun lockComment(form: it.vercruysse.lemmyapi.datatypes.LockComment): Result = notSupported() + + override suspend fun warnComment(form: it.vercruysse.lemmyapi.datatypes.CreateCommentWarning): Result = notSupported() + + override suspend fun notePerson(form: it.vercruysse.lemmyapi.datatypes.NotePerson): Result = notSupported() + + override suspend fun listPersonSaved(form: it.vercruysse.lemmyapi.datatypes.ListPersonSaved): Result> = notSupported() + + override suspend fun listPersonRead(form: it.vercruysse.lemmyapi.datatypes.ListPersonRead): Result> = notSupported() + + override suspend fun listPersonHidden(form: it.vercruysse.lemmyapi.datatypes.ListPersonHidden): Result> = notSupported() + + override suspend fun listPersonLiked(form: it.vercruysse.lemmyapi.datatypes.ListPersonLiked): Result> = notSupported() + + override suspend fun resendVerificationEmail(form: it.vercruysse.lemmyapi.datatypes.ResendVerificationEmail): Result = notSupported() + + override suspend fun authenticateWithOAuth(form: it.vercruysse.lemmyapi.datatypes.AuthenticateWithOauth): Result = notSupported() + + override suspend fun userBlockInstancePersons(form: it.vercruysse.lemmyapi.datatypes.UserBlockInstancePersonsParams): Result = notSupported() + + override suspend fun adminAllowInstance(form: it.vercruysse.lemmyapi.datatypes.AdminAllowInstanceParams): Result = notSupported() + + override suspend fun adminBlockInstance(form: it.vercruysse.lemmyapi.datatypes.AdminBlockInstanceParams): Result = notSupported() + + override suspend fun createTagline(form: it.vercruysse.lemmyapi.datatypes.CreateTagline): Result = notSupported() + + override suspend fun editTagline(form: it.vercruysse.lemmyapi.datatypes.EditTagline): Result = notSupported() + + override suspend fun deleteTagline(form: it.vercruysse.lemmyapi.datatypes.DeleteTagline): Result = notSupported() + + override suspend fun listTaglines(form: it.vercruysse.lemmyapi.datatypes.ListTaglines): Result> = notSupported() + + override suspend fun createOAuthProvider(form: it.vercruysse.lemmyapi.datatypes.CreateOAuthProvider): Result = notSupported() + + override suspend fun editOAuthProvider(form: it.vercruysse.lemmyapi.datatypes.EditOAuthProvider): Result = notSupported() + + override suspend fun deleteOAuthProvider(form: it.vercruysse.lemmyapi.datatypes.DeleteOAuthProvider): Result = notSupported() + + override suspend fun getMultiCommunity(form: it.vercruysse.lemmyapi.datatypes.GetMultiCommunity): Result = notSupported() + + override suspend fun createMultiCommunity(form: it.vercruysse.lemmyapi.datatypes.CreateMultiCommunity): Result = notSupported() + + override suspend fun editMultiCommunity(form: it.vercruysse.lemmyapi.datatypes.EditMultiCommunity): Result = notSupported() + + override suspend fun createMultiCommunityEntry(form: it.vercruysse.lemmyapi.datatypes.CreateOrDeleteMultiCommunityEntry): Result = notSupported() + + override suspend fun deleteMultiCommunityEntry(form: it.vercruysse.lemmyapi.datatypes.CreateOrDeleteMultiCommunityEntry): Result = notSupported() + + override suspend fun followMultiCommunity(form: it.vercruysse.lemmyapi.datatypes.FollowMultiCommunity): Result = notSupported() + + override suspend fun listMultiCommunities(form: it.vercruysse.lemmyapi.datatypes.ListMultiCommunities): Result> = notSupported() + + override suspend fun deleteMediaAdmin(form: it.vercruysse.lemmyapi.datatypes.DeleteImageParams): Result = notSupported() + + override suspend fun imageHealth(): Result = notSupported() } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt index f5029c96..9ebe7acd 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt @@ -1119,4 +1119,86 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba pictrsApi.deleteMedia(form) override suspend fun adminListUsers(form: it.vercruysse.lemmyapi.datatypes.AdminListUsers): Result> = notSupported() + + override suspend fun getRandomCommunity(form: it.vercruysse.lemmyapi.datatypes.GetRandomCommunity): Result = notSupported() + + override suspend fun createCommunityReport(form: it.vercruysse.lemmyapi.datatypes.CreateCommunityReport): Result = notSupported() + + override suspend fun resolveCommunityReport(form: it.vercruysse.lemmyapi.datatypes.ResolveCommunityReport): Result = notSupported() + + override suspend fun createCommunityTag(form: it.vercruysse.lemmyapi.datatypes.CreateCommunityTag): Result = notSupported() + + override suspend fun editCommunityTag(form: it.vercruysse.lemmyapi.datatypes.EditCommunityTag): Result = notSupported() + + override suspend fun deleteCommunityTag(form: it.vercruysse.lemmyapi.datatypes.DeleteCommunityTag): Result = notSupported() + + override suspend fun editCommunityNotifications(form: it.vercruysse.lemmyapi.datatypes.EditCommunityNotifications): Result = notSupported() + + override suspend fun approveCommunityPendingFollow(form: it.vercruysse.lemmyapi.datatypes.ApproveCommunityPendingFollower): Result = notSupported() + + override suspend fun listCommunityPendingFollows(form: it.vercruysse.lemmyapi.datatypes.ListCommunityPendingFollows): Result> = notSupported() + + override suspend fun modEditPost(form: it.vercruysse.lemmyapi.datatypes.ModEditPost): Result = notSupported() + + override suspend fun editPostNotifications(form: it.vercruysse.lemmyapi.datatypes.EditPostNotifications): Result = notSupported() + + override suspend fun warnPost(form: it.vercruysse.lemmyapi.datatypes.CreatePostWarning): Result = notSupported() + + override suspend fun getCommentsSlim(form: it.vercruysse.lemmyapi.datatypes.GetComments): Result> = notSupported() + + override suspend fun lockComment(form: it.vercruysse.lemmyapi.datatypes.LockComment): Result = notSupported() + + override suspend fun warnComment(form: it.vercruysse.lemmyapi.datatypes.CreateCommentWarning): Result = notSupported() + + override suspend fun notePerson(form: it.vercruysse.lemmyapi.datatypes.NotePerson): Result = notSupported() + + override suspend fun listPersonSaved(form: it.vercruysse.lemmyapi.datatypes.ListPersonSaved): Result> = notSupported() + + override suspend fun listPersonRead(form: it.vercruysse.lemmyapi.datatypes.ListPersonRead): Result> = notSupported() + + override suspend fun listPersonHidden(form: it.vercruysse.lemmyapi.datatypes.ListPersonHidden): Result> = notSupported() + + override suspend fun listPersonLiked(form: it.vercruysse.lemmyapi.datatypes.ListPersonLiked): Result> = notSupported() + + override suspend fun resendVerificationEmail(form: it.vercruysse.lemmyapi.datatypes.ResendVerificationEmail): Result = notSupported() + + override suspend fun authenticateWithOAuth(form: it.vercruysse.lemmyapi.datatypes.AuthenticateWithOauth): Result = notSupported() + + override suspend fun userBlockInstancePersons(form: it.vercruysse.lemmyapi.datatypes.UserBlockInstancePersonsParams): Result = notSupported() + + override suspend fun adminAllowInstance(form: it.vercruysse.lemmyapi.datatypes.AdminAllowInstanceParams): Result = notSupported() + + override suspend fun adminBlockInstance(form: it.vercruysse.lemmyapi.datatypes.AdminBlockInstanceParams): Result = notSupported() + + override suspend fun createTagline(form: it.vercruysse.lemmyapi.datatypes.CreateTagline): Result = notSupported() + + override suspend fun editTagline(form: it.vercruysse.lemmyapi.datatypes.EditTagline): Result = notSupported() + + override suspend fun deleteTagline(form: it.vercruysse.lemmyapi.datatypes.DeleteTagline): Result = notSupported() + + override suspend fun listTaglines(form: it.vercruysse.lemmyapi.datatypes.ListTaglines): Result> = notSupported() + + override suspend fun createOAuthProvider(form: it.vercruysse.lemmyapi.datatypes.CreateOAuthProvider): Result = notSupported() + + override suspend fun editOAuthProvider(form: it.vercruysse.lemmyapi.datatypes.EditOAuthProvider): Result = notSupported() + + override suspend fun deleteOAuthProvider(form: it.vercruysse.lemmyapi.datatypes.DeleteOAuthProvider): Result = notSupported() + + override suspend fun getMultiCommunity(form: it.vercruysse.lemmyapi.datatypes.GetMultiCommunity): Result = notSupported() + + override suspend fun createMultiCommunity(form: it.vercruysse.lemmyapi.datatypes.CreateMultiCommunity): Result = notSupported() + + override suspend fun editMultiCommunity(form: it.vercruysse.lemmyapi.datatypes.EditMultiCommunity): Result = notSupported() + + override suspend fun createMultiCommunityEntry(form: it.vercruysse.lemmyapi.datatypes.CreateOrDeleteMultiCommunityEntry): Result = notSupported() + + override suspend fun deleteMultiCommunityEntry(form: it.vercruysse.lemmyapi.datatypes.CreateOrDeleteMultiCommunityEntry): Result = notSupported() + + override suspend fun followMultiCommunity(form: it.vercruysse.lemmyapi.datatypes.FollowMultiCommunity): Result = notSupported() + + override suspend fun listMultiCommunities(form: it.vercruysse.lemmyapi.datatypes.ListMultiCommunities): Result> = notSupported() + + override suspend fun deleteMediaAdmin(form: it.vercruysse.lemmyapi.datatypes.DeleteImageParams): Result = notSupported() + + override suspend fun imageHealth(): Result = notSupported() } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt index 6176a243..65b61464 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt @@ -1118,4 +1118,86 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba pictrsApi.deleteMedia(form) override suspend fun adminListUsers(form: it.vercruysse.lemmyapi.datatypes.AdminListUsers): Result> = notSupported() + + override suspend fun getRandomCommunity(form: it.vercruysse.lemmyapi.datatypes.GetRandomCommunity): Result = notSupported() + + override suspend fun createCommunityReport(form: it.vercruysse.lemmyapi.datatypes.CreateCommunityReport): Result = notSupported() + + override suspend fun resolveCommunityReport(form: it.vercruysse.lemmyapi.datatypes.ResolveCommunityReport): Result = notSupported() + + override suspend fun createCommunityTag(form: it.vercruysse.lemmyapi.datatypes.CreateCommunityTag): Result = notSupported() + + override suspend fun editCommunityTag(form: it.vercruysse.lemmyapi.datatypes.EditCommunityTag): Result = notSupported() + + override suspend fun deleteCommunityTag(form: it.vercruysse.lemmyapi.datatypes.DeleteCommunityTag): Result = notSupported() + + override suspend fun editCommunityNotifications(form: it.vercruysse.lemmyapi.datatypes.EditCommunityNotifications): Result = notSupported() + + override suspend fun approveCommunityPendingFollow(form: it.vercruysse.lemmyapi.datatypes.ApproveCommunityPendingFollower): Result = notSupported() + + override suspend fun listCommunityPendingFollows(form: it.vercruysse.lemmyapi.datatypes.ListCommunityPendingFollows): Result> = notSupported() + + override suspend fun modEditPost(form: it.vercruysse.lemmyapi.datatypes.ModEditPost): Result = notSupported() + + override suspend fun editPostNotifications(form: it.vercruysse.lemmyapi.datatypes.EditPostNotifications): Result = notSupported() + + override suspend fun warnPost(form: it.vercruysse.lemmyapi.datatypes.CreatePostWarning): Result = notSupported() + + override suspend fun getCommentsSlim(form: it.vercruysse.lemmyapi.datatypes.GetComments): Result> = notSupported() + + override suspend fun lockComment(form: it.vercruysse.lemmyapi.datatypes.LockComment): Result = notSupported() + + override suspend fun warnComment(form: it.vercruysse.lemmyapi.datatypes.CreateCommentWarning): Result = notSupported() + + override suspend fun notePerson(form: it.vercruysse.lemmyapi.datatypes.NotePerson): Result = notSupported() + + override suspend fun listPersonSaved(form: it.vercruysse.lemmyapi.datatypes.ListPersonSaved): Result> = notSupported() + + override suspend fun listPersonRead(form: it.vercruysse.lemmyapi.datatypes.ListPersonRead): Result> = notSupported() + + override suspend fun listPersonHidden(form: it.vercruysse.lemmyapi.datatypes.ListPersonHidden): Result> = notSupported() + + override suspend fun listPersonLiked(form: it.vercruysse.lemmyapi.datatypes.ListPersonLiked): Result> = notSupported() + + override suspend fun resendVerificationEmail(form: it.vercruysse.lemmyapi.datatypes.ResendVerificationEmail): Result = notSupported() + + override suspend fun authenticateWithOAuth(form: it.vercruysse.lemmyapi.datatypes.AuthenticateWithOauth): Result = notSupported() + + override suspend fun userBlockInstancePersons(form: it.vercruysse.lemmyapi.datatypes.UserBlockInstancePersonsParams): Result = notSupported() + + override suspend fun adminAllowInstance(form: it.vercruysse.lemmyapi.datatypes.AdminAllowInstanceParams): Result = notSupported() + + override suspend fun adminBlockInstance(form: it.vercruysse.lemmyapi.datatypes.AdminBlockInstanceParams): Result = notSupported() + + override suspend fun createTagline(form: it.vercruysse.lemmyapi.datatypes.CreateTagline): Result = notSupported() + + override suspend fun editTagline(form: it.vercruysse.lemmyapi.datatypes.EditTagline): Result = notSupported() + + override suspend fun deleteTagline(form: it.vercruysse.lemmyapi.datatypes.DeleteTagline): Result = notSupported() + + override suspend fun listTaglines(form: it.vercruysse.lemmyapi.datatypes.ListTaglines): Result> = notSupported() + + override suspend fun createOAuthProvider(form: it.vercruysse.lemmyapi.datatypes.CreateOAuthProvider): Result = notSupported() + + override suspend fun editOAuthProvider(form: it.vercruysse.lemmyapi.datatypes.EditOAuthProvider): Result = notSupported() + + override suspend fun deleteOAuthProvider(form: it.vercruysse.lemmyapi.datatypes.DeleteOAuthProvider): Result = notSupported() + + override suspend fun getMultiCommunity(form: it.vercruysse.lemmyapi.datatypes.GetMultiCommunity): Result = notSupported() + + override suspend fun createMultiCommunity(form: it.vercruysse.lemmyapi.datatypes.CreateMultiCommunity): Result = notSupported() + + override suspend fun editMultiCommunity(form: it.vercruysse.lemmyapi.datatypes.EditMultiCommunity): Result = notSupported() + + override suspend fun createMultiCommunityEntry(form: it.vercruysse.lemmyapi.datatypes.CreateOrDeleteMultiCommunityEntry): Result = notSupported() + + override suspend fun deleteMultiCommunityEntry(form: it.vercruysse.lemmyapi.datatypes.CreateOrDeleteMultiCommunityEntry): Result = notSupported() + + override suspend fun followMultiCommunity(form: it.vercruysse.lemmyapi.datatypes.FollowMultiCommunity): Result = notSupported() + + override suspend fun listMultiCommunities(form: it.vercruysse.lemmyapi.datatypes.ListMultiCommunities): Result> = notSupported() + + override suspend fun deleteMediaAdmin(form: it.vercruysse.lemmyapi.datatypes.DeleteImageParams): Result = notSupported() + + override suspend fun imageHealth(): Result = notSupported() } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt index 9239b7fe..d6ff3469 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt @@ -1116,4 +1116,86 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba pictrsApi.deleteMedia(form) override suspend fun adminListUsers(form: it.vercruysse.lemmyapi.datatypes.AdminListUsers): Result> = notSupported() + + override suspend fun getRandomCommunity(form: it.vercruysse.lemmyapi.datatypes.GetRandomCommunity): Result = notSupported() + + override suspend fun createCommunityReport(form: it.vercruysse.lemmyapi.datatypes.CreateCommunityReport): Result = notSupported() + + override suspend fun resolveCommunityReport(form: it.vercruysse.lemmyapi.datatypes.ResolveCommunityReport): Result = notSupported() + + override suspend fun createCommunityTag(form: it.vercruysse.lemmyapi.datatypes.CreateCommunityTag): Result = notSupported() + + override suspend fun editCommunityTag(form: it.vercruysse.lemmyapi.datatypes.EditCommunityTag): Result = notSupported() + + override suspend fun deleteCommunityTag(form: it.vercruysse.lemmyapi.datatypes.DeleteCommunityTag): Result = notSupported() + + override suspend fun editCommunityNotifications(form: it.vercruysse.lemmyapi.datatypes.EditCommunityNotifications): Result = notSupported() + + override suspend fun approveCommunityPendingFollow(form: it.vercruysse.lemmyapi.datatypes.ApproveCommunityPendingFollower): Result = notSupported() + + override suspend fun listCommunityPendingFollows(form: it.vercruysse.lemmyapi.datatypes.ListCommunityPendingFollows): Result> = notSupported() + + override suspend fun modEditPost(form: it.vercruysse.lemmyapi.datatypes.ModEditPost): Result = notSupported() + + override suspend fun editPostNotifications(form: it.vercruysse.lemmyapi.datatypes.EditPostNotifications): Result = notSupported() + + override suspend fun warnPost(form: it.vercruysse.lemmyapi.datatypes.CreatePostWarning): Result = notSupported() + + override suspend fun getCommentsSlim(form: it.vercruysse.lemmyapi.datatypes.GetComments): Result> = notSupported() + + override suspend fun lockComment(form: it.vercruysse.lemmyapi.datatypes.LockComment): Result = notSupported() + + override suspend fun warnComment(form: it.vercruysse.lemmyapi.datatypes.CreateCommentWarning): Result = notSupported() + + override suspend fun notePerson(form: it.vercruysse.lemmyapi.datatypes.NotePerson): Result = notSupported() + + override suspend fun listPersonSaved(form: it.vercruysse.lemmyapi.datatypes.ListPersonSaved): Result> = notSupported() + + override suspend fun listPersonRead(form: it.vercruysse.lemmyapi.datatypes.ListPersonRead): Result> = notSupported() + + override suspend fun listPersonHidden(form: it.vercruysse.lemmyapi.datatypes.ListPersonHidden): Result> = notSupported() + + override suspend fun listPersonLiked(form: it.vercruysse.lemmyapi.datatypes.ListPersonLiked): Result> = notSupported() + + override suspend fun resendVerificationEmail(form: it.vercruysse.lemmyapi.datatypes.ResendVerificationEmail): Result = notSupported() + + override suspend fun authenticateWithOAuth(form: it.vercruysse.lemmyapi.datatypes.AuthenticateWithOauth): Result = notSupported() + + override suspend fun userBlockInstancePersons(form: it.vercruysse.lemmyapi.datatypes.UserBlockInstancePersonsParams): Result = notSupported() + + override suspend fun adminAllowInstance(form: it.vercruysse.lemmyapi.datatypes.AdminAllowInstanceParams): Result = notSupported() + + override suspend fun adminBlockInstance(form: it.vercruysse.lemmyapi.datatypes.AdminBlockInstanceParams): Result = notSupported() + + override suspend fun createTagline(form: it.vercruysse.lemmyapi.datatypes.CreateTagline): Result = notSupported() + + override suspend fun editTagline(form: it.vercruysse.lemmyapi.datatypes.EditTagline): Result = notSupported() + + override suspend fun deleteTagline(form: it.vercruysse.lemmyapi.datatypes.DeleteTagline): Result = notSupported() + + override suspend fun listTaglines(form: it.vercruysse.lemmyapi.datatypes.ListTaglines): Result> = notSupported() + + override suspend fun createOAuthProvider(form: it.vercruysse.lemmyapi.datatypes.CreateOAuthProvider): Result = notSupported() + + override suspend fun editOAuthProvider(form: it.vercruysse.lemmyapi.datatypes.EditOAuthProvider): Result = notSupported() + + override suspend fun deleteOAuthProvider(form: it.vercruysse.lemmyapi.datatypes.DeleteOAuthProvider): Result = notSupported() + + override suspend fun getMultiCommunity(form: it.vercruysse.lemmyapi.datatypes.GetMultiCommunity): Result = notSupported() + + override suspend fun createMultiCommunity(form: it.vercruysse.lemmyapi.datatypes.CreateMultiCommunity): Result = notSupported() + + override suspend fun editMultiCommunity(form: it.vercruysse.lemmyapi.datatypes.EditMultiCommunity): Result = notSupported() + + override suspend fun createMultiCommunityEntry(form: it.vercruysse.lemmyapi.datatypes.CreateOrDeleteMultiCommunityEntry): Result = notSupported() + + override suspend fun deleteMultiCommunityEntry(form: it.vercruysse.lemmyapi.datatypes.CreateOrDeleteMultiCommunityEntry): Result = notSupported() + + override suspend fun followMultiCommunity(form: it.vercruysse.lemmyapi.datatypes.FollowMultiCommunity): Result = notSupported() + + override suspend fun listMultiCommunities(form: it.vercruysse.lemmyapi.datatypes.ListMultiCommunities): Result> = notSupported() + + override suspend fun deleteMediaAdmin(form: it.vercruysse.lemmyapi.datatypes.DeleteImageParams): Result = notSupported() + + override suspend fun imageHealth(): Result = notSupported() } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt index 12a6c87f..e286454a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt @@ -1112,4 +1112,86 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba pictrsApi.deleteMedia(form) override suspend fun adminListUsers(form: it.vercruysse.lemmyapi.datatypes.AdminListUsers): Result> = notSupported() + + override suspend fun getRandomCommunity(form: it.vercruysse.lemmyapi.datatypes.GetRandomCommunity): Result = notSupported() + + override suspend fun createCommunityReport(form: it.vercruysse.lemmyapi.datatypes.CreateCommunityReport): Result = notSupported() + + override suspend fun resolveCommunityReport(form: it.vercruysse.lemmyapi.datatypes.ResolveCommunityReport): Result = notSupported() + + override suspend fun createCommunityTag(form: it.vercruysse.lemmyapi.datatypes.CreateCommunityTag): Result = notSupported() + + override suspend fun editCommunityTag(form: it.vercruysse.lemmyapi.datatypes.EditCommunityTag): Result = notSupported() + + override suspend fun deleteCommunityTag(form: it.vercruysse.lemmyapi.datatypes.DeleteCommunityTag): Result = notSupported() + + override suspend fun editCommunityNotifications(form: it.vercruysse.lemmyapi.datatypes.EditCommunityNotifications): Result = notSupported() + + override suspend fun approveCommunityPendingFollow(form: it.vercruysse.lemmyapi.datatypes.ApproveCommunityPendingFollower): Result = notSupported() + + override suspend fun listCommunityPendingFollows(form: it.vercruysse.lemmyapi.datatypes.ListCommunityPendingFollows): Result> = notSupported() + + override suspend fun modEditPost(form: it.vercruysse.lemmyapi.datatypes.ModEditPost): Result = notSupported() + + override suspend fun editPostNotifications(form: it.vercruysse.lemmyapi.datatypes.EditPostNotifications): Result = notSupported() + + override suspend fun warnPost(form: it.vercruysse.lemmyapi.datatypes.CreatePostWarning): Result = notSupported() + + override suspend fun getCommentsSlim(form: it.vercruysse.lemmyapi.datatypes.GetComments): Result> = notSupported() + + override suspend fun lockComment(form: it.vercruysse.lemmyapi.datatypes.LockComment): Result = notSupported() + + override suspend fun warnComment(form: it.vercruysse.lemmyapi.datatypes.CreateCommentWarning): Result = notSupported() + + override suspend fun notePerson(form: it.vercruysse.lemmyapi.datatypes.NotePerson): Result = notSupported() + + override suspend fun listPersonSaved(form: it.vercruysse.lemmyapi.datatypes.ListPersonSaved): Result> = notSupported() + + override suspend fun listPersonRead(form: it.vercruysse.lemmyapi.datatypes.ListPersonRead): Result> = notSupported() + + override suspend fun listPersonHidden(form: it.vercruysse.lemmyapi.datatypes.ListPersonHidden): Result> = notSupported() + + override suspend fun listPersonLiked(form: it.vercruysse.lemmyapi.datatypes.ListPersonLiked): Result> = notSupported() + + override suspend fun resendVerificationEmail(form: it.vercruysse.lemmyapi.datatypes.ResendVerificationEmail): Result = notSupported() + + override suspend fun authenticateWithOAuth(form: it.vercruysse.lemmyapi.datatypes.AuthenticateWithOauth): Result = notSupported() + + override suspend fun userBlockInstancePersons(form: it.vercruysse.lemmyapi.datatypes.UserBlockInstancePersonsParams): Result = notSupported() + + override suspend fun adminAllowInstance(form: it.vercruysse.lemmyapi.datatypes.AdminAllowInstanceParams): Result = notSupported() + + override suspend fun adminBlockInstance(form: it.vercruysse.lemmyapi.datatypes.AdminBlockInstanceParams): Result = notSupported() + + override suspend fun createTagline(form: it.vercruysse.lemmyapi.datatypes.CreateTagline): Result = notSupported() + + override suspend fun editTagline(form: it.vercruysse.lemmyapi.datatypes.EditTagline): Result = notSupported() + + override suspend fun deleteTagline(form: it.vercruysse.lemmyapi.datatypes.DeleteTagline): Result = notSupported() + + override suspend fun listTaglines(form: it.vercruysse.lemmyapi.datatypes.ListTaglines): Result> = notSupported() + + override suspend fun createOAuthProvider(form: it.vercruysse.lemmyapi.datatypes.CreateOAuthProvider): Result = notSupported() + + override suspend fun editOAuthProvider(form: it.vercruysse.lemmyapi.datatypes.EditOAuthProvider): Result = notSupported() + + override suspend fun deleteOAuthProvider(form: it.vercruysse.lemmyapi.datatypes.DeleteOAuthProvider): Result = notSupported() + + override suspend fun getMultiCommunity(form: it.vercruysse.lemmyapi.datatypes.GetMultiCommunity): Result = notSupported() + + override suspend fun createMultiCommunity(form: it.vercruysse.lemmyapi.datatypes.CreateMultiCommunity): Result = notSupported() + + override suspend fun editMultiCommunity(form: it.vercruysse.lemmyapi.datatypes.EditMultiCommunity): Result = notSupported() + + override suspend fun createMultiCommunityEntry(form: it.vercruysse.lemmyapi.datatypes.CreateOrDeleteMultiCommunityEntry): Result = notSupported() + + override suspend fun deleteMultiCommunityEntry(form: it.vercruysse.lemmyapi.datatypes.CreateOrDeleteMultiCommunityEntry): Result = notSupported() + + override suspend fun followMultiCommunity(form: it.vercruysse.lemmyapi.datatypes.FollowMultiCommunity): Result = notSupported() + + override suspend fun listMultiCommunities(form: it.vercruysse.lemmyapi.datatypes.ListMultiCommunities): Result> = notSupported() + + override suspend fun deleteMediaAdmin(form: it.vercruysse.lemmyapi.datatypes.DeleteImageParams): Result = notSupported() + + override suspend fun imageHealth(): Result = notSupported() } From a5721f0000ba1af0dcef1cbbd4bd52d386d42ab8 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Sat, 23 May 2026 21:29:53 +0200 Subject: [PATCH 062/110] Tweak --- app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApi.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApi.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApi.kt index bad00bd2..6fb8792e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApi.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApi.kt @@ -67,7 +67,7 @@ object LemmyApi { return if (nodeResult.isFailure) { false } else { - return isFediverse(nodeResult.getOrThrow()) + isFediverse(nodeResult.getOrThrow()) } } From cd71e80f8e4ff2a402ba6a850aa765bb1b9004a0 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Sat, 23 May 2026 21:53:31 +0200 Subject: [PATCH 063/110] Fix ListLogins --- .../kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt | 3 ++- .../it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt | 5 +++-- .../it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt | 5 +++-- .../it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt | 5 +++-- .../it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt | 5 +++-- .../it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt | 5 +++-- 7 files changed, 18 insertions(+), 12 deletions(-) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt index 16a7284a..5b52cd87 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt @@ -631,7 +631,7 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version * * @GET("user/list_logins") */ - abstract suspend fun listLogins(): Result> + abstract suspend fun listLogins(): Result /** * Returns an error message if your auth token is invalid diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt index ecad888c..66b71e33 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt @@ -5,6 +5,7 @@ import io.ktor.client.HttpClient import it.vercruysse.lemmyapi.LemmyApiBaseController import it.vercruysse.lemmyapi.datatypes.ListCustomEmojis import it.vercruysse.lemmyapi.datatypes.ListCustomEmojisResponse +import it.vercruysse.lemmyapi.datatypes.ListLoginsResponse import it.vercruysse.lemmyapi.datatypes.ListNotifications import it.vercruysse.lemmyapi.datatypes.MarkNotificationAsRead import it.vercruysse.lemmyapi.datatypes.MyUserInfo @@ -970,7 +971,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @GET("user/list_logins") */ - override suspend fun listLogins(): Result> = notSupported() + override suspend fun listLogins(): Result = notSupported() /** * Returns an error message if your auth token is invalid diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt index c6864ed7..4f58aac6 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt @@ -5,6 +5,7 @@ import io.ktor.client.HttpClient import it.vercruysse.lemmyapi.LemmyApiBaseController import it.vercruysse.lemmyapi.datatypes.ListCustomEmojis import it.vercruysse.lemmyapi.datatypes.ListCustomEmojisResponse +import it.vercruysse.lemmyapi.datatypes.ListLoginsResponse import it.vercruysse.lemmyapi.datatypes.ListNotifications import it.vercruysse.lemmyapi.datatypes.MarkNotificationAsRead import it.vercruysse.lemmyapi.datatypes.MyUserInfo @@ -927,8 +928,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @GET("user/list_logins") */ - override suspend fun listLogins(): Result> = - api.listLogins().map { it.map(transformer::toUni) } + override suspend fun listLogins(): Result = + api.listLogins().map { ListLoginsResponse(logins = it.map(transformer::toUni)) } /** * Returns an error message if your auth token is invalid diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt index 9ebe7acd..eb7c7ec7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt @@ -5,6 +5,7 @@ import io.ktor.client.HttpClient import it.vercruysse.lemmyapi.LemmyApiBaseController import it.vercruysse.lemmyapi.datatypes.ListCustomEmojis import it.vercruysse.lemmyapi.datatypes.ListCustomEmojisResponse +import it.vercruysse.lemmyapi.datatypes.ListLoginsResponse import it.vercruysse.lemmyapi.datatypes.ListNotifications import it.vercruysse.lemmyapi.datatypes.MarkNotificationAsRead import it.vercruysse.lemmyapi.datatypes.MyUserInfo @@ -928,8 +929,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @GET("user/list_logins") */ - override suspend fun listLogins(): Result> = - api.listLogins().map { it.map(transformer::toUni) } + override suspend fun listLogins(): Result = + api.listLogins().map { ListLoginsResponse(logins = it.map(transformer::toUni)) } /** * Returns an error message if your auth token is invalid diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt index 65b61464..a30be791 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt @@ -5,6 +5,7 @@ import io.ktor.client.HttpClient import it.vercruysse.lemmyapi.LemmyApiBaseController import it.vercruysse.lemmyapi.datatypes.ListCustomEmojis import it.vercruysse.lemmyapi.datatypes.ListCustomEmojisResponse +import it.vercruysse.lemmyapi.datatypes.ListLoginsResponse import it.vercruysse.lemmyapi.datatypes.ListNotifications import it.vercruysse.lemmyapi.datatypes.MarkNotificationAsRead import it.vercruysse.lemmyapi.datatypes.MyUserInfo @@ -928,8 +929,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @GET("user/list_logins") */ - override suspend fun listLogins(): Result> = - api.listLogins().map { it.map(transformer::toUni) } + override suspend fun listLogins(): Result = + api.listLogins().map { ListLoginsResponse(logins = it.map(transformer::toUni)) } /** * Returns an error message if your auth token is invalid diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt index d6ff3469..783986c5 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt @@ -5,6 +5,7 @@ import io.ktor.client.HttpClient import it.vercruysse.lemmyapi.LemmyApiBaseController import it.vercruysse.lemmyapi.datatypes.ListCustomEmojis import it.vercruysse.lemmyapi.datatypes.ListCustomEmojisResponse +import it.vercruysse.lemmyapi.datatypes.ListLoginsResponse import it.vercruysse.lemmyapi.datatypes.ListNotifications import it.vercruysse.lemmyapi.datatypes.MarkNotificationAsRead import it.vercruysse.lemmyapi.datatypes.MyUserInfo @@ -926,8 +927,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @GET("user/list_logins") */ - override suspend fun listLogins(): Result> = - api.listLogins().map { it.map(transformer::toUni) } + override suspend fun listLogins(): Result = + api.listLogins().map { ListLoginsResponse(logins = it.map(transformer::toUni)) } /** * Returns an error message if your auth token is invalid diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt index e286454a..d8f0d78c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt @@ -5,6 +5,7 @@ import io.ktor.client.HttpClient import it.vercruysse.lemmyapi.LemmyApiBaseController import it.vercruysse.lemmyapi.datatypes.ListCustomEmojis import it.vercruysse.lemmyapi.datatypes.ListCustomEmojisResponse +import it.vercruysse.lemmyapi.datatypes.ListLoginsResponse import it.vercruysse.lemmyapi.datatypes.ListNotifications import it.vercruysse.lemmyapi.datatypes.MarkNotificationAsRead import it.vercruysse.lemmyapi.datatypes.ModlogView @@ -921,8 +922,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @GET("user/list_logins") */ - override suspend fun listLogins(): Result> = - api.listLogins().map { it.map(transformer::toUni) } + override suspend fun listLogins(): Result = + api.listLogins().map { ListLoginsResponse(logins = it.map(transformer::toUni)) } /** * Returns an error message if your auth token is invalid From b13c7554d530aabcb66147ba6fd3d79f4d92b3d0 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Sat, 23 May 2026 23:15:38 +0200 Subject: [PATCH 064/110] Fix hidePost --- .../vercruysse/lemmyapi/LemmyApiBaseController.kt | 9 ++++++++- .../it/vercruysse/lemmyapi/datatypes/HidePost.kt | 4 +--- .../it/vercruysse/lemmyapi/datatypes/HidePosts.kt | 13 +++++++++++++ .../lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt | 4 +++- .../lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt | 5 ++++- .../lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt | 12 +++++++++++- .../lemmyapi/v0/x19/x11/MapperGenerator.kt | 2 +- .../vercruysse/lemmyapi/v0/x19/x11/Transformer.kt | 4 ++-- .../lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt | 5 ++++- .../lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt | 12 +++++++++++- .../lemmyapi/v0/x19/x4/MapperGenerator.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt | 4 ++-- .../lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt | 12 +++++++++++- .../lemmyapi/v0/x19/x6/MapperGenerator.kt | 2 +- .../it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt | 4 ++-- 15 files changed, 75 insertions(+), 19 deletions(-) create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/HidePosts.kt diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt index 5b52cd87..f82df71d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt @@ -687,7 +687,14 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version * * @POST("post/hide") */ - abstract suspend fun hidePost(form: HidePost): Result + abstract suspend fun hidePost(form: HidePost): Result + + /** + * Hide multiple posts from list views. + * + * @POST("post/hide") + */ + abstract suspend fun hidePosts(form: HidePosts): Result /** * Get the application a user submitted when they first registered their account diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/HidePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/HidePost.kt index 0fe1b7ef..86d3590b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/HidePost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/HidePost.kt @@ -5,11 +5,9 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize -// TODO changes again, single post Id - @CommonParcelize @Serializable data class HidePost( - val post_ids: List, + val post_id: PostId, val hide: Boolean, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/HidePosts.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/HidePosts.kt new file mode 100644 index 00000000..6cefbed2 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/HidePosts.kt @@ -0,0 +1,13 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +import it.vercruysse.lemmyapi.CommonParcelize + +@CommonParcelize +@Serializable +data class HidePosts( + val post_ids: List, + val hide: Boolean, +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt index 66b71e33..fae1aaa6 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt @@ -1040,7 +1040,9 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @POST("post/hide") */ - override suspend fun hidePost(form: it.vercruysse.lemmyapi.datatypes.HidePost): Result = notSupported() + override suspend fun hidePost(form: it.vercruysse.lemmyapi.datatypes.HidePost): Result = notSupported() + + override suspend fun hidePosts(form: it.vercruysse.lemmyapi.datatypes.HidePosts): Result = notSupported() /** * Get the application a user submitted when they first registered their account diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt index 4f58aac6..03402457 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt @@ -990,7 +990,10 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @POST("post/hide") */ - override suspend fun hidePost(form: it.vercruysse.lemmyapi.datatypes.HidePost): Result = + override suspend fun hidePost(form: it.vercruysse.lemmyapi.datatypes.HidePost): Result = + notSupported() + + override suspend fun hidePosts(form: it.vercruysse.lemmyapi.datatypes.HidePosts): Result = notSupported() /** diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt index eb7c7ec7..2a6077cc 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt @@ -989,7 +989,17 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @POST("post/hide") */ - override suspend fun hidePost(form: it.vercruysse.lemmyapi.datatypes.HidePost): Result = + override suspend fun hidePost(form: it.vercruysse.lemmyapi.datatypes.HidePost): Result = + api.hidePost(it.vercruysse.lemmyapi.v0.x19.x11.datatypes.HidePost(post_ids = listOf(form.post_id), hide = form.hide)).fold( + onSuccess = { _ -> + api.getPost(it.vercruysse.lemmyapi.v0.x19.x11.datatypes.GetPost(id = form.post_id)) + .map(transformer::toUni) + .map { post -> it.vercruysse.lemmyapi.datatypes.PostResponse(post_view = post.post_view) } + }, + onFailure = { Result.failure(it) }, + ) + + override suspend fun hidePosts(form: it.vercruysse.lemmyapi.datatypes.HidePosts): Result = api.hidePost(transformer.fromUni(form)) /** diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt index 177a1de8..2cf1aac6 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt @@ -122,7 +122,7 @@ internal interface MapperGenerator { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetSiteMetadata): GetSiteMetadata fun fromUni(d: it.vercruysse.lemmyapi.datatypes.HideCommunity): HideCommunity - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.HidePost): HidePost + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.HidePosts): HidePost fun fromUniC(d: it.vercruysse.lemmyapi.datatypes.ListReports): ListCommentReports fun fromUniP(d: it.vercruysse.lemmyapi.datatypes.ListReports): ListPostReports fun fromUniPm(d: it.vercruysse.lemmyapi.datatypes.ListReports): ListPrivateMessageReports diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt index 9e52f847..38a86095 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt @@ -92,7 +92,7 @@ import it.vercruysse.lemmyapi.datatypes.GetSiteMetadata as LemmyapiDatatypesGetS import it.vercruysse.lemmyapi.datatypes.GetSiteMetadataResponse as LemmyapiDatatypesGetSiteMetadataResponse import it.vercruysse.lemmyapi.datatypes.GetSiteResponse as LemmyapiDatatypesGetSiteResponse import it.vercruysse.lemmyapi.datatypes.HideCommunity as LemmyapiDatatypesHideCommunity -import it.vercruysse.lemmyapi.datatypes.HidePost as LemmyapiDatatypesHidePost +import it.vercruysse.lemmyapi.datatypes.HidePosts as LemmyapiDatatypesHidePosts import it.vercruysse.lemmyapi.datatypes.ImageDetails as LemmyapiDatatypesImageDetails import it.vercruysse.lemmyapi.datatypes.Instance as LemmyapiDatatypesInstance import it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState as LemmyapiDatatypesInstanceWithFederationState @@ -1575,7 +1575,7 @@ internal class Transformer : MapperGenerator { reason = d.reason, ) - override fun fromUni(d: LemmyapiDatatypesHidePost): X11DatatypesHidePost = X11DatatypesHidePost( + override fun fromUni(d: LemmyapiDatatypesHidePosts): X11DatatypesHidePost = X11DatatypesHidePost( post_ids = d.post_ids, hide = d.hide, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt index a30be791..7de3ec01 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt @@ -989,7 +989,10 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @POST("post/hide") */ - override suspend fun hidePost(form: it.vercruysse.lemmyapi.datatypes.HidePost): Result = + override suspend fun hidePost(form: it.vercruysse.lemmyapi.datatypes.HidePost): Result = + notSupported() + + override suspend fun hidePosts(form: it.vercruysse.lemmyapi.datatypes.HidePosts): Result = notSupported() /** diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt index 783986c5..c9b0b416 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt @@ -987,7 +987,17 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @POST("post/hide") */ - override suspend fun hidePost(form: it.vercruysse.lemmyapi.datatypes.HidePost): Result = + override suspend fun hidePost(form: it.vercruysse.lemmyapi.datatypes.HidePost): Result = + api.hidePost(it.vercruysse.lemmyapi.v0.x19.x4.datatypes.HidePost(post_ids = listOf(form.post_id), hide = form.hide)).fold( + onSuccess = { _ -> + api.getPost(it.vercruysse.lemmyapi.v0.x19.x4.datatypes.GetPost(id = form.post_id)) + .map(transformer::toUni) + .map { post -> it.vercruysse.lemmyapi.datatypes.PostResponse(post_view = post.post_view) } + }, + onFailure = { Result.failure(it) }, + ) + + override suspend fun hidePosts(form: it.vercruysse.lemmyapi.datatypes.HidePosts): Result = api.hidePost(transformer.fromUni(form)) /** diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt index 1e30a4c3..2c5c9046 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt @@ -119,7 +119,7 @@ internal interface MapperGenerator { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetSiteMetadata): GetSiteMetadata fun fromUni(d: it.vercruysse.lemmyapi.datatypes.HideCommunity): HideCommunity - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.HidePost): HidePost + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.HidePosts): HidePost fun fromUniC(d: it.vercruysse.lemmyapi.datatypes.ListReports): ListCommentReports fun fromUniP(d: it.vercruysse.lemmyapi.datatypes.ListReports): ListPostReports fun fromUniPm(d: it.vercruysse.lemmyapi.datatypes.ListReports): ListPrivateMessageReports diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt index f3656133..fa9da76f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt @@ -91,7 +91,7 @@ import it.vercruysse.lemmyapi.datatypes.GetSiteMetadata as LemmyapiDatatypesGetS import it.vercruysse.lemmyapi.datatypes.GetSiteMetadataResponse as LemmyapiDatatypesGetSiteMetadataResponse import it.vercruysse.lemmyapi.datatypes.GetSiteResponse as LemmyapiDatatypesGetSiteResponse import it.vercruysse.lemmyapi.datatypes.HideCommunity as LemmyapiDatatypesHideCommunity -import it.vercruysse.lemmyapi.datatypes.HidePost as LemmyapiDatatypesHidePost +import it.vercruysse.lemmyapi.datatypes.HidePosts as LemmyapiDatatypesHidePosts import it.vercruysse.lemmyapi.datatypes.Instance as LemmyapiDatatypesInstance import it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState as LemmyapiDatatypesInstanceWithFederationState import it.vercruysse.lemmyapi.datatypes.Language as LemmyapiDatatypesLanguage @@ -1581,7 +1581,7 @@ internal class Transformer : MapperGenerator { unresolved_only = d.unresolved_only, ) - override fun fromUni(d: LemmyapiDatatypesHidePost): X4DatatypesHidePost = X4DatatypesHidePost( + override fun fromUni(d: LemmyapiDatatypesHidePosts): X4DatatypesHidePost = X4DatatypesHidePost( post_ids = d.post_ids, hide = d.hide, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt index d8f0d78c..4b5178fc 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt @@ -982,7 +982,17 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @POST("post/hide") */ - override suspend fun hidePost(form: it.vercruysse.lemmyapi.datatypes.HidePost): Result = + override suspend fun hidePost(form: it.vercruysse.lemmyapi.datatypes.HidePost): Result = + api.hidePost(it.vercruysse.lemmyapi.v0.x19.x6.datatypes.HidePost(post_ids = listOf(form.post_id), hide = form.hide)).fold( + onSuccess = { _ -> + api.getPost(it.vercruysse.lemmyapi.v0.x19.x6.datatypes.GetPost(id = form.post_id)) + .map(transformer::toUni) + .map { post -> it.vercruysse.lemmyapi.datatypes.PostResponse(post_view = post.post_view) } + }, + onFailure = { Result.failure(it) }, + ) + + override suspend fun hidePosts(form: it.vercruysse.lemmyapi.datatypes.HidePosts): Result = api.hidePost(transformer.fromUni(form)) /** diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt index e805740b..458b79a9 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt @@ -122,7 +122,7 @@ internal interface MapperGenerator { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetSiteMetadata): GetSiteMetadata fun fromUni(d: it.vercruysse.lemmyapi.datatypes.HideCommunity): HideCommunity - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.HidePost): HidePost + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.HidePosts): HidePost fun fromUniC(d: it.vercruysse.lemmyapi.datatypes.ListReports): ListCommentReports fun fromUniP(d: it.vercruysse.lemmyapi.datatypes.ListReports): ListPostReports fun fromUniPm(d: it.vercruysse.lemmyapi.datatypes.ListReports): ListPrivateMessageReports diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt index cf005a89..92812f78 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt @@ -92,7 +92,7 @@ import it.vercruysse.lemmyapi.datatypes.GetSiteMetadata as LemmyapiDatatypesGetS import it.vercruysse.lemmyapi.datatypes.GetSiteMetadataResponse as LemmyapiDatatypesGetSiteMetadataResponse import it.vercruysse.lemmyapi.datatypes.GetSiteResponse as LemmyapiDatatypesGetSiteResponse import it.vercruysse.lemmyapi.datatypes.HideCommunity as LemmyapiDatatypesHideCommunity -import it.vercruysse.lemmyapi.datatypes.HidePost as LemmyapiDatatypesHidePost +import it.vercruysse.lemmyapi.datatypes.HidePosts as LemmyapiDatatypesHidePosts import it.vercruysse.lemmyapi.datatypes.ImageDetails as LemmyapiDatatypesImageDetails import it.vercruysse.lemmyapi.datatypes.Instance as LemmyapiDatatypesInstance import it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState as LemmyapiDatatypesInstanceWithFederationState @@ -1568,7 +1568,7 @@ internal class Transformer : MapperGenerator { reason = d.reason, ) - override fun fromUni(d: LemmyapiDatatypesHidePost): X6DatatypesHidePost = X6DatatypesHidePost( + override fun fromUni(d: LemmyapiDatatypesHidePosts): X6DatatypesHidePost = X6DatatypesHidePost( post_ids = d.post_ids, hide = d.hide, ) From c1c0743aef669015913c215e7e176f388ad05620 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Sat, 23 May 2026 23:56:28 +0200 Subject: [PATCH 065/110] Fix transferCommunity --- .../it/vercruysse/lemmyapi/LemmyApiBaseController.kt | 2 +- .../lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt | 12 ++++++++++-- .../lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt | 12 ++++++++++-- .../lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt | 12 ++++++++++-- .../lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt | 12 ++++++++++-- .../lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt | 12 ++++++++++-- .../lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt | 12 ++++++++++-- 7 files changed, 61 insertions(+), 13 deletions(-) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt index f82df71d..411521a1 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt @@ -125,7 +125,7 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version * * @POST("community/transfer") */ - abstract suspend fun transferCommunity(form: TransferCommunity): Result + abstract suspend fun transferCommunity(form: TransferCommunity): Result /** * Ban a user from a community. diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt index fae1aaa6..a5683310 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt @@ -213,8 +213,16 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun transferCommunity( form: it.vercruysse.lemmyapi.datatypes.TransferCommunity, - ): Result = - apiV18.transferCommunity(transformer.fromUni(form)).map(transformer::toUni) + ): Result = + apiV18.transferCommunity(transformer.fromUni(form)).map { communityResponse -> + val uniCommunityResponse = transformer.toUni(communityResponse) + it.vercruysse.lemmyapi.datatypes.GetCommunityResponse( + community_view = uniCommunityResponse.community_view, + site = null, + moderators = emptyList(), + discussion_languages = uniCommunityResponse.discussion_languages, + ) + } /** * Ban a user from a community. diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt index 03402457..335ca242 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt @@ -192,8 +192,16 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun transferCommunity( form: it.vercruysse.lemmyapi.datatypes.TransferCommunity, - ): Result = - api.transferCommunity(transformer.fromUni(form)).map(transformer::toUni) + ): Result = + api.transferCommunity(transformer.fromUni(form)).map { communityResponse -> + val uniCommunityResponse = transformer.toUni(communityResponse) + it.vercruysse.lemmyapi.datatypes.GetCommunityResponse( + community_view = uniCommunityResponse.community_view, + site = null, + moderators = emptyList(), + discussion_languages = uniCommunityResponse.discussion_languages, + ) + } /** * Ban a user from a community. diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt index 2a6077cc..3bc855e7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt @@ -192,8 +192,16 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun transferCommunity( form: it.vercruysse.lemmyapi.datatypes.TransferCommunity, - ): Result = - api.transferCommunity(transformer.fromUni(form)).map(transformer::toUni) + ): Result = + api.transferCommunity(transformer.fromUni(form)).map { communityResponse -> + val uniCommunityResponse = transformer.toUni(communityResponse) + it.vercruysse.lemmyapi.datatypes.GetCommunityResponse( + community_view = uniCommunityResponse.community_view, + site = null, + moderators = emptyList(), + discussion_languages = uniCommunityResponse.discussion_languages, + ) + } /** * Ban a user from a community. diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt index 7de3ec01..9cadfa34 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt @@ -193,8 +193,16 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun transferCommunity( form: it.vercruysse.lemmyapi.datatypes.TransferCommunity, - ): Result = - api.transferCommunity(transformer.fromUni(form)).map(transformer::toUni) + ): Result = + api.transferCommunity(transformer.fromUni(form)).map { communityResponse -> + val uniCommunityResponse = transformer.toUni(communityResponse) + it.vercruysse.lemmyapi.datatypes.GetCommunityResponse( + community_view = uniCommunityResponse.community_view, + site = null, + moderators = emptyList(), + discussion_languages = uniCommunityResponse.discussion_languages, + ) + } /** * Ban a user from a community. diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt index c9b0b416..05d1ccd2 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt @@ -192,8 +192,16 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun transferCommunity( form: it.vercruysse.lemmyapi.datatypes.TransferCommunity, - ): Result = - api.transferCommunity(transformer.fromUni(form)).map(transformer::toUni) + ): Result = + api.transferCommunity(transformer.fromUni(form)).map { communityResponse -> + val uniCommunityResponse = transformer.toUni(communityResponse) + it.vercruysse.lemmyapi.datatypes.GetCommunityResponse( + community_view = uniCommunityResponse.community_view, + site = null, + moderators = emptyList(), + discussion_languages = uniCommunityResponse.discussion_languages, + ) + } /** * Ban a user from a community. diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt index 4b5178fc..a64ec074 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt @@ -193,8 +193,16 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun transferCommunity( form: it.vercruysse.lemmyapi.datatypes.TransferCommunity, - ): Result = - api.transferCommunity(transformer.fromUni(form)).map(transformer::toUni) + ): Result = + api.transferCommunity(transformer.fromUni(form)).map { communityResponse -> + val uniCommunityResponse = transformer.toUni(communityResponse) + it.vercruysse.lemmyapi.datatypes.GetCommunityResponse( + community_view = uniCommunityResponse.community_view, + site = null, + moderators = emptyList(), + discussion_languages = uniCommunityResponse.discussion_languages, + ) + } /** * Ban a user from a community. From d0ce1286a3e3ad54755a67e06ec0f8dc74fe3b7e Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Sun, 24 May 2026 01:39:34 +0200 Subject: [PATCH 066/110] Remove todo --- .../it/vercruysse/lemmyapi/datatypes/CreateCommentWarning.kt | 2 -- .../kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonHidden.kt | 2 -- .../lemmyapi/v1/x0/x0/datatypes/CreateCommentWarning.kt | 2 -- 3 files changed, 6 deletions(-) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommentWarning.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommentWarning.kt index ca404b76..50cfe765 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommentWarning.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommentWarning.kt @@ -5,8 +5,6 @@ import it.vercruysse.lemmyapi.DatatypeRoot import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CommentId import kotlinx.serialization.Serializable -// TODO no endpoint yet - @CommonParcelize @Serializable data class CreateCommentWarning( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonHidden.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonHidden.kt index 45092aab..aefed43f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonHidden.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonHidden.kt @@ -4,8 +4,6 @@ import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -// TODO: for new endpoint - @CommonParcelize @Serializable data class ListPersonHidden( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCommentWarning.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCommentWarning.kt index 889ffc88..036318a2 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCommentWarning.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCommentWarning.kt @@ -2,8 +2,6 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes import kotlinx.serialization.Serializable -// TODO no endpoint yet - @Serializable internal data class CreateCommentWarning( val comment_id: CommentId, From 6ea60147c76f69d31fceaec78fcc44b91ca6ba6b Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Sun, 24 May 2026 04:53:11 +0200 Subject: [PATCH 067/110] Apply linter + Mapper --- GeneratorScripts/build.gradle.kts | 7 +- .../src/main/kotlin/MapperGenerator1x0x0.kt | 290 ++ .../kotlin/autogenscripts/GenMapperRoutes.kt | 30 +- app/build.gradle.kts | 36 +- .../it/vercruysse/lemmyapi/LemmyApiBase.kt | 2 +- .../lemmyapi/datatypes/LocalImage.kt | 2 +- .../lemmyapi/datatypes/PrivateMessage.kt | 2 +- .../lemmyapi/dto/CustomDataTypes.kt | 1 - .../lemmyapi/enums/CommentSortType.kt | 19 +- .../lemmyapi/enums/CommunityFollowerState.kt | 4 +- .../lemmyapi/enums/CommunityVisibility.kt | 23 +- .../enums/GetFederatedInstancesKind.kt | 1 - .../vercruysse/lemmyapi/enums/ListingType.kt | 19 +- .../lemmyapi/enums/LocalUserSortType.kt | 7 +- .../lemmyapi/enums/ModlogActionType.kt | 88 +- .../vercruysse/lemmyapi/enums/ModlogKind.kt | 1 - .../lemmyapi/enums/MultiCommunitySortType.kt | 27 +- .../lemmyapi/enums/PersonContentType.kt | 11 +- .../lemmyapi/enums/PostFeatureType.kt | 7 +- .../lemmyapi/enums/PostListingMode.kt | 11 +- .../lemmyapi/enums/RegistrationMode.kt | 11 +- .../vercruysse/lemmyapi/enums/SearchType.kt | 23 +- .../it/vercruysse/lemmyapi/enums/SortType.kt | 75 +- .../lemmyapi/v0/enums/CommentSortType.kt | 2 +- .../lemmyapi/v0/enums/CommunityVisibility.kt | 2 +- .../lemmyapi/v0/enums/ListingType.kt | 2 +- .../lemmyapi/v0/enums/ModlogActionType.kt | 2 +- .../lemmyapi/v0/enums/PostFeatureType.kt | 2 +- .../lemmyapi/v0/enums/PostListingMode.kt | 2 +- .../lemmyapi/v0/enums/RegistrationMode.kt | 2 +- .../lemmyapi/v0/enums/SearchType.kt | 2 +- .../vercruysse/lemmyapi/v0/enums/SortType.kt | 2 +- .../lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt | 8 +- .../lemmyapi/v0/x18/x5/Transformer.kt | 23 +- .../lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt | 6 +- .../lemmyapi/v0/x19/x0/Transformer.kt | 26 +- .../lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt | 12 +- .../lemmyapi/v0/x19/x11/Transformer.kt | 28 +- .../lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt | 6 +- .../lemmyapi/v0/x19/x3/Transformer.kt | 28 +- .../lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt | 13 +- .../lemmyapi/v0/x19/x4/Transformer.kt | 32 +- .../lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt | 12 +- .../lemmyapi/v0/x19/x6/Transformer.kt | 32 +- .../lemmyapi/v1/x0/x0/LemmyApiController.kt | 1 - .../lemmyapi/v1/x0/x0/LemmyApiRouter.kt | 3 - .../lemmyapi/v1/x0/x0/MapperGenerator.kt | 273 ++ .../lemmyapi/v1/x0/x0/Transformer.kt | 2348 +++++++++++++++++ app/src/commonTest/kotlin/utils/UtilTest.kt | 2 +- gradle/wrapper/gradle-wrapper.properties | 4 +- kotlin-js-store/yarn.lock | 415 +-- settings.gradle.kts | 4 +- 52 files changed, 3541 insertions(+), 450 deletions(-) create mode 100644 GeneratorScripts/src/main/kotlin/MapperGenerator1x0x0.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/MapperGenerator.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/Transformer.kt diff --git a/GeneratorScripts/build.gradle.kts b/GeneratorScripts/build.gradle.kts index c3f0085e..5f09dfb2 100644 --- a/GeneratorScripts/build.gradle.kts +++ b/GeneratorScripts/build.gradle.kts @@ -1,7 +1,7 @@ plugins { kotlin("jvm") - kotlin("plugin.serialization") version "2.1.10" - id("com.google.devtools.ksp").version("2.1.10-1.0.30") + kotlin("plugin.serialization") version "2.3.21" + id("com.google.devtools.ksp").version("2.3.8") } repositories { @@ -12,7 +12,7 @@ dependencies { testImplementation("org.jetbrains.kotlin:kotlin-test") implementation("com.charleskorn.kaml:kaml:0.55.0") val ktorVersion = "3.1.2" - val konvertVersion = "3.2.1" + val konvertVersion = "4.5.0" implementation("io.ktor:ktor-client-core:$ktorVersion") implementation("io.ktor:ktor-client-content-negotiation:$ktorVersion") implementation("io.ktor:ktor-serialization-kotlinx-json:$ktorVersion") @@ -23,7 +23,6 @@ dependencies { implementation("com.squareup.okio:okio:3.10.2") implementation("org.jetbrains.kotlinx:kotlinx-io-core:0.6.0") - implementation("io.mcarle:konvert:$konvertVersion") implementation("io.mcarle:konvert-api:$konvertVersion") implementation(project(":app")) diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator1x0x0.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator1x0x0.kt new file mode 100644 index 00000000..97734834 --- /dev/null +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator1x0x0.kt @@ -0,0 +1,290 @@ +@file:Suppress("unused", "INVISIBLE_MEMBER", "INVISIBLE_REFERENCE") + +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.* + +import io.mcarle.konvert.api.Konfig +import io.mcarle.konvert.api.Konvert +import io.mcarle.konvert.api.Konverter +import io.mcarle.konvert.api.Mapping + +//@Konverter( +// options = [ +// Konfig(key = "konvert.konverter.generate-class", value = "true"), +// Konfig(key = "konvert.enable-converters", value = "FloatToIntConverter"), +// Konfig(key = "konvert.add-generated-konverter-annotation", value = "false"), +// ], +//) +internal interface MapperGenerator1x0x0 { + + fun toUni(d: AddAdminResponse): it.vercruysse.lemmyapi.datatypes.AddAdminResponse + fun toUni(d: AddModToCommunityResponse): it.vercruysse.lemmyapi.datatypes.AddModToCommunityResponse + fun toUni(d: AdminAllowInstanceParams): it.vercruysse.lemmyapi.datatypes.AdminAllowInstanceParams + fun toUni(d: AdminBlockInstanceParams): it.vercruysse.lemmyapi.datatypes.AdminBlockInstanceParams + fun toUni(d: AdminListUsers): it.vercruysse.lemmyapi.datatypes.AdminListUsers + fun toUni(d: AdminOAuthProvider): it.vercruysse.lemmyapi.datatypes.AdminOAuthProvider + fun toUni(d: AuthenticateWithOauth): it.vercruysse.lemmyapi.datatypes.AuthenticateWithOauth + fun toUni(d: CaptchaResponse): it.vercruysse.lemmyapi.datatypes.CaptchaResponse + fun toUni(d: Comment): it.vercruysse.lemmyapi.datatypes.Comment + fun toUni(d: CommentActions): it.vercruysse.lemmyapi.datatypes.CommentActions + fun toUni(d: CommentReport): it.vercruysse.lemmyapi.datatypes.CommentReport + fun toUni(d: CommentReportResponse): it.vercruysse.lemmyapi.datatypes.CommentReportResponse + fun toUni(d: CommentReportView): it.vercruysse.lemmyapi.datatypes.CommentReportView + fun toUni(d: CommentResponse): it.vercruysse.lemmyapi.datatypes.CommentResponse + fun toUni(d: CommentSlimView): it.vercruysse.lemmyapi.datatypes.CommentSlimView + + @Konvert(mappings = [Mapping(target = "tags", expression = "d.tags.map { this.toUni(d = it) }")]) + fun toUni(d: CommentView): it.vercruysse.lemmyapi.datatypes.CommentView + fun toUni(d: Community): it.vercruysse.lemmyapi.datatypes.Community + fun toUni(d: CommunityActions): it.vercruysse.lemmyapi.datatypes.CommunityActions + fun toUni(d: CommunityFollowerView): it.vercruysse.lemmyapi.datatypes.CommunityFollowerView + fun toUni(d: CommunityIdQuery): it.vercruysse.lemmyapi.datatypes.CommunityIdQuery + fun toUni(d: CommunityModeratorView): it.vercruysse.lemmyapi.datatypes.CommunityModeratorView + fun toUni(d: CommunityReport): it.vercruysse.lemmyapi.datatypes.CommunityReport + fun toUni(d: CommunityReportResponse): it.vercruysse.lemmyapi.datatypes.CommunityReportResponse + fun toUni(d: CommunityReportView): it.vercruysse.lemmyapi.datatypes.CommunityReportView + fun toUni(d: CommunityResponse): it.vercruysse.lemmyapi.datatypes.CommunityResponse + fun toUni(d: CommunityTag): it.vercruysse.lemmyapi.datatypes.CommunityTag + + @Konvert(mappings = [Mapping(target = "tags", expression = "d.tags.map { this.toUni(d = it) }")]) + fun toUni(d: CommunityView): it.vercruysse.lemmyapi.datatypes.CommunityView + fun toUni(d: CustomEmoji): it.vercruysse.lemmyapi.datatypes.CustomEmoji + fun toUni(d: CustomEmojiKeyword): it.vercruysse.lemmyapi.datatypes.CustomEmojiKeyword + fun toUni(d: CustomEmojiResponse): it.vercruysse.lemmyapi.datatypes.CustomEmojiResponse + fun toUni(d: CustomEmojiView): it.vercruysse.lemmyapi.datatypes.CustomEmojiView + fun toUni(d: EditTotpResponse): it.vercruysse.lemmyapi.datatypes.EditTotpResponse + + fun toUni(d: ExportDataResponse): it.vercruysse.lemmyapi.datatypes.ExportDataResponse + fun toUni(d: FederatedInstanceView): it.vercruysse.lemmyapi.datatypes.FederatedInstanceView + fun toUni(d: FederationAllowList): it.vercruysse.lemmyapi.datatypes.FederationAllowList + fun toUni(d: FederationBlockList): it.vercruysse.lemmyapi.datatypes.FederationBlockList + fun toUni(d: FederationQueueState): it.vercruysse.lemmyapi.datatypes.FederationQueueState + fun toUni(d: GenerateTotpSecretResponse): it.vercruysse.lemmyapi.datatypes.GenerateTotpSecretResponse + fun toUni(d: GetCaptchaResponse): it.vercruysse.lemmyapi.datatypes.GetCaptchaResponse + fun toUni(d: GetCommunityResponse): it.vercruysse.lemmyapi.datatypes.GetCommunityResponse + fun toUni(d: GetMultiCommunityResponse): it.vercruysse.lemmyapi.datatypes.GetMultiCommunityResponse + fun toUni(d: GetPersonDetailsResponse): it.vercruysse.lemmyapi.datatypes.GetPersonDetailsResponse + fun toUni(d: GetPostResponse): it.vercruysse.lemmyapi.datatypes.GetPostResponse + fun toUni(d: GetSiteMetadataResponse): it.vercruysse.lemmyapi.datatypes.GetSiteMetadataResponse + fun toUni(d: GetSiteResponse): it.vercruysse.lemmyapi.datatypes.GetSiteResponse + fun toUni(d: ImageDetails): it.vercruysse.lemmyapi.datatypes.ImageDetails + fun toUni(d: ImageGetParams): it.vercruysse.lemmyapi.datatypes.ImageGetParams + fun toUni(d: ImageProxyParams): it.vercruysse.lemmyapi.datatypes.ImageProxyParams + fun toUni(d: Instance): it.vercruysse.lemmyapi.datatypes.Instance + fun toUni(d: InstanceActions): it.vercruysse.lemmyapi.datatypes.InstanceActions + fun toUni(d: Language): it.vercruysse.lemmyapi.datatypes.Language + fun toUni(d: LinkMetadata): it.vercruysse.lemmyapi.datatypes.LinkMetadata + fun toUni(d: ListCustomEmojisResponse): it.vercruysse.lemmyapi.datatypes.ListCustomEmojisResponse + fun toUni(d: ListLoginsResponse): it.vercruysse.lemmyapi.datatypes.ListLoginsResponse + fun toUni(d: LocalImage): it.vercruysse.lemmyapi.datatypes.LocalImage + fun toUni(d: LocalImageView): it.vercruysse.lemmyapi.datatypes.LocalImageView + fun toUni(d: LocalSite): it.vercruysse.lemmyapi.datatypes.LocalSite + fun toUni(d: LocalSiteRateLimit): it.vercruysse.lemmyapi.datatypes.LocalSiteRateLimit + fun toUni(d: LocalSiteUrlBlocklist): it.vercruysse.lemmyapi.datatypes.LocalSiteUrlBlocklist + fun toUni(d: LocalUser): it.vercruysse.lemmyapi.datatypes.LocalUser + fun toUni(d: LocalUserView): it.vercruysse.lemmyapi.datatypes.LocalUserView + fun toUni(d: LoginResponse): it.vercruysse.lemmyapi.datatypes.LoginResponse + fun toUni(d: LoginToken): it.vercruysse.lemmyapi.datatypes.LoginToken + fun toUni(d: ModEditPost): it.vercruysse.lemmyapi.datatypes.ModEditPost + fun toUni(d: Modlog): it.vercruysse.lemmyapi.datatypes.Modlog + fun toUni(d: ModlogView): it.vercruysse.lemmyapi.datatypes.ModlogView + fun toUni(d: MultiCommunity): it.vercruysse.lemmyapi.datatypes.MultiCommunity + fun toUni(d: MultiCommunityEntry): it.vercruysse.lemmyapi.datatypes.MultiCommunityEntry + fun toUni(d: MultiCommunityFollow): it.vercruysse.lemmyapi.datatypes.MultiCommunityFollow + fun toUni(d: MultiCommunityResponse): it.vercruysse.lemmyapi.datatypes.MultiCommunityResponse + fun toUni(d: MultiCommunityView): it.vercruysse.lemmyapi.datatypes.MultiCommunityView + fun toUni(d: MyUserInfo): it.vercruysse.lemmyapi.datatypes.MyUserInfo + fun toUni(d: NotePerson): it.vercruysse.lemmyapi.datatypes.NotePerson + fun toUni(d: Notification): it.vercruysse.lemmyapi.datatypes.Notification + + fun toUni(d: NotificationData): it.vercruysse.lemmyapi.datatypes.NotificationData = when (d) { + is CommentView -> toUni(d) + is ModlogView -> toUni(d) + is PrivateMessageView -> toUni(d) + } + + @Konvert(mappings = [Mapping(target = "data", expression = "toUni(d.data)")]) + fun toUni(d: NotificationView): it.vercruysse.lemmyapi.datatypes.NotificationView + fun toUni(d: OAuthAccount): it.vercruysse.lemmyapi.datatypes.OAuthAccount + fun toUni(d: PendingFollow): it.vercruysse.lemmyapi.datatypes.PendingFollow + fun toUni(d: PendingFollowerView): it.vercruysse.lemmyapi.datatypes.PendingFollowerView + fun toUni(d: Person): it.vercruysse.lemmyapi.datatypes.Person + fun toUni(d: PersonActions): it.vercruysse.lemmyapi.datatypes.PersonActions + fun toUni(d: PersonResponse): it.vercruysse.lemmyapi.datatypes.PersonResponse + fun toUni(d: PersonView): it.vercruysse.lemmyapi.datatypes.PersonView + fun toUni(d: PluginMetadata): it.vercruysse.lemmyapi.datatypes.PluginMetadata + fun toUni(d: Post): it.vercruysse.lemmyapi.datatypes.Post + fun toUni(d: PostActions): it.vercruysse.lemmyapi.datatypes.PostActions + + fun toUni(d: PostCommentCombinedView): it.vercruysse.lemmyapi.datatypes.PostCommentCombinedView = when (d) { + is CommentView -> toUni(d) + is PostView -> toUni(d) + } + + fun toUni(d: PostOrCommentOrPrivateMessage): it.vercruysse.lemmyapi.datatypes.PostOrCommentOrPrivateMessage = when (d) { + is Comment -> toUni(d) + is Post -> toUni(d) + is PrivateMessage -> toUni(d) + } + fun toUni(d: PostReport): it.vercruysse.lemmyapi.datatypes.PostReport + fun toUni(d: PostReportResponse): it.vercruysse.lemmyapi.datatypes.PostReportResponse + fun toUni(d: PostReportView): it.vercruysse.lemmyapi.datatypes.PostReportView + fun toUni(d: PostResponse): it.vercruysse.lemmyapi.datatypes.PostResponse + + @Konvert(mappings = [Mapping(target = "tags", expression = "d.tags.map { this.toUni(d = it) }")]) + fun toUni(d: PostView): it.vercruysse.lemmyapi.datatypes.PostView + fun toUni(d: PrivateMessage): it.vercruysse.lemmyapi.datatypes.PrivateMessage + fun toUni(d: PrivateMessageReport): it.vercruysse.lemmyapi.datatypes.PrivateMessageReport + fun toUni(d: PrivateMessageReportResponse): it.vercruysse.lemmyapi.datatypes.PrivateMessageReportResponse + fun toUni(d: PrivateMessageReportView): it.vercruysse.lemmyapi.datatypes.PrivateMessageReportView + fun toUni(d: PrivateMessageResponse): it.vercruysse.lemmyapi.datatypes.PrivateMessageResponse + fun toUni(d: PrivateMessageView): it.vercruysse.lemmyapi.datatypes.PrivateMessageView + fun toUni(d: PublicOAuthProvider): it.vercruysse.lemmyapi.datatypes.PublicOAuthProvider + fun toUni(d: RegistrationApplication): it.vercruysse.lemmyapi.datatypes.RegistrationApplication + fun toUni(d: RegistrationApplicationResponse): it.vercruysse.lemmyapi.datatypes.RegistrationApplicationResponse + fun toUni(d: RegistrationApplicationView): it.vercruysse.lemmyapi.datatypes.RegistrationApplicationView + + // ReportCombinedView is a sealed interface — Konvert cannot generate this automatically. + fun toUni(d: ReportCombinedView): it.vercruysse.lemmyapi.datatypes.ReportCombinedView = when (d) { + is CommentReportView -> toUni(d) + is PostReportView -> toUni(d) + is CommunityReportView -> toUni(d) + is PrivateMessageReportView -> toUni(d) + } + + // fun toUni(d: ReportCombinedView): already implemented above as when-dispatch + fun toUni(d: ResendVerificationEmail): it.vercruysse.lemmyapi.datatypes.ResendVerificationEmail + fun toUni(d: SearchCombinedView): it.vercruysse.lemmyapi.datatypes.SearchCombinedView = when (d) { + is CommentView -> toUni(d) + is CommunityView -> toUni(d) + is PersonView -> toUni(d) + is PostView -> toUni(d) + is MultiCommunityView -> toUni(d) + } + fun toUni(d: SearchResponse): it.vercruysse.lemmyapi.datatypes.SearchResponse + fun toUni(d: Site): it.vercruysse.lemmyapi.datatypes.Site + fun toUni(d: SiteResponse): it.vercruysse.lemmyapi.datatypes.SiteResponse + fun toUni(d: SiteView): it.vercruysse.lemmyapi.datatypes.SiteView + fun toUni(d: Tagline): it.vercruysse.lemmyapi.datatypes.Tagline + fun toUni(d: TaglineResponse): it.vercruysse.lemmyapi.datatypes.TaglineResponse + fun toUni(d: UnreadCountsResponse): it.vercruysse.lemmyapi.datatypes.UnreadCountsResponse + fun toUni(d: UploadImageResponse): it.vercruysse.lemmyapi.datatypes.UploadImageResponse + fun toUni(d: UserBlockInstanceCommunitiesParams): it.vercruysse.lemmyapi.datatypes.UserBlockInstanceCommunitiesParams + fun toUni(d: UserBlockInstancePersonsParams): it.vercruysse.lemmyapi.datatypes.UserBlockInstancePersonsParams + fun toUni(d: UserSettingsBackup): it.vercruysse.lemmyapi.datatypes.UserSettingsBackup + @Konvert(mappings = [Mapping(target = "score", expression = "if (d.is_upvote) 1 else -1")]) + fun toUni(d: VoteView): it.vercruysse.lemmyapi.datatypes.VoteView + + // body mappings + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.AddAdmin): AddAdmin + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.AddModToCommunity): AddModToCommunity + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ApproveCommunityPendingFollower): ApproveCommunityPendingFollower + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ApproveRegistrationApplication): ApproveRegistrationApplication + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.BanFromCommunity): BanFromCommunity + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.BanPerson): BanPerson + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.BlockCommunity): BlockCommunity + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.BlockPerson): BlockPerson + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ChangePassword): ChangePassword + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.CreateComment): CreateComment + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.CreateCommentLike): CreateCommentLike + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.CreateCommentReport): CreateCommentReport + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.CreateCommentWarning): CreateCommentWarning + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.CreateCommunity): CreateCommunity + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.CreateCommunityReport): CreateCommunityReport + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.CreateCommunityTag): CreateCommunityTag + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.CreateCustomEmoji): CreateCustomEmoji + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.CreateMultiCommunity): CreateMultiCommunity + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.CreateOAuthProvider): CreateOAuthProvider + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.CreateOrDeleteMultiCommunityEntry): CreateOrDeleteMultiCommunityEntry + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.CreatePost): CreatePost + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.CreatePostLike): CreatePostLike + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.CreatePostReport): CreatePostReport + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.CreatePostWarning): CreatePostWarning + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.CreatePrivateMessage): CreatePrivateMessage + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.CreatePrivateMessageReport): CreatePrivateMessageReport + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.CreateSite): CreateSite + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.CreateTagline): CreateTagline + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.DeleteAccount): DeleteAccount + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.DeleteComment): DeleteComment + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.DeleteCommunity): DeleteCommunity + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.DeleteCommunityTag): DeleteCommunityTag + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.DeleteCustomEmoji): DeleteCustomEmoji + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.DeleteImageParams): DeleteImageParams + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.DeleteOAuthProvider): DeleteOAuthProvider + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.DeletePost): DeletePost + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.DeletePrivateMessage): DeletePrivateMessage + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.DeleteTagline): DeleteTagline + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.DistinguishComment): DistinguishComment + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.EditComment): EditComment + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.EditCommunity): EditCommunity + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.EditCommunityNotifications): EditCommunityNotifications + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.EditCommunityTag): EditCommunityTag + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.EditCustomEmoji): EditCustomEmoji + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.EditMultiCommunity): EditMultiCommunity + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.EditOAuthProvider): EditOAuthProvider + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.EditPost): EditPost + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.EditPostNotifications): EditPostNotifications + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.EditPrivateMessage): EditPrivateMessage + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.EditSite): EditSite + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.EditTagline): EditTagline + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.EditTotp): EditTotp + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.FeaturePost): FeaturePost + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.FollowCommunity): FollowCommunity + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.FollowMultiCommunity): FollowMultiCommunity + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetComment): GetComment + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetComments): GetComments + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetCommunity): GetCommunity + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetFederatedInstances): GetFederatedInstances + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetModlog): GetModlog + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetMultiCommunity): GetMultiCommunity + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPersonDetails): GetPersonDetails + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPost): GetPost + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPosts): GetPosts + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetRandomCommunity): GetRandomCommunity + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetRegistrationApplication): GetRegistrationApplication + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetSiteMetadata): GetSiteMetadata + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.HideCommunity): HideCommunity + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.HidePost): HidePost + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListCommentLikes): ListCommentLikes + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListCommunities): ListCommunities + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListCommunityPendingFollows): ListCommunityPendingFollows + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListCustomEmojis): ListCustomEmojis + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListMedia): ListMedia + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListMultiCommunities): ListMultiCommunities + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListNotifications): ListNotifications + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListPersonContent): ListPersonContent + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListPersonHidden): ListPersonHidden + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListPersonLiked): ListPersonLiked + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListPersonRead): ListPersonRead + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListPersonSaved): ListPersonSaved + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListPostLikes): ListPostLikes + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListRegistrationApplications): ListRegistrationApplications + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListReports): ListReports + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListTaglines): ListTaglines + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.LockComment): LockComment + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.LockPost): LockPost + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.Login): Login + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead): MarkManyPostsAsRead + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkNotificationAsRead): MarkNotificationAsRead + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkPostAsRead): MarkPostAsRead + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset): PasswordChangeAfterReset + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordReset): PasswordReset + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgeComment): PurgeComment + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgeCommunity): PurgeCommunity + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgePerson): PurgePerson + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgePost): PurgePost + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.Register): Register + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.RemoveComment): RemoveComment + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.RemoveCommunity): RemoveCommunity + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.RemovePost): RemovePost + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ResolveCommentReport): ResolveCommentReport + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ResolveCommunityReport): ResolveCommunityReport + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ResolveObject): ResolveObject + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ResolvePostReport): ResolvePostReport + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ResolvePrivateMessageReport): ResolvePrivateMessageReport + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.SaveComment): SaveComment + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.SavePost): SavePost + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.SaveUserSettings): SaveUserSettings + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.Search): Search + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.TransferCommunity): TransferCommunity + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.VerifyEmail): VerifyEmail +} diff --git a/GeneratorScripts/src/main/kotlin/autogenscripts/GenMapperRoutes.kt b/GeneratorScripts/src/main/kotlin/autogenscripts/GenMapperRoutes.kt index 42cb65ff..b2a0ab4d 100644 --- a/GeneratorScripts/src/main/kotlin/autogenscripts/GenMapperRoutes.kt +++ b/GeneratorScripts/src/main/kotlin/autogenscripts/GenMapperRoutes.kt @@ -35,25 +35,23 @@ fun genMapRoutes( targetFile.listFiles() ?.filter { !it.nameWithoutExtension.endsWith("Id") } ?.forEach { - sourceMap.get(it.name)?.let { - val typeName = it.nameWithoutExtension + sourceMap.get(it.name)?.let { file -> + val typeName = file.nameWithoutExtension val isSourceExcluded = toSourceExclusion.contains(typeName) val isTargetExcluded = toTargetExclusion.contains(typeName) + if(shouldSkipFile(file)) { + return@forEach + } // If doesn't end with response its request body thus needs reverse mapping if (typeName.endsWith("Response") && !isSourceExcluded) { tempFile.appendText(" fun toUni(d: $typeName): $targetQualifier$typeName\n") } else if (!isSourceExcluded && ( - classHasAuth(it) || // 0.18 has auth - (bodyRequestIndicators.any { ind -> - typeName.startsWith(ind) + (bodyRequestIndicators.any { ind -> typeName.startsWith(ind) } && !dataTypesExceptions.contains(typeName)) ) ) { - if (classHasAuth(it)) { - toSourceMappings += " @Konvert(mappings=[Mapping(target=\"auth\", constant=\"auth\")])\n" - } toSourceMappings += " fun fromUni(d: $targetQualifier$typeName): $typeName\n" } else { if (!isTargetExcluded) { @@ -68,16 +66,28 @@ fun genMapRoutes( tempFile.appendText("$toSourceMappings}\n") } +// 0.18 has auth fun classHasAuth(classFile: File): Boolean { return classFile.readText().contains("val auth: String") } +fun shouldSkipFile(classFile: File) = classHasTypeAlias(classFile) || classHasInterface(classFile) + +fun classHasTypeAlias(classFile: File): Boolean { + return classFile.readText().contains("typealias ") +} + +fun classHasInterface(classFile: File): Boolean { + return classFile.readText().contains("interface ") +} + fun main() { val exclusionSrc = setOf( -// "MarkPostAsRead" + "PagedResponse" ) val exclusionTarget = setOf( + "PagedResponse" // "LocalUser", "MyUserInfo", "LocalSiteRateLimit" ) - genMapRoutes("v0/x19/x11", exclusionSrc, exclusionTarget) + genMapRoutes("v1/x0/x0", exclusionSrc, exclusionTarget) } diff --git a/app/build.gradle.kts b/app/build.gradle.kts index e7bbdc7c..58164834 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -4,9 +4,9 @@ import org.jmailen.gradle.kotlinter.tasks.LintTask plugins { kotlin("multiplatform") - kotlin("plugin.serialization") version "2.1.10" + kotlin("plugin.serialization") version "2.3.21" id("org.jmailen.kotlinter") version "5.0.1" - id("com.google.devtools.ksp") version ("2.1.10-1.0.30") + id("com.google.devtools.ksp") version ("2.3.8") id("com.vanniktech.maven.publish") version "0.33.0" id("com.github.ben-manes.versions") version "0.51.0" id("com.android.library") @@ -47,12 +47,14 @@ kotlin { linuxX64() linuxArm64() mingwX64() - macosX64() macosArm64() + iosSimulatorArm64() iosX64() iosArm64() - watchosX64() + watchosSimulatorArm64() + watchosArm32() watchosArm64() + watchosDeviceArm64() js { nodejs() @@ -122,19 +124,6 @@ kotlin { } } - val publicationsFromMainHost = listOf(jvm(), js(), androidTarget()).map { it.name } + "kotlinMultiplatform" - - publishing { - publications { - matching { it.name in publicationsFromMainHost }.all { - val targetPublication = this@all - tasks.withType() - .matching { it.publication == targetPublication } - .configureEach { onlyIf { getHostOsName() == OS.LINUX } } - } - } - } - targets.configureEach { compilations.configureEach { compileTaskProvider.configure { @@ -147,6 +136,19 @@ kotlin { } } +val publicationsFromMainHost = listOf("jvm", "js", "android", "kotlinMultiplatform") + +publishing { + publications { + matching { it.name in publicationsFromMainHost }.all { + val targetPublication = this@all + tasks.withType() + .matching { it.publication == targetPublication } + .configureEach { onlyIf { getHostOsName() == OS.LINUX } } + } + } +} + tasks.withType { val l = fileTree(".") diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBase.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBase.kt index 7745e989..5bd49c39 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBase.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBase.kt @@ -3,8 +3,8 @@ package it.vercruysse.lemmyapi import io.github.z4kn4fein.semver.Version import io.ktor.client.* import it.vercruysse.lemmyapi.dto.NodeInfo -import it.vercruysse.lemmyapi.enums.VersionTracker import it.vercruysse.lemmyapi.dto.getSupportedEntries +import it.vercruysse.lemmyapi.enums.VersionTracker import it.vercruysse.lemmyapi.exception.NotSupportedException // Wanted to keep this as an interface, but interfaces can't keep state diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalImage.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalImage.kt index e9fac1b6..8c4aa345 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalImage.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalImage.kt @@ -11,7 +11,7 @@ data class LocalImage( val person_id: PersonId? = null, val pictrs_alias: String, /** Removed in Lemmy 1.0.0 */ - val pictrs_delete_token: String, + val pictrs_delete_token: String? = null, val published_at: String, /** Added in Lemmy 1.0.0 */ val thumbnail_for_post_id: PostId? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessage.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessage.kt index 54af08b5..36eda852 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessage.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessage.kt @@ -17,7 +17,7 @@ data class PrivateMessage( val content: String, val deleted: Boolean, /** Removed in 1.0.0 */ - val read: Boolean, + val read: Boolean = false, val published_at: String, val updated_at: String? = null, val ap_id: String, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/dto/CustomDataTypes.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/dto/CustomDataTypes.kt index 305b306f..b4a917b3 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/dto/CustomDataTypes.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/dto/CustomDataTypes.kt @@ -18,7 +18,6 @@ import it.vercruysse.lemmyapi.utils.isBetweenVersions * */ - /** * Returns the supported entries for the given version. * It is possible that this list is empty, such case means this type is not used at all in a newer version diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/CommentSortType.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/CommentSortType.kt index d869db42..fcb83597 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/CommentSortType.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/CommentSortType.kt @@ -9,9 +9,18 @@ import kotlinx.serialization.Serializable @Serializable enum class CommentSortType(override val minimumVersion: Version = MINIMUM_API_VERSION, override val maximumVersion: Version? = null) : VersionTracker { - @SerialName("hot") Hot, - @SerialName("top") Top, - @SerialName("new") New, - @SerialName("old") Old, - @SerialName("controversial") Controversial(V0_19_0), + @SerialName("hot") + Hot, + + @SerialName("top") + Top, + + @SerialName("new") + New, + + @SerialName("old") + Old, + + @SerialName("controversial") + Controversial(V0_19_0), } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/CommunityFollowerState.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/CommunityFollowerState.kt index dc83ee8d..e22ed488 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/CommunityFollowerState.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/CommunityFollowerState.kt @@ -8,11 +8,11 @@ enum class CommunityFollowerState { Accepted, Pending, ApprovalRequired, - Denied + Denied, ; companion object { - internal fun from(d: SubscribedType): CommunityFollowerState? = + internal fun from(d: SubscribedType): CommunityFollowerState? = when (d) { SubscribedType.Subscribed -> Accepted SubscribedType.NotSubscribed -> null diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/CommunityVisibility.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/CommunityVisibility.kt index 33a458b5..58ae32fc 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/CommunityVisibility.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/CommunityVisibility.kt @@ -9,10 +9,21 @@ import kotlinx.serialization.Serializable @Serializable enum class CommunityVisibility(override val minimumVersion: Version = V0_19_4, override val maximumVersion: Version? = null) : VersionTracker { - @SerialName("public") Public, - @SerialName("local_only") LocalOnly(V0_19_4, V1_0_0), - @SerialName("unlisted") Unlisted(V1_0_0), - @SerialName("local_only_public") LocalOnlyPublic(V1_0_0), - @SerialName("local_only_private") LocalOnlyPrivate(V1_0_0), - @SerialName("private") Private(V1_0_0), + @SerialName("public") + Public, + + @SerialName("local_only") + LocalOnly(V0_19_4, V1_0_0), + + @SerialName("unlisted") + Unlisted(V1_0_0), + + @SerialName("local_only_public") + LocalOnlyPublic(V1_0_0), + + @SerialName("local_only_private") + LocalOnlyPrivate(V1_0_0), + + @SerialName("private") + Private(V1_0_0), } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/GetFederatedInstancesKind.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/GetFederatedInstancesKind.kt index 62aa81c7..5c387eef 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/GetFederatedInstancesKind.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/GetFederatedInstancesKind.kt @@ -5,7 +5,6 @@ import it.vercruysse.lemmyapi.V1_0_0 import it.vercruysse.lemmyapi.enums.VersionTracker import kotlinx.serialization.Serializable - @Serializable enum class GetFederatedInstancesKind(override val minimumVersion: Version = V1_0_0, override val maximumVersion: Version? = null) : VersionTracker { All, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/ListingType.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/ListingType.kt index 4adbac3e..dee1671d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/ListingType.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/ListingType.kt @@ -10,9 +10,18 @@ import kotlinx.serialization.Serializable @Serializable enum class ListingType(override val minimumVersion: Version = MINIMUM_API_VERSION, override val maximumVersion: Version? = null) : VersionTracker { - @SerialName("all") All, - @SerialName("local") Local, - @SerialName("subscribed") Subscribed, - @SerialName("moderator_view") ModeratorView(V0_19_0), - @SerialName("suggested") Suggested(V1_0_0), + @SerialName("all") + All, + + @SerialName("local") + Local, + + @SerialName("subscribed") + Subscribed, + + @SerialName("moderator_view") + ModeratorView(V0_19_0), + + @SerialName("suggested") + Suggested(V1_0_0), } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/LocalUserSortType.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/LocalUserSortType.kt index 6cb2a0c7..20284c44 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/LocalUserSortType.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/LocalUserSortType.kt @@ -7,6 +7,9 @@ import kotlinx.serialization.Serializable @Serializable enum class LocalUserSortType(override val minimumVersion: Version = V1_0_0, override val maximumVersion: Version? = null) : VersionTracker { - @SerialName("new") New, - @SerialName("old") Old; + @SerialName("new") + New, + + @SerialName("old") + Old, } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/ModlogActionType.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/ModlogActionType.kt index d3252c66..0a1c1545 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/ModlogActionType.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/ModlogActionType.kt @@ -9,27 +9,69 @@ import kotlinx.serialization.Serializable @Serializable enum class ModlogActionType(override val minimumVersion: Version = MINIMUM_API_VERSION, override val maximumVersion: Version? = null) : VersionTracker { - @SerialName("all") All, - @SerialName("mod_remove_post") ModRemovePost, - @SerialName("mod_lock_post") ModLockPost, - @SerialName("mod_feature_post") ModFeaturePost, - @SerialName("mod_remove_comment") ModRemoveComment, - @SerialName("mod_lock_comment") ModLockComment(V1_0_0), - @SerialName("admin_remove_community") AdminRemoveCommunity(MINIMUM_API_VERSION), - @SerialName("mod_ban_from_community") ModBanFromCommunity, - @SerialName("mod_add_to_community") ModAddToCommunity(MINIMUM_API_VERSION), - @SerialName("mod_transfer_community") ModTransferCommunity, - @SerialName("admin_add") AdminAdd(MINIMUM_API_VERSION), - @SerialName("admin_ban") AdminBan(MINIMUM_API_VERSION), - @SerialName("mod_change_community_visibility") ModChangeCommunityVisibility(MINIMUM_API_VERSION), - @SerialName("admin_purge_person") AdminPurgePerson, - @SerialName("admin_purge_community") AdminPurgeCommunity, - @SerialName("admin_purge_post") AdminPurgePost, - @SerialName("admin_purge_comment") AdminPurgeComment, - @SerialName("admin_block_instance") AdminBlockInstance(V1_0_0), - @SerialName("admin_allow_instance") AdminAllowInstance(V1_0_0), - @SerialName("mod_warn_comment") ModWarnComment(V1_0_0), - @SerialName("mod_warn_post") ModWarnPost(V1_0_0), - @SerialName("admin_feature_post_site") AdminFeaturePostSite(V1_0_0), - ; + @SerialName("all") + All, + + @SerialName("mod_remove_post") + ModRemovePost, + + @SerialName("mod_lock_post") + ModLockPost, + + @SerialName("mod_feature_post") + ModFeaturePost, + + @SerialName("mod_remove_comment") + ModRemoveComment, + + @SerialName("mod_lock_comment") + ModLockComment(V1_0_0), + + @SerialName("admin_remove_community") + AdminRemoveCommunity(MINIMUM_API_VERSION), + + @SerialName("mod_ban_from_community") + ModBanFromCommunity, + + @SerialName("mod_add_to_community") + ModAddToCommunity(MINIMUM_API_VERSION), + + @SerialName("mod_transfer_community") + ModTransferCommunity, + + @SerialName("admin_add") + AdminAdd(MINIMUM_API_VERSION), + + @SerialName("admin_ban") + AdminBan(MINIMUM_API_VERSION), + + @SerialName("mod_change_community_visibility") + ModChangeCommunityVisibility(MINIMUM_API_VERSION), + + @SerialName("admin_purge_person") + AdminPurgePerson, + + @SerialName("admin_purge_community") + AdminPurgeCommunity, + + @SerialName("admin_purge_post") + AdminPurgePost, + + @SerialName("admin_purge_comment") + AdminPurgeComment, + + @SerialName("admin_block_instance") + AdminBlockInstance(V1_0_0), + + @SerialName("admin_allow_instance") + AdminAllowInstance(V1_0_0), + + @SerialName("mod_warn_comment") + ModWarnComment(V1_0_0), + + @SerialName("mod_warn_post") + ModWarnPost(V1_0_0), + + @SerialName("admin_feature_post_site") + AdminFeaturePostSite(V1_0_0), } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/ModlogKind.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/ModlogKind.kt index 2c6d59c7..08f17f17 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/ModlogKind.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/ModlogKind.kt @@ -5,7 +5,6 @@ import it.vercruysse.lemmyapi.V1_0_0 import it.vercruysse.lemmyapi.enums.VersionTracker import kotlinx.serialization.Serializable - @Serializable enum class ModlogKind(override val minimumVersion: Version = V1_0_0, override val maximumVersion: Version? = null) : VersionTracker { All, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/MultiCommunitySortType.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/MultiCommunitySortType.kt index 9de091d9..a1338d2c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/MultiCommunitySortType.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/MultiCommunitySortType.kt @@ -7,11 +7,24 @@ import kotlinx.serialization.Serializable @Serializable enum class MultiCommunitySortType(override val minimumVersion: Version = V1_0_0, override val maximumVersion: Version? = null) : VersionTracker { - @SerialName("new") New, - @SerialName("old") Old, - @SerialName("name_asc") NameAsc, - @SerialName("name_desc") NameDesc, - @SerialName("communities") Communities, - @SerialName("subscribers") Subscribers, - @SerialName("subscribers_local") SubscribersLocal, + @SerialName("new") + New, + + @SerialName("old") + Old, + + @SerialName("name_asc") + NameAsc, + + @SerialName("name_desc") + NameDesc, + + @SerialName("communities") + Communities, + + @SerialName("subscribers") + Subscribers, + + @SerialName("subscribers_local") + SubscribersLocal, } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/PersonContentType.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/PersonContentType.kt index c3666eb0..f0f97600 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/PersonContentType.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/PersonContentType.kt @@ -7,7 +7,12 @@ import kotlinx.serialization.Serializable @Serializable enum class PersonContentType(override val minimumVersion: Version = V1_0_0, override val maximumVersion: Version? = null) : VersionTracker { - @SerialName("all") All, - @SerialName("comments") Comments, - @SerialName("posts") Posts, + @SerialName("all") + All, + + @SerialName("comments") + Comments, + + @SerialName("posts") + Posts, } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/PostFeatureType.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/PostFeatureType.kt index 7a2f1635..7654ba89 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/PostFeatureType.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/PostFeatureType.kt @@ -5,6 +5,9 @@ import kotlinx.serialization.Serializable @Serializable enum class PostFeatureType { - @SerialName("local") Local, - @SerialName("community") Community, + @SerialName("local") + Local, + + @SerialName("community") + Community, } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/PostListingMode.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/PostListingMode.kt index c61061f6..0f9230e2 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/PostListingMode.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/PostListingMode.kt @@ -7,7 +7,12 @@ import kotlinx.serialization.Serializable @Serializable enum class PostListingMode(override val minimumVersion: Version = V0_19_0, override val maximumVersion: Version? = null) : VersionTracker { - @SerialName("list") List, - @SerialName("card") Card, - @SerialName("small_card") SmallCard, + @SerialName("list") + List, + + @SerialName("card") + Card, + + @SerialName("small_card") + SmallCard, } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/RegistrationMode.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/RegistrationMode.kt index a78ec4f5..e8b430f7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/RegistrationMode.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/RegistrationMode.kt @@ -8,7 +8,12 @@ import kotlinx.serialization.Serializable @Serializable enum class RegistrationMode(override val minimumVersion: Version = MINIMUM_API_VERSION, override val maximumVersion: Version? = null) : VersionTracker { - @SerialName("closed") Closed, - @SerialName("require_application") RequireApplication, - @SerialName("open") Open, + @SerialName("closed") + Closed, + + @SerialName("require_application") + RequireApplication, + + @SerialName("open") + Open, } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/SearchType.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/SearchType.kt index bc54e34a..d154c977 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/SearchType.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/SearchType.kt @@ -8,10 +8,21 @@ import kotlinx.serialization.Serializable @Serializable enum class SearchType(override val minimumVersion: Version = MINIMUM_API_VERSION, override val maximumVersion: Version? = null) : VersionTracker { - @SerialName("all") All, - @SerialName("comments") Comments, - @SerialName("posts") Posts, - @SerialName("communities") Communities, - @SerialName("users") Users, - @SerialName("url") Url, + @SerialName("all") + All, + + @SerialName("comments") + Comments, + + @SerialName("posts") + Posts, + + @SerialName("communities") + Communities, + + @SerialName("users") + Users, + + @SerialName("url") + Url, } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/SortType.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/SortType.kt index f28d8cfa..dabb826e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/SortType.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/SortType.kt @@ -11,23 +11,60 @@ import kotlinx.serialization.Serializable @Serializable enum class SortType(override val minimumVersion: Version = MINIMUM_API_VERSION, override val maximumVersion: Version? = null) : VersionTracker { - @SerialName("active") Active, - @SerialName("hot") Hot, - @SerialName("new") New, - @SerialName("old") Old, - @SerialName("top_day") TopDay, - @SerialName("top_week") TopWeek, - @SerialName("top_month") TopMonth, - @SerialName("top_year") TopYear, - @SerialName("top_all") TopAll, - @SerialName("most_comments") MostComments, - @SerialName("new_comments") NewComments, - @SerialName("top_hour") TopHour(V0_18_0), - @SerialName("top_six_hour") TopSixHour(V0_18_0), - @SerialName("top_twelve_hour") TopTwelveHour(V0_18_0), - @SerialName("top_three_months") TopThreeMonths("0.18.1".toVersion()), - @SerialName("top_six_months") TopSixMonths("0.18.1".toVersion()), - @SerialName("top_nine_months") TopNineMonths("0.18.1".toVersion()), - @SerialName("controversial") Controversial(V0_19_0), - @SerialName("scaled") Scaled(V0_19_0), + @SerialName("active") + Active, + + @SerialName("hot") + Hot, + + @SerialName("new") + New, + + @SerialName("old") + Old, + + @SerialName("top_day") + TopDay, + + @SerialName("top_week") + TopWeek, + + @SerialName("top_month") + TopMonth, + + @SerialName("top_year") + TopYear, + + @SerialName("top_all") + TopAll, + + @SerialName("most_comments") + MostComments, + + @SerialName("new_comments") + NewComments, + + @SerialName("top_hour") + TopHour(V0_18_0), + + @SerialName("top_six_hour") + TopSixHour(V0_18_0), + + @SerialName("top_twelve_hour") + TopTwelveHour(V0_18_0), + + @SerialName("top_three_months") + TopThreeMonths("0.18.1".toVersion()), + + @SerialName("top_six_months") + TopSixMonths("0.18.1".toVersion()), + + @SerialName("top_nine_months") + TopNineMonths("0.18.1".toVersion()), + + @SerialName("controversial") + Controversial(V0_19_0), + + @SerialName("scaled") + Scaled(V0_19_0), } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/CommentSortType.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/CommentSortType.kt index a0819e7b..f0e98162 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/CommentSortType.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/CommentSortType.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.enums -import it.vercruysse.lemmyapi.enums.CommentSortType as UniCommentSortType import kotlinx.serialization.Serializable +import it.vercruysse.lemmyapi.enums.CommentSortType as UniCommentSortType @Serializable internal enum class CommentSortType { diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/CommunityVisibility.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/CommunityVisibility.kt index c51f1997..0a6b99c5 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/CommunityVisibility.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/CommunityVisibility.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.enums -import it.vercruysse.lemmyapi.enums.CommunityVisibility as UniCommunityVisibility import kotlinx.serialization.Serializable +import it.vercruysse.lemmyapi.enums.CommunityVisibility as UniCommunityVisibility @Serializable internal enum class CommunityVisibility { diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/ListingType.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/ListingType.kt index f992fdd0..b593a96a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/ListingType.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/ListingType.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.enums -import it.vercruysse.lemmyapi.enums.ListingType as UniListingType import kotlinx.serialization.Serializable +import it.vercruysse.lemmyapi.enums.ListingType as UniListingType @Serializable internal enum class ListingType { diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/ModlogActionType.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/ModlogActionType.kt index 11db41b0..54dac4ab 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/ModlogActionType.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/ModlogActionType.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.enums -import it.vercruysse.lemmyapi.enums.ModlogActionType as UniModlogActionType import kotlinx.serialization.Serializable +import it.vercruysse.lemmyapi.enums.ModlogActionType as UniModlogActionType @Serializable internal enum class ModlogActionType { diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/PostFeatureType.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/PostFeatureType.kt index d318559c..09ca42cf 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/PostFeatureType.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/PostFeatureType.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.enums -import it.vercruysse.lemmyapi.enums.PostFeatureType as UniPostFeatureType import kotlinx.serialization.Serializable +import it.vercruysse.lemmyapi.enums.PostFeatureType as UniPostFeatureType @Serializable internal enum class PostFeatureType { diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/PostListingMode.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/PostListingMode.kt index df8896e1..6a85f7cc 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/PostListingMode.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/PostListingMode.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.enums -import it.vercruysse.lemmyapi.enums.PostListingMode as UniPostListingMode import kotlinx.serialization.Serializable +import it.vercruysse.lemmyapi.enums.PostListingMode as UniPostListingMode @Serializable internal enum class PostListingMode { diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/RegistrationMode.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/RegistrationMode.kt index 1082ea4f..247e1b19 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/RegistrationMode.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/RegistrationMode.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.enums -import it.vercruysse.lemmyapi.enums.RegistrationMode as UniRegistrationMode import kotlinx.serialization.Serializable +import it.vercruysse.lemmyapi.enums.RegistrationMode as UniRegistrationMode @Serializable internal enum class RegistrationMode { diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/SearchType.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/SearchType.kt index bb274483..2ed92b24 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/SearchType.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/SearchType.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.enums -import it.vercruysse.lemmyapi.enums.SearchType as UniSearchType import kotlinx.serialization.Serializable +import it.vercruysse.lemmyapi.enums.SearchType as UniSearchType @Serializable internal enum class SearchType { diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/SortType.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/SortType.kt index d46c3bbc..838b360f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/SortType.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/SortType.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.enums -import it.vercruysse.lemmyapi.enums.SortType as UniSortType import kotlinx.serialization.Serializable +import it.vercruysse.lemmyapi.enums.SortType as UniSortType @Serializable internal enum class SortType { diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt index a5683310..c054cdb2 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt @@ -182,7 +182,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba apiV18.blockCommunity(transformer.fromUni(form)).map { resp -> it.vercruysse.lemmyapi.datatypes.CommunityResponse( transformer.toUni(resp.community_view), - emptyList() + emptyList(), ) } @@ -428,15 +428,15 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba val allReports = mutableListOf() allReports.addAll( - postsResp.post_reports.map(transformer::toUni) + postsResp.post_reports.map(transformer::toUni), ) allReports.addAll( - commentsResp.comment_reports.map(transformer::toUni) + commentsResp.comment_reports.map(transformer::toUni), ) allReports.addAll( - privateMessagesResp.private_message_reports.map(transformer::toUni) + privateMessagesResp.private_message_reports.map(transformer::toUni), ) PagedResponse(allReports) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt index 81b0d984..4ba119ec 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt @@ -8,7 +8,6 @@ import it.vercruysse.lemmyapi.datatypes.Notification import it.vercruysse.lemmyapi.datatypes.NotificationView import it.vercruysse.lemmyapi.datatypes.PersonActions import it.vercruysse.lemmyapi.datatypes.PostActions -import it.vercruysse.lemmyapi.v0.enums.CommentSortType as V0CommentSortType import it.vercruysse.lemmyapi.enums.CommunityFollowerState import it.vercruysse.lemmyapi.enums.CommunityVisibility import it.vercruysse.lemmyapi.enums.FederationMode @@ -16,12 +15,6 @@ import it.vercruysse.lemmyapi.enums.NotificationType import it.vercruysse.lemmyapi.enums.PostListingMode import it.vercruysse.lemmyapi.enums.SortType import it.vercruysse.lemmyapi.enums.VoteShow -import it.vercruysse.lemmyapi.v0.enums.ListingType as V0ListingType -import it.vercruysse.lemmyapi.v0.enums.ModlogActionType as V0ModlogActionType -import it.vercruysse.lemmyapi.v0.enums.PostFeatureType as V0PostFeatureType -import it.vercruysse.lemmyapi.v0.enums.RegistrationMode as V0RegistrationMode -import it.vercruysse.lemmyapi.v0.enums.SearchType as V0SearchType -import it.vercruysse.lemmyapi.v0.enums.SortType as V0SortType import it.vercruysse.lemmyapi.utils.toAt import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.LocalUser import it.vercruysse.lemmyapi.datatypes.AddAdmin as LemmyapiDatatypesAddAdmin @@ -105,10 +98,10 @@ import it.vercruysse.lemmyapi.datatypes.LockPost as LemmyapiDatatypesLockPost import it.vercruysse.lemmyapi.datatypes.Login as LemmyapiDatatypesLogin import it.vercruysse.lemmyapi.datatypes.LoginResponse as LemmyapiDatatypesLoginResponse import it.vercruysse.lemmyapi.datatypes.MyUserInfo as LemmyapiDatatypesMyUserInfo -import it.vercruysse.lemmyapi.datatypes.PersonResponse as LemmyapiDatatypesPersonResponse import it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset as LemmyapiDatatypesPasswordChangeAfterReset import it.vercruysse.lemmyapi.datatypes.PasswordReset as LemmyapiDatatypesPasswordReset import it.vercruysse.lemmyapi.datatypes.Person as LemmyapiDatatypesPerson +import it.vercruysse.lemmyapi.datatypes.PersonResponse as LemmyapiDatatypesPersonResponse import it.vercruysse.lemmyapi.datatypes.PersonView as LemmyapiDatatypesPersonView import it.vercruysse.lemmyapi.datatypes.Post as LemmyapiDatatypesPost import it.vercruysse.lemmyapi.datatypes.PostReport as LemmyapiDatatypesPostReport @@ -148,6 +141,13 @@ import it.vercruysse.lemmyapi.datatypes.SiteView as LemmyapiDatatypesSiteView import it.vercruysse.lemmyapi.datatypes.Tagline as LemmyapiDatatypesTagline import it.vercruysse.lemmyapi.datatypes.TransferCommunity as LemmyapiDatatypesTransferCommunity import it.vercruysse.lemmyapi.datatypes.VerifyEmail as LemmyapiDatatypesVerifyEmail +import it.vercruysse.lemmyapi.v0.enums.CommentSortType as V0CommentSortType +import it.vercruysse.lemmyapi.v0.enums.ListingType as V0ListingType +import it.vercruysse.lemmyapi.v0.enums.ModlogActionType as V0ModlogActionType +import it.vercruysse.lemmyapi.v0.enums.PostFeatureType as V0PostFeatureType +import it.vercruysse.lemmyapi.v0.enums.RegistrationMode as V0RegistrationMode +import it.vercruysse.lemmyapi.v0.enums.SearchType as V0SearchType +import it.vercruysse.lemmyapi.v0.enums.SortType as V0SortType import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.AddAdmin as X5DatatypesAddAdmin import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.AddAdminResponse as X5DatatypesAddAdminResponse import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.AddModToCommunity as X5DatatypesAddModToCommunity @@ -344,7 +344,7 @@ internal class Transformer(var auth: String) : MapperGenerator { instance_persons_blocks = emptyList(), person_blocks = d.person_blocks.map { this.toUni(d = it.target) }, discussion_languages = d.discussion_languages, - multi_community_follows = emptyList() + multi_community_follows = emptyList(), ) override fun toUni(d: X5DatatypesLocalSiteRateLimit): LemmyapiDatatypesLocalSiteRateLimit = @@ -672,7 +672,7 @@ internal class Transformer(var auth: String) : MapperGenerator { override fun toUni(d: X5DatatypesGetPersonDetailsResponse): LemmyapiDatatypesGetPersonDetailsResponse = LemmyapiDatatypesGetPersonDetailsResponse( person_view = this.toUni(d = d.person_view), moderates = d.moderates.map { this.toUni(d = it) }, - multi_communities_created = emptyList() + multi_communities_created = emptyList(), ) override fun toUni(d: X5DatatypesGetPostResponse): LemmyapiDatatypesGetPostResponse = @@ -715,7 +715,6 @@ internal class Transformer(var auth: String) : MapperGenerator { community_actions = CommunityActions(null, CommunityFollowerState.from(d.subscribed)), ) - fun toUni(d: X5DatatypesPersonMentionView): NotificationView = NotificationView( notification = Notification( @@ -764,7 +763,6 @@ internal class Transformer(var auth: String) : MapperGenerator { metadata = this.toUni(d = d.metadata), ) - override fun toUni(d: X5DatatypesInstance): LemmyapiDatatypesInstance = LemmyapiDatatypesInstance( id = d.id, domain = d.domain, @@ -795,7 +793,6 @@ internal class Transformer(var auth: String) : MapperGenerator { verify_email_sent = d.verify_email_sent, ) - fun toUni(d: X5DatatypesPerson) = this.toUni(d, X5DatatypesPersonAggregates(-1, -1, -1, -1, -1, -1)) override fun toUni(d: X5DatatypesPerson, counts: X5DatatypesPersonAggregates): LemmyapiDatatypesPerson = LemmyapiDatatypesPerson( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt index 335ca242..043d8a27 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt @@ -405,15 +405,15 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba val allReports = mutableListOf() allReports.addAll( - postsResp.post_reports.map(transformer::toUni) + postsResp.post_reports.map(transformer::toUni), ) allReports.addAll( - commentsResp.comment_reports.map(transformer::toUni) + commentsResp.comment_reports.map(transformer::toUni), ) allReports.addAll( - privateMessagesResp.private_message_reports.map(transformer::toUni) + privateMessagesResp.private_message_reports.map(transformer::toUni), ) PagedResponse(allReports) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt index 46470610..d4c907f2 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt @@ -7,7 +7,6 @@ import it.vercruysse.lemmyapi.datatypes.Notification import it.vercruysse.lemmyapi.datatypes.NotificationView import it.vercruysse.lemmyapi.datatypes.PersonActions import it.vercruysse.lemmyapi.datatypes.PostActions -import it.vercruysse.lemmyapi.v0.enums.CommentSortType as V0CommentSortType import it.vercruysse.lemmyapi.enums.CommunityFollowerState import it.vercruysse.lemmyapi.enums.CommunityVisibility import it.vercruysse.lemmyapi.enums.FederationMode @@ -15,13 +14,6 @@ import it.vercruysse.lemmyapi.enums.NotificationType import it.vercruysse.lemmyapi.enums.PostListingMode import it.vercruysse.lemmyapi.enums.SortType import it.vercruysse.lemmyapi.enums.VoteShow -import it.vercruysse.lemmyapi.v0.enums.ListingType as V0ListingType -import it.vercruysse.lemmyapi.v0.enums.ModlogActionType as V0ModlogActionType -import it.vercruysse.lemmyapi.v0.enums.PostFeatureType as V0PostFeatureType -import it.vercruysse.lemmyapi.v0.enums.PostListingMode as V0PostListingMode -import it.vercruysse.lemmyapi.v0.enums.RegistrationMode as V0RegistrationMode -import it.vercruysse.lemmyapi.v0.enums.SearchType as V0SearchType -import it.vercruysse.lemmyapi.v0.enums.SortType as V0SortType import it.vercruysse.lemmyapi.utils.toAt import it.vercruysse.lemmyapi.datatypes.AddAdmin as LemmyapiDatatypesAddAdmin import it.vercruysse.lemmyapi.datatypes.AddAdminResponse as LemmyapiDatatypesAddAdminResponse @@ -73,7 +65,10 @@ import it.vercruysse.lemmyapi.datatypes.EditCustomEmoji as LemmyapiDatatypesEdit import it.vercruysse.lemmyapi.datatypes.EditPost as LemmyapiDatatypesEditPost import it.vercruysse.lemmyapi.datatypes.EditPrivateMessage as LemmyapiDatatypesEditPrivateMessage import it.vercruysse.lemmyapi.datatypes.EditSite as LemmyapiDatatypesEditSite +import it.vercruysse.lemmyapi.datatypes.EditTotp as LemmyapiDatatypesUpdateTotp +import it.vercruysse.lemmyapi.datatypes.EditTotpResponse as LemmyapiDatatypesUpdateTotpResponse import it.vercruysse.lemmyapi.datatypes.FeaturePost as LemmyapiDatatypesFeaturePost +import it.vercruysse.lemmyapi.datatypes.FederationQueueState as LemmyapiDatatypesReadableFederationState import it.vercruysse.lemmyapi.datatypes.FollowCommunity as LemmyapiDatatypesFollowCommunity import it.vercruysse.lemmyapi.datatypes.GenerateTotpSecretResponse as LemmyapiDatatypesGenerateTotpSecretResponse import it.vercruysse.lemmyapi.datatypes.GetCaptchaResponse as LemmyapiDatatypesGetCaptchaResponse @@ -127,7 +122,6 @@ import it.vercruysse.lemmyapi.datatypes.PurgeComment as LemmyapiDatatypesPurgeCo import it.vercruysse.lemmyapi.datatypes.PurgeCommunity as LemmyapiDatatypesPurgeCommunity import it.vercruysse.lemmyapi.datatypes.PurgePerson as LemmyapiDatatypesPurgePerson import it.vercruysse.lemmyapi.datatypes.PurgePost as LemmyapiDatatypesPurgePost -import it.vercruysse.lemmyapi.datatypes.FederationQueueState as LemmyapiDatatypesReadableFederationState import it.vercruysse.lemmyapi.datatypes.Register as LemmyapiDatatypesRegister import it.vercruysse.lemmyapi.datatypes.RegistrationApplication as LemmyapiDatatypesRegistrationApplication import it.vercruysse.lemmyapi.datatypes.RegistrationApplicationResponse as LemmyapiDatatypesRegistrationApplicationResponse @@ -149,10 +143,16 @@ import it.vercruysse.lemmyapi.datatypes.SiteResponse as LemmyapiDatatypesSiteRes import it.vercruysse.lemmyapi.datatypes.SiteView as LemmyapiDatatypesSiteView import it.vercruysse.lemmyapi.datatypes.Tagline as LemmyapiDatatypesTagline import it.vercruysse.lemmyapi.datatypes.TransferCommunity as LemmyapiDatatypesTransferCommunity -import it.vercruysse.lemmyapi.datatypes.EditTotp as LemmyapiDatatypesUpdateTotp -import it.vercruysse.lemmyapi.datatypes.EditTotpResponse as LemmyapiDatatypesUpdateTotpResponse import it.vercruysse.lemmyapi.datatypes.UserBlockInstanceCommunitiesParams as LemmyapiDatatypesBlockInstance import it.vercruysse.lemmyapi.datatypes.VerifyEmail as LemmyapiDatatypesVerifyEmail +import it.vercruysse.lemmyapi.v0.enums.CommentSortType as V0CommentSortType +import it.vercruysse.lemmyapi.v0.enums.ListingType as V0ListingType +import it.vercruysse.lemmyapi.v0.enums.ModlogActionType as V0ModlogActionType +import it.vercruysse.lemmyapi.v0.enums.PostFeatureType as V0PostFeatureType +import it.vercruysse.lemmyapi.v0.enums.PostListingMode as V0PostListingMode +import it.vercruysse.lemmyapi.v0.enums.RegistrationMode as V0RegistrationMode +import it.vercruysse.lemmyapi.v0.enums.SearchType as V0SearchType +import it.vercruysse.lemmyapi.v0.enums.SortType as V0SortType import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.AddAdmin as X0DatatypesAddAdmin import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.AddAdminResponse as X0DatatypesAddAdminResponse import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.AddModToCommunity as X0DatatypesAddModToCommunity @@ -614,7 +614,7 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X0DatatypesGetPersonDetailsResponse): LemmyapiDatatypesGetPersonDetailsResponse = LemmyapiDatatypesGetPersonDetailsResponse( person_view = this.toUni(d = d.person_view), moderates = d.moderates.map { this.toUni(d = it) }, - multi_communities_created = emptyList() + multi_communities_created = emptyList(), ) override fun toUni(d: X0DatatypesGetPostResponse): LemmyapiDatatypesGetPostResponse = @@ -1458,8 +1458,6 @@ internal class Transformer : MapperGenerator { unread_only = d.unread_only, ) - - override fun fromUni(d: LemmyapiDatatypesGetSiteMetadata): X0DatatypesGetSiteMetadata = X0DatatypesGetSiteMetadata( url = d.url, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt index 3bc855e7..61e8e261 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt @@ -405,15 +405,15 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba val allReports = mutableListOf() allReports.addAll( - postsResp.post_reports.map(transformer::toUni) + postsResp.post_reports.map(transformer::toUni), ) allReports.addAll( - commentsResp.comment_reports.map(transformer::toUni) + commentsResp.comment_reports.map(transformer::toUni), ) allReports.addAll( - privateMessagesResp.private_message_reports.map(transformer::toUni) + privateMessagesResp.private_message_reports.map(transformer::toUni), ) PagedResponse(allReports) @@ -981,7 +981,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun listMedia( form: it.vercruysse.lemmyapi.datatypes.ListMedia, - ): Result> = notSupported() + ): Result> = + api.listMedia(transformer.fromUni(form)).map { PagedResponse(it.images.map(transformer::toUni)) } /** * List all the media known to your instance. @@ -990,7 +991,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun listMediaAdmin( form: it.vercruysse.lemmyapi.datatypes.ListMedia, - ): Result> = notSupported() + ): Result> = + api.listAllMedia(transformer.fromUni(form)).map { PagedResponse(it.images.map(transformer::toUni)) } /** * Hide a post from list views. diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt index 38a86095..59ca589e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt @@ -7,21 +7,12 @@ import it.vercruysse.lemmyapi.datatypes.Notification import it.vercruysse.lemmyapi.datatypes.NotificationView import it.vercruysse.lemmyapi.datatypes.PersonActions import it.vercruysse.lemmyapi.datatypes.PostActions -import it.vercruysse.lemmyapi.v0.enums.CommentSortType as V0CommentSortType import it.vercruysse.lemmyapi.enums.CommunityFollowerState import it.vercruysse.lemmyapi.enums.CommunityVisibility import it.vercruysse.lemmyapi.enums.FederationMode import it.vercruysse.lemmyapi.enums.NotificationType import it.vercruysse.lemmyapi.enums.SortType import it.vercruysse.lemmyapi.enums.VoteShow -import it.vercruysse.lemmyapi.v0.enums.CommunityVisibility as V0CommunityVisibility -import it.vercruysse.lemmyapi.v0.enums.ListingType as V0ListingType -import it.vercruysse.lemmyapi.v0.enums.ModlogActionType as V0ModlogActionType -import it.vercruysse.lemmyapi.v0.enums.PostFeatureType as V0PostFeatureType -import it.vercruysse.lemmyapi.v0.enums.PostListingMode as V0PostListingMode -import it.vercruysse.lemmyapi.v0.enums.RegistrationMode as V0RegistrationMode -import it.vercruysse.lemmyapi.v0.enums.SearchType as V0SearchType -import it.vercruysse.lemmyapi.v0.enums.SortType as V0SortType import it.vercruysse.lemmyapi.utils.toAt import it.vercruysse.lemmyapi.datatypes.AddAdmin as LemmyapiDatatypesAddAdmin import it.vercruysse.lemmyapi.datatypes.AddAdminResponse as LemmyapiDatatypesAddAdminResponse @@ -73,7 +64,10 @@ import it.vercruysse.lemmyapi.datatypes.EditCustomEmoji as LemmyapiDatatypesEdit import it.vercruysse.lemmyapi.datatypes.EditPost as LemmyapiDatatypesEditPost import it.vercruysse.lemmyapi.datatypes.EditPrivateMessage as LemmyapiDatatypesEditPrivateMessage import it.vercruysse.lemmyapi.datatypes.EditSite as LemmyapiDatatypesEditSite +import it.vercruysse.lemmyapi.datatypes.EditTotp as LemmyapiDatatypesUpdateTotp +import it.vercruysse.lemmyapi.datatypes.EditTotpResponse as LemmyapiDatatypesUpdateTotpResponse import it.vercruysse.lemmyapi.datatypes.FeaturePost as LemmyapiDatatypesFeaturePost +import it.vercruysse.lemmyapi.datatypes.FederationQueueState as LemmyapiDatatypesReadableFederationState import it.vercruysse.lemmyapi.datatypes.FollowCommunity as LemmyapiDatatypesFollowCommunity import it.vercruysse.lemmyapi.datatypes.GenerateTotpSecretResponse as LemmyapiDatatypesGenerateTotpSecretResponse import it.vercruysse.lemmyapi.datatypes.GetCaptchaResponse as LemmyapiDatatypesGetCaptchaResponse @@ -137,7 +131,6 @@ import it.vercruysse.lemmyapi.datatypes.PurgeComment as LemmyapiDatatypesPurgeCo import it.vercruysse.lemmyapi.datatypes.PurgeCommunity as LemmyapiDatatypesPurgeCommunity import it.vercruysse.lemmyapi.datatypes.PurgePerson as LemmyapiDatatypesPurgePerson import it.vercruysse.lemmyapi.datatypes.PurgePost as LemmyapiDatatypesPurgePost -import it.vercruysse.lemmyapi.datatypes.FederationQueueState as LemmyapiDatatypesReadableFederationState import it.vercruysse.lemmyapi.datatypes.Register as LemmyapiDatatypesRegister import it.vercruysse.lemmyapi.datatypes.RegistrationApplication as LemmyapiDatatypesRegistrationApplication import it.vercruysse.lemmyapi.datatypes.RegistrationApplicationResponse as LemmyapiDatatypesRegistrationApplicationResponse @@ -159,11 +152,18 @@ import it.vercruysse.lemmyapi.datatypes.SiteResponse as LemmyapiDatatypesSiteRes import it.vercruysse.lemmyapi.datatypes.SiteView as LemmyapiDatatypesSiteView import it.vercruysse.lemmyapi.datatypes.Tagline as LemmyapiDatatypesTagline import it.vercruysse.lemmyapi.datatypes.TransferCommunity as LemmyapiDatatypesTransferCommunity -import it.vercruysse.lemmyapi.datatypes.EditTotp as LemmyapiDatatypesUpdateTotp -import it.vercruysse.lemmyapi.datatypes.EditTotpResponse as LemmyapiDatatypesUpdateTotpResponse import it.vercruysse.lemmyapi.datatypes.UserBlockInstanceCommunitiesParams as LemmyapiDatatypesBlockInstance import it.vercruysse.lemmyapi.datatypes.VerifyEmail as LemmyapiDatatypesVerifyEmail import it.vercruysse.lemmyapi.datatypes.VoteView as LemmyapiDatatypesVoteView +import it.vercruysse.lemmyapi.v0.enums.CommentSortType as V0CommentSortType +import it.vercruysse.lemmyapi.v0.enums.CommunityVisibility as V0CommunityVisibility +import it.vercruysse.lemmyapi.v0.enums.ListingType as V0ListingType +import it.vercruysse.lemmyapi.v0.enums.ModlogActionType as V0ModlogActionType +import it.vercruysse.lemmyapi.v0.enums.PostFeatureType as V0PostFeatureType +import it.vercruysse.lemmyapi.v0.enums.PostListingMode as V0PostListingMode +import it.vercruysse.lemmyapi.v0.enums.RegistrationMode as V0RegistrationMode +import it.vercruysse.lemmyapi.v0.enums.SearchType as V0SearchType +import it.vercruysse.lemmyapi.v0.enums.SortType as V0SortType import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.AddAdmin as X11DatatypesAddAdmin import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.AddAdminResponse as X11DatatypesAddAdminResponse import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.AddModToCommunity as X11DatatypesAddModToCommunity @@ -545,7 +545,7 @@ internal class Transformer : MapperGenerator { person_view = this.toUni(d = d.person_view), site = d.site?.let { this.toUni(d = it) }, moderates = d.moderates.map { this.toUni(d = it) }, - multi_communities_created = emptyList() + multi_communities_created = emptyList(), ) override fun toUni(d: X11DatatypesGetPostResponse): LemmyapiDatatypesGetPostResponse = @@ -1561,8 +1561,6 @@ internal class Transformer : MapperGenerator { person_id = d.person_id, ) - - override fun fromUni(d: LemmyapiDatatypesGetSiteMetadata): X11DatatypesGetSiteMetadata = X11DatatypesGetSiteMetadata( url = d.url, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt index 9cadfa34..b1e62256 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt @@ -406,15 +406,15 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba val allReports = mutableListOf() allReports.addAll( - postsResp.post_reports.map(transformer::toUni) + postsResp.post_reports.map(transformer::toUni), ) allReports.addAll( - commentsResp.comment_reports.map(transformer::toUni) + commentsResp.comment_reports.map(transformer::toUni), ) allReports.addAll( - privateMessagesResp.private_message_reports.map(transformer::toUni) + privateMessagesResp.private_message_reports.map(transformer::toUni), ) PagedResponse(allReports) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt index ce858c71..1858afe2 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt @@ -8,7 +8,6 @@ import it.vercruysse.lemmyapi.datatypes.Notification import it.vercruysse.lemmyapi.datatypes.NotificationView import it.vercruysse.lemmyapi.datatypes.PersonActions import it.vercruysse.lemmyapi.datatypes.PostActions -import it.vercruysse.lemmyapi.v0.enums.CommentSortType as V0CommentSortType import it.vercruysse.lemmyapi.enums.CommunityFollowerState import it.vercruysse.lemmyapi.enums.CommunityVisibility import it.vercruysse.lemmyapi.enums.FederationMode @@ -16,13 +15,6 @@ import it.vercruysse.lemmyapi.enums.NotificationType import it.vercruysse.lemmyapi.enums.PostListingMode import it.vercruysse.lemmyapi.enums.SortType import it.vercruysse.lemmyapi.enums.VoteShow -import it.vercruysse.lemmyapi.v0.enums.ListingType as V0ListingType -import it.vercruysse.lemmyapi.v0.enums.ModlogActionType as V0ModlogActionType -import it.vercruysse.lemmyapi.v0.enums.PostFeatureType as V0PostFeatureType -import it.vercruysse.lemmyapi.v0.enums.PostListingMode as V0PostListingMode -import it.vercruysse.lemmyapi.v0.enums.RegistrationMode as V0RegistrationMode -import it.vercruysse.lemmyapi.v0.enums.SearchType as V0SearchType -import it.vercruysse.lemmyapi.v0.enums.SortType as V0SortType import it.vercruysse.lemmyapi.utils.toAt import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.SiteMetadata import it.vercruysse.lemmyapi.datatypes.AddAdmin as LemmyapiDatatypesAddAdmin @@ -75,7 +67,10 @@ import it.vercruysse.lemmyapi.datatypes.EditCustomEmoji as LemmyapiDatatypesEdit import it.vercruysse.lemmyapi.datatypes.EditPost as LemmyapiDatatypesEditPost import it.vercruysse.lemmyapi.datatypes.EditPrivateMessage as LemmyapiDatatypesEditPrivateMessage import it.vercruysse.lemmyapi.datatypes.EditSite as LemmyapiDatatypesEditSite +import it.vercruysse.lemmyapi.datatypes.EditTotp as LemmyapiDatatypesUpdateTotp +import it.vercruysse.lemmyapi.datatypes.EditTotpResponse as LemmyapiDatatypesUpdateTotpResponse import it.vercruysse.lemmyapi.datatypes.FeaturePost as LemmyapiDatatypesFeaturePost +import it.vercruysse.lemmyapi.datatypes.FederationQueueState as LemmyapiDatatypesReadableFederationState import it.vercruysse.lemmyapi.datatypes.FollowCommunity as LemmyapiDatatypesFollowCommunity import it.vercruysse.lemmyapi.datatypes.GenerateTotpSecretResponse as LemmyapiDatatypesGenerateTotpSecretResponse import it.vercruysse.lemmyapi.datatypes.GetCaptchaResponse as LemmyapiDatatypesGetCaptchaResponse @@ -131,7 +126,6 @@ import it.vercruysse.lemmyapi.datatypes.PurgeComment as LemmyapiDatatypesPurgeCo import it.vercruysse.lemmyapi.datatypes.PurgeCommunity as LemmyapiDatatypesPurgeCommunity import it.vercruysse.lemmyapi.datatypes.PurgePerson as LemmyapiDatatypesPurgePerson import it.vercruysse.lemmyapi.datatypes.PurgePost as LemmyapiDatatypesPurgePost -import it.vercruysse.lemmyapi.datatypes.FederationQueueState as LemmyapiDatatypesReadableFederationState import it.vercruysse.lemmyapi.datatypes.Register as LemmyapiDatatypesRegister import it.vercruysse.lemmyapi.datatypes.RegistrationApplication as LemmyapiDatatypesRegistrationApplication import it.vercruysse.lemmyapi.datatypes.RegistrationApplicationResponse as LemmyapiDatatypesRegistrationApplicationResponse @@ -153,11 +147,17 @@ import it.vercruysse.lemmyapi.datatypes.SiteResponse as LemmyapiDatatypesSiteRes import it.vercruysse.lemmyapi.datatypes.SiteView as LemmyapiDatatypesSiteView import it.vercruysse.lemmyapi.datatypes.Tagline as LemmyapiDatatypesTagline import it.vercruysse.lemmyapi.datatypes.TransferCommunity as LemmyapiDatatypesTransferCommunity -import it.vercruysse.lemmyapi.datatypes.EditTotp as LemmyapiDatatypesUpdateTotp -import it.vercruysse.lemmyapi.datatypes.EditTotpResponse as LemmyapiDatatypesUpdateTotpResponse import it.vercruysse.lemmyapi.datatypes.UserBlockInstanceCommunitiesParams as LemmyapiDatatypesBlockInstance import it.vercruysse.lemmyapi.datatypes.VerifyEmail as LemmyapiDatatypesVerifyEmail import it.vercruysse.lemmyapi.datatypes.VoteView as LemmyapiDatatypesVoteView +import it.vercruysse.lemmyapi.v0.enums.CommentSortType as V0CommentSortType +import it.vercruysse.lemmyapi.v0.enums.ListingType as V0ListingType +import it.vercruysse.lemmyapi.v0.enums.ModlogActionType as V0ModlogActionType +import it.vercruysse.lemmyapi.v0.enums.PostFeatureType as V0PostFeatureType +import it.vercruysse.lemmyapi.v0.enums.PostListingMode as V0PostListingMode +import it.vercruysse.lemmyapi.v0.enums.RegistrationMode as V0RegistrationMode +import it.vercruysse.lemmyapi.v0.enums.SearchType as V0SearchType +import it.vercruysse.lemmyapi.v0.enums.SortType as V0SortType import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.AddAdmin as X3DatatypesAddAdmin import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.AddAdminResponse as X3DatatypesAddAdminResponse import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.AddModToCommunity as X3DatatypesAddModToCommunity @@ -633,7 +633,7 @@ internal class Transformer : MapperGenerator { person_view = this.toUni(d = d.person_view), site = d.site?.let { this.toUni(d = it) }, moderates = d.moderates.map { this.toUni(d = it) }, - multi_communities_created = emptyList() + multi_communities_created = emptyList(), ) override fun toUni(d: X3DatatypesGetPostResponse): LemmyapiDatatypesGetPostResponse = @@ -655,7 +655,7 @@ internal class Transformer : MapperGenerator { kind = NotificationType.Reply, post_id = d.post.id, ), - data =this.toUniCV(d), + data = this.toUniCV(d), ) fun toUniCV(d: X3DatatypesCommentReplyView): LemmyapiDatatypesCommentView = @@ -1475,8 +1475,6 @@ internal class Transformer : MapperGenerator { unread_only = d.unread_only, ) - - override fun fromUni(d: LemmyapiDatatypesGetSiteMetadata): X3DatatypesGetSiteMetadata = X3DatatypesGetSiteMetadata( url = d.url, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt index 05d1ccd2..e6896478 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt @@ -405,21 +405,22 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba val allReports = mutableListOf() allReports.addAll( - postsResp.post_reports.map(transformer::toUni) + postsResp.post_reports.map(transformer::toUni), ) allReports.addAll( - commentsResp.comment_reports.map(transformer::toUni) + commentsResp.comment_reports.map(transformer::toUni), ) allReports.addAll( - privateMessagesResp.private_message_reports.map(transformer::toUni) + privateMessagesResp.private_message_reports.map(transformer::toUni), ) PagedResponse(allReports) } } } + /** * Fetch metadata for any given site. * @@ -979,7 +980,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun listMedia( form: it.vercruysse.lemmyapi.datatypes.ListMedia, - ): Result> = notSupported() + ): Result> = + api.listMedia(transformer.fromUni(form)).map { PagedResponse(it.images.map(transformer::toUni)) } /** * List all the media known to your instance. @@ -988,7 +990,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun listMediaAdmin( form: it.vercruysse.lemmyapi.datatypes.ListMedia, - ): Result> = notSupported() + ): Result> = + api.listAllMedia(transformer.fromUni(form)).map { PagedResponse(it.images.map(transformer::toUni)) } /** * Hide a post from list views. diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt index fa9da76f..44e65858 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt @@ -7,21 +7,12 @@ import it.vercruysse.lemmyapi.datatypes.Notification import it.vercruysse.lemmyapi.datatypes.NotificationView import it.vercruysse.lemmyapi.datatypes.PersonActions import it.vercruysse.lemmyapi.datatypes.PostActions -import it.vercruysse.lemmyapi.v0.enums.CommentSortType as V0CommentSortType import it.vercruysse.lemmyapi.enums.CommunityFollowerState import it.vercruysse.lemmyapi.enums.CommunityVisibility import it.vercruysse.lemmyapi.enums.FederationMode import it.vercruysse.lemmyapi.enums.NotificationType import it.vercruysse.lemmyapi.enums.SortType import it.vercruysse.lemmyapi.enums.VoteShow -import it.vercruysse.lemmyapi.v0.enums.CommunityVisibility as V0CommunityVisibility -import it.vercruysse.lemmyapi.v0.enums.ListingType as V0ListingType -import it.vercruysse.lemmyapi.v0.enums.ModlogActionType as V0ModlogActionType -import it.vercruysse.lemmyapi.v0.enums.PostFeatureType as V0PostFeatureType -import it.vercruysse.lemmyapi.v0.enums.PostListingMode as V0PostListingMode -import it.vercruysse.lemmyapi.v0.enums.RegistrationMode as V0RegistrationMode -import it.vercruysse.lemmyapi.v0.enums.SearchType as V0SearchType -import it.vercruysse.lemmyapi.v0.enums.SortType as V0SortType import it.vercruysse.lemmyapi.utils.toAt import it.vercruysse.lemmyapi.datatypes.AddAdmin as LemmyapiDatatypesAddAdmin import it.vercruysse.lemmyapi.datatypes.AddAdminResponse as LemmyapiDatatypesAddAdminResponse @@ -73,7 +64,10 @@ import it.vercruysse.lemmyapi.datatypes.EditCustomEmoji as LemmyapiDatatypesEdit import it.vercruysse.lemmyapi.datatypes.EditPost as LemmyapiDatatypesEditPost import it.vercruysse.lemmyapi.datatypes.EditPrivateMessage as LemmyapiDatatypesEditPrivateMessage import it.vercruysse.lemmyapi.datatypes.EditSite as LemmyapiDatatypesEditSite +import it.vercruysse.lemmyapi.datatypes.EditTotp as LemmyapiDatatypesUpdateTotp +import it.vercruysse.lemmyapi.datatypes.EditTotpResponse as LemmyapiDatatypesUpdateTotpResponse import it.vercruysse.lemmyapi.datatypes.FeaturePost as LemmyapiDatatypesFeaturePost +import it.vercruysse.lemmyapi.datatypes.FederationQueueState as LemmyapiDatatypesReadableFederationState import it.vercruysse.lemmyapi.datatypes.FollowCommunity as LemmyapiDatatypesFollowCommunity import it.vercruysse.lemmyapi.datatypes.GenerateTotpSecretResponse as LemmyapiDatatypesGenerateTotpSecretResponse import it.vercruysse.lemmyapi.datatypes.GetCaptchaResponse as LemmyapiDatatypesGetCaptchaResponse @@ -135,7 +129,6 @@ import it.vercruysse.lemmyapi.datatypes.PurgeComment as LemmyapiDatatypesPurgeCo import it.vercruysse.lemmyapi.datatypes.PurgeCommunity as LemmyapiDatatypesPurgeCommunity import it.vercruysse.lemmyapi.datatypes.PurgePerson as LemmyapiDatatypesPurgePerson import it.vercruysse.lemmyapi.datatypes.PurgePost as LemmyapiDatatypesPurgePost -import it.vercruysse.lemmyapi.datatypes.FederationQueueState as LemmyapiDatatypesReadableFederationState import it.vercruysse.lemmyapi.datatypes.Register as LemmyapiDatatypesRegister import it.vercruysse.lemmyapi.datatypes.RegistrationApplication as LemmyapiDatatypesRegistrationApplication import it.vercruysse.lemmyapi.datatypes.RegistrationApplicationResponse as LemmyapiDatatypesRegistrationApplicationResponse @@ -157,11 +150,18 @@ import it.vercruysse.lemmyapi.datatypes.SiteResponse as LemmyapiDatatypesSiteRes import it.vercruysse.lemmyapi.datatypes.SiteView as LemmyapiDatatypesSiteView import it.vercruysse.lemmyapi.datatypes.Tagline as LemmyapiDatatypesTagline import it.vercruysse.lemmyapi.datatypes.TransferCommunity as LemmyapiDatatypesTransferCommunity -import it.vercruysse.lemmyapi.datatypes.EditTotp as LemmyapiDatatypesUpdateTotp -import it.vercruysse.lemmyapi.datatypes.EditTotpResponse as LemmyapiDatatypesUpdateTotpResponse import it.vercruysse.lemmyapi.datatypes.UserBlockInstanceCommunitiesParams as LemmyapiDatatypesBlockInstance import it.vercruysse.lemmyapi.datatypes.VerifyEmail as LemmyapiDatatypesVerifyEmail import it.vercruysse.lemmyapi.datatypes.VoteView as LemmyapiDatatypesVoteView +import it.vercruysse.lemmyapi.v0.enums.CommentSortType as V0CommentSortType +import it.vercruysse.lemmyapi.v0.enums.CommunityVisibility as V0CommunityVisibility +import it.vercruysse.lemmyapi.v0.enums.ListingType as V0ListingType +import it.vercruysse.lemmyapi.v0.enums.ModlogActionType as V0ModlogActionType +import it.vercruysse.lemmyapi.v0.enums.PostFeatureType as V0PostFeatureType +import it.vercruysse.lemmyapi.v0.enums.PostListingMode as V0PostListingMode +import it.vercruysse.lemmyapi.v0.enums.RegistrationMode as V0RegistrationMode +import it.vercruysse.lemmyapi.v0.enums.SearchType as V0SearchType +import it.vercruysse.lemmyapi.v0.enums.SortType as V0SortType import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.AddAdmin as X4DatatypesAddAdmin import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.AddAdminResponse as X4DatatypesAddAdminResponse import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.AddModToCommunity as X4DatatypesAddModToCommunity @@ -238,8 +238,8 @@ import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.GetPosts as X4DatatypesGetPost import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.GetPrivateMessages as X4DatatypesGetPrivateMessages import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.GetReplies as X4DatatypesGetReplies import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.GetSiteMetadata as X4DatatypesGetSiteMetadata -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.GetSiteResponse as X4DatatypesGetSiteResponse import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.GetSiteMetadataResponse as X4DatatypesGetSiteMetadataResponse +import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.GetSiteResponse as X4DatatypesGetSiteResponse import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.HideCommunity as X4DatatypesHideCommunity import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.HidePost as X4DatatypesHidePost import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.Instance as X4DatatypesInstance @@ -334,7 +334,6 @@ internal class Transformer : MapperGenerator { moderators = d.moderators.map { this.toUni(d = it) }, ) - override fun toUni(d: X4DatatypesBanFromCommunityResponse): it.vercruysse.lemmyapi.datatypes.PersonResponse = it.vercruysse.lemmyapi.datatypes.PersonResponse(person_view = this.toUni(d = d.person_view)) @@ -498,7 +497,7 @@ internal class Transformer : MapperGenerator { if (d.blocked) "" else null, null, if (d.banned_from_community) "" else null, - if (d.banned_from_community) "" else null + if (d.banned_from_community) "" else null, ), ) @@ -551,7 +550,7 @@ internal class Transformer : MapperGenerator { person_view = this.toUni(d = d.person_view), site = d.site?.let { this.toUni(d = it) }, moderates = d.moderates.map { this.toUni(d = it) }, - multi_communities_created = emptyList() + multi_communities_created = emptyList(), ) override fun toUni(d: X4DatatypesGetPostResponse): LemmyapiDatatypesGetPostResponse = @@ -1545,7 +1544,6 @@ internal class Transformer : MapperGenerator { unread_only = d.unread_only, ) - override fun fromUni(d: LemmyapiDatatypesGetSiteMetadata): X4DatatypesGetSiteMetadata = X4DatatypesGetSiteMetadata( url = d.url, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt index a64ec074..7cae983f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt @@ -406,15 +406,15 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba val allReports = mutableListOf() allReports.addAll( - postsResp.post_reports.map(transformer::toUni) + postsResp.post_reports.map(transformer::toUni), ) allReports.addAll( - commentsResp.comment_reports.map(transformer::toUni) + commentsResp.comment_reports.map(transformer::toUni), ) allReports.addAll( - privateMessagesResp.private_message_reports.map(transformer::toUni) + privateMessagesResp.private_message_reports.map(transformer::toUni), ) PagedResponse(allReports) @@ -974,7 +974,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun listMedia( form: it.vercruysse.lemmyapi.datatypes.ListMedia, - ): Result> = notSupported() + ): Result> = + api.listMedia(transformer.fromUni(form)).map { PagedResponse(it.images.map(transformer::toUni)) } /** * List all the media known to your instance. @@ -983,7 +984,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun listMediaAdmin( form: it.vercruysse.lemmyapi.datatypes.ListMedia, - ): Result> = notSupported() + ): Result> = + api.listAllMedia(transformer.fromUni(form)).map { PagedResponse(it.images.map(transformer::toUni)) } /** * Hide a post from list views. diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt index 92812f78..c77f2e2c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt @@ -7,21 +7,12 @@ import it.vercruysse.lemmyapi.datatypes.Notification import it.vercruysse.lemmyapi.datatypes.NotificationView import it.vercruysse.lemmyapi.datatypes.PersonActions import it.vercruysse.lemmyapi.datatypes.PostActions -import it.vercruysse.lemmyapi.v0.enums.CommentSortType as V0CommentSortType import it.vercruysse.lemmyapi.enums.CommunityFollowerState import it.vercruysse.lemmyapi.enums.CommunityVisibility import it.vercruysse.lemmyapi.enums.FederationMode import it.vercruysse.lemmyapi.enums.NotificationType import it.vercruysse.lemmyapi.enums.SortType import it.vercruysse.lemmyapi.enums.VoteShow -import it.vercruysse.lemmyapi.v0.enums.CommunityVisibility as V0CommunityVisibility -import it.vercruysse.lemmyapi.v0.enums.ListingType as V0ListingType -import it.vercruysse.lemmyapi.v0.enums.ModlogActionType as V0ModlogActionType -import it.vercruysse.lemmyapi.v0.enums.PostFeatureType as V0PostFeatureType -import it.vercruysse.lemmyapi.v0.enums.PostListingMode as V0PostListingMode -import it.vercruysse.lemmyapi.v0.enums.RegistrationMode as V0RegistrationMode -import it.vercruysse.lemmyapi.v0.enums.SearchType as V0SearchType -import it.vercruysse.lemmyapi.v0.enums.SortType as V0SortType import it.vercruysse.lemmyapi.utils.toAt import it.vercruysse.lemmyapi.datatypes.AddAdmin as LemmyapiDatatypesAddAdmin import it.vercruysse.lemmyapi.datatypes.AddAdminResponse as LemmyapiDatatypesAddAdminResponse @@ -73,7 +64,10 @@ import it.vercruysse.lemmyapi.datatypes.EditCustomEmoji as LemmyapiDatatypesEdit import it.vercruysse.lemmyapi.datatypes.EditPost as LemmyapiDatatypesEditPost import it.vercruysse.lemmyapi.datatypes.EditPrivateMessage as LemmyapiDatatypesEditPrivateMessage import it.vercruysse.lemmyapi.datatypes.EditSite as LemmyapiDatatypesEditSite +import it.vercruysse.lemmyapi.datatypes.EditTotp as LemmyapiDatatypesUpdateTotp +import it.vercruysse.lemmyapi.datatypes.EditTotpResponse as LemmyapiDatatypesUpdateTotpResponse import it.vercruysse.lemmyapi.datatypes.FeaturePost as LemmyapiDatatypesFeaturePost +import it.vercruysse.lemmyapi.datatypes.FederationQueueState as LemmyapiDatatypesReadableFederationState import it.vercruysse.lemmyapi.datatypes.FollowCommunity as LemmyapiDatatypesFollowCommunity import it.vercruysse.lemmyapi.datatypes.GenerateTotpSecretResponse as LemmyapiDatatypesGenerateTotpSecretResponse import it.vercruysse.lemmyapi.datatypes.GetCaptchaResponse as LemmyapiDatatypesGetCaptchaResponse @@ -137,7 +131,6 @@ import it.vercruysse.lemmyapi.datatypes.PurgeComment as LemmyapiDatatypesPurgeCo import it.vercruysse.lemmyapi.datatypes.PurgeCommunity as LemmyapiDatatypesPurgeCommunity import it.vercruysse.lemmyapi.datatypes.PurgePerson as LemmyapiDatatypesPurgePerson import it.vercruysse.lemmyapi.datatypes.PurgePost as LemmyapiDatatypesPurgePost -import it.vercruysse.lemmyapi.datatypes.FederationQueueState as LemmyapiDatatypesReadableFederationState import it.vercruysse.lemmyapi.datatypes.Register as LemmyapiDatatypesRegister import it.vercruysse.lemmyapi.datatypes.RegistrationApplication as LemmyapiDatatypesRegistrationApplication import it.vercruysse.lemmyapi.datatypes.RegistrationApplicationResponse as LemmyapiDatatypesRegistrationApplicationResponse @@ -159,11 +152,18 @@ import it.vercruysse.lemmyapi.datatypes.SiteResponse as LemmyapiDatatypesSiteRes import it.vercruysse.lemmyapi.datatypes.SiteView as LemmyapiDatatypesSiteView import it.vercruysse.lemmyapi.datatypes.Tagline as LemmyapiDatatypesTagline import it.vercruysse.lemmyapi.datatypes.TransferCommunity as LemmyapiDatatypesTransferCommunity -import it.vercruysse.lemmyapi.datatypes.EditTotp as LemmyapiDatatypesUpdateTotp -import it.vercruysse.lemmyapi.datatypes.EditTotpResponse as LemmyapiDatatypesUpdateTotpResponse import it.vercruysse.lemmyapi.datatypes.UserBlockInstanceCommunitiesParams as LemmyapiDatatypesBlockInstance import it.vercruysse.lemmyapi.datatypes.VerifyEmail as LemmyapiDatatypesVerifyEmail import it.vercruysse.lemmyapi.datatypes.VoteView as LemmyapiDatatypesVoteView +import it.vercruysse.lemmyapi.v0.enums.CommentSortType as V0CommentSortType +import it.vercruysse.lemmyapi.v0.enums.CommunityVisibility as V0CommunityVisibility +import it.vercruysse.lemmyapi.v0.enums.ListingType as V0ListingType +import it.vercruysse.lemmyapi.v0.enums.ModlogActionType as V0ModlogActionType +import it.vercruysse.lemmyapi.v0.enums.PostFeatureType as V0PostFeatureType +import it.vercruysse.lemmyapi.v0.enums.PostListingMode as V0PostListingMode +import it.vercruysse.lemmyapi.v0.enums.RegistrationMode as V0RegistrationMode +import it.vercruysse.lemmyapi.v0.enums.SearchType as V0SearchType +import it.vercruysse.lemmyapi.v0.enums.SortType as V0SortType import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.AddAdmin as X6DatatypesAddAdmin import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.AddAdminResponse as X6DatatypesAddAdminResponse import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.AddModToCommunity as X6DatatypesAddModToCommunity @@ -546,7 +546,7 @@ internal class Transformer : MapperGenerator { person_view = this.toUni(d = d.person_view), site = d.site?.let { this.toUni(d = it) }, moderates = d.moderates.map { this.toUni(d = it) }, - multi_communities_created = emptyList() + multi_communities_created = emptyList(), ) override fun toUni(d: X6DatatypesGetPostResponse): LemmyapiDatatypesGetPostResponse = @@ -1384,8 +1384,8 @@ internal class Transformer : MapperGenerator { X6DatatypesEditCustomEmoji( id = d.id, category = d.category ?: "", - image_url = d.image_url ?: "", - alt_text = d.alt_text ?: "", + image_url = d.image_url ?: "", + alt_text = d.alt_text ?: "", keywords = d.keywords ?: emptyList(), ) @@ -1554,8 +1554,6 @@ internal class Transformer : MapperGenerator { person_id = d.person_id, ) - - override fun fromUni(d: LemmyapiDatatypesGetSiteMetadata): X6DatatypesGetSiteMetadata = X6DatatypesGetSiteMetadata( url = d.url, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiController.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiController.kt index 4e1a257e..29d9cf93 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiController.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiController.kt @@ -625,4 +625,3 @@ internal class LemmyApiController(client: HttpClient, auth: String?) : override suspend fun uploadUserBanner(image: ByteArray): Result = client.postUploadResult("account/banner", image) } - diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiRouter.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiRouter.kt index b5fb32e5..9815bd57 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiRouter.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiRouter.kt @@ -314,7 +314,6 @@ internal abstract class LemmyApiRouter(client: HttpClient, auth: String?) : Auth /** @GET("account/media/list") */ abstract suspend fun listMedia(form: ListMedia): Result> - /** @POST("admin/add") */ abstract suspend fun addAdmin(form: AddAdmin): Result @@ -464,6 +463,4 @@ internal abstract class LemmyApiRouter(client: HttpClient, auth: String?) : Auth /** @DELETE("site/icon") */ abstract suspend fun deleteSiteIcon(): Result - } - diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/MapperGenerator.kt new file mode 100644 index 00000000..f0b42fa9 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/MapperGenerator.kt @@ -0,0 +1,273 @@ +package it.vercruysse.lemmyapi.v1.x0.x0 + +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.* + +internal interface MapperGenerator { + + fun toUni(d: AddAdminResponse): it.vercruysse.lemmyapi.datatypes.AddAdminResponse + fun toUni(d: AddModToCommunityResponse): it.vercruysse.lemmyapi.datatypes.AddModToCommunityResponse + fun toUni(d: AdminAllowInstanceParams): it.vercruysse.lemmyapi.datatypes.AdminAllowInstanceParams + fun toUni(d: AdminBlockInstanceParams): it.vercruysse.lemmyapi.datatypes.AdminBlockInstanceParams + fun toUni(d: AdminListUsers): it.vercruysse.lemmyapi.datatypes.AdminListUsers + fun toUni(d: AdminOAuthProvider): it.vercruysse.lemmyapi.datatypes.AdminOAuthProvider + fun toUni(d: AuthenticateWithOauth): it.vercruysse.lemmyapi.datatypes.AuthenticateWithOauth + fun toUni(d: CaptchaResponse): it.vercruysse.lemmyapi.datatypes.CaptchaResponse + fun toUni(d: Comment): it.vercruysse.lemmyapi.datatypes.Comment + fun toUni(d: CommentActions): it.vercruysse.lemmyapi.datatypes.CommentActions + fun toUni(d: CommentReport): it.vercruysse.lemmyapi.datatypes.CommentReport + fun toUni(d: CommentReportResponse): it.vercruysse.lemmyapi.datatypes.CommentReportResponse + fun toUni(d: CommentReportView): it.vercruysse.lemmyapi.datatypes.CommentReportView + fun toUni(d: CommentResponse): it.vercruysse.lemmyapi.datatypes.CommentResponse + fun toUni(d: CommentSlimView): it.vercruysse.lemmyapi.datatypes.CommentSlimView + + fun toUni(d: CommentView): it.vercruysse.lemmyapi.datatypes.CommentView + fun toUni(d: Community): it.vercruysse.lemmyapi.datatypes.Community + fun toUni(d: CommunityActions): it.vercruysse.lemmyapi.datatypes.CommunityActions + fun toUni(d: CommunityFollowerView): it.vercruysse.lemmyapi.datatypes.CommunityFollowerView + fun toUni(d: CommunityIdQuery): it.vercruysse.lemmyapi.datatypes.CommunityIdQuery + fun toUni(d: CommunityModeratorView): it.vercruysse.lemmyapi.datatypes.CommunityModeratorView + fun toUni(d: CommunityReport): it.vercruysse.lemmyapi.datatypes.CommunityReport + fun toUni(d: CommunityReportResponse): it.vercruysse.lemmyapi.datatypes.CommunityReportResponse + fun toUni(d: CommunityReportView): it.vercruysse.lemmyapi.datatypes.CommunityReportView + fun toUni(d: CommunityResponse): it.vercruysse.lemmyapi.datatypes.CommunityResponse + fun toUni(d: CommunityTag): it.vercruysse.lemmyapi.datatypes.CommunityTag + + fun toUni(d: CommunityView): it.vercruysse.lemmyapi.datatypes.CommunityView + fun toUni(d: CustomEmoji): it.vercruysse.lemmyapi.datatypes.CustomEmoji + fun toUni(d: CustomEmojiKeyword): it.vercruysse.lemmyapi.datatypes.CustomEmojiKeyword + fun toUni(d: CustomEmojiResponse): it.vercruysse.lemmyapi.datatypes.CustomEmojiResponse + fun toUni(d: CustomEmojiView): it.vercruysse.lemmyapi.datatypes.CustomEmojiView + fun toUni(d: EditTotpResponse): it.vercruysse.lemmyapi.datatypes.EditTotpResponse + + fun toUni(d: ExportDataResponse): it.vercruysse.lemmyapi.datatypes.ExportDataResponse + fun toUni(d: FederatedInstanceView): it.vercruysse.lemmyapi.datatypes.FederatedInstanceView + fun toUni(d: FederationAllowList): it.vercruysse.lemmyapi.datatypes.FederationAllowList + fun toUni(d: FederationBlockList): it.vercruysse.lemmyapi.datatypes.FederationBlockList + fun toUni(d: FederationQueueState): it.vercruysse.lemmyapi.datatypes.FederationQueueState + fun toUni(d: GenerateTotpSecretResponse): it.vercruysse.lemmyapi.datatypes.GenerateTotpSecretResponse + fun toUni(d: GetCaptchaResponse): it.vercruysse.lemmyapi.datatypes.GetCaptchaResponse + fun toUni(d: GetCommunityResponse): it.vercruysse.lemmyapi.datatypes.GetCommunityResponse + fun toUni(d: GetMultiCommunityResponse): it.vercruysse.lemmyapi.datatypes.GetMultiCommunityResponse + fun toUni(d: GetPersonDetailsResponse): it.vercruysse.lemmyapi.datatypes.GetPersonDetailsResponse + fun toUni(d: GetPostResponse): it.vercruysse.lemmyapi.datatypes.GetPostResponse + fun toUni(d: GetSiteMetadataResponse): it.vercruysse.lemmyapi.datatypes.GetSiteMetadataResponse + fun toUni(d: GetSiteResponse): it.vercruysse.lemmyapi.datatypes.GetSiteResponse + fun toUni(d: ImageDetails): it.vercruysse.lemmyapi.datatypes.ImageDetails + fun toUni(d: ImageGetParams): it.vercruysse.lemmyapi.datatypes.ImageGetParams + fun toUni(d: ImageProxyParams): it.vercruysse.lemmyapi.datatypes.ImageProxyParams + fun toUni(d: Instance): it.vercruysse.lemmyapi.datatypes.Instance + fun toUni(d: InstanceActions): it.vercruysse.lemmyapi.datatypes.InstanceActions + fun toUni(d: Language): it.vercruysse.lemmyapi.datatypes.Language + fun toUni(d: LinkMetadata): it.vercruysse.lemmyapi.datatypes.LinkMetadata + fun toUni(d: ListCustomEmojisResponse): it.vercruysse.lemmyapi.datatypes.ListCustomEmojisResponse + fun toUni(d: ListLoginsResponse): it.vercruysse.lemmyapi.datatypes.ListLoginsResponse + fun toUni(d: LocalImage): it.vercruysse.lemmyapi.datatypes.LocalImage + fun toUni(d: LocalImageView): it.vercruysse.lemmyapi.datatypes.LocalImageView + fun toUni(d: LocalSite): it.vercruysse.lemmyapi.datatypes.LocalSite + fun toUni(d: LocalSiteRateLimit): it.vercruysse.lemmyapi.datatypes.LocalSiteRateLimit + fun toUni(d: LocalSiteUrlBlocklist): it.vercruysse.lemmyapi.datatypes.LocalSiteUrlBlocklist + fun toUni(d: LocalUser): it.vercruysse.lemmyapi.datatypes.LocalUser + fun toUni(d: LocalUserView): it.vercruysse.lemmyapi.datatypes.LocalUserView + fun toUni(d: LoginResponse): it.vercruysse.lemmyapi.datatypes.LoginResponse + fun toUni(d: LoginToken): it.vercruysse.lemmyapi.datatypes.LoginToken + fun toUni(d: ModEditPost): it.vercruysse.lemmyapi.datatypes.ModEditPost + fun toUni(d: Modlog): it.vercruysse.lemmyapi.datatypes.Modlog + fun toUni(d: ModlogView): it.vercruysse.lemmyapi.datatypes.ModlogView + fun toUni(d: MultiCommunity): it.vercruysse.lemmyapi.datatypes.MultiCommunity + fun toUni(d: MultiCommunityEntry): it.vercruysse.lemmyapi.datatypes.MultiCommunityEntry + fun toUni(d: MultiCommunityFollow): it.vercruysse.lemmyapi.datatypes.MultiCommunityFollow + fun toUni(d: MultiCommunityResponse): it.vercruysse.lemmyapi.datatypes.MultiCommunityResponse + fun toUni(d: MultiCommunityView): it.vercruysse.lemmyapi.datatypes.MultiCommunityView + fun toUni(d: MyUserInfo): it.vercruysse.lemmyapi.datatypes.MyUserInfo + fun toUni(d: NotePerson): it.vercruysse.lemmyapi.datatypes.NotePerson + fun toUni(d: Notification): it.vercruysse.lemmyapi.datatypes.Notification + + fun toUni(d: NotificationData): it.vercruysse.lemmyapi.datatypes.NotificationData = when (d) { + is CommentView -> toUni(d) + is ModlogView -> toUni(d) + is PrivateMessageView -> toUni(d) + } + + fun toUni(d: NotificationView): it.vercruysse.lemmyapi.datatypes.NotificationView + fun toUni(d: OAuthAccount): it.vercruysse.lemmyapi.datatypes.OAuthAccount + fun toUni(d: PendingFollow): it.vercruysse.lemmyapi.datatypes.PendingFollow + fun toUni(d: PendingFollowerView): it.vercruysse.lemmyapi.datatypes.PendingFollowerView + fun toUni(d: Person): it.vercruysse.lemmyapi.datatypes.Person + fun toUni(d: PersonActions): it.vercruysse.lemmyapi.datatypes.PersonActions + fun toUni(d: PersonResponse): it.vercruysse.lemmyapi.datatypes.PersonResponse + fun toUni(d: PersonView): it.vercruysse.lemmyapi.datatypes.PersonView + fun toUni(d: PluginMetadata): it.vercruysse.lemmyapi.datatypes.PluginMetadata + fun toUni(d: Post): it.vercruysse.lemmyapi.datatypes.Post + fun toUni(d: PostActions): it.vercruysse.lemmyapi.datatypes.PostActions + + fun toUni(d: PostCommentCombinedView): it.vercruysse.lemmyapi.datatypes.PostCommentCombinedView = when (d) { + is CommentView -> toUni(d) + is PostView -> toUni(d) + } + + fun toUni(d: PostOrCommentOrPrivateMessage): it.vercruysse.lemmyapi.datatypes.PostOrCommentOrPrivateMessage = when (d) { + is Comment -> toUni(d) + is Post -> toUni(d) + is PrivateMessage -> toUni(d) + } + fun toUni(d: PostReport): it.vercruysse.lemmyapi.datatypes.PostReport + fun toUni(d: PostReportResponse): it.vercruysse.lemmyapi.datatypes.PostReportResponse + fun toUni(d: PostReportView): it.vercruysse.lemmyapi.datatypes.PostReportView + fun toUni(d: PostResponse): it.vercruysse.lemmyapi.datatypes.PostResponse + + fun toUni(d: PostView): it.vercruysse.lemmyapi.datatypes.PostView + fun toUni(d: PrivateMessage): it.vercruysse.lemmyapi.datatypes.PrivateMessage + fun toUni(d: PrivateMessageReport): it.vercruysse.lemmyapi.datatypes.PrivateMessageReport + fun toUni(d: PrivateMessageReportResponse): it.vercruysse.lemmyapi.datatypes.PrivateMessageReportResponse + fun toUni(d: PrivateMessageReportView): it.vercruysse.lemmyapi.datatypes.PrivateMessageReportView + fun toUni(d: PrivateMessageResponse): it.vercruysse.lemmyapi.datatypes.PrivateMessageResponse + fun toUni(d: PrivateMessageView): it.vercruysse.lemmyapi.datatypes.PrivateMessageView + fun toUni(d: PublicOAuthProvider): it.vercruysse.lemmyapi.datatypes.PublicOAuthProvider + fun toUni(d: RegistrationApplication): it.vercruysse.lemmyapi.datatypes.RegistrationApplication + fun toUni(d: RegistrationApplicationResponse): it.vercruysse.lemmyapi.datatypes.RegistrationApplicationResponse + fun toUni(d: RegistrationApplicationView): it.vercruysse.lemmyapi.datatypes.RegistrationApplicationView + + // ReportCombinedView is a sealed interface — Konvert cannot generate this automatically. + fun toUni(d: ReportCombinedView): it.vercruysse.lemmyapi.datatypes.ReportCombinedView = when (d) { + is CommentReportView -> toUni(d) + is PostReportView -> toUni(d) + is CommunityReportView -> toUni(d) + is PrivateMessageReportView -> toUni(d) + } + + // fun toUni(d: ReportCombinedView): already implemented above as when-dispatch + fun toUni(d: ResendVerificationEmail): it.vercruysse.lemmyapi.datatypes.ResendVerificationEmail + fun toUni(d: SearchCombinedView): it.vercruysse.lemmyapi.datatypes.SearchCombinedView = when (d) { + is CommentView -> toUni(d) + is CommunityView -> toUni(d) + is PersonView -> toUni(d) + is PostView -> toUni(d) + is MultiCommunityView -> toUni(d) + } + fun toUni(d: SearchResponse): it.vercruysse.lemmyapi.datatypes.SearchResponse + fun toUni(d: Site): it.vercruysse.lemmyapi.datatypes.Site + fun toUni(d: SiteResponse): it.vercruysse.lemmyapi.datatypes.SiteResponse + fun toUni(d: SiteView): it.vercruysse.lemmyapi.datatypes.SiteView + fun toUni(d: Tagline): it.vercruysse.lemmyapi.datatypes.Tagline + fun toUni(d: TaglineResponse): it.vercruysse.lemmyapi.datatypes.TaglineResponse + fun toUni(d: UnreadCountsResponse): it.vercruysse.lemmyapi.datatypes.UnreadCountsResponse + fun toUni(d: UploadImageResponse): it.vercruysse.lemmyapi.datatypes.UploadImageResponse + fun toUni(d: UserBlockInstanceCommunitiesParams): it.vercruysse.lemmyapi.datatypes.UserBlockInstanceCommunitiesParams + fun toUni(d: UserBlockInstancePersonsParams): it.vercruysse.lemmyapi.datatypes.UserBlockInstancePersonsParams + fun toUni(d: UserSettingsBackup): it.vercruysse.lemmyapi.datatypes.UserSettingsBackup + fun toUni(d: VoteView): it.vercruysse.lemmyapi.datatypes.VoteView + + // body mappings + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.AddAdmin): AddAdmin + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.AddModToCommunity): AddModToCommunity + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ApproveCommunityPendingFollower): ApproveCommunityPendingFollower + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ApproveRegistrationApplication): ApproveRegistrationApplication + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.BanFromCommunity): BanFromCommunity + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.BanPerson): BanPerson + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.BlockCommunity): BlockCommunity + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.BlockPerson): BlockPerson + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ChangePassword): ChangePassword + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.CreateComment): CreateComment + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.CreateCommentLike): CreateCommentLike + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.CreateCommentReport): CreateCommentReport + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.CreateCommentWarning): CreateCommentWarning + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.CreateCommunity): CreateCommunity + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.CreateCommunityReport): CreateCommunityReport + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.CreateCommunityTag): CreateCommunityTag + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.CreateCustomEmoji): CreateCustomEmoji + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.CreateMultiCommunity): CreateMultiCommunity + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.CreateOAuthProvider): CreateOAuthProvider + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.CreateOrDeleteMultiCommunityEntry): CreateOrDeleteMultiCommunityEntry + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.CreatePost): CreatePost + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.CreatePostLike): CreatePostLike + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.CreatePostReport): CreatePostReport + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.CreatePostWarning): CreatePostWarning + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.CreatePrivateMessage): CreatePrivateMessage + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.CreatePrivateMessageReport): CreatePrivateMessageReport + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.CreateSite): CreateSite + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.CreateTagline): CreateTagline + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.DeleteAccount): DeleteAccount + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.DeleteComment): DeleteComment + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.DeleteCommunity): DeleteCommunity + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.DeleteCommunityTag): DeleteCommunityTag + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.DeleteCustomEmoji): DeleteCustomEmoji + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.DeleteImageParams): DeleteImageParams + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.DeleteOAuthProvider): DeleteOAuthProvider + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.DeletePost): DeletePost + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.DeletePrivateMessage): DeletePrivateMessage + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.DeleteTagline): DeleteTagline + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.DistinguishComment): DistinguishComment + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.EditComment): EditComment + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.EditCommunity): EditCommunity + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.EditCommunityNotifications): EditCommunityNotifications + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.EditCommunityTag): EditCommunityTag + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.EditCustomEmoji): EditCustomEmoji + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.EditMultiCommunity): EditMultiCommunity + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.EditOAuthProvider): EditOAuthProvider + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.EditPost): EditPost + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.EditPostNotifications): EditPostNotifications + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.EditPrivateMessage): EditPrivateMessage + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.EditSite): EditSite + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.EditTagline): EditTagline + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.EditTotp): EditTotp + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.FeaturePost): FeaturePost + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.FollowCommunity): FollowCommunity + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.FollowMultiCommunity): FollowMultiCommunity + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetComment): GetComment + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetComments): GetComments + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetCommunity): GetCommunity + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetFederatedInstances): GetFederatedInstances + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetModlog): GetModlog + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetMultiCommunity): GetMultiCommunity + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPersonDetails): GetPersonDetails + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPost): GetPost + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetPosts): GetPosts + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetRandomCommunity): GetRandomCommunity + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetRegistrationApplication): GetRegistrationApplication + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.GetSiteMetadata): GetSiteMetadata + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.HideCommunity): HideCommunity + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.HidePost): HidePost + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListCommentLikes): ListCommentLikes + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListCommunities): ListCommunities + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListCommunityPendingFollows): ListCommunityPendingFollows + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListCustomEmojis): ListCustomEmojis + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListMedia): ListMedia + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListMultiCommunities): ListMultiCommunities + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListNotifications): ListNotifications + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListPersonContent): ListPersonContent + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListPersonHidden): ListPersonHidden + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListPersonLiked): ListPersonLiked + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListPersonRead): ListPersonRead + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListPersonSaved): ListPersonSaved + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListPostLikes): ListPostLikes + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListRegistrationApplications): ListRegistrationApplications + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListReports): ListReports + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListTaglines): ListTaglines + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.LockComment): LockComment + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.LockPost): LockPost + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.Login): Login + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead): MarkManyPostsAsRead + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkNotificationAsRead): MarkNotificationAsRead + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkPostAsRead): MarkPostAsRead + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset): PasswordChangeAfterReset + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordReset): PasswordReset + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgeComment): PurgeComment + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgeCommunity): PurgeCommunity + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgePerson): PurgePerson + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgePost): PurgePost + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.Register): Register + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.RemoveComment): RemoveComment + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.RemoveCommunity): RemoveCommunity + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.RemovePost): RemovePost + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ResolveCommentReport): ResolveCommentReport + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ResolveCommunityReport): ResolveCommunityReport + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ResolveObject): ResolveObject + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ResolvePostReport): ResolvePostReport + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ResolvePrivateMessageReport): ResolvePrivateMessageReport + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.SaveComment): SaveComment + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.SavePost): SavePost + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.SaveUserSettings): SaveUserSettings + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.Search): Search + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.TransferCommunity): TransferCommunity + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.VerifyEmail): VerifyEmail +} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/Transformer.kt new file mode 100644 index 00000000..7d5d9522 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/Transformer.kt @@ -0,0 +1,2348 @@ +package it.vercruysse.lemmyapi.v1.x0.x0 + +import it.vercruysse.lemmyapi.datatypes.AddAdmin as LemmyapiDatatypesAddAdmin +import it.vercruysse.lemmyapi.datatypes.AddAdminResponse as LemmyapiDatatypesAddAdminResponse +import it.vercruysse.lemmyapi.datatypes.AddModToCommunity as LemmyapiDatatypesAddModToCommunity +import it.vercruysse.lemmyapi.datatypes.AddModToCommunityResponse as LemmyapiDatatypesAddModToCommunityResponse +import it.vercruysse.lemmyapi.datatypes.AdminAllowInstanceParams as LemmyapiDatatypesAdminAllowInstanceParams +import it.vercruysse.lemmyapi.datatypes.AdminBlockInstanceParams as LemmyapiDatatypesAdminBlockInstanceParams +import it.vercruysse.lemmyapi.datatypes.AdminListUsers as LemmyapiDatatypesAdminListUsers +import it.vercruysse.lemmyapi.datatypes.AdminOAuthProvider as LemmyapiDatatypesAdminOAuthProvider +import it.vercruysse.lemmyapi.datatypes.ApproveCommunityPendingFollower as LemmyapiDatatypesApproveCommunityPendingFollower +import it.vercruysse.lemmyapi.datatypes.ApproveRegistrationApplication as LemmyapiDatatypesApproveRegistrationApplication +import it.vercruysse.lemmyapi.datatypes.AuthenticateWithOauth as LemmyapiDatatypesAuthenticateWithOauth +import it.vercruysse.lemmyapi.datatypes.BanFromCommunity as LemmyapiDatatypesBanFromCommunity +import it.vercruysse.lemmyapi.datatypes.BanPerson as LemmyapiDatatypesBanPerson +import it.vercruysse.lemmyapi.datatypes.BlockCommunity as LemmyapiDatatypesBlockCommunity +import it.vercruysse.lemmyapi.datatypes.BlockPerson as LemmyapiDatatypesBlockPerson +import it.vercruysse.lemmyapi.datatypes.CaptchaResponse as LemmyapiDatatypesCaptchaResponse +import it.vercruysse.lemmyapi.datatypes.ChangePassword as LemmyapiDatatypesChangePassword +import it.vercruysse.lemmyapi.datatypes.Comment as LemmyapiDatatypesComment +import it.vercruysse.lemmyapi.datatypes.CommentActions as LemmyapiDatatypesCommentActions +import it.vercruysse.lemmyapi.datatypes.CommentReport as LemmyapiDatatypesCommentReport +import it.vercruysse.lemmyapi.datatypes.CommentReportResponse as LemmyapiDatatypesCommentReportResponse +import it.vercruysse.lemmyapi.datatypes.CommentReportView as LemmyapiDatatypesCommentReportView +import it.vercruysse.lemmyapi.datatypes.CommentResponse as LemmyapiDatatypesCommentResponse +import it.vercruysse.lemmyapi.datatypes.CommentSlimView as LemmyapiDatatypesCommentSlimView +import it.vercruysse.lemmyapi.datatypes.CommentView as LemmyapiDatatypesCommentView +import it.vercruysse.lemmyapi.datatypes.Community as LemmyapiDatatypesCommunity +import it.vercruysse.lemmyapi.datatypes.CommunityActions as LemmyapiDatatypesCommunityActions +import it.vercruysse.lemmyapi.datatypes.CommunityFollowerView as LemmyapiDatatypesCommunityFollowerView +import it.vercruysse.lemmyapi.datatypes.CommunityIdQuery as LemmyapiDatatypesCommunityIdQuery +import it.vercruysse.lemmyapi.datatypes.CommunityModeratorView as LemmyapiDatatypesCommunityModeratorView +import it.vercruysse.lemmyapi.datatypes.CommunityReport as LemmyapiDatatypesCommunityReport +import it.vercruysse.lemmyapi.datatypes.CommunityReportResponse as LemmyapiDatatypesCommunityReportResponse +import it.vercruysse.lemmyapi.datatypes.CommunityReportView as LemmyapiDatatypesCommunityReportView +import it.vercruysse.lemmyapi.datatypes.CommunityResponse as LemmyapiDatatypesCommunityResponse +import it.vercruysse.lemmyapi.datatypes.CommunityTag as LemmyapiDatatypesCommunityTag +import it.vercruysse.lemmyapi.datatypes.CommunityView as LemmyapiDatatypesCommunityView +import it.vercruysse.lemmyapi.datatypes.CreateComment as LemmyapiDatatypesCreateComment +import it.vercruysse.lemmyapi.datatypes.CreateCommentLike as LemmyapiDatatypesCreateCommentLike +import it.vercruysse.lemmyapi.datatypes.CreateCommentReport as LemmyapiDatatypesCreateCommentReport +import it.vercruysse.lemmyapi.datatypes.CreateCommentWarning as LemmyapiDatatypesCreateCommentWarning +import it.vercruysse.lemmyapi.datatypes.CreateCommunity as LemmyapiDatatypesCreateCommunity +import it.vercruysse.lemmyapi.datatypes.CreateCommunityReport as LemmyapiDatatypesCreateCommunityReport +import it.vercruysse.lemmyapi.datatypes.CreateCommunityTag as LemmyapiDatatypesCreateCommunityTag +import it.vercruysse.lemmyapi.datatypes.CreateCustomEmoji as LemmyapiDatatypesCreateCustomEmoji +import it.vercruysse.lemmyapi.datatypes.CreateMultiCommunity as LemmyapiDatatypesCreateMultiCommunity +import it.vercruysse.lemmyapi.datatypes.CreateOAuthProvider as LemmyapiDatatypesCreateOAuthProvider +import it.vercruysse.lemmyapi.datatypes.CreateOrDeleteMultiCommunityEntry as LemmyapiDatatypesCreateOrDeleteMultiCommunityEntry +import it.vercruysse.lemmyapi.datatypes.CreatePost as LemmyapiDatatypesCreatePost +import it.vercruysse.lemmyapi.datatypes.CreatePostLike as LemmyapiDatatypesCreatePostLike +import it.vercruysse.lemmyapi.datatypes.CreatePostReport as LemmyapiDatatypesCreatePostReport +import it.vercruysse.lemmyapi.datatypes.CreatePostWarning as LemmyapiDatatypesCreatePostWarning +import it.vercruysse.lemmyapi.datatypes.CreatePrivateMessage as LemmyapiDatatypesCreatePrivateMessage +import it.vercruysse.lemmyapi.datatypes.CreatePrivateMessageReport as LemmyapiDatatypesCreatePrivateMessageReport +import it.vercruysse.lemmyapi.datatypes.CreateSite as LemmyapiDatatypesCreateSite +import it.vercruysse.lemmyapi.datatypes.CreateTagline as LemmyapiDatatypesCreateTagline +import it.vercruysse.lemmyapi.datatypes.CustomEmoji as LemmyapiDatatypesCustomEmoji +import it.vercruysse.lemmyapi.datatypes.CustomEmojiKeyword as LemmyapiDatatypesCustomEmojiKeyword +import it.vercruysse.lemmyapi.datatypes.CustomEmojiResponse as LemmyapiDatatypesCustomEmojiResponse +import it.vercruysse.lemmyapi.datatypes.CustomEmojiView as LemmyapiDatatypesCustomEmojiView +import it.vercruysse.lemmyapi.datatypes.DeleteAccount as LemmyapiDatatypesDeleteAccount +import it.vercruysse.lemmyapi.datatypes.DeleteComment as LemmyapiDatatypesDeleteComment +import it.vercruysse.lemmyapi.datatypes.DeleteCommunity as LemmyapiDatatypesDeleteCommunity +import it.vercruysse.lemmyapi.datatypes.DeleteCommunityTag as LemmyapiDatatypesDeleteCommunityTag +import it.vercruysse.lemmyapi.datatypes.DeleteCustomEmoji as LemmyapiDatatypesDeleteCustomEmoji +import it.vercruysse.lemmyapi.datatypes.DeleteImageParams as LemmyapiDatatypesDeleteImageParams +import it.vercruysse.lemmyapi.datatypes.DeleteOAuthProvider as LemmyapiDatatypesDeleteOAuthProvider +import it.vercruysse.lemmyapi.datatypes.DeletePost as LemmyapiDatatypesDeletePost +import it.vercruysse.lemmyapi.datatypes.DeletePrivateMessage as LemmyapiDatatypesDeletePrivateMessage +import it.vercruysse.lemmyapi.datatypes.DeleteTagline as LemmyapiDatatypesDeleteTagline +import it.vercruysse.lemmyapi.datatypes.DistinguishComment as LemmyapiDatatypesDistinguishComment +import it.vercruysse.lemmyapi.datatypes.EditComment as LemmyapiDatatypesEditComment +import it.vercruysse.lemmyapi.datatypes.EditCommunity as LemmyapiDatatypesEditCommunity +import it.vercruysse.lemmyapi.datatypes.EditCommunityNotifications as LemmyapiDatatypesEditCommunityNotifications +import it.vercruysse.lemmyapi.datatypes.EditCommunityTag as LemmyapiDatatypesEditCommunityTag +import it.vercruysse.lemmyapi.datatypes.EditCustomEmoji as LemmyapiDatatypesEditCustomEmoji +import it.vercruysse.lemmyapi.datatypes.EditMultiCommunity as LemmyapiDatatypesEditMultiCommunity +import it.vercruysse.lemmyapi.datatypes.EditOAuthProvider as LemmyapiDatatypesEditOAuthProvider +import it.vercruysse.lemmyapi.datatypes.EditPost as LemmyapiDatatypesEditPost +import it.vercruysse.lemmyapi.datatypes.EditPostNotifications as LemmyapiDatatypesEditPostNotifications +import it.vercruysse.lemmyapi.datatypes.EditPrivateMessage as LemmyapiDatatypesEditPrivateMessage +import it.vercruysse.lemmyapi.datatypes.EditSite as LemmyapiDatatypesEditSite +import it.vercruysse.lemmyapi.datatypes.EditTagline as LemmyapiDatatypesEditTagline +import it.vercruysse.lemmyapi.datatypes.EditTotp as LemmyapiDatatypesEditTotp +import it.vercruysse.lemmyapi.datatypes.EditTotpResponse as LemmyapiDatatypesEditTotpResponse +import it.vercruysse.lemmyapi.datatypes.ExportDataResponse as LemmyapiDatatypesExportDataResponse +import it.vercruysse.lemmyapi.datatypes.FeaturePost as LemmyapiDatatypesFeaturePost +import it.vercruysse.lemmyapi.datatypes.FederatedInstanceView as LemmyapiDatatypesFederatedInstanceView +import it.vercruysse.lemmyapi.datatypes.FederationAllowList as LemmyapiDatatypesFederationAllowList +import it.vercruysse.lemmyapi.datatypes.FederationBlockList as LemmyapiDatatypesFederationBlockList +import it.vercruysse.lemmyapi.datatypes.FederationQueueState as LemmyapiDatatypesFederationQueueState +import it.vercruysse.lemmyapi.datatypes.FollowCommunity as LemmyapiDatatypesFollowCommunity +import it.vercruysse.lemmyapi.datatypes.FollowMultiCommunity as LemmyapiDatatypesFollowMultiCommunity +import it.vercruysse.lemmyapi.datatypes.GenerateTotpSecretResponse as LemmyapiDatatypesGenerateTotpSecretResponse +import it.vercruysse.lemmyapi.datatypes.GetCaptchaResponse as LemmyapiDatatypesGetCaptchaResponse +import it.vercruysse.lemmyapi.datatypes.GetComment as LemmyapiDatatypesGetComment +import it.vercruysse.lemmyapi.datatypes.GetComments as LemmyapiDatatypesGetComments +import it.vercruysse.lemmyapi.datatypes.GetCommunity as LemmyapiDatatypesGetCommunity +import it.vercruysse.lemmyapi.datatypes.GetCommunityResponse as LemmyapiDatatypesGetCommunityResponse +import it.vercruysse.lemmyapi.datatypes.GetFederatedInstances as LemmyapiDatatypesGetFederatedInstances +import it.vercruysse.lemmyapi.datatypes.GetModlog as LemmyapiDatatypesGetModlog +import it.vercruysse.lemmyapi.datatypes.GetMultiCommunity as LemmyapiDatatypesGetMultiCommunity +import it.vercruysse.lemmyapi.datatypes.GetMultiCommunityResponse as LemmyapiDatatypesGetMultiCommunityResponse +import it.vercruysse.lemmyapi.datatypes.GetPersonDetails as LemmyapiDatatypesGetPersonDetails +import it.vercruysse.lemmyapi.datatypes.GetPersonDetailsResponse as LemmyapiDatatypesGetPersonDetailsResponse +import it.vercruysse.lemmyapi.datatypes.GetPost as LemmyapiDatatypesGetPost +import it.vercruysse.lemmyapi.datatypes.GetPostResponse as LemmyapiDatatypesGetPostResponse +import it.vercruysse.lemmyapi.datatypes.GetPosts as LemmyapiDatatypesGetPosts +import it.vercruysse.lemmyapi.datatypes.GetRandomCommunity as LemmyapiDatatypesGetRandomCommunity +import it.vercruysse.lemmyapi.datatypes.GetRegistrationApplication as LemmyapiDatatypesGetRegistrationApplication +import it.vercruysse.lemmyapi.datatypes.GetSiteMetadata as LemmyapiDatatypesGetSiteMetadata +import it.vercruysse.lemmyapi.datatypes.GetSiteMetadataResponse as LemmyapiDatatypesGetSiteMetadataResponse +import it.vercruysse.lemmyapi.datatypes.GetSiteResponse as LemmyapiDatatypesGetSiteResponse +import it.vercruysse.lemmyapi.datatypes.HideCommunity as LemmyapiDatatypesHideCommunity +import it.vercruysse.lemmyapi.datatypes.HidePost as LemmyapiDatatypesHidePost +import it.vercruysse.lemmyapi.datatypes.ImageDetails as LemmyapiDatatypesImageDetails +import it.vercruysse.lemmyapi.datatypes.ImageGetParams as LemmyapiDatatypesImageGetParams +import it.vercruysse.lemmyapi.datatypes.ImageProxyParams as LemmyapiDatatypesImageProxyParams +import it.vercruysse.lemmyapi.datatypes.Instance as LemmyapiDatatypesInstance +import it.vercruysse.lemmyapi.datatypes.InstanceActions as LemmyapiDatatypesInstanceActions +import it.vercruysse.lemmyapi.datatypes.Language as LemmyapiDatatypesLanguage +import it.vercruysse.lemmyapi.datatypes.LinkMetadata as LemmyapiDatatypesLinkMetadata +import it.vercruysse.lemmyapi.datatypes.ListCommentLikes as LemmyapiDatatypesListCommentLikes +import it.vercruysse.lemmyapi.datatypes.ListCommunities as LemmyapiDatatypesListCommunities +import it.vercruysse.lemmyapi.datatypes.ListCommunityPendingFollows as LemmyapiDatatypesListCommunityPendingFollows +import it.vercruysse.lemmyapi.datatypes.ListCustomEmojis as LemmyapiDatatypesListCustomEmojis +import it.vercruysse.lemmyapi.datatypes.ListCustomEmojisResponse as LemmyapiDatatypesListCustomEmojisResponse +import it.vercruysse.lemmyapi.datatypes.ListLoginsResponse as LemmyapiDatatypesListLoginsResponse +import it.vercruysse.lemmyapi.datatypes.ListMedia as LemmyapiDatatypesListMedia +import it.vercruysse.lemmyapi.datatypes.ListMultiCommunities as LemmyapiDatatypesListMultiCommunities +import it.vercruysse.lemmyapi.datatypes.ListNotifications as LemmyapiDatatypesListNotifications +import it.vercruysse.lemmyapi.datatypes.ListPersonContent as LemmyapiDatatypesListPersonContent +import it.vercruysse.lemmyapi.datatypes.ListPersonHidden as LemmyapiDatatypesListPersonHidden +import it.vercruysse.lemmyapi.datatypes.ListPersonLiked as LemmyapiDatatypesListPersonLiked +import it.vercruysse.lemmyapi.datatypes.ListPersonRead as LemmyapiDatatypesListPersonRead +import it.vercruysse.lemmyapi.datatypes.ListPersonSaved as LemmyapiDatatypesListPersonSaved +import it.vercruysse.lemmyapi.datatypes.ListPostLikes as LemmyapiDatatypesListPostLikes +import it.vercruysse.lemmyapi.datatypes.ListRegistrationApplications as LemmyapiDatatypesListRegistrationApplications +import it.vercruysse.lemmyapi.datatypes.ListReports as LemmyapiDatatypesListReports +import it.vercruysse.lemmyapi.datatypes.ListTaglines as LemmyapiDatatypesListTaglines +import it.vercruysse.lemmyapi.datatypes.LocalImage as LemmyapiDatatypesLocalImage +import it.vercruysse.lemmyapi.datatypes.LocalImageView as LemmyapiDatatypesLocalImageView +import it.vercruysse.lemmyapi.datatypes.LocalSite as LemmyapiDatatypesLocalSite +import it.vercruysse.lemmyapi.datatypes.LocalSiteRateLimit as LemmyapiDatatypesLocalSiteRateLimit +import it.vercruysse.lemmyapi.datatypes.LocalSiteUrlBlocklist as LemmyapiDatatypesLocalSiteUrlBlocklist +import it.vercruysse.lemmyapi.datatypes.LocalUser as LemmyapiDatatypesLocalUser +import it.vercruysse.lemmyapi.datatypes.LocalUserView as LemmyapiDatatypesLocalUserView +import it.vercruysse.lemmyapi.datatypes.LockComment as LemmyapiDatatypesLockComment +import it.vercruysse.lemmyapi.datatypes.LockPost as LemmyapiDatatypesLockPost +import it.vercruysse.lemmyapi.datatypes.Login as LemmyapiDatatypesLogin +import it.vercruysse.lemmyapi.datatypes.LoginResponse as LemmyapiDatatypesLoginResponse +import it.vercruysse.lemmyapi.datatypes.LoginToken as LemmyapiDatatypesLoginToken +import it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead as LemmyapiDatatypesMarkManyPostsAsRead +import it.vercruysse.lemmyapi.datatypes.MarkNotificationAsRead as LemmyapiDatatypesMarkNotificationAsRead +import it.vercruysse.lemmyapi.datatypes.MarkPostAsRead as LemmyapiDatatypesMarkPostAsRead +import it.vercruysse.lemmyapi.datatypes.ModEditPost as LemmyapiDatatypesModEditPost +import it.vercruysse.lemmyapi.datatypes.Modlog as LemmyapiDatatypesModlog +import it.vercruysse.lemmyapi.datatypes.ModlogView as LemmyapiDatatypesModlogView +import it.vercruysse.lemmyapi.datatypes.MultiCommunity as LemmyapiDatatypesMultiCommunity +import it.vercruysse.lemmyapi.datatypes.MultiCommunityEntry as LemmyapiDatatypesMultiCommunityEntry +import it.vercruysse.lemmyapi.datatypes.MultiCommunityFollow as LemmyapiDatatypesMultiCommunityFollow +import it.vercruysse.lemmyapi.datatypes.MultiCommunityResponse as LemmyapiDatatypesMultiCommunityResponse +import it.vercruysse.lemmyapi.datatypes.MultiCommunityView as LemmyapiDatatypesMultiCommunityView +import it.vercruysse.lemmyapi.datatypes.MyUserInfo as LemmyapiDatatypesMyUserInfo +import it.vercruysse.lemmyapi.datatypes.NotePerson as LemmyapiDatatypesNotePerson +import it.vercruysse.lemmyapi.datatypes.Notification as LemmyapiDatatypesNotification +import it.vercruysse.lemmyapi.datatypes.NotificationData as LemmyapiDatatypesNotificationData +import it.vercruysse.lemmyapi.datatypes.NotificationView as LemmyapiDatatypesNotificationView +import it.vercruysse.lemmyapi.datatypes.OAuthAccount as LemmyapiDatatypesOAuthAccount +import it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset as LemmyapiDatatypesPasswordChangeAfterReset +import it.vercruysse.lemmyapi.datatypes.PasswordReset as LemmyapiDatatypesPasswordReset +import it.vercruysse.lemmyapi.datatypes.PendingFollow as LemmyapiDatatypesPendingFollow +import it.vercruysse.lemmyapi.datatypes.PendingFollowerView as LemmyapiDatatypesPendingFollowerView +import it.vercruysse.lemmyapi.datatypes.Person as LemmyapiDatatypesPerson +import it.vercruysse.lemmyapi.datatypes.PersonActions as LemmyapiDatatypesPersonActions +import it.vercruysse.lemmyapi.datatypes.PersonResponse as LemmyapiDatatypesPersonResponse +import it.vercruysse.lemmyapi.datatypes.PersonView as LemmyapiDatatypesPersonView +import it.vercruysse.lemmyapi.datatypes.PluginMetadata as LemmyapiDatatypesPluginMetadata +import it.vercruysse.lemmyapi.datatypes.Post as LemmyapiDatatypesPost +import it.vercruysse.lemmyapi.datatypes.PostActions as LemmyapiDatatypesPostActions +import it.vercruysse.lemmyapi.datatypes.PostCommentCombinedView as LemmyapiDatatypesPostCommentCombinedView +import it.vercruysse.lemmyapi.datatypes.PostOrCommentOrPrivateMessage as LemmyapiDatatypesPostOrCommentOrPrivateMessage +import it.vercruysse.lemmyapi.datatypes.PostReport as LemmyapiDatatypesPostReport +import it.vercruysse.lemmyapi.datatypes.PostReportResponse as LemmyapiDatatypesPostReportResponse +import it.vercruysse.lemmyapi.datatypes.PostReportView as LemmyapiDatatypesPostReportView +import it.vercruysse.lemmyapi.datatypes.PostResponse as LemmyapiDatatypesPostResponse +import it.vercruysse.lemmyapi.datatypes.PostView as LemmyapiDatatypesPostView +import it.vercruysse.lemmyapi.datatypes.PrivateMessage as LemmyapiDatatypesPrivateMessage +import it.vercruysse.lemmyapi.datatypes.PrivateMessageReport as LemmyapiDatatypesPrivateMessageReport +import it.vercruysse.lemmyapi.datatypes.PrivateMessageReportResponse as LemmyapiDatatypesPrivateMessageReportResponse +import it.vercruysse.lemmyapi.datatypes.PrivateMessageReportView as LemmyapiDatatypesPrivateMessageReportView +import it.vercruysse.lemmyapi.datatypes.PrivateMessageResponse as LemmyapiDatatypesPrivateMessageResponse +import it.vercruysse.lemmyapi.datatypes.PrivateMessageView as LemmyapiDatatypesPrivateMessageView +import it.vercruysse.lemmyapi.datatypes.PublicOAuthProvider as LemmyapiDatatypesPublicOAuthProvider +import it.vercruysse.lemmyapi.datatypes.PurgeComment as LemmyapiDatatypesPurgeComment +import it.vercruysse.lemmyapi.datatypes.PurgeCommunity as LemmyapiDatatypesPurgeCommunity +import it.vercruysse.lemmyapi.datatypes.PurgePerson as LemmyapiDatatypesPurgePerson +import it.vercruysse.lemmyapi.datatypes.PurgePost as LemmyapiDatatypesPurgePost +import it.vercruysse.lemmyapi.datatypes.Register as LemmyapiDatatypesRegister +import it.vercruysse.lemmyapi.datatypes.RegistrationApplication as LemmyapiDatatypesRegistrationApplication +import it.vercruysse.lemmyapi.datatypes.RegistrationApplicationResponse as LemmyapiDatatypesRegistrationApplicationResponse +import it.vercruysse.lemmyapi.datatypes.RegistrationApplicationView as LemmyapiDatatypesRegistrationApplicationView +import it.vercruysse.lemmyapi.datatypes.RemoveComment as LemmyapiDatatypesRemoveComment +import it.vercruysse.lemmyapi.datatypes.RemoveCommunity as LemmyapiDatatypesRemoveCommunity +import it.vercruysse.lemmyapi.datatypes.RemovePost as LemmyapiDatatypesRemovePost +import it.vercruysse.lemmyapi.datatypes.ReportCombinedView as LemmyapiDatatypesReportCombinedView +import it.vercruysse.lemmyapi.datatypes.ResendVerificationEmail as LemmyapiDatatypesResendVerificationEmail +import it.vercruysse.lemmyapi.datatypes.ResolveCommentReport as LemmyapiDatatypesResolveCommentReport +import it.vercruysse.lemmyapi.datatypes.ResolveCommunityReport as LemmyapiDatatypesResolveCommunityReport +import it.vercruysse.lemmyapi.datatypes.ResolveObject as LemmyapiDatatypesResolveObject +import it.vercruysse.lemmyapi.datatypes.ResolvePostReport as LemmyapiDatatypesResolvePostReport +import it.vercruysse.lemmyapi.datatypes.ResolvePrivateMessageReport as LemmyapiDatatypesResolvePrivateMessageReport +import it.vercruysse.lemmyapi.datatypes.SaveComment as LemmyapiDatatypesSaveComment +import it.vercruysse.lemmyapi.datatypes.SavePost as LemmyapiDatatypesSavePost +import it.vercruysse.lemmyapi.datatypes.SaveUserSettings as LemmyapiDatatypesSaveUserSettings +import it.vercruysse.lemmyapi.datatypes.Search as LemmyapiDatatypesSearch +import it.vercruysse.lemmyapi.datatypes.SearchCombinedView as LemmyapiDatatypesSearchCombinedView +import it.vercruysse.lemmyapi.datatypes.SearchResponse as LemmyapiDatatypesSearchResponse +import it.vercruysse.lemmyapi.datatypes.Site as LemmyapiDatatypesSite +import it.vercruysse.lemmyapi.datatypes.SiteResponse as LemmyapiDatatypesSiteResponse +import it.vercruysse.lemmyapi.datatypes.SiteView as LemmyapiDatatypesSiteView +import it.vercruysse.lemmyapi.datatypes.Tagline as LemmyapiDatatypesTagline +import it.vercruysse.lemmyapi.datatypes.TaglineResponse as LemmyapiDatatypesTaglineResponse +import it.vercruysse.lemmyapi.datatypes.TransferCommunity as LemmyapiDatatypesTransferCommunity +import it.vercruysse.lemmyapi.datatypes.UnreadCountsResponse as LemmyapiDatatypesUnreadCountsResponse +import it.vercruysse.lemmyapi.datatypes.UploadImageResponse as LemmyapiDatatypesUploadImageResponse +import it.vercruysse.lemmyapi.datatypes.UserBlockInstanceCommunitiesParams as LemmyapiDatatypesUserBlockInstanceCommunitiesParams +import it.vercruysse.lemmyapi.datatypes.UserBlockInstancePersonsParams as LemmyapiDatatypesUserBlockInstancePersonsParams +import it.vercruysse.lemmyapi.datatypes.UserSettingsBackup as LemmyapiDatatypesUserSettingsBackup +import it.vercruysse.lemmyapi.datatypes.VerifyEmail as LemmyapiDatatypesVerifyEmail +import it.vercruysse.lemmyapi.datatypes.VoteView as LemmyapiDatatypesVoteView +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.AddAdmin as X0DatatypesAddAdmin +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.AddAdminResponse as X0DatatypesAddAdminResponse +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.AddModToCommunity as X0DatatypesAddModToCommunity +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.AddModToCommunityResponse as X0DatatypesAddModToCommunityResponse +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.AdminAllowInstanceParams as X0DatatypesAdminAllowInstanceParams +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.AdminBlockInstanceParams as X0DatatypesAdminBlockInstanceParams +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.AdminListUsers as X0DatatypesAdminListUsers +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.AdminOAuthProvider as X0DatatypesAdminOAuthProvider +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ApproveCommunityPendingFollower as X0DatatypesApproveCommunityPendingFollower +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ApproveRegistrationApplication as X0DatatypesApproveRegistrationApplication +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.AuthenticateWithOauth as X0DatatypesAuthenticateWithOauth +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.BanFromCommunity as X0DatatypesBanFromCommunity +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.BanPerson as X0DatatypesBanPerson +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.BlockCommunity as X0DatatypesBlockCommunity +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.BlockPerson as X0DatatypesBlockPerson +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CaptchaResponse as X0DatatypesCaptchaResponse +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ChangePassword as X0DatatypesChangePassword +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.Comment as X0DatatypesComment +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CommentActions as X0DatatypesCommentActions +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CommentReport as X0DatatypesCommentReport +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CommentReportResponse as X0DatatypesCommentReportResponse +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CommentReportView as X0DatatypesCommentReportView +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CommentResponse as X0DatatypesCommentResponse +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CommentSlimView as X0DatatypesCommentSlimView +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CommentView as X0DatatypesCommentView +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.Community as X0DatatypesCommunity +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CommunityActions as X0DatatypesCommunityActions +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CommunityFollowerView as X0DatatypesCommunityFollowerView +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CommunityIdQuery as X0DatatypesCommunityIdQuery +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CommunityModeratorView as X0DatatypesCommunityModeratorView +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CommunityReport as X0DatatypesCommunityReport +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CommunityReportResponse as X0DatatypesCommunityReportResponse +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CommunityReportView as X0DatatypesCommunityReportView +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CommunityResponse as X0DatatypesCommunityResponse +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CommunityTag as X0DatatypesCommunityTag +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CommunityView as X0DatatypesCommunityView +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CreateComment as X0DatatypesCreateComment +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CreateCommentLike as X0DatatypesCreateCommentLike +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CreateCommentReport as X0DatatypesCreateCommentReport +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CreateCommentWarning as X0DatatypesCreateCommentWarning +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CreateCommunity as X0DatatypesCreateCommunity +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CreateCommunityReport as X0DatatypesCreateCommunityReport +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CreateCommunityTag as X0DatatypesCreateCommunityTag +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CreateCustomEmoji as X0DatatypesCreateCustomEmoji +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CreateMultiCommunity as X0DatatypesCreateMultiCommunity +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CreateOAuthProvider as X0DatatypesCreateOAuthProvider +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CreateOrDeleteMultiCommunityEntry as X0DatatypesCreateOrDeleteMultiCommunityEntry +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CreatePost as X0DatatypesCreatePost +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CreatePostLike as X0DatatypesCreatePostLike +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CreatePostReport as X0DatatypesCreatePostReport +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CreatePostWarning as X0DatatypesCreatePostWarning +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CreatePrivateMessage as X0DatatypesCreatePrivateMessage +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CreatePrivateMessageReport as X0DatatypesCreatePrivateMessageReport +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CreateSite as X0DatatypesCreateSite +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CreateTagline as X0DatatypesCreateTagline +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CustomEmoji as X0DatatypesCustomEmoji +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CustomEmojiKeyword as X0DatatypesCustomEmojiKeyword +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CustomEmojiResponse as X0DatatypesCustomEmojiResponse +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CustomEmojiView as X0DatatypesCustomEmojiView +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.DeleteAccount as X0DatatypesDeleteAccount +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.DeleteComment as X0DatatypesDeleteComment +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.DeleteCommunity as X0DatatypesDeleteCommunity +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.DeleteCommunityTag as X0DatatypesDeleteCommunityTag +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.DeleteCustomEmoji as X0DatatypesDeleteCustomEmoji +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.DeleteImageParams as X0DatatypesDeleteImageParams +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.DeleteOAuthProvider as X0DatatypesDeleteOAuthProvider +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.DeletePost as X0DatatypesDeletePost +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.DeletePrivateMessage as X0DatatypesDeletePrivateMessage +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.DeleteTagline as X0DatatypesDeleteTagline +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.DistinguishComment as X0DatatypesDistinguishComment +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.EditComment as X0DatatypesEditComment +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.EditCommunity as X0DatatypesEditCommunity +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.EditCommunityNotifications as X0DatatypesEditCommunityNotifications +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.EditCommunityTag as X0DatatypesEditCommunityTag +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.EditCustomEmoji as X0DatatypesEditCustomEmoji +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.EditMultiCommunity as X0DatatypesEditMultiCommunity +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.EditOAuthProvider as X0DatatypesEditOAuthProvider +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.EditPost as X0DatatypesEditPost +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.EditPostNotifications as X0DatatypesEditPostNotifications +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.EditPrivateMessage as X0DatatypesEditPrivateMessage +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.EditSite as X0DatatypesEditSite +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.EditTagline as X0DatatypesEditTagline +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.EditTotp as X0DatatypesEditTotp +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.EditTotpResponse as X0DatatypesEditTotpResponse +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ExportDataResponse as X0DatatypesExportDataResponse +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.FeaturePost as X0DatatypesFeaturePost +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.FederatedInstanceView as X0DatatypesFederatedInstanceView +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.FederationAllowList as X0DatatypesFederationAllowList +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.FederationBlockList as X0DatatypesFederationBlockList +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.FederationQueueState as X0DatatypesFederationQueueState +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.FollowCommunity as X0DatatypesFollowCommunity +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.FollowMultiCommunity as X0DatatypesFollowMultiCommunity +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.GenerateTotpSecretResponse as X0DatatypesGenerateTotpSecretResponse +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.GetCaptchaResponse as X0DatatypesGetCaptchaResponse +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.GetComment as X0DatatypesGetComment +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.GetComments as X0DatatypesGetComments +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.GetCommunity as X0DatatypesGetCommunity +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.GetCommunityResponse as X0DatatypesGetCommunityResponse +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.GetFederatedInstances as X0DatatypesGetFederatedInstances +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.GetModlog as X0DatatypesGetModlog +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.GetMultiCommunity as X0DatatypesGetMultiCommunity +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.GetMultiCommunityResponse as X0DatatypesGetMultiCommunityResponse +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.GetPersonDetails as X0DatatypesGetPersonDetails +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.GetPersonDetailsResponse as X0DatatypesGetPersonDetailsResponse +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.GetPost as X0DatatypesGetPost +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.GetPostResponse as X0DatatypesGetPostResponse +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.GetPosts as X0DatatypesGetPosts +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.GetRandomCommunity as X0DatatypesGetRandomCommunity +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.GetRegistrationApplication as X0DatatypesGetRegistrationApplication +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.GetSiteMetadata as X0DatatypesGetSiteMetadata +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.GetSiteMetadataResponse as X0DatatypesGetSiteMetadataResponse +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.GetSiteResponse as X0DatatypesGetSiteResponse +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.HideCommunity as X0DatatypesHideCommunity +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.HidePost as X0DatatypesHidePost +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ImageDetails as X0DatatypesImageDetails +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ImageGetParams as X0DatatypesImageGetParams +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ImageProxyParams as X0DatatypesImageProxyParams +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.Instance as X0DatatypesInstance +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.InstanceActions as X0DatatypesInstanceActions +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.Language as X0DatatypesLanguage +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.LinkMetadata as X0DatatypesLinkMetadata +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ListCommentLikes as X0DatatypesListCommentLikes +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ListCommunities as X0DatatypesListCommunities +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ListCommunityPendingFollows as X0DatatypesListCommunityPendingFollows +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ListCustomEmojis as X0DatatypesListCustomEmojis +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ListCustomEmojisResponse as X0DatatypesListCustomEmojisResponse +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ListLoginsResponse as X0DatatypesListLoginsResponse +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ListMedia as X0DatatypesListMedia +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ListMultiCommunities as X0DatatypesListMultiCommunities +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ListNotifications as X0DatatypesListNotifications +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ListPersonContent as X0DatatypesListPersonContent +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ListPersonHidden as X0DatatypesListPersonHidden +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ListPersonLiked as X0DatatypesListPersonLiked +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ListPersonRead as X0DatatypesListPersonRead +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ListPersonSaved as X0DatatypesListPersonSaved +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ListPostLikes as X0DatatypesListPostLikes +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ListRegistrationApplications as X0DatatypesListRegistrationApplications +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ListReports as X0DatatypesListReports +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ListTaglines as X0DatatypesListTaglines +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.LocalImage as X0DatatypesLocalImage +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.LocalImageView as X0DatatypesLocalImageView +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.LocalSite as X0DatatypesLocalSite +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.LocalSiteRateLimit as X0DatatypesLocalSiteRateLimit +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.LocalSiteUrlBlocklist as X0DatatypesLocalSiteUrlBlocklist +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.LocalUser as X0DatatypesLocalUser +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.LocalUserView as X0DatatypesLocalUserView +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.LockComment as X0DatatypesLockComment +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.LockPost as X0DatatypesLockPost +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.Login as X0DatatypesLogin +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.LoginResponse as X0DatatypesLoginResponse +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.LoginToken as X0DatatypesLoginToken +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.MarkManyPostsAsRead as X0DatatypesMarkManyPostsAsRead +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.MarkNotificationAsRead as X0DatatypesMarkNotificationAsRead +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.MarkPostAsRead as X0DatatypesMarkPostAsRead +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ModEditPost as X0DatatypesModEditPost +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.Modlog as X0DatatypesModlog +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ModlogView as X0DatatypesModlogView +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.MultiCommunity as X0DatatypesMultiCommunity +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.MultiCommunityEntry as X0DatatypesMultiCommunityEntry +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.MultiCommunityFollow as X0DatatypesMultiCommunityFollow +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.MultiCommunityResponse as X0DatatypesMultiCommunityResponse +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.MultiCommunityView as X0DatatypesMultiCommunityView +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.MyUserInfo as X0DatatypesMyUserInfo +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.NotePerson as X0DatatypesNotePerson +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.Notification as X0DatatypesNotification +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.NotificationData as X0DatatypesNotificationData +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.NotificationView as X0DatatypesNotificationView +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.OAuthAccount as X0DatatypesOAuthAccount +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PasswordChangeAfterReset as X0DatatypesPasswordChangeAfterReset +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PasswordReset as X0DatatypesPasswordReset +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PendingFollow as X0DatatypesPendingFollow +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PendingFollowerView as X0DatatypesPendingFollowerView +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.Person as X0DatatypesPerson +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PersonActions as X0DatatypesPersonActions +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PersonResponse as X0DatatypesPersonResponse +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PersonView as X0DatatypesPersonView +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PluginMetadata as X0DatatypesPluginMetadata +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.Post as X0DatatypesPost +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PostActions as X0DatatypesPostActions +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PostCommentCombinedView as X0DatatypesPostCommentCombinedView +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PostOrCommentOrPrivateMessage as X0DatatypesPostOrCommentOrPrivateMessage +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PostReport as X0DatatypesPostReport +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PostReportResponse as X0DatatypesPostReportResponse +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PostReportView as X0DatatypesPostReportView +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PostResponse as X0DatatypesPostResponse +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PostView as X0DatatypesPostView +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PrivateMessage as X0DatatypesPrivateMessage +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PrivateMessageReport as X0DatatypesPrivateMessageReport +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PrivateMessageReportResponse as X0DatatypesPrivateMessageReportResponse +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PrivateMessageReportView as X0DatatypesPrivateMessageReportView +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PrivateMessageResponse as X0DatatypesPrivateMessageResponse +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PrivateMessageView as X0DatatypesPrivateMessageView +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PublicOAuthProvider as X0DatatypesPublicOAuthProvider +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PurgeComment as X0DatatypesPurgeComment +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PurgeCommunity as X0DatatypesPurgeCommunity +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PurgePerson as X0DatatypesPurgePerson +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PurgePost as X0DatatypesPurgePost +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.Register as X0DatatypesRegister +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.RegistrationApplication as X0DatatypesRegistrationApplication +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.RegistrationApplicationResponse as X0DatatypesRegistrationApplicationResponse +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.RegistrationApplicationView as X0DatatypesRegistrationApplicationView +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.RemoveComment as X0DatatypesRemoveComment +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.RemoveCommunity as X0DatatypesRemoveCommunity +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.RemovePost as X0DatatypesRemovePost +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ReportCombinedView as X0DatatypesReportCombinedView +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ResendVerificationEmail as X0DatatypesResendVerificationEmail +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ResolveCommentReport as X0DatatypesResolveCommentReport +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ResolveCommunityReport as X0DatatypesResolveCommunityReport +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ResolveObject as X0DatatypesResolveObject +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ResolvePostReport as X0DatatypesResolvePostReport +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ResolvePrivateMessageReport as X0DatatypesResolvePrivateMessageReport +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.SaveComment as X0DatatypesSaveComment +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.SavePost as X0DatatypesSavePost +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.SaveUserSettings as X0DatatypesSaveUserSettings +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.Search as X0DatatypesSearch +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.SearchCombinedView as X0DatatypesSearchCombinedView +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.SearchResponse as X0DatatypesSearchResponse +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.Site as X0DatatypesSite +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.SiteResponse as X0DatatypesSiteResponse +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.SiteView as X0DatatypesSiteView +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.Tagline as X0DatatypesTagline +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.TaglineResponse as X0DatatypesTaglineResponse +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.TransferCommunity as X0DatatypesTransferCommunity +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.UnreadCountsResponse as X0DatatypesUnreadCountsResponse +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.UploadImageResponse as X0DatatypesUploadImageResponse +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.UserBlockInstanceCommunitiesParams as X0DatatypesUserBlockInstanceCommunitiesParams +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.UserBlockInstancePersonsParams as X0DatatypesUserBlockInstancePersonsParams +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.UserSettingsBackup as X0DatatypesUserSettingsBackup +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.VerifyEmail as X0DatatypesVerifyEmail +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.VoteView as X0DatatypesVoteView + +internal class Transformer : MapperGenerator { + override fun toUni(d: X0DatatypesAddAdminResponse): LemmyapiDatatypesAddAdminResponse = LemmyapiDatatypesAddAdminResponse( + admins = d.admins.map { this.toUni(d = it) } + ) + + override fun toUni(d: X0DatatypesAddModToCommunityResponse): LemmyapiDatatypesAddModToCommunityResponse = LemmyapiDatatypesAddModToCommunityResponse( + moderators = d.moderators.map { this.toUni(d = it) } + ) + + override fun toUni(d: X0DatatypesAdminAllowInstanceParams): LemmyapiDatatypesAdminAllowInstanceParams = LemmyapiDatatypesAdminAllowInstanceParams( + instance = d.instance, + allow = d.allow, + reason = d.reason + ) + + override fun toUni(d: X0DatatypesAdminBlockInstanceParams): LemmyapiDatatypesAdminBlockInstanceParams = LemmyapiDatatypesAdminBlockInstanceParams( + instance = d.instance, + block = d.block, + reason = d.reason, + expires_at = d.expires_at + ) + + override fun toUni(d: X0DatatypesAdminListUsers): LemmyapiDatatypesAdminListUsers = LemmyapiDatatypesAdminListUsers( + banned_only = d.banned_only, + page_cursor = d.page_cursor, + sort = d.sort, + limit = d.limit + ) + + override fun toUni(d: X0DatatypesAdminOAuthProvider): LemmyapiDatatypesAdminOAuthProvider = LemmyapiDatatypesAdminOAuthProvider( + id = d.id, + display_name = d.display_name, + issuer = d.issuer, + authorization_endpoint = d.authorization_endpoint, + token_endpoint = d.token_endpoint, + userinfo_endpoint = d.userinfo_endpoint, + id_claim = d.id_claim, + client_id = d.client_id, + scopes = d.scopes, + auto_verify_email = d.auto_verify_email, + account_linking_enabled = d.account_linking_enabled, + enabled = d.enabled, + published_at = d.published_at, + updated_at = d.updated_at, + use_pkce = d.use_pkce + ) + + override fun toUni(d: X0DatatypesAuthenticateWithOauth): LemmyapiDatatypesAuthenticateWithOauth = LemmyapiDatatypesAuthenticateWithOauth( + code = d.code, + oauth_provider_id = d.oauth_provider_id, + redirect_uri = d.redirect_uri, + show_nsfw = d.show_nsfw, + username = d.username, + answer = d.answer, + pkce_code_verifier = d.pkce_code_verifier, + stay_logged_in = d.stay_logged_in + ) + + override fun toUni(d: X0DatatypesCaptchaResponse): LemmyapiDatatypesCaptchaResponse = LemmyapiDatatypesCaptchaResponse( + png = d.png, + wav = d.wav, + uuid = d.uuid + ) + + override fun toUni(d: X0DatatypesComment): LemmyapiDatatypesComment = LemmyapiDatatypesComment( + id = d.id, + creator_id = d.creator_id, + post_id = d.post_id, + content = d.content, + removed = d.removed, + published_at = d.published_at, + updated_at = d.updated_at, + deleted = d.deleted, + ap_id = d.ap_id, + local = d.local, + path = d.path, + distinguished = d.distinguished, + language_id = d.language_id, + score = d.score, + upvotes = d.upvotes, + downvotes = d.downvotes, + child_count = d.child_count, + report_count = d.report_count, + unresolved_report_count = d.unresolved_report_count, + federation_pending = d.federation_pending, + locked = d.locked + ) + + override fun toUni(d: X0DatatypesCommentActions): LemmyapiDatatypesCommentActions = LemmyapiDatatypesCommentActions( + voted_at = d.voted_at, + saved_at = d.saved_at + ) + + override fun toUni(d: X0DatatypesCommentReport): LemmyapiDatatypesCommentReport = LemmyapiDatatypesCommentReport( + id = d.id, + creator_id = d.creator_id, + comment_id = d.comment_id, + original_comment_text = d.original_comment_text, + reason = d.reason, + resolved = d.resolved, + resolver_id = d.resolver_id, + published_at = d.published_at, + updated_at = d.updated_at + ) + + override fun toUni(d: X0DatatypesCommentReportResponse): LemmyapiDatatypesCommentReportResponse = LemmyapiDatatypesCommentReportResponse( + comment_report_view = this.toUni(d = d.comment_report_view) + ) + + override fun toUni(d: X0DatatypesCommentReportView): LemmyapiDatatypesCommentReportView = LemmyapiDatatypesCommentReportView( + comment_report = this.toUni(d = d.comment_report), + comment = this.toUni(d = d.comment), + post = this.toUni(d = d.post), + community = this.toUni(d = d.community), + creator = this.toUni(d = d.creator), + comment_creator = this.toUni(d = d.comment_creator), + comment_actions = d.comment_actions?.let { this.toUni(d = it) }, + resolver = d.resolver?.let { this.toUni(d = it) }, + person_actions = d.person_actions?.let { this.toUni(d = it) }, + community_actions = d.community_actions?.let { this.toUni(d = it) }, + creator_is_admin = d.creator_is_admin, + creator_is_moderator = d.creator_is_moderator, + creator_banned = d.creator_banned, + creator_ban_expires_at = d.creator_ban_expires_at, + creator_banned_from_community = d.creator_banned_from_community, + creator_community_ban_expires_at = d.creator_community_ban_expires_at + ) + + override fun toUni(d: X0DatatypesCommentResponse): LemmyapiDatatypesCommentResponse = LemmyapiDatatypesCommentResponse( + comment_view = this.toUni(d = d.comment_view) + ) + + override fun toUni(d: X0DatatypesCommentSlimView): LemmyapiDatatypesCommentSlimView = LemmyapiDatatypesCommentSlimView( + comment = this.toUni(d = d.comment), + creator = this.toUni(d = d.creator), + comment_actions = d.comment_actions?.let { this.toUni(d = it) }, + person_actions = d.person_actions?.let { this.toUni(d = it) }, + creator_is_admin = d.creator_is_admin, + can_mod = d.can_mod, + creator_banned = d.creator_banned, + creator_is_moderator = d.creator_is_moderator, + creator_banned_from_community = d.creator_banned_from_community + ) + + override fun toUni(d: X0DatatypesCommentView): LemmyapiDatatypesCommentView = LemmyapiDatatypesCommentView( + comment = this.toUni(d = d.comment), + creator = this.toUni(d = d.creator), + post = this.toUni(d = d.post), + community = this.toUni(d = d.community), + community_actions = d.community_actions?.let { this.toUni(d = it) }, + comment_actions = d.comment_actions?.let { this.toUni(d = it) }, + person_actions = d.person_actions?.let { this.toUni(d = it) }, + tags = d.tags.map { this.toUni(d = it) }, + can_mod = d.can_mod, + creator_banned = d.creator_banned, + creator_ban_expires_at = d.creator_ban_expires_at, + creator_is_admin = d.creator_is_admin, + creator_is_moderator = d.creator_is_moderator, + creator_banned_from_community = d.creator_banned_from_community, + creator_community_ban_expires_at = d.creator_community_ban_expires_at + ) + + override fun toUni(d: X0DatatypesCommunity): LemmyapiDatatypesCommunity = LemmyapiDatatypesCommunity( + id = d.id, + name = d.name, + title = d.title, + sidebar = d.sidebar, + removed = d.removed, + published_at = d.published_at, + updated_at = d.updated_at, + deleted = d.deleted, + nsfw = d.nsfw, + ap_id = d.ap_id, + local = d.local, + last_refreshed_at = d.last_refreshed_at, + icon = d.icon, + banner = d.banner, + posting_restricted_to_mods = d.posting_restricted_to_mods, + instance_id = d.instance_id, + visibility = d.visibility, + summary = d.summary, + subscribers = d.subscribers, + posts = d.posts, + comments = d.comments, + users_active_day = d.users_active_day, + users_active_week = d.users_active_week, + users_active_month = d.users_active_month, + users_active_half_year = d.users_active_half_year, + subscribers_local = d.subscribers_local, + report_count = d.report_count, + unresolved_report_count = d.unresolved_report_count, + local_removed = d.local_removed + ) + + override fun toUni(d: X0DatatypesCommunityActions): LemmyapiDatatypesCommunityActions = LemmyapiDatatypesCommunityActions( + followed_at = d.followed_at, + follow_state = d.follow_state, + blocked_at = d.blocked_at, + became_moderator_at = d.became_moderator_at, + received_ban_at = d.received_ban_at, + ban_expires_at = d.ban_expires_at, + notifications = d.notifications + ) + + override fun toUni(d: X0DatatypesCommunityFollowerView): LemmyapiDatatypesCommunityFollowerView = LemmyapiDatatypesCommunityFollowerView( + community = this.toUni(d = d.community), + follower = this.toUni(d = d.follower) + ) + + override fun toUni(d: X0DatatypesCommunityIdQuery): LemmyapiDatatypesCommunityIdQuery = LemmyapiDatatypesCommunityIdQuery( + id = d.id + ) + + override fun toUni(d: X0DatatypesCommunityModeratorView): LemmyapiDatatypesCommunityModeratorView = LemmyapiDatatypesCommunityModeratorView( + community = this.toUni(d = d.community), + moderator = this.toUni(d = d.moderator) + ) + + override fun toUni(d: X0DatatypesCommunityReport): LemmyapiDatatypesCommunityReport = LemmyapiDatatypesCommunityReport( + id = d.id, + creator_id = d.creator_id, + community_id = d.community_id, + original_community_name = d.original_community_name, + original_community_title = d.original_community_title, + original_community_summary = d.original_community_summary, + original_community_sidebar = d.original_community_sidebar, + original_community_icon = d.original_community_icon, + original_community_banner = d.original_community_banner, + reason = d.reason, + resolved = d.resolved, + resolver_id = d.resolver_id, + published_at = d.published_at, + updated_at = d.updated_at + ) + + override fun toUni(d: X0DatatypesCommunityReportResponse): LemmyapiDatatypesCommunityReportResponse = LemmyapiDatatypesCommunityReportResponse( + community_report_view = this.toUni(d = d.community_report_view) + ) + + override fun toUni(d: X0DatatypesCommunityReportView): LemmyapiDatatypesCommunityReportView = LemmyapiDatatypesCommunityReportView( + community_report = this.toUni(d = d.community_report), + community = this.toUni(d = d.community), + creator = this.toUni(d = d.creator), + resolver = d.resolver?.let { this.toUni(d = it) }, + creator_is_admin = d.creator_is_admin, + creator_is_moderator = d.creator_is_moderator, + creator_banned = d.creator_banned, + creator_ban_expires_at = d.creator_ban_expires_at, + creator_banned_from_community = d.creator_banned_from_community, + creator_community_ban_expires_at = d.creator_community_ban_expires_at + ) + + override fun toUni(d: X0DatatypesCommunityResponse): LemmyapiDatatypesCommunityResponse = LemmyapiDatatypesCommunityResponse( + community_view = this.toUni(d = d.community_view), + discussion_languages = d.discussion_languages + ) + + override fun toUni(d: X0DatatypesCommunityTag): LemmyapiDatatypesCommunityTag = LemmyapiDatatypesCommunityTag( + id = d.id, + ap_id = d.ap_id, + name = d.name, + display_name = d.display_name, + summary = d.summary, + community_id = d.community_id, + published_at = d.published_at, + updated_at = d.updated_at, + deleted = d.deleted, + color = d.color + ) + + override fun toUni(d: X0DatatypesCommunityView): LemmyapiDatatypesCommunityView = LemmyapiDatatypesCommunityView( + community = this.toUni(d = d.community), + community_actions = d.community_actions?.let { this.toUni(d = it) }, + can_mod = d.can_mod, + tags = d.tags.map { this.toUni(d = it) } + ) + + override fun toUni(d: X0DatatypesCustomEmoji): LemmyapiDatatypesCustomEmoji = LemmyapiDatatypesCustomEmoji( + id = d.id, + shortcode = d.shortcode, + image_url = d.image_url, + alt_text = d.alt_text, + category = d.category, + published_at = d.published_at, + updated_at = d.updated_at + ) + + override fun toUni(d: X0DatatypesCustomEmojiKeyword): LemmyapiDatatypesCustomEmojiKeyword = LemmyapiDatatypesCustomEmojiKeyword( + custom_emoji_id = d.custom_emoji_id, + keyword = d.keyword + ) + + override fun toUni(d: X0DatatypesCustomEmojiResponse): LemmyapiDatatypesCustomEmojiResponse = LemmyapiDatatypesCustomEmojiResponse( + custom_emoji = this.toUni(d = d.custom_emoji) + ) + + override fun toUni(d: X0DatatypesCustomEmojiView): LemmyapiDatatypesCustomEmojiView = LemmyapiDatatypesCustomEmojiView( + custom_emoji = this.toUni(d = d.custom_emoji), + keywords = d.keywords.map { this.toUni(d = it) } + ) + + override fun toUni(d: X0DatatypesEditTotpResponse): LemmyapiDatatypesEditTotpResponse = LemmyapiDatatypesEditTotpResponse( + enabled = d.enabled + ) + + override fun toUni(d: X0DatatypesExportDataResponse): LemmyapiDatatypesExportDataResponse = LemmyapiDatatypesExportDataResponse( + notifications = d.notifications.map { this.toUni(d = it) }, + content = d.content.map { this.toUni(d = it) }, + read_posts = d.read_posts, + liked = d.liked, + moderates = d.moderates, + settings = this.toUni(d = d.settings) + ) + + override fun toUni(d: X0DatatypesFederatedInstanceView): LemmyapiDatatypesFederatedInstanceView = LemmyapiDatatypesFederatedInstanceView( + instance = this.toUni(d = d.instance), + site = d.site?.let { this.toUni(d = it) }, + queue_state = d.queue_state?.let { this.toUni(d = it) }, + blocked = d.blocked?.let { this.toUni(d = it) }, + allowed = d.allowed?.let { this.toUni(d = it) } + ) + + override fun toUni(d: X0DatatypesFederationAllowList): LemmyapiDatatypesFederationAllowList = LemmyapiDatatypesFederationAllowList( + published_at = d.published_at, + updated_at = d.updated_at + ) + + override fun toUni(d: X0DatatypesFederationBlockList): LemmyapiDatatypesFederationBlockList = LemmyapiDatatypesFederationBlockList( + published_at = d.published_at, + updated_at = d.updated_at, + expires_at = d.expires_at + ) + + override fun toUni(d: X0DatatypesFederationQueueState): LemmyapiDatatypesFederationQueueState = LemmyapiDatatypesFederationQueueState( + instance_id = d.instance_id, + last_successful_id = d.last_successful_id, + last_successful_published_time_at = d.last_successful_published_time_at, + fail_count = d.fail_count, + last_retry_at = d.last_retry_at + ) + + override fun toUni(d: X0DatatypesGenerateTotpSecretResponse): LemmyapiDatatypesGenerateTotpSecretResponse = LemmyapiDatatypesGenerateTotpSecretResponse( + totp_secret_url = d.totp_secret_url + ) + + override fun toUni(d: X0DatatypesGetCaptchaResponse): LemmyapiDatatypesGetCaptchaResponse = LemmyapiDatatypesGetCaptchaResponse( + ok = d.ok?.let { this.toUni(d = it) } + ) + + override fun toUni(d: X0DatatypesGetCommunityResponse): LemmyapiDatatypesGetCommunityResponse = LemmyapiDatatypesGetCommunityResponse( + community_view = this.toUni(d = d.community_view), + site = d.site?.let { this.toUni(d = it) }, + moderators = d.moderators.map { this.toUni(d = it) }, + discussion_languages = d.discussion_languages + ) + + override fun toUni(d: X0DatatypesGetMultiCommunityResponse): LemmyapiDatatypesGetMultiCommunityResponse = LemmyapiDatatypesGetMultiCommunityResponse( + multi_community_view = this.toUni(d = d.multi_community_view), + communities = d.communities.map { this.toUni(d = it) } + ) + + override fun toUni(d: X0DatatypesGetPersonDetailsResponse): LemmyapiDatatypesGetPersonDetailsResponse = LemmyapiDatatypesGetPersonDetailsResponse( + person_view = this.toUni(d = d.person_view), + site = d.site?.let { this.toUni(d = it) }, + moderates = d.moderates.map { this.toUni(d = it) }, + multi_communities_created = d.multi_communities_created.map { this.toUni(d = it) } + ) + + override fun toUni(d: X0DatatypesGetPostResponse): LemmyapiDatatypesGetPostResponse = LemmyapiDatatypesGetPostResponse( + post_view = this.toUni(d = d.post_view), + community_view = this.toUni(d = d.community_view), + cross_posts = d.cross_posts.map { this.toUni(d = it) } + ) + + override fun toUni(d: X0DatatypesGetSiteMetadataResponse): LemmyapiDatatypesGetSiteMetadataResponse = LemmyapiDatatypesGetSiteMetadataResponse( + metadata = this.toUni(d = d.metadata) + ) + + override fun toUni(d: X0DatatypesGetSiteResponse): LemmyapiDatatypesGetSiteResponse = LemmyapiDatatypesGetSiteResponse( + site_view = this.toUni(d = d.site_view), + admins = d.admins.map { this.toUni(d = it) }, + version = d.version, + all_languages = d.all_languages.map { this.toUni(d = it) }, + discussion_languages = d.discussion_languages, + blocked_urls = d.blocked_urls.map { this.toUni(d = it) }, + tagline = d.tagline?.let { this.toUni(d = it) }, + oauth_providers = d.oauth_providers.map { this.toUni(d = it) }, + admin_oauth_providers = d.admin_oauth_providers.map { this.toUni(d = it) }, + image_upload_disabled = d.image_upload_disabled, + active_plugins = d.active_plugins.map { this.toUni(d = it) }, + last_application_duration_seconds = d.last_application_duration_seconds + ) + + override fun toUni(d: X0DatatypesImageDetails): LemmyapiDatatypesImageDetails = LemmyapiDatatypesImageDetails( + link = d.link, + width = d.width, + height = d.height, + content_type = d.content_type, + blurhash = d.blurhash + ) + + override fun toUni(d: X0DatatypesImageGetParams): LemmyapiDatatypesImageGetParams = LemmyapiDatatypesImageGetParams( + file_type = d.file_type, + max_size = d.max_size + ) + + override fun toUni(d: X0DatatypesImageProxyParams): LemmyapiDatatypesImageProxyParams = LemmyapiDatatypesImageProxyParams( + url = d.url, + file_type = d.file_type, + max_size = d.max_size + ) + + override fun toUni(d: X0DatatypesInstance): LemmyapiDatatypesInstance = LemmyapiDatatypesInstance( + id = d.id, + domain = d.domain, + published_at = d.published_at, + updated_at = d.updated_at, + software = d.software, + version = d.version + ) + + override fun toUni(d: X0DatatypesInstanceActions): LemmyapiDatatypesInstanceActions = LemmyapiDatatypesInstanceActions( + blocked_communities_at = d.blocked_communities_at, + received_ban_at = d.received_ban_at, + ban_expires_at = d.ban_expires_at, + blocked_persons_at = d.blocked_persons_at + ) + + override fun toUni(d: X0DatatypesLanguage): LemmyapiDatatypesLanguage = LemmyapiDatatypesLanguage( + id = d.id, + code = d.code, + name = d.name + ) + + override fun toUni(d: X0DatatypesLinkMetadata): LemmyapiDatatypesLinkMetadata = LemmyapiDatatypesLinkMetadata( + content_type = d.content_type, + title = d.title, + description = d.description, + image = d.image, + image_width = d.image_width, + image_height = d.image_height, + embed_video_url = d.embed_video_url, + video_width = d.video_width, + video_height = d.video_height + ) + + override fun toUni(d: X0DatatypesListCustomEmojisResponse): LemmyapiDatatypesListCustomEmojisResponse = LemmyapiDatatypesListCustomEmojisResponse( + custom_emojis = d.custom_emojis.map { this.toUni(d = it) } + ) + + override fun toUni(d: X0DatatypesListLoginsResponse): LemmyapiDatatypesListLoginsResponse = LemmyapiDatatypesListLoginsResponse( + logins = d.logins.map { this.toUni(d = it) } + ) + + override fun toUni(d: X0DatatypesLocalImage): LemmyapiDatatypesLocalImage = LemmyapiDatatypesLocalImage( + person_id = d.person_id, + pictrs_alias = d.pictrs_alias, + published_at = d.published_at, + thumbnail_for_post_id = d.thumbnail_for_post_id + ) + + override fun toUni(d: X0DatatypesLocalImageView): LemmyapiDatatypesLocalImageView = LemmyapiDatatypesLocalImageView( + local_image = this.toUni(d = d.local_image), + person = this.toUni(d = d.person), + post = d.post?.let { this.toUni(d = it) } + ) + + override fun toUni(d: X0DatatypesLocalSite): LemmyapiDatatypesLocalSite = LemmyapiDatatypesLocalSite( + id = d.id, + site_id = d.site_id, + site_setup = d.site_setup, + community_creation_admin_only = d.community_creation_admin_only, + require_email_verification = d.require_email_verification, + application_question = d.application_question, + private_instance = d.private_instance, + default_theme = d.default_theme, + default_post_listing_type = d.default_post_listing_type, + legal_information = d.legal_information, + application_email_admins = d.application_email_admins, + slur_filter_regex = d.slur_filter_regex, + federation_enabled = d.federation_enabled, + captcha_enabled = d.captcha_enabled, + captcha_difficulty = d.captcha_difficulty, + published_at = d.published_at, + updated_at = d.updated_at, + registration_mode = d.registration_mode, + reports_email_admins = d.reports_email_admins, + federation_signed_fetch = d.federation_signed_fetch, + default_post_listing_mode = d.default_post_listing_mode, + default_post_sort_type = d.default_post_sort_type, + default_comment_sort_type = d.default_comment_sort_type, + oauth_registration = d.oauth_registration, + post_upvotes = d.post_upvotes, + post_downvotes = d.post_downvotes, + comment_upvotes = d.comment_upvotes, + comment_downvotes = d.comment_downvotes, + default_post_time_range_seconds = d.default_post_time_range_seconds, + disallow_nsfw_content = d.disallow_nsfw_content, + users = d.users, + posts = d.posts, + comments = d.comments, + communities = d.communities, + users_active_day = d.users_active_day, + users_active_week = d.users_active_week, + users_active_month = d.users_active_month, + users_active_half_year = d.users_active_half_year, + disable_email_notifications = d.disable_email_notifications, + suggested_multi_community_id = d.suggested_multi_community_id, + default_items_per_page = d.default_items_per_page + ) + + override fun toUni(d: X0DatatypesLocalSiteRateLimit): LemmyapiDatatypesLocalSiteRateLimit = LemmyapiDatatypesLocalSiteRateLimit( + local_site_id = d.local_site_id, + message_max_requests = d.message_max_requests, + message_interval_seconds = d.message_interval_seconds, + post_max_requests = d.post_max_requests, + post_interval_seconds = d.post_interval_seconds, + register_max_requests = d.register_max_requests, + register_interval_seconds = d.register_interval_seconds, + image_max_requests = d.image_max_requests, + image_interval_seconds = d.image_interval_seconds, + comment_max_requests = d.comment_max_requests, + comment_interval_seconds = d.comment_interval_seconds, + search_max_requests = d.search_max_requests, + search_interval_seconds = d.search_interval_seconds, + published_at = d.published_at, + updated_at = d.updated_at, + import_user_settings_max_requests = d.import_user_settings_max_requests, + import_user_settings_interval_seconds = d.import_user_settings_interval_seconds + ) + + override fun toUni(d: X0DatatypesLocalSiteUrlBlocklist): LemmyapiDatatypesLocalSiteUrlBlocklist = LemmyapiDatatypesLocalSiteUrlBlocklist( + id = d.id, + url = d.url, + published_at = d.published_at, + updated_at = d.updated_at + ) + + override fun toUni(d: X0DatatypesLocalUser): LemmyapiDatatypesLocalUser = LemmyapiDatatypesLocalUser( + id = d.id, + person_id = d.person_id, + email = d.email, + show_nsfw = d.show_nsfw, + theme = d.theme, + default_post_sort_type = d.default_post_sort_type, + default_listing_type = d.default_listing_type, + interface_language = d.interface_language, + show_avatars = d.show_avatars, + send_notifications_to_email = d.send_notifications_to_email, + show_bot_accounts = d.show_bot_accounts, + show_read_posts = d.show_read_posts, + email_verified = d.email_verified, + accepted_application = d.accepted_application, + open_links_in_new_tab = d.open_links_in_new_tab, + blur_nsfw = d.blur_nsfw, + infinite_scroll_enabled = d.infinite_scroll_enabled, + admin = d.admin, + post_listing_mode = d.post_listing_mode, + totp_2fa_enabled = d.totp_2fa_enabled, + enable_animated_images = d.enable_animated_images, + enable_private_messages = d.enable_private_messages, + collapse_bot_comments = d.collapse_bot_comments, + default_comment_sort_type = d.default_comment_sort_type, + auto_mark_fetched_posts_as_read = d.auto_mark_fetched_posts_as_read, + last_donation_notification_at = d.last_donation_notification_at, + hide_media = d.hide_media, + default_post_time_range_seconds = d.default_post_time_range_seconds, + show_score = d.show_score, + show_upvotes = d.show_upvotes, + show_downvotes = d.show_downvotes, + show_upvote_percentage = d.show_upvote_percentage, + show_person_votes = d.show_person_votes, + default_items_per_page = d.default_items_per_page + ) + + override fun toUni(d: X0DatatypesLocalUserView): LemmyapiDatatypesLocalUserView = LemmyapiDatatypesLocalUserView( + local_user = this.toUni(d = d.local_user), + person = this.toUni(d = d.person), + banned = d.banned, + ban_expires_at = d.ban_expires_at + ) + + override fun toUni(d: X0DatatypesLoginResponse): LemmyapiDatatypesLoginResponse = LemmyapiDatatypesLoginResponse( + jwt = d.jwt, + registration_created = d.registration_created, + verify_email_sent = d.verify_email_sent + ) + + override fun toUni(d: X0DatatypesLoginToken): LemmyapiDatatypesLoginToken = LemmyapiDatatypesLoginToken( + user_id = d.user_id, + published_at = d.published_at, + ip = d.ip, + user_agent = d.user_agent + ) + + override fun toUni(d: X0DatatypesModEditPost): LemmyapiDatatypesModEditPost = LemmyapiDatatypesModEditPost( + post_id = d.post_id, + nsfw = d.nsfw, + tags = d.tags + ) + + override fun toUni(d: X0DatatypesModlog): LemmyapiDatatypesModlog = LemmyapiDatatypesModlog( + id = d.id, + kind = d.kind, + is_revert = d.is_revert, + reason = d.reason, + expires_at = d.expires_at, + published_at = d.published_at + ) + + override fun toUni(d: X0DatatypesModlogView): LemmyapiDatatypesModlogView = LemmyapiDatatypesModlogView( + modlog = this.toUni(d = d.modlog), + moderator = d.moderator?.let { this.toUni(d = it) }, + target_person = d.target_person?.let { this.toUni(d = it) }, + target_instance = d.target_instance?.let { this.toUni(d = it) }, + target_community = d.target_community?.let { this.toUni(d = it) }, + target_post = d.target_post?.let { this.toUni(d = it) }, + target_comment = d.target_comment?.let { this.toUni(d = it) } + ) + + override fun toUni(d: X0DatatypesMultiCommunity): LemmyapiDatatypesMultiCommunity = LemmyapiDatatypesMultiCommunity( + id = d.id, + creator_id = d.creator_id, + instance_id = d.instance_id, + name = d.name, + title = d.title, + summary = d.summary, + local = d.local, + deleted = d.deleted, + ap_id = d.ap_id, + last_refreshed_at = d.last_refreshed_at, + published_at = d.published_at, + updated_at = d.updated_at, + subscribers = d.subscribers, + subscribers_local = d.subscribers_local, + communities = d.communities + ) + + override fun toUni(d: X0DatatypesMultiCommunityEntry): LemmyapiDatatypesMultiCommunityEntry = LemmyapiDatatypesMultiCommunityEntry( + multi_community_id = d.multi_community_id, + community_id = d.community_id + ) + + override fun toUni(d: X0DatatypesMultiCommunityFollow): LemmyapiDatatypesMultiCommunityFollow = LemmyapiDatatypesMultiCommunityFollow( + multi_community_id = d.multi_community_id, + person_id = d.person_id, + follow_state = d.follow_state + ) + + override fun toUni(d: X0DatatypesMultiCommunityResponse): LemmyapiDatatypesMultiCommunityResponse = LemmyapiDatatypesMultiCommunityResponse( + multi_community_view = this.toUni(d = d.multi_community_view) + ) + + override fun toUni(d: X0DatatypesMultiCommunityView): LemmyapiDatatypesMultiCommunityView = LemmyapiDatatypesMultiCommunityView( + multi = this.toUni(d = d.multi), + follow_state = d.follow_state, + owner = this.toUni(d = d.owner) + ) + + override fun toUni(d: X0DatatypesMyUserInfo): LemmyapiDatatypesMyUserInfo = LemmyapiDatatypesMyUserInfo( + local_user_view = this.toUni(d = d.local_user_view), + follows = d.follows.map { this.toUni(d = it) }, + moderates = d.moderates.map { this.toUni(d = it) }, + multi_community_follows = d.multi_community_follows.map { this.toUni(d = it) }, + community_blocks = d.community_blocks.map { this.toUni(d = it) }, + instance_communities_blocks = d.instance_communities_blocks.map { this.toUni(d = it) }, + instance_persons_blocks = d.instance_persons_blocks.map { this.toUni(d = it) }, + person_blocks = d.person_blocks.map { this.toUni(d = it) }, + keyword_blocks = d.keyword_blocks, + discussion_languages = d.discussion_languages + ) + + override fun toUni(d: X0DatatypesNotePerson): LemmyapiDatatypesNotePerson = LemmyapiDatatypesNotePerson( + person_id = d.person_id, + note = d.note + ) + + override fun toUni(d: X0DatatypesNotification): LemmyapiDatatypesNotification = LemmyapiDatatypesNotification( + id = d.id, + recipient_id = d.recipient_id, + comment_id = d.comment_id, + read = d.read, + published_at = d.published_at, + kind = d.kind, + post_id = d.post_id, + private_message_id = d.private_message_id, + modlog_id = d.modlog_id + ) + + override fun toUni(d: X0DatatypesNotificationData): LemmyapiDatatypesNotificationData = super.toUni(d) + + override fun toUni(d: X0DatatypesNotificationView): LemmyapiDatatypesNotificationView = LemmyapiDatatypesNotificationView( + notification = this.toUni(d = d.notification), + data = d.let { toUni(d.data) } + ) + + override fun toUni(d: X0DatatypesOAuthAccount): LemmyapiDatatypesOAuthAccount = LemmyapiDatatypesOAuthAccount( + local_user_id = d.local_user_id, + oauth_provider_id = d.oauth_provider_id, + oauth_user_id = d.oauth_user_id, + published_at = d.published_at, + updated_at = d.updated_at + ) + + override fun toUni(d: X0DatatypesPendingFollow): LemmyapiDatatypesPendingFollow = LemmyapiDatatypesPendingFollow( + person = this.toUni(d = d.person), + community = this.toUni(d = d.community), + is_new_instance = d.is_new_instance, + follow_state = d.follow_state + ) + + override fun toUni(d: X0DatatypesPendingFollowerView): LemmyapiDatatypesPendingFollowerView = LemmyapiDatatypesPendingFollowerView( + person = this.toUni(d = d.person), + community = this.toUni(d = d.community), + is_new_instance = d.is_new_instance, + follow_state = d.follow_state + ) + + override fun toUni(d: X0DatatypesPerson): LemmyapiDatatypesPerson = LemmyapiDatatypesPerson( + id = d.id, + name = d.name, + display_name = d.display_name, + avatar = d.avatar, + published_at = d.published_at, + updated_at = d.updated_at, + ap_id = d.ap_id, + bio = d.bio, + local = d.local, + banner = d.banner, + deleted = d.deleted, + matrix_user_id = d.matrix_user_id, + bot_account = d.bot_account, + instance_id = d.instance_id, + post_count = d.post_count, + comment_count = d.comment_count, + last_refreshed_at = d.last_refreshed_at + ) + + override fun toUni(d: X0DatatypesPersonActions): LemmyapiDatatypesPersonActions = LemmyapiDatatypesPersonActions( + blocked_at = d.blocked_at, + noted_at = d.noted_at, + note = d.note, + voted_at = d.voted_at, + upvotes = d.upvotes, + downvotes = d.downvotes + ) + + override fun toUni(d: X0DatatypesPersonResponse): LemmyapiDatatypesPersonResponse = LemmyapiDatatypesPersonResponse( + person_view = this.toUni(d = d.person_view) + ) + + override fun toUni(d: X0DatatypesPersonView): LemmyapiDatatypesPersonView = LemmyapiDatatypesPersonView( + person = this.toUni(d = d.person), + is_admin = d.is_admin, + person_actions = d.person_actions?.let { this.toUni(d = it) }, + banned = d.banned, + ban_expires_at = d.ban_expires_at + ) + + override fun toUni(d: X0DatatypesPluginMetadata): LemmyapiDatatypesPluginMetadata = LemmyapiDatatypesPluginMetadata( + name = d.name, + url = d.url, + description = d.description + ) + + override fun toUni(d: X0DatatypesPost): LemmyapiDatatypesPost = LemmyapiDatatypesPost( + id = d.id, + name = d.name, + url = d.url, + body = d.body, + creator_id = d.creator_id, + community_id = d.community_id, + removed = d.removed, + locked = d.locked, + published_at = d.published_at, + updated_at = d.updated_at, + deleted = d.deleted, + nsfw = d.nsfw, + embed_title = d.embed_title, + embed_description = d.embed_description, + thumbnail_url = d.thumbnail_url, + ap_id = d.ap_id, + local = d.local, + embed_video_url = d.embed_video_url, + language_id = d.language_id, + featured_community = d.featured_community, + featured_local = d.featured_local, + url_content_type = d.url_content_type, + alt_text = d.alt_text, + scheduled_publish_time_at = d.scheduled_publish_time_at, + newest_comment_time_at = d.newest_comment_time_at, + comments = d.comments, + score = d.score, + upvotes = d.upvotes, + downvotes = d.downvotes, + report_count = d.report_count, + unresolved_report_count = d.unresolved_report_count, + federation_pending = d.federation_pending, + embed_video_width = d.embed_video_width, + embed_video_height = d.embed_video_height + ) + + override fun toUni(d: X0DatatypesPostActions): LemmyapiDatatypesPostActions = LemmyapiDatatypesPostActions( + read_at = d.read_at, + read_comments_at = d.read_comments_at, + read_comments_amount = d.read_comments_amount, + saved_at = d.saved_at, + voted_at = d.voted_at, + hidden_at = d.hidden_at, + notifications = d.notifications + ) + + override fun toUni(d: X0DatatypesPostCommentCombinedView): LemmyapiDatatypesPostCommentCombinedView = super.toUni(d) + + override fun toUni(d: X0DatatypesPostOrCommentOrPrivateMessage): LemmyapiDatatypesPostOrCommentOrPrivateMessage = super.toUni(d) + + override fun toUni(d: X0DatatypesPostReport): LemmyapiDatatypesPostReport = LemmyapiDatatypesPostReport( + id = d.id, + creator_id = d.creator_id, + post_id = d.post_id, + original_post_name = d.original_post_name, + original_post_url = d.original_post_url, + original_post_body = d.original_post_body, + reason = d.reason, + resolved = d.resolved, + resolver_id = d.resolver_id, + published_at = d.published_at, + updated_at = d.updated_at, + violates_instance_rules = d.violates_instance_rules + ) + + override fun toUni(d: X0DatatypesPostReportResponse): LemmyapiDatatypesPostReportResponse = LemmyapiDatatypesPostReportResponse( + post_report_view = this.toUni(d = d.post_report_view) + ) + + override fun toUni(d: X0DatatypesPostReportView): LemmyapiDatatypesPostReportView = LemmyapiDatatypesPostReportView( + post_report = this.toUni(d = d.post_report), + post = this.toUni(d = d.post), + community = this.toUni(d = d.community), + creator = this.toUni(d = d.creator), + post_creator = this.toUni(d = d.post_creator), + community_actions = d.community_actions?.let { this.toUni(d = it) }, + post_actions = d.post_actions?.let { this.toUni(d = it) }, + person_actions = d.person_actions?.let { this.toUni(d = it) }, + resolver = d.resolver?.let { this.toUni(d = it) }, + creator_is_admin = d.creator_is_admin, + creator_is_moderator = d.creator_is_moderator, + creator_banned = d.creator_banned, + creator_ban_expires_at = d.creator_ban_expires_at, + creator_banned_from_community = d.creator_banned_from_community, + creator_community_ban_expires_at = d.creator_community_ban_expires_at + ) + + override fun toUni(d: X0DatatypesPostResponse): LemmyapiDatatypesPostResponse = LemmyapiDatatypesPostResponse( + post_view = this.toUni(d = d.post_view) + ) + + override fun toUni(d: X0DatatypesPostView): LemmyapiDatatypesPostView = LemmyapiDatatypesPostView( + post = this.toUni(d = d.post), + creator = this.toUni(d = d.creator), + community = this.toUni(d = d.community), + image_details = d.image_details?.let { this.toUni(d = it) }, + community_actions = d.community_actions?.let { this.toUni(d = it) }, + person_actions = d.person_actions?.let { this.toUni(d = it) }, + post_actions = d.post_actions?.let { this.toUni(d = it) }, + tags = d.tags.map { this.toUni(d = it) }, + can_mod = d.can_mod, + creator_banned = d.creator_banned, + creator_ban_expires_at = d.creator_ban_expires_at, + creator_is_admin = d.creator_is_admin, + creator_is_moderator = d.creator_is_moderator, + creator_banned_from_community = d.creator_banned_from_community, + creator_community_ban_expires_at = d.creator_community_ban_expires_at + ) + + override fun toUni(d: X0DatatypesPrivateMessage): LemmyapiDatatypesPrivateMessage = LemmyapiDatatypesPrivateMessage( + id = d.id, + creator_id = d.creator_id, + recipient_id = d.recipient_id, + content = d.content, + deleted = d.deleted, + published_at = d.published_at, + updated_at = d.updated_at, + ap_id = d.ap_id, + local = d.local, + removed = d.removed + ) + + override fun toUni(d: X0DatatypesPrivateMessageReport): LemmyapiDatatypesPrivateMessageReport = LemmyapiDatatypesPrivateMessageReport( + id = d.id, + creator_id = d.creator_id, + private_message_id = d.private_message_id, + original_pm_text = d.original_pm_text, + reason = d.reason, + resolved = d.resolved, + resolver_id = d.resolver_id, + published_at = d.published_at, + updated_at = d.updated_at + ) + + override fun toUni(d: X0DatatypesPrivateMessageReportResponse): LemmyapiDatatypesPrivateMessageReportResponse = LemmyapiDatatypesPrivateMessageReportResponse( + private_message_report_view = this.toUni(d = d.private_message_report_view) + ) + + override fun toUni(d: X0DatatypesPrivateMessageReportView): LemmyapiDatatypesPrivateMessageReportView = LemmyapiDatatypesPrivateMessageReportView( + private_message_report = this.toUni(d = d.private_message_report), + private_message = this.toUni(d = d.private_message), + private_message_creator = this.toUni(d = d.private_message_creator), + creator = this.toUni(d = d.creator), + resolver = d.resolver?.let { this.toUni(d = it) }, + creator_is_admin = d.creator_is_admin, + creator_banned = d.creator_banned, + creator_ban_expires_at = d.creator_ban_expires_at + ) + + override fun toUni(d: X0DatatypesPrivateMessageResponse): LemmyapiDatatypesPrivateMessageResponse = LemmyapiDatatypesPrivateMessageResponse( + private_message_view = this.toUni(d = d.private_message_view) + ) + + override fun toUni(d: X0DatatypesPrivateMessageView): LemmyapiDatatypesPrivateMessageView = LemmyapiDatatypesPrivateMessageView( + private_message = this.toUni(d = d.private_message), + creator = this.toUni(d = d.creator), + recipient = this.toUni(d = d.recipient) + ) + + override fun toUni(d: X0DatatypesPublicOAuthProvider): LemmyapiDatatypesPublicOAuthProvider = LemmyapiDatatypesPublicOAuthProvider( + id = d.id, + display_name = d.display_name, + authorization_endpoint = d.authorization_endpoint, + client_id = d.client_id, + scopes = d.scopes, + use_pkce = d.use_pkce + ) + + override fun toUni(d: X0DatatypesRegistrationApplication): LemmyapiDatatypesRegistrationApplication = LemmyapiDatatypesRegistrationApplication( + id = d.id, + local_user_id = d.local_user_id, + answer = d.answer, + admin_id = d.admin_id, + deny_reason = d.deny_reason, + published_at = d.published_at, + updated_at = d.updated_at + ) + + override fun toUni(d: X0DatatypesRegistrationApplicationResponse): LemmyapiDatatypesRegistrationApplicationResponse = LemmyapiDatatypesRegistrationApplicationResponse( + registration_application = this.toUni(d = d.registration_application) + ) + + override fun toUni(d: X0DatatypesRegistrationApplicationView): LemmyapiDatatypesRegistrationApplicationView = LemmyapiDatatypesRegistrationApplicationView( + registration_application = this.toUni(d = d.registration_application), + creator_local_user = this.toUni(d = d.creator_local_user), + creator = this.toUni(d = d.creator), + admin = d.admin?.let { this.toUni(d = it) } + ) + + override fun toUni(d: X0DatatypesReportCombinedView): LemmyapiDatatypesReportCombinedView = super.toUni(d) + + override fun toUni(d: X0DatatypesResendVerificationEmail): LemmyapiDatatypesResendVerificationEmail = LemmyapiDatatypesResendVerificationEmail( + email = d.email + ) + + override fun toUni(d: X0DatatypesSearchCombinedView): LemmyapiDatatypesSearchCombinedView = super.toUni(d) + + override fun toUni(d: X0DatatypesSearchResponse): LemmyapiDatatypesSearchResponse = LemmyapiDatatypesSearchResponse( + resolve = d.resolve?.let { this.toUni(d = it) }, + search = d.search.map { this.toUni(d = it) }, + next_page = d.next_page, + prev_page = d.prev_page + ) + + override fun toUni(d: X0DatatypesSite): LemmyapiDatatypesSite = LemmyapiDatatypesSite( + id = d.id, + name = d.name, + sidebar = d.sidebar, + published_at = d.published_at, + updated_at = d.updated_at, + icon = d.icon, + banner = d.banner, + summary = d.summary, + ap_id = d.ap_id, + last_refreshed_at = d.last_refreshed_at, + inbox_url = d.inbox_url, + public_key = d.public_key, + instance_id = d.instance_id, + content_warning = d.content_warning + ) + + override fun toUni(d: X0DatatypesSiteResponse): LemmyapiDatatypesSiteResponse = LemmyapiDatatypesSiteResponse( + site_view = this.toUni(d = d.site_view) + ) + + override fun toUni(d: X0DatatypesSiteView): LemmyapiDatatypesSiteView = LemmyapiDatatypesSiteView( + site = this.toUni(d = d.site), + local_site = this.toUni(d = d.local_site), + local_site_rate_limit = this.toUni(d = d.local_site_rate_limit), + instance = this.toUni(d = d.instance) + ) + + override fun toUni(d: X0DatatypesTagline): LemmyapiDatatypesTagline = LemmyapiDatatypesTagline( + id = d.id, + content = d.content, + published_at = d.published_at, + updated_at = d.updated_at + ) + + override fun toUni(d: X0DatatypesTaglineResponse): LemmyapiDatatypesTaglineResponse = LemmyapiDatatypesTaglineResponse( + tagline = this.toUni(d = d.tagline) + ) + + override fun toUni(d: X0DatatypesUnreadCountsResponse): LemmyapiDatatypesUnreadCountsResponse = LemmyapiDatatypesUnreadCountsResponse( + notification_count = d.notification_count, + report_count = d.report_count, + pending_follow_count = d.pending_follow_count, + registration_application_count = d.registration_application_count + ) + + override fun toUni(d: X0DatatypesUploadImageResponse): LemmyapiDatatypesUploadImageResponse = LemmyapiDatatypesUploadImageResponse( + image_url = d.image_url, + filename = d.filename + ) + + override fun toUni(d: X0DatatypesUserBlockInstanceCommunitiesParams): LemmyapiDatatypesUserBlockInstanceCommunitiesParams = LemmyapiDatatypesUserBlockInstanceCommunitiesParams( + instance_id = d.instance_id, + block = d.block + ) + + override fun toUni(d: X0DatatypesUserBlockInstancePersonsParams): LemmyapiDatatypesUserBlockInstancePersonsParams = LemmyapiDatatypesUserBlockInstancePersonsParams( + instance_id = d.instance_id, + block = d.block + ) + + override fun toUni(d: X0DatatypesUserSettingsBackup): LemmyapiDatatypesUserSettingsBackup = LemmyapiDatatypesUserSettingsBackup( + display_name = d.display_name, + bio = d.bio, + avatar = d.avatar, + banner = d.banner, + matrix_id = d.matrix_id, + bot_account = d.bot_account, + settings = d.settings?.let { this.toUni(d = it) }, + followed_communities = d.followed_communities, + saved_posts = d.saved_posts, + saved_comments = d.saved_comments, + blocked_communities = d.blocked_communities, + blocked_users = d.blocked_users, + blocked_instances_communities = d.blocked_instances_communities, + blocked_instances_persons = d.blocked_instances_persons, + blocking_keywords = d.blocking_keywords, + discussion_languages = d.discussion_languages + ) + + override fun toUni(d: X0DatatypesVoteView): LemmyapiDatatypesVoteView = LemmyapiDatatypesVoteView( + creator = this.toUni(d = d.creator), + creator_banned = d.creator_banned, + creator_banned_from_community = d.creator_banned_from_community, + score = d.let { if (d.is_upvote) 1 else -1 } + ) + + override fun fromUni(d: LemmyapiDatatypesAddAdmin): X0DatatypesAddAdmin = X0DatatypesAddAdmin( + person_id = d.person_id, + added = d.added + ) + + override fun fromUni(d: LemmyapiDatatypesAddModToCommunity): X0DatatypesAddModToCommunity = X0DatatypesAddModToCommunity( + community_id = d.community_id, + person_id = d.person_id, + added = d.added + ) + + override fun fromUni(d: LemmyapiDatatypesApproveCommunityPendingFollower): X0DatatypesApproveCommunityPendingFollower = X0DatatypesApproveCommunityPendingFollower( + community_id = d.community_id, + follower_id = d.follower_id, + approve = d.approve + ) + + override fun fromUni(d: LemmyapiDatatypesApproveRegistrationApplication): X0DatatypesApproveRegistrationApplication = X0DatatypesApproveRegistrationApplication( + id = d.id, + approve = d.approve, + deny_reason = d.deny_reason + ) + + override fun fromUni(d: LemmyapiDatatypesBanFromCommunity): X0DatatypesBanFromCommunity = X0DatatypesBanFromCommunity( + community_id = d.community_id, + person_id = d.person_id, + ban = d.ban, + remove_or_restore_data = d.remove_or_restore_data, + reason = d.reason, + expires_at = d.expires_at + ) + + override fun fromUni(d: LemmyapiDatatypesBanPerson): X0DatatypesBanPerson = X0DatatypesBanPerson( + person_id = d.person_id, + ban = d.ban, + remove_or_restore_data = d.remove_or_restore_data, + reason = d.reason, + expires_at = d.expires_at + ) + + override fun fromUni(d: LemmyapiDatatypesBlockCommunity): X0DatatypesBlockCommunity = X0DatatypesBlockCommunity( + community_id = d.community_id, + block = d.block + ) + + override fun fromUni(d: LemmyapiDatatypesBlockPerson): X0DatatypesBlockPerson = X0DatatypesBlockPerson( + person_id = d.person_id, + block = d.block + ) + + override fun fromUni(d: LemmyapiDatatypesChangePassword): X0DatatypesChangePassword = X0DatatypesChangePassword( + new_password = d.new_password, + new_password_verify = d.new_password_verify, + old_password = d.old_password, + stay_logged_in = d.stay_logged_in + ) + + override fun fromUni(d: LemmyapiDatatypesCreateComment): X0DatatypesCreateComment = X0DatatypesCreateComment( + content = d.content, + post_id = d.post_id, + parent_id = d.parent_id, + language_id = d.language_id + ) + + override fun fromUni(d: LemmyapiDatatypesCreateCommentLike): X0DatatypesCreateCommentLike = X0DatatypesCreateCommentLike( + comment_id = d.comment_id + ) + + override fun fromUni(d: LemmyapiDatatypesCreateCommentReport): X0DatatypesCreateCommentReport = X0DatatypesCreateCommentReport( + comment_id = d.comment_id, + reason = d.reason, + violates_instance_rules = d.violates_instance_rules + ) + + override fun fromUni(d: LemmyapiDatatypesCreateCommentWarning): X0DatatypesCreateCommentWarning = X0DatatypesCreateCommentWarning( + comment_id = d.comment_id, + reason = d.reason + ) + + override fun fromUni(d: LemmyapiDatatypesCreateCommunity): X0DatatypesCreateCommunity = X0DatatypesCreateCommunity( + name = d.name, + title = d.title, + sidebar = d.sidebar, + summary = d.summary, + icon = d.icon, + banner = d.banner, + nsfw = d.nsfw, + posting_restricted_to_mods = d.posting_restricted_to_mods, + discussion_languages = d.discussion_languages, + visibility = d.visibility + ) + + override fun fromUni(d: LemmyapiDatatypesCreateCommunityReport): X0DatatypesCreateCommunityReport = X0DatatypesCreateCommunityReport( + community_id = d.community_id, + reason = d.reason + ) + + override fun fromUni(d: LemmyapiDatatypesCreateCommunityTag): X0DatatypesCreateCommunityTag = X0DatatypesCreateCommunityTag( + community_id = d.community_id, + name = d.name, + display_name = d.display_name, + summary = d.summary, + color = d.color + ) + + override fun fromUni(d: LemmyapiDatatypesCreateCustomEmoji): X0DatatypesCreateCustomEmoji = X0DatatypesCreateCustomEmoji( + category = d.category, + shortcode = d.shortcode, + image_url = d.image_url, + alt_text = d.alt_text, + keywords = d.keywords + ) + + override fun fromUni(d: LemmyapiDatatypesCreateMultiCommunity): X0DatatypesCreateMultiCommunity = X0DatatypesCreateMultiCommunity( + name = d.name, + title = d.title, + summary = d.summary + ) + + override fun fromUni(d: LemmyapiDatatypesCreateOAuthProvider): X0DatatypesCreateOAuthProvider = X0DatatypesCreateOAuthProvider( + display_name = d.display_name, + issuer = d.issuer, + authorization_endpoint = d.authorization_endpoint, + token_endpoint = d.token_endpoint, + userinfo_endpoint = d.userinfo_endpoint, + id_claim = d.id_claim, + client_id = d.client_id, + client_secret = d.client_secret, + scopes = d.scopes, + auto_verify_email = d.auto_verify_email, + account_linking_enabled = d.account_linking_enabled, + use_pkce = d.use_pkce, + enabled = d.enabled + ) + + override fun fromUni(d: LemmyapiDatatypesCreateOrDeleteMultiCommunityEntry): X0DatatypesCreateOrDeleteMultiCommunityEntry = X0DatatypesCreateOrDeleteMultiCommunityEntry( + id = d.id, + community_id = d.community_id + ) + + override fun fromUni(d: LemmyapiDatatypesCreatePost): X0DatatypesCreatePost = X0DatatypesCreatePost( + name = d.name, + community_id = d.community_id, + url = d.url, + body = d.body, + alt_text = d.alt_text, + honeypot = d.honeypot, + nsfw = d.nsfw, + language_id = d.language_id, + custom_thumbnail = d.custom_thumbnail, + tags = d.tags, + scheduled_publish_time_at = d.scheduled_publish_time_at + ) + + override fun fromUni(d: LemmyapiDatatypesCreatePostLike): X0DatatypesCreatePostLike = X0DatatypesCreatePostLike( + post_id = d.post_id + ) + + override fun fromUni(d: LemmyapiDatatypesCreatePostReport): X0DatatypesCreatePostReport = X0DatatypesCreatePostReport( + post_id = d.post_id, + reason = d.reason, + violates_instance_rules = d.violates_instance_rules + ) + + override fun fromUni(d: LemmyapiDatatypesCreatePostWarning): X0DatatypesCreatePostWarning = X0DatatypesCreatePostWarning( + post_id = d.post_id, + reason = d.reason + ) + + override fun fromUni(d: LemmyapiDatatypesCreatePrivateMessage): X0DatatypesCreatePrivateMessage = X0DatatypesCreatePrivateMessage( + content = d.content, + recipient_id = d.recipient_id + ) + + override fun fromUni(d: LemmyapiDatatypesCreatePrivateMessageReport): X0DatatypesCreatePrivateMessageReport = X0DatatypesCreatePrivateMessageReport( + private_message_id = d.private_message_id, + reason = d.reason + ) + + override fun fromUni(d: LemmyapiDatatypesCreateSite): X0DatatypesCreateSite = X0DatatypesCreateSite( + name = d.name, + sidebar = d.sidebar, + summary = d.summary, + community_creation_admin_only = d.community_creation_admin_only, + require_email_verification = d.require_email_verification, + application_question = d.application_question, + private_instance = d.private_instance, + default_theme = d.default_theme, + default_post_listing_type = d.default_post_listing_type, + default_post_listing_mode = d.default_post_listing_mode, + default_post_sort_type = d.default_post_sort_type, + default_post_time_range_seconds = d.default_post_time_range_seconds, + default_comment_sort_type = d.default_comment_sort_type, + legal_information = d.legal_information, + application_email_admins = d.application_email_admins, + discussion_languages = d.discussion_languages, + slur_filter_regex = d.slur_filter_regex, + rate_limit_message_max_requests = d.rate_limit_message_max_requests, + rate_limit_message_interval_seconds = d.rate_limit_message_interval_seconds, + rate_limit_post_max_requests = d.rate_limit_post_max_requests, + rate_limit_post_interval_seconds = d.rate_limit_post_interval_seconds, + rate_limit_register_max_requests = d.rate_limit_register_max_requests, + rate_limit_register_interval_seconds = d.rate_limit_register_interval_seconds, + rate_limit_image_max_requests = d.rate_limit_image_max_requests, + rate_limit_image_interval_seconds = d.rate_limit_image_interval_seconds, + rate_limit_comment_max_requests = d.rate_limit_comment_max_requests, + rate_limit_comment_interval_seconds = d.rate_limit_comment_interval_seconds, + rate_limit_search_max_requests = d.rate_limit_search_max_requests, + rate_limit_search_interval_seconds = d.rate_limit_search_interval_seconds, + rate_limit_import_user_settings_max_requests = d.rate_limit_import_user_settings_max_requests, + rate_limit_import_user_settings_interval_seconds = d.rate_limit_import_user_settings_interval_seconds, + federation_enabled = d.federation_enabled, + captcha_enabled = d.captcha_enabled, + captcha_difficulty = d.captcha_difficulty, + registration_mode = d.registration_mode, + oauth_registration = d.oauth_registration, + content_warning = d.content_warning, + post_upvotes = d.post_upvotes, + post_downvotes = d.post_downvotes, + comment_upvotes = d.comment_upvotes, + comment_downvotes = d.comment_downvotes, + disallow_nsfw_content = d.disallow_nsfw_content, + disable_email_notifications = d.disable_email_notifications, + suggested_multi_community_id = d.suggested_multi_community_id + ) + + override fun fromUni(d: LemmyapiDatatypesCreateTagline): X0DatatypesCreateTagline = X0DatatypesCreateTagline( + content = d.content + ) + + override fun fromUni(d: LemmyapiDatatypesDeleteAccount): X0DatatypesDeleteAccount = X0DatatypesDeleteAccount( + password = d.password, + delete_content = d.delete_content + ) + + override fun fromUni(d: LemmyapiDatatypesDeleteComment): X0DatatypesDeleteComment = X0DatatypesDeleteComment( + comment_id = d.comment_id, + deleted = d.deleted + ) + + override fun fromUni(d: LemmyapiDatatypesDeleteCommunity): X0DatatypesDeleteCommunity = X0DatatypesDeleteCommunity( + community_id = d.community_id, + deleted = d.deleted + ) + + override fun fromUni(d: LemmyapiDatatypesDeleteCommunityTag): X0DatatypesDeleteCommunityTag = X0DatatypesDeleteCommunityTag( + tag_id = d.tag_id, + delete = d.delete + ) + + override fun fromUni(d: LemmyapiDatatypesDeleteCustomEmoji): X0DatatypesDeleteCustomEmoji = X0DatatypesDeleteCustomEmoji( + id = d.id + ) + + override fun fromUni(d: LemmyapiDatatypesDeleteImageParams): X0DatatypesDeleteImageParams = X0DatatypesDeleteImageParams( + filename = d.filename + ) + + override fun fromUni(d: LemmyapiDatatypesDeleteOAuthProvider): X0DatatypesDeleteOAuthProvider = X0DatatypesDeleteOAuthProvider( + id = d.id + ) + + override fun fromUni(d: LemmyapiDatatypesDeletePost): X0DatatypesDeletePost = X0DatatypesDeletePost( + post_id = d.post_id, + deleted = d.deleted + ) + + override fun fromUni(d: LemmyapiDatatypesDeletePrivateMessage): X0DatatypesDeletePrivateMessage = X0DatatypesDeletePrivateMessage( + private_message_id = d.private_message_id, + deleted = d.deleted + ) + + override fun fromUni(d: LemmyapiDatatypesDeleteTagline): X0DatatypesDeleteTagline = X0DatatypesDeleteTagline( + id = d.id + ) + + override fun fromUni(d: LemmyapiDatatypesDistinguishComment): X0DatatypesDistinguishComment = X0DatatypesDistinguishComment( + comment_id = d.comment_id, + distinguished = d.distinguished + ) + + override fun fromUni(d: LemmyapiDatatypesEditComment): X0DatatypesEditComment = X0DatatypesEditComment( + comment_id = d.comment_id, + content = d.content, + language_id = d.language_id + ) + + override fun fromUni(d: LemmyapiDatatypesEditCommunity): X0DatatypesEditCommunity = X0DatatypesEditCommunity( + community_id = d.community_id, + title = d.title, + sidebar = d.sidebar, + summary = d.summary, + nsfw = d.nsfw, + posting_restricted_to_mods = d.posting_restricted_to_mods, + discussion_languages = d.discussion_languages, + visibility = d.visibility + ) + + override fun fromUni(d: LemmyapiDatatypesEditCommunityNotifications): X0DatatypesEditCommunityNotifications = X0DatatypesEditCommunityNotifications( + community_id = d.community_id, + mode = d.mode + ) + + override fun fromUni(d: LemmyapiDatatypesEditCommunityTag): X0DatatypesEditCommunityTag = X0DatatypesEditCommunityTag( + tag_id = d.tag_id, + display_name = d.display_name, + summary = d.summary, + color = d.color + ) + + override fun fromUni(d: LemmyapiDatatypesEditCustomEmoji): X0DatatypesEditCustomEmoji = X0DatatypesEditCustomEmoji( + id = d.id, + category = d.category, + shortcode = d.shortcode, + image_url = d.image_url, + alt_text = d.alt_text, + keywords = d.keywords + ) + + override fun fromUni(d: LemmyapiDatatypesEditMultiCommunity): X0DatatypesEditMultiCommunity = X0DatatypesEditMultiCommunity( + id = d.id, + title = d.title, + summary = d.summary, + deleted = d.deleted + ) + + override fun fromUni(d: LemmyapiDatatypesEditOAuthProvider): X0DatatypesEditOAuthProvider = X0DatatypesEditOAuthProvider( + id = d.id, + display_name = d.display_name, + authorization_endpoint = d.authorization_endpoint, + token_endpoint = d.token_endpoint, + userinfo_endpoint = d.userinfo_endpoint, + id_claim = d.id_claim, + client_secret = d.client_secret, + scopes = d.scopes, + auto_verify_email = d.auto_verify_email, + account_linking_enabled = d.account_linking_enabled, + use_pkce = d.use_pkce, + enabled = d.enabled + ) + + override fun fromUni(d: LemmyapiDatatypesEditPost): X0DatatypesEditPost = X0DatatypesEditPost( + post_id = d.post_id, + name = d.name, + url = d.url, + body = d.body, + alt_text = d.alt_text, + nsfw = d.nsfw, + language_id = d.language_id, + custom_thumbnail = d.custom_thumbnail, + scheduled_publish_time_at = d.scheduled_publish_time_at, + tags = d.tags + ) + + override fun fromUni(d: LemmyapiDatatypesEditPostNotifications): X0DatatypesEditPostNotifications = X0DatatypesEditPostNotifications( + post_id = d.post_id, + mode = d.mode + ) + + override fun fromUni(d: LemmyapiDatatypesEditPrivateMessage): X0DatatypesEditPrivateMessage = X0DatatypesEditPrivateMessage( + private_message_id = d.private_message_id, + content = d.content + ) + + override fun fromUni(d: LemmyapiDatatypesEditSite): X0DatatypesEditSite = X0DatatypesEditSite( + name = d.name, + sidebar = d.sidebar, + summary = d.summary, + community_creation_admin_only = d.community_creation_admin_only, + require_email_verification = d.require_email_verification, + application_question = d.application_question, + private_instance = d.private_instance, + default_theme = d.default_theme, + default_post_listing_type = d.default_post_listing_type, + default_post_listing_mode = d.default_post_listing_mode, + default_post_sort_type = d.default_post_sort_type, + default_post_time_range_seconds = d.default_post_time_range_seconds, + default_items_per_page = d.default_items_per_page, + default_comment_sort_type = d.default_comment_sort_type, + legal_information = d.legal_information, + application_email_admins = d.application_email_admins, + discussion_languages = d.discussion_languages, + slur_filter_regex = d.slur_filter_regex, + rate_limit_message_max_requests = d.rate_limit_message_max_requests, + rate_limit_message_interval_seconds = d.rate_limit_message_interval_seconds, + rate_limit_post_max_requests = d.rate_limit_post_max_requests, + rate_limit_post_interval_seconds = d.rate_limit_post_interval_seconds, + rate_limit_register_max_requests = d.rate_limit_register_max_requests, + rate_limit_register_interval_seconds = d.rate_limit_register_interval_seconds, + rate_limit_image_max_requests = d.rate_limit_image_max_requests, + rate_limit_image_interval_seconds = d.rate_limit_image_interval_seconds, + rate_limit_comment_max_requests = d.rate_limit_comment_max_requests, + rate_limit_comment_interval_seconds = d.rate_limit_comment_interval_seconds, + rate_limit_search_max_requests = d.rate_limit_search_max_requests, + rate_limit_search_interval_seconds = d.rate_limit_search_interval_seconds, + rate_limit_import_user_settings_max_requests = d.rate_limit_import_user_settings_max_requests, + rate_limit_import_user_settings_interval_seconds = d.rate_limit_import_user_settings_interval_seconds, + federation_enabled = d.federation_enabled, + captcha_enabled = d.captcha_enabled, + captcha_difficulty = d.captcha_difficulty, + blocked_urls = d.blocked_urls, + registration_mode = d.registration_mode, + reports_email_admins = d.reports_email_admins, + content_warning = d.content_warning, + suggested_multi_community_id = d.suggested_multi_community_id + ) + + override fun fromUni(d: LemmyapiDatatypesEditTagline): X0DatatypesEditTagline = X0DatatypesEditTagline( + id = d.id, + content = d.content + ) + + override fun fromUni(d: LemmyapiDatatypesEditTotp): X0DatatypesEditTotp = X0DatatypesEditTotp( + totp_token = d.totp_token, + enabled = d.enabled + ) + + override fun fromUni(d: LemmyapiDatatypesFeaturePost): X0DatatypesFeaturePost = X0DatatypesFeaturePost( + post_id = d.post_id, + featured = d.featured, + feature_type = d.feature_type + ) + + override fun fromUni(d: LemmyapiDatatypesFollowCommunity): X0DatatypesFollowCommunity = X0DatatypesFollowCommunity( + community_id = d.community_id, + follow = d.follow + ) + + override fun fromUni(d: LemmyapiDatatypesFollowMultiCommunity): X0DatatypesFollowMultiCommunity = X0DatatypesFollowMultiCommunity( + multi_community_id = d.multi_community_id, + follow = d.follow + ) + + override fun fromUni(d: LemmyapiDatatypesGetComment): X0DatatypesGetComment = X0DatatypesGetComment( + id = d.id + ) + + override fun fromUni(d: LemmyapiDatatypesGetComments): X0DatatypesGetComments = X0DatatypesGetComments( + type_ = d.type_, + sort = d.sort, + time_range_seconds = d.time_range_seconds, + max_depth = d.max_depth, + page_cursor = d.page_cursor, + limit = d.limit, + community_id = d.community_id, + community_name = d.community_name, + post_id = d.post_id, + parent_id = d.parent_id + ) + + override fun fromUni(d: LemmyapiDatatypesGetCommunity): X0DatatypesGetCommunity = X0DatatypesGetCommunity( + id = d.id, + name = d.name + ) + + override fun fromUni(d: LemmyapiDatatypesGetFederatedInstances): X0DatatypesGetFederatedInstances = X0DatatypesGetFederatedInstances( + domain_filter = d.domain_filter, + kind = d.kind, + page_cursor = d.page_cursor, + limit = d.limit + ) + + override fun fromUni(d: LemmyapiDatatypesGetModlog): X0DatatypesGetModlog = X0DatatypesGetModlog( + mod_person_id = d.mod_person_id, + community_id = d.community_id, + type_ = d.type_, + listing_type = d.listing_type, + other_person_id = d.other_person_id, + post_id = d.post_id, + comment_id = d.comment_id, + page_cursor = d.page_cursor, + limit = d.limit + ) + + override fun fromUni(d: LemmyapiDatatypesGetMultiCommunity): X0DatatypesGetMultiCommunity = X0DatatypesGetMultiCommunity( + id = d.id, + name = d.name + ) + + override fun fromUni(d: LemmyapiDatatypesGetPersonDetails): X0DatatypesGetPersonDetails = X0DatatypesGetPersonDetails( + person_id = d.person_id, + username = d.username + ) + + override fun fromUni(d: LemmyapiDatatypesGetPost): X0DatatypesGetPost = X0DatatypesGetPost( + id = d.id, + comment_id = d.comment_id + ) + + override fun fromUni(d: LemmyapiDatatypesGetPosts): X0DatatypesGetPosts = X0DatatypesGetPosts( + type_ = d.type_, + sort = d.sort, + time_range_seconds = d.time_range_seconds, + community_id = d.community_id, + community_name = d.community_name, + multi_community_id = d.multi_community_id, + multi_community_name = d.multi_community_name, + show_hidden = d.show_hidden, + show_read = d.show_read, + show_nsfw = d.show_nsfw, + hide_media = d.hide_media, + mark_as_read = d.mark_as_read, + no_comments_only = d.no_comments_only, + page_cursor = d.page_cursor, + limit = d.limit + ) + + override fun fromUni(d: LemmyapiDatatypesGetRandomCommunity): X0DatatypesGetRandomCommunity = X0DatatypesGetRandomCommunity( + type_ = d.type_, + show_nsfw = d.show_nsfw + ) + + override fun fromUni(d: LemmyapiDatatypesGetRegistrationApplication): X0DatatypesGetRegistrationApplication = X0DatatypesGetRegistrationApplication( + person_id = d.person_id + ) + + override fun fromUni(d: LemmyapiDatatypesGetSiteMetadata): X0DatatypesGetSiteMetadata = X0DatatypesGetSiteMetadata( + url = d.url + ) + + override fun fromUni(d: LemmyapiDatatypesHideCommunity): X0DatatypesHideCommunity = X0DatatypesHideCommunity( + community_id = d.community_id, + hidden = d.hidden, + reason = d.reason + ) + + override fun fromUni(d: LemmyapiDatatypesHidePost): X0DatatypesHidePost = X0DatatypesHidePost( + post_id = d.post_id, + hide = d.hide + ) + + override fun fromUni(d: LemmyapiDatatypesListCommentLikes): X0DatatypesListCommentLikes = X0DatatypesListCommentLikes( + comment_id = d.comment_id, + page_cursor = d.page_cursor, + limit = d.limit + ) + + override fun fromUni(d: LemmyapiDatatypesListCommunities): X0DatatypesListCommunities = X0DatatypesListCommunities( + type_ = d.type_, + sort = d.sort, + show_nsfw = d.show_nsfw, + page_cursor = d.page_cursor, + limit = d.limit + ) + + override fun fromUni(d: LemmyapiDatatypesListCommunityPendingFollows): X0DatatypesListCommunityPendingFollows = X0DatatypesListCommunityPendingFollows( + unread_only = d.unread_only, + all_communities = d.all_communities, + page_cursor = d.page_cursor, + limit = d.limit + ) + + override fun fromUni(d: LemmyapiDatatypesListCustomEmojis): X0DatatypesListCustomEmojis = X0DatatypesListCustomEmojis( + category = d.category + ) + + override fun fromUni(d: LemmyapiDatatypesListMedia): X0DatatypesListMedia = X0DatatypesListMedia( + page_cursor = d.page_cursor, + limit = d.limit + ) + + override fun fromUni(d: LemmyapiDatatypesListMultiCommunities): X0DatatypesListMultiCommunities = X0DatatypesListMultiCommunities( + type_ = d.type_, + sort = d.sort, + creator_id = d.creator_id, + time_range_seconds = d.time_range_seconds, + page_cursor = d.page_cursor, + limit = d.limit + ) + + override fun fromUni(d: LemmyapiDatatypesListNotifications): X0DatatypesListNotifications = X0DatatypesListNotifications( + type_ = d.type_, + unread_only = d.unread_only, + page_cursor = d.page_cursor, + limit = d.limit + ) + + override fun fromUni(d: LemmyapiDatatypesListPersonContent): X0DatatypesListPersonContent = X0DatatypesListPersonContent( + type_ = d.type_, + person_id = d.person_id, + username = d.username, + page_cursor = d.page_cursor, + limit = d.limit + ) + + override fun fromUni(d: LemmyapiDatatypesListPersonHidden): X0DatatypesListPersonHidden = X0DatatypesListPersonHidden( + page_cursor = d.page_cursor, + limit = d.limit + ) + + override fun fromUni(d: LemmyapiDatatypesListPersonLiked): X0DatatypesListPersonLiked = X0DatatypesListPersonLiked( + type_ = d.type_, + like_type = d.like_type, + page_cursor = d.page_cursor, + limit = d.limit + ) + + override fun fromUni(d: LemmyapiDatatypesListPersonRead): X0DatatypesListPersonRead = X0DatatypesListPersonRead( + page_cursor = d.page_cursor, + limit = d.limit + ) + + override fun fromUni(d: LemmyapiDatatypesListPersonSaved): X0DatatypesListPersonSaved = X0DatatypesListPersonSaved( + type_ = d.type_, + page_cursor = d.page_cursor, + limit = d.limit + ) + + override fun fromUni(d: LemmyapiDatatypesListPostLikes): X0DatatypesListPostLikes = X0DatatypesListPostLikes( + post_id = d.post_id, + page_cursor = d.page_cursor, + limit = d.limit + ) + + override fun fromUni(d: LemmyapiDatatypesListRegistrationApplications): X0DatatypesListRegistrationApplications = X0DatatypesListRegistrationApplications( + unread_only = d.unread_only, + page_cursor = d.page_cursor, + limit = d.limit + ) + + override fun fromUni(d: LemmyapiDatatypesListReports): X0DatatypesListReports = X0DatatypesListReports( + unresolved_only = d.unresolved_only, + type_ = d.type_, + post_id = d.post_id, + community_id = d.community_id, + page_cursor = d.page_cursor, + limit = d.limit, + show_community_rule_violations = d.show_community_rule_violations, + my_reports_only = d.my_reports_only + ) + + override fun fromUni(d: LemmyapiDatatypesListTaglines): X0DatatypesListTaglines = X0DatatypesListTaglines( + page_cursor = d.page_cursor, + limit = d.limit + ) + + override fun fromUni(d: LemmyapiDatatypesLockComment): X0DatatypesLockComment = X0DatatypesLockComment( + comment_id = d.comment_id, + locked = d.locked, + reason = d.reason + ) + + override fun fromUni(d: LemmyapiDatatypesLockPost): X0DatatypesLockPost = X0DatatypesLockPost( + post_id = d.post_id, + locked = d.locked, + reason = d.reason + ) + + override fun fromUni(d: LemmyapiDatatypesLogin): X0DatatypesLogin = X0DatatypesLogin( + username_or_email = d.username_or_email, + password = d.password, + totp_2fa_token = d.totp_2fa_token, + stay_logged_in = d.stay_logged_in + ) + + override fun fromUni(d: LemmyapiDatatypesMarkManyPostsAsRead): X0DatatypesMarkManyPostsAsRead = X0DatatypesMarkManyPostsAsRead( + post_ids = d.post_ids, + read = d.read + ) + + override fun fromUni(d: LemmyapiDatatypesMarkNotificationAsRead): X0DatatypesMarkNotificationAsRead = X0DatatypesMarkNotificationAsRead( + notification_id = d.notification_id, + read = d.read + ) + + override fun fromUni(d: LemmyapiDatatypesMarkPostAsRead): X0DatatypesMarkPostAsRead = X0DatatypesMarkPostAsRead( + post_id = d.post_id, + read = d.read + ) + + override fun fromUni(d: LemmyapiDatatypesPasswordChangeAfterReset): X0DatatypesPasswordChangeAfterReset = X0DatatypesPasswordChangeAfterReset( + token = d.token, + password = d.password, + password_verify = d.password_verify + ) + + override fun fromUni(d: LemmyapiDatatypesPasswordReset): X0DatatypesPasswordReset = X0DatatypesPasswordReset( + email = d.email + ) + + override fun fromUni(d: LemmyapiDatatypesPurgeComment): X0DatatypesPurgeComment = X0DatatypesPurgeComment( + comment_id = d.comment_id, + reason = d.reason + ) + + override fun fromUni(d: LemmyapiDatatypesPurgeCommunity): X0DatatypesPurgeCommunity = X0DatatypesPurgeCommunity( + community_id = d.community_id, + reason = d.reason + ) + + override fun fromUni(d: LemmyapiDatatypesPurgePerson): X0DatatypesPurgePerson = X0DatatypesPurgePerson( + person_id = d.person_id, + reason = d.reason + ) + + override fun fromUni(d: LemmyapiDatatypesPurgePost): X0DatatypesPurgePost = X0DatatypesPurgePost( + post_id = d.post_id, + reason = d.reason + ) + + override fun fromUni(d: LemmyapiDatatypesRegister): X0DatatypesRegister = X0DatatypesRegister( + username = d.username, + password = d.password, + password_verify = d.password_verify, + show_nsfw = d.show_nsfw, + email = d.email, + captcha_uuid = d.captcha_uuid, + captcha_answer = d.captcha_answer, + honeypot = d.honeypot, + answer = d.answer, + stay_logged_in = d.stay_logged_in + ) + + override fun fromUni(d: LemmyapiDatatypesRemoveComment): X0DatatypesRemoveComment = X0DatatypesRemoveComment( + comment_id = d.comment_id, + removed = d.removed, + reason = d.reason + ) + + override fun fromUni(d: LemmyapiDatatypesRemoveCommunity): X0DatatypesRemoveCommunity = X0DatatypesRemoveCommunity( + community_id = d.community_id, + removed = d.removed, + reason = d.reason + ) + + override fun fromUni(d: LemmyapiDatatypesRemovePost): X0DatatypesRemovePost = X0DatatypesRemovePost( + post_id = d.post_id, + removed = d.removed, + reason = d.reason + ) + + override fun fromUni(d: LemmyapiDatatypesResolveCommentReport): X0DatatypesResolveCommentReport = X0DatatypesResolveCommentReport( + report_id = d.report_id, + resolved = d.resolved + ) + + override fun fromUni(d: LemmyapiDatatypesResolveCommunityReport): X0DatatypesResolveCommunityReport = X0DatatypesResolveCommunityReport( + report_id = d.report_id, + resolved = d.resolved + ) + + override fun fromUni(d: LemmyapiDatatypesResolveObject): X0DatatypesResolveObject = X0DatatypesResolveObject( + q = d.q + ) + + override fun fromUni(d: LemmyapiDatatypesResolvePostReport): X0DatatypesResolvePostReport = X0DatatypesResolvePostReport( + report_id = d.report_id, + resolved = d.resolved + ) + + override fun fromUni(d: LemmyapiDatatypesResolvePrivateMessageReport): X0DatatypesResolvePrivateMessageReport = X0DatatypesResolvePrivateMessageReport( + report_id = d.report_id, + resolved = d.resolved + ) + + override fun fromUni(d: LemmyapiDatatypesSaveComment): X0DatatypesSaveComment = X0DatatypesSaveComment( + comment_id = d.comment_id, + save = d.save + ) + + override fun fromUni(d: LemmyapiDatatypesSavePost): X0DatatypesSavePost = X0DatatypesSavePost( + post_id = d.post_id, + save = d.save + ) + + override fun fromUni(d: LemmyapiDatatypesSaveUserSettings): X0DatatypesSaveUserSettings = X0DatatypesSaveUserSettings( + show_nsfw = d.show_nsfw, + blur_nsfw = d.blur_nsfw, + theme = d.theme, + default_listing_type = d.default_listing_type, + post_listing_mode = d.post_listing_mode, + default_post_sort_type = d.default_post_sort_type, + default_post_time_range_seconds = d.default_post_time_range_seconds, + default_items_per_page = d.default_items_per_page, + default_comment_sort_type = d.default_comment_sort_type, + interface_language = d.interface_language, + display_name = d.display_name, + email = d.email, + bio = d.bio, + matrix_user_id = d.matrix_user_id, + show_avatars = d.show_avatars, + send_notifications_to_email = d.send_notifications_to_email, + bot_account = d.bot_account, + show_bot_accounts = d.show_bot_accounts, + show_read_posts = d.show_read_posts, + discussion_languages = d.discussion_languages, + blocking_keywords = d.blocking_keywords, + open_links_in_new_tab = d.open_links_in_new_tab, + infinite_scroll_enabled = d.infinite_scroll_enabled, + enable_animated_images = d.enable_animated_images, + enable_private_messages = d.enable_private_messages, + collapse_bot_comments = d.collapse_bot_comments, + show_score = d.show_score, + show_upvotes = d.show_upvotes, + show_downvotes = d.show_downvotes, + show_upvote_percentage = d.show_upvote_percentage, + auto_mark_fetched_posts_as_read = d.auto_mark_fetched_posts_as_read, + hide_media = d.hide_media, + show_person_votes = d.show_person_votes + ) + + override fun fromUni(d: LemmyapiDatatypesSearch): X0DatatypesSearch = X0DatatypesSearch( + q = d.q, + community_id = d.community_id, + community_name = d.community_name, + creator_id = d.creator_id, + type_ = d.type_, + sort = d.sort, + time_range_seconds = d.time_range_seconds, + listing_type = d.listing_type, + title_only = d.title_only, + post_url_only = d.post_url_only, + liked_only = d.liked_only, + disliked_only = d.disliked_only, + show_nsfw = d.show_nsfw, + page_cursor = d.page_cursor, + limit = d.limit + ) + + override fun fromUni(d: LemmyapiDatatypesTransferCommunity): X0DatatypesTransferCommunity = X0DatatypesTransferCommunity( + community_id = d.community_id, + person_id = d.person_id + ) + + override fun fromUni(d: LemmyapiDatatypesVerifyEmail): X0DatatypesVerifyEmail = X0DatatypesVerifyEmail( + token = d.token + ) +} diff --git a/app/src/commonTest/kotlin/utils/UtilTest.kt b/app/src/commonTest/kotlin/utils/UtilTest.kt index 469642ef..5b16128c 100644 --- a/app/src/commonTest/kotlin/utils/UtilTest.kt +++ b/app/src/commonTest/kotlin/utils/UtilTest.kt @@ -1,7 +1,7 @@ package utils -import it.vercruysse.lemmyapi.enums.SortType import it.vercruysse.lemmyapi.dto.getSupportedEntries +import it.vercruysse.lemmyapi.enums.SortType import it.vercruysse.lemmyapi.utils.constructBaseUrl import it.vercruysse.lemmyapi.utils.isBetweenVersions import kotlin.test.Test diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index df97d72b..ef1721de 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,8 @@ +#Sun May 24 01:53:04 CEST 2026 distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-8.10.2-bin.zip +distributionSha256Sum=f397b287023acdba1e9f6fc5ea72d22dd63669d59ed4a289a29b1a76eee151c6 +distributionUrl=https\://services.gradle.org/distributions/gradle-8.11.1-bin.zip networkTimeout=10000 validateDistributionUrl=true zipStoreBase=GRADLE_USER_HOME diff --git a/kotlin-js-store/yarn.lock b/kotlin-js-store/yarn.lock index ba293031..038eeae3 100644 --- a/kotlin-js-store/yarn.lock +++ b/kotlin-js-store/yarn.lock @@ -2,16 +2,33 @@ # yarn lockfile v1 -ansi-colors@^4.1.3: - version "4.1.3" - resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.3.tgz#37611340eb2243e70cc604cad35d63270d48781b" - integrity sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw== +"@isaacs/cliui@^8.0.2": + version "8.0.2" + resolved "https://registry.yarnpkg.com/@isaacs/cliui/-/cliui-8.0.2.tgz#b37667b7bc181c168782259bab42474fbf52b550" + integrity sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA== + dependencies: + string-width "^5.1.2" + string-width-cjs "npm:string-width@^4.2.0" + strip-ansi "^7.0.1" + strip-ansi-cjs "npm:strip-ansi@^6.0.1" + wrap-ansi "^8.1.0" + wrap-ansi-cjs "npm:wrap-ansi@^7.0.0" + +"@pkgjs/parseargs@^0.11.0": + version "0.11.0" + resolved "https://registry.yarnpkg.com/@pkgjs/parseargs/-/parseargs-0.11.0.tgz#a77ea742fab25775145434eb1d2328cf5013ac33" + integrity sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg== ansi-regex@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== +ansi-regex@^6.2.2: + version "6.2.2" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-6.2.2.tgz#60216eea464d864597ce2832000738a0589650c1" + integrity sha512-Bq3SmSpyFHaWjPk8If9yc6svM8c56dB5BAtW4Qbw5jHTwwXXcTLoRMkpDJp6VL0XzlWaCHTXrkFURMYmD0sLqg== + ansi-styles@^4.0.0, ansi-styles@^4.1.0: version "4.3.0" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937" @@ -19,13 +36,10 @@ ansi-styles@^4.0.0, ansi-styles@^4.1.0: dependencies: color-convert "^2.0.1" -anymatch@~3.1.2: - version "3.1.3" - resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.3.tgz#790c58b19ba1720a84205b57c618d5ad8524973e" - integrity sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw== - dependencies: - normalize-path "^3.0.0" - picomatch "^2.0.4" +ansi-styles@^6.1.0: + version "6.2.3" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-6.2.3.tgz#c044d5dcc521a076413472597a1acb1f103c4041" + integrity sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg== argparse@^2.0.1: version "2.0.1" @@ -37,25 +51,13 @@ balanced-match@^1.0.0: resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== -binary-extensions@^2.0.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.3.0.tgz#f6e14a97858d327252200242d4ccfe522c445522" - integrity sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw== - -brace-expansion@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-2.0.1.tgz#1edc459e0f0c548486ecf9fc99f2221364b9a0ae" - integrity sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA== +brace-expansion@^2.0.2: + version "2.1.0" + resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-2.1.0.tgz#4f41a41190216ee36067ec381526fe9539c4f0ae" + integrity sha512-TN1kCZAgdgweJhWWpgKYrQaMNHcDULHkWwQIspdtjV4Y5aurRdZpjAqn6yX3FPqTA9ngHCc4hJxMAMgGfve85w== dependencies: balanced-match "^1.0.0" -braces@~3.0.2: - version "3.0.3" - resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.3.tgz#490332f40919452272d55a8480adc0c441358789" - integrity sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA== - dependencies: - fill-range "^7.1.1" - browser-stdout@^1.3.1: version "1.3.1" resolved "https://registry.yarnpkg.com/browser-stdout/-/browser-stdout-1.3.1.tgz#baa559ee14ced73452229bad7326467c61fabd60" @@ -79,28 +81,20 @@ chalk@^4.1.0: ansi-styles "^4.1.0" supports-color "^7.1.0" -chokidar@^3.5.3: - version "3.6.0" - resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.6.0.tgz#197c6cc669ef2a8dc5e7b4d97ee4e092c3eb0d5b" - integrity sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw== - dependencies: - anymatch "~3.1.2" - braces "~3.0.2" - glob-parent "~5.1.2" - is-binary-path "~2.1.0" - is-glob "~4.0.1" - normalize-path "~3.0.0" - readdirp "~3.6.0" - optionalDependencies: - fsevents "~2.3.2" +chokidar@^4.0.1: + version "4.0.3" + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-4.0.3.tgz#7be37a4c03c9aee1ecfe862a4a23b2c70c205d30" + integrity sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA== + dependencies: + readdirp "^4.0.1" -cliui@^7.0.2: - version "7.0.4" - resolved "https://registry.yarnpkg.com/cliui/-/cliui-7.0.4.tgz#a0265ee655476fc807aea9df3df8df7783808b4f" - integrity sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ== +cliui@^8.0.1: + version "8.0.1" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-8.0.1.tgz#0c04b075db02cbfe60dc8e6cf2f5486b1a3608aa" + integrity sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ== dependencies: string-width "^4.2.0" - strip-ansi "^6.0.0" + strip-ansi "^6.0.1" wrap-ansi "^7.0.0" color-convert@^2.0.1: @@ -115,6 +109,15 @@ color-name@~1.1.4: resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== +cross-spawn@^7.0.6: + version "7.0.6" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.6.tgz#8a58fe78f00dcd70c370451759dfbfaf03e8ee9f" + integrity sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA== + dependencies: + path-key "^3.1.0" + shebang-command "^2.0.0" + which "^2.0.1" + debug@^4.3.5: version "4.3.7" resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.7.tgz#87945b4151a011d76d95a198d7111c865c360a52" @@ -127,16 +130,26 @@ decamelize@^4.0.0: resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-4.0.0.tgz#aa472d7bf660eb15f3494efd531cab7f2a709837" integrity sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ== -diff@^5.2.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/diff/-/diff-5.2.0.tgz#26ded047cd1179b78b9537d5ef725503ce1ae531" - integrity sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A== +diff@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/diff/-/diff-7.0.0.tgz#3fb34d387cd76d803f6eebea67b921dab0182a9a" + integrity sha512-PJWHUb1RFevKCwaFA9RlG5tCd+FO5iRh9A8HEtkmBH2Li03iJriB6m6JIN4rGz3K3JLawI7/veA1xzRKP6ISBw== + +eastasianwidth@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/eastasianwidth/-/eastasianwidth-0.2.0.tgz#696ce2ec0aa0e6ea93a397ffcf24aa7840c827cb" + integrity sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA== emoji-regex@^8.0.0: version "8.0.0" resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== +emoji-regex@^9.2.2: + version "9.2.2" + resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-9.2.2.tgz#840c8803b0d8047f4ff0cf963176b32d4ef3ed72" + integrity sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg== + escalade@^3.1.1: version "3.1.2" resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.2.tgz#54076e9ab29ea5bf3d8f1ed62acffbb88272df27" @@ -147,13 +160,6 @@ escape-string-regexp@^4.0.0: resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== -fill-range@^7.1.1: - version "7.1.1" - resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.1.1.tgz#44265d3cac07e3ea7dc247516380643754a05292" - integrity sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg== - dependencies: - to-regex-range "^5.0.1" - find-up@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/find-up/-/find-up-5.0.0.tgz#4c92819ecb7083561e4f4a240a86be5198f536fc" @@ -167,43 +173,35 @@ flat@^5.0.2: resolved "https://registry.yarnpkg.com/flat/-/flat-5.0.2.tgz#8ca6fe332069ffa9d324c327198c598259ceb241" integrity sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ== +foreground-child@^3.1.0: + version "3.3.1" + resolved "https://registry.yarnpkg.com/foreground-child/-/foreground-child-3.3.1.tgz#32e8e9ed1b68a3497befb9ac2b6adf92a638576f" + integrity sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw== + dependencies: + cross-spawn "^7.0.6" + signal-exit "^4.0.1" + format-util@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/format-util/-/format-util-1.0.5.tgz#1ffb450c8a03e7bccffe40643180918cc297d271" integrity sha512-varLbTj0e0yVyRpqQhuWV+8hlePAgaoFRhNFj50BNjEIrw1/DphHSObtqwskVCPWNgzwPoQrZAbfa/SBiicNeg== -fs.realpath@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" - integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw== - -fsevents@~2.3.2: - version "2.3.3" - resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.3.tgz#cac6407785d03675a2a5e1a5305c697b347d90d6" - integrity sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw== - get-caller-file@^2.0.5: version "2.0.5" resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== -glob-parent@~5.1.2: - version "5.1.2" - resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" - integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== - dependencies: - is-glob "^4.0.1" - -glob@^8.1.0: - version "8.1.0" - resolved "https://registry.yarnpkg.com/glob/-/glob-8.1.0.tgz#d388f656593ef708ee3e34640fdfb99a9fd1c33e" - integrity sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ== +glob@^10.4.5: + version "10.5.0" + resolved "https://registry.yarnpkg.com/glob/-/glob-10.5.0.tgz#8ec0355919cd3338c28428a23d4f24ecc5fe738c" + integrity sha512-DfXN8DfhJ7NH3Oe7cFmu3NCu1wKbkReJ8TorzSAFbSKrlNaQSKfIzqYqVY8zlbs2NLBbWpRiU52GX2PbaBVNkg== dependencies: - fs.realpath "^1.0.0" - inflight "^1.0.4" - inherits "2" - minimatch "^5.0.1" - once "^1.3.0" + foreground-child "^3.1.0" + jackspeak "^3.1.2" + minimatch "^9.0.4" + minipass "^7.1.2" + package-json-from-dist "^1.0.0" + path-scurry "^1.11.1" has-flag@^4.0.0: version "4.0.0" @@ -215,47 +213,15 @@ he@^1.2.0: resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw== -inflight@^1.0.4: - version "1.0.6" - resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" - integrity sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA== - dependencies: - once "^1.3.0" - wrappy "1" - -inherits@2: - version "2.0.4" - resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" - integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== - -is-binary-path@~2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09" - integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw== - dependencies: - binary-extensions "^2.0.0" - -is-extglob@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" - integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ== - is-fullwidth-code-point@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== -is-glob@^4.0.1, is-glob@~4.0.1: - version "4.0.3" - resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084" - integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg== - dependencies: - is-extglob "^2.1.1" - -is-number@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" - integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== +is-path-inside@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-3.0.3.tgz#d231362e53a07ff2b0e0ea7fed049161ffd16283" + integrity sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ== is-plain-obj@^2.1.0: version "2.1.0" @@ -267,6 +233,20 @@ is-unicode-supported@^0.1.0: resolved "https://registry.yarnpkg.com/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz#3f26c76a809593b52bfa2ecb5710ed2779b522a7" integrity sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw== +isexe@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" + integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== + +jackspeak@^3.1.2: + version "3.4.3" + resolved "https://registry.yarnpkg.com/jackspeak/-/jackspeak-3.4.3.tgz#8833a9d89ab4acde6188942bd1c53b6390ed5a8a" + integrity sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw== + dependencies: + "@isaacs/cliui" "^8.0.2" + optionalDependencies: + "@pkgjs/parseargs" "^0.11.0" + js-yaml@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.0.tgz#c1fb65f8f5017901cdd2c951864ba18458a10602" @@ -274,10 +254,10 @@ js-yaml@^4.1.0: dependencies: argparse "^2.0.1" -kotlin-web-helpers@2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/kotlin-web-helpers/-/kotlin-web-helpers-2.0.0.tgz#b112096b273c1e733e0b86560998235c09a19286" - integrity sha512-xkVGl60Ygn/zuLkDPx+oHj7jeLR7hCvoNF99nhwXMn8a3ApB4lLiC9pk4ol4NHPjyoCbvQctBqvzUcp8pkqyWw== +kotlin-web-helpers@3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/kotlin-web-helpers/-/kotlin-web-helpers-3.0.0.tgz#3ed6b48f694f74bb60a737a9d7e2c0e3b29abdb9" + integrity sha512-kdQO4AJQkUPvpLh9aglkXDRyN+CfXO7pKq+GESEnxooBFkQpytLrqZis3ABvmFN1cGw/ZQ/K38u5sRGW+NfBnw== dependencies: format-util "^1.0.5" @@ -296,37 +276,48 @@ log-symbols@^4.1.0: chalk "^4.1.0" is-unicode-supported "^0.1.0" -minimatch@^5.0.1, minimatch@^5.1.6: - version "5.1.6" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-5.1.6.tgz#1cfcb8cf5522ea69952cd2af95ae09477f122a96" - integrity sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g== +lru-cache@^10.2.0: + version "10.4.3" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-10.4.3.tgz#410fc8a17b70e598013df257c2446b7f3383f119" + integrity sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ== + +minimatch@^9.0.4, minimatch@^9.0.5: + version "9.0.9" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-9.0.9.tgz#9b0cb9fcb78087f6fd7eababe2511c4d3d60574e" + integrity sha512-OBwBN9AL4dqmETlpS2zasx+vTeWclWzkblfZk7KTA5j3jeOONz/tRCnZomUyvNg83wL5Zv9Ss6HMJXAgL8R2Yg== dependencies: - brace-expansion "^2.0.1" + brace-expansion "^2.0.2" + +"minipass@^5.0.0 || ^6.0.2 || ^7.0.0", minipass@^7.1.2: + version "7.1.3" + resolved "https://registry.yarnpkg.com/minipass/-/minipass-7.1.3.tgz#79389b4eb1bb2d003a9bba87d492f2bd37bdc65b" + integrity sha512-tEBHqDnIoM/1rXME1zgka9g6Q2lcoCkxHLuc7ODJ5BxbP5d4c2Z5cGgtXAku59200Cx7diuHTOYfSBD8n6mm8A== -mocha@10.7.3: - version "10.7.3" - resolved "https://registry.yarnpkg.com/mocha/-/mocha-10.7.3.tgz#ae32003cabbd52b59aece17846056a68eb4b0752" - integrity sha512-uQWxAu44wwiACGqjbPYmjo7Lg8sFrS3dQe7PP2FQI+woptP4vZXSMcfMyFL/e1yFEeEpV4RtyTpZROOKmxis+A== +mocha@11.7.5: + version "11.7.5" + resolved "https://registry.yarnpkg.com/mocha/-/mocha-11.7.5.tgz#58f5bbfa5e0211ce7e5ee6128107cefc2515a627" + integrity sha512-mTT6RgopEYABzXWFx+GcJ+ZQ32kp4fMf0xvpZIIfSq9Z8lC/++MtcCnQ9t5FP2veYEP95FIYSvW+U9fV4xrlig== dependencies: - ansi-colors "^4.1.3" browser-stdout "^1.3.1" - chokidar "^3.5.3" + chokidar "^4.0.1" debug "^4.3.5" - diff "^5.2.0" + diff "^7.0.0" escape-string-regexp "^4.0.0" find-up "^5.0.0" - glob "^8.1.0" + glob "^10.4.5" he "^1.2.0" + is-path-inside "^3.0.3" js-yaml "^4.1.0" log-symbols "^4.1.0" - minimatch "^5.1.6" + minimatch "^9.0.5" ms "^2.1.3" + picocolors "^1.1.1" serialize-javascript "^6.0.2" strip-json-comments "^3.1.1" supports-color "^8.1.1" - workerpool "^6.5.1" - yargs "^16.2.0" - yargs-parser "^20.2.9" + workerpool "^9.2.0" + yargs "^17.7.2" + yargs-parser "^21.1.1" yargs-unparser "^2.0.0" ms@^2.1.3: @@ -334,18 +325,6 @@ ms@^2.1.3: resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== -normalize-path@^3.0.0, normalize-path@~3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" - integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== - -once@^1.3.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" - integrity sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w== - dependencies: - wrappy "1" - p-limit@^3.0.2: version "3.1.0" resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-3.1.0.tgz#e1daccbe78d0d1388ca18c64fea38e3e57e3706b" @@ -360,15 +339,33 @@ p-locate@^5.0.0: dependencies: p-limit "^3.0.2" +package-json-from-dist@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz#4f1471a010827a86f94cfd9b0727e36d267de505" + integrity sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw== + path-exists@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w== -picomatch@^2.0.4, picomatch@^2.2.1: - version "2.3.1" - resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" - integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== +path-key@^3.1.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" + integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== + +path-scurry@^1.11.1: + version "1.11.1" + resolved "https://registry.yarnpkg.com/path-scurry/-/path-scurry-1.11.1.tgz#7960a668888594a0720b12a911d1a742ab9f11d2" + integrity sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA== + dependencies: + lru-cache "^10.2.0" + minipass "^5.0.0 || ^6.0.2 || ^7.0.0" + +picocolors@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.1.1.tgz#3d321af3eab939b083c8f929a1d12cda81c26b6b" + integrity sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA== randombytes@^2.1.0: version "2.1.0" @@ -377,12 +374,10 @@ randombytes@^2.1.0: dependencies: safe-buffer "^5.1.0" -readdirp@~3.6.0: - version "3.6.0" - resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.6.0.tgz#74a370bd857116e245b29cc97340cd431a02a6c7" - integrity sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA== - dependencies: - picomatch "^2.2.1" +readdirp@^4.0.1: + version "4.1.2" + resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-4.1.2.tgz#eb85801435fbf2a7ee58f19e0921b068fc69948d" + integrity sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg== require-directory@^2.1.1: version "2.1.1" @@ -401,6 +396,23 @@ serialize-javascript@^6.0.2: dependencies: randombytes "^2.1.0" +shebang-command@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" + integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA== + dependencies: + shebang-regex "^3.0.0" + +shebang-regex@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" + integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== + +signal-exit@^4.0.1: + version "4.1.0" + resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-4.1.0.tgz#952188c1cbd546070e2dd20d0f41c0ae0530cb04" + integrity sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw== + source-map-support@0.5.21: version "0.5.21" resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.21.tgz#04fe7c7f9e1ed2d662233c28cb2b35b9f63f6e4f" @@ -414,7 +426,7 @@ source-map@^0.6.0: resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== -string-width@^4.1.0, string-width@^4.2.0: +"string-width-cjs@npm:string-width@^4.2.0", string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: version "4.2.3" resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== @@ -423,13 +435,29 @@ string-width@^4.1.0, string-width@^4.2.0: is-fullwidth-code-point "^3.0.0" strip-ansi "^6.0.1" -strip-ansi@^6.0.0, strip-ansi@^6.0.1: +string-width@^5.0.1, string-width@^5.1.2: + version "5.1.2" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-5.1.2.tgz#14f8daec6d81e7221d2a357e668cab73bdbca794" + integrity sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA== + dependencies: + eastasianwidth "^0.2.0" + emoji-regex "^9.2.2" + strip-ansi "^7.0.1" + +"strip-ansi-cjs@npm:strip-ansi@^6.0.1", strip-ansi@^6.0.0, strip-ansi@^6.0.1: version "6.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== dependencies: ansi-regex "^5.0.1" +strip-ansi@^7.0.1: + version "7.2.0" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-7.2.0.tgz#d22a269522836a627af8d04b5c3fd2c7fa3e32e3" + integrity sha512-yDPMNjp4WyfYBkHnjIRLfca1i6KMyGCtsVgoKe/z1+6vukgaENdgGBZt+ZmKPc4gavvEZ5OgHfHdrazhgNyG7w== + dependencies: + ansi-regex "^6.2.2" + strip-json-comments@^3.1.1: version "3.1.1" resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" @@ -449,24 +477,19 @@ supports-color@^8.1.1: dependencies: has-flag "^4.0.0" -to-regex-range@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" - integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ== +which@^2.0.1: + version "2.0.2" + resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" + integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== dependencies: - is-number "^7.0.0" + isexe "^2.0.0" -typescript@5.5.4: - version "5.5.4" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.5.4.tgz#d9852d6c82bad2d2eda4fd74a5762a8f5909e9ba" - integrity sha512-Mtq29sKDAEYP7aljRgtPOpTvOfbwRWlS6dPRzwjdE+C0R4brX/GUyhHSecbHMFLNBLcJIPt9nl9yG5TZ1weH+Q== +workerpool@^9.2.0: + version "9.3.4" + resolved "https://registry.yarnpkg.com/workerpool/-/workerpool-9.3.4.tgz#f6c92395b2141afd78e2a889e80cb338fe9fca41" + integrity sha512-TmPRQYYSAnnDiEB0P/Ytip7bFGvqnSU6I2BcuSw7Hx+JSg/DsUi5ebYfc8GYaSdpuvOcEs6dXxPurOYpe9QFwg== -workerpool@^6.5.1: - version "6.5.1" - resolved "https://registry.yarnpkg.com/workerpool/-/workerpool-6.5.1.tgz#060f73b39d0caf97c6db64da004cd01b4c099544" - integrity sha512-Fs4dNYcsdpYSAfVxhnl1L5zTksjvOJxtC5hzMNl+1t9B8hTJTdKDyZ5ju7ztgPy+ft9tBFXoOlDNiOT9WUXZlA== - -wrap-ansi@^7.0.0: +"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0", wrap-ansi@^7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== @@ -475,10 +498,14 @@ wrap-ansi@^7.0.0: string-width "^4.1.0" strip-ansi "^6.0.0" -wrappy@1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" - integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ== +wrap-ansi@^8.1.0: + version "8.1.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-8.1.0.tgz#56dc22368ee570face1b49819975d9b9a5ead214" + integrity sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ== + dependencies: + ansi-styles "^6.1.0" + string-width "^5.0.1" + strip-ansi "^7.0.1" ws@8.18.0: version "8.18.0" @@ -490,10 +517,10 @@ y18n@^5.0.5: resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55" integrity sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA== -yargs-parser@^20.2.2, yargs-parser@^20.2.9: - version "20.2.9" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee" - integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w== +yargs-parser@^21.1.1: + version "21.1.1" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-21.1.1.tgz#9096bceebf990d21bb31fa9516e0ede294a77d35" + integrity sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw== yargs-unparser@^2.0.0: version "2.0.0" @@ -505,18 +532,18 @@ yargs-unparser@^2.0.0: flat "^5.0.2" is-plain-obj "^2.1.0" -yargs@^16.2.0: - version "16.2.0" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66" - integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw== +yargs@^17.7.2: + version "17.7.2" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.7.2.tgz#991df39aca675a192b816e1e0363f9d75d2aa269" + integrity sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w== dependencies: - cliui "^7.0.2" + cliui "^8.0.1" escalade "^3.1.1" get-caller-file "^2.0.5" require-directory "^2.1.1" - string-width "^4.2.0" + string-width "^4.2.3" y18n "^5.0.5" - yargs-parser "^20.2.2" + yargs-parser "^21.1.1" yocto-queue@^0.1.0: version "0.1.0" diff --git a/settings.gradle.kts b/settings.gradle.kts index a86988d5..f068d049 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -15,8 +15,8 @@ dependencyResolutionManagement { plugins { id("org.gradle.toolchains.foojay-resolver-convention") version "0.8.0" - kotlin("jvm") version "2.1.10" apply false - id("com.android.library") version "8.7.3" apply false + kotlin("jvm") version "2.3.21" apply false + id("com.android.library") version "8.10.1" apply false } rootProject.name = "LemmyBackwardsCompatibleAPI" From 1b91c4fa76f372d36ad65db6ea2efef0841d785c Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Sun, 24 May 2026 06:09:09 +0200 Subject: [PATCH 068/110] Add uniWrapper for V1 --- .../kotlin/it/vercruysse/lemmyapi/LemmyApi.kt | 2 + .../lemmyapi/datatypes/PostActions.kt | 2 +- .../lemmyapi/v1/x0/x0/LemmyApiUniWrapper.kt | 533 ++++++++++++++++++ .../lemmyapi/v1/x0/x0/MapperGenerator.kt | 10 + .../lemmyapi/v1/x0/x0/Transformer.kt | 533 ++++++++++-------- .../v1/x0/x0/datatypes/CommentActions.kt | 1 - .../v1/x0/x0/datatypes/CreatePostLike.kt | 1 - .../v1/x0/x0/datatypes/PostActions.kt | 2 - app/src/jvmTest/kotlin/Controllers.kt | 1 + .../jvmTest/kotlin/PostsListPageParamTest.kt | 20 +- 10 files changed, 869 insertions(+), 236 deletions(-) create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiUniWrapper.kt diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApi.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApi.kt index 6fb8792e..b1180c1c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApi.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApi.kt @@ -146,6 +146,8 @@ object LemmyApi { else -> throw NotSupportedException("Unsupported Lemmy minor version: $version") } + 1 -> it.vercruysse.lemmyapi.v1.x0.x0.LemmyApiUniWrapper(client, semverV, baseUrlInstance, auth) + else -> throw NotSupportedException("Unsupported Lemmy major version: $version") } } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostActions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostActions.kt index 14bb0100..0df4f7bd 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostActions.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostActions.kt @@ -15,7 +15,7 @@ data class PostActions( val read_comments_amount: Long? = null, val saved_at: String? = null, val voted_at: String? = null, - val like_score: Int? = null, + val like_score: Int = 0, val hidden_at: String? = null, val notifications: PostNotificationsMode? /* "AllComments" | "RepliesAndMentions" | "Mute" */ = null, ): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiUniWrapper.kt new file mode 100644 index 00000000..89a1cf2e --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiUniWrapper.kt @@ -0,0 +1,533 @@ +package it.vercruysse.lemmyapi.v1.x0.x0 + +import io.github.z4kn4fein.semver.Version +import io.ktor.client.HttpClient +import it.vercruysse.lemmyapi.LemmyApiBaseController +import it.vercruysse.lemmyapi.datatypes.ListCustomEmojis +import it.vercruysse.lemmyapi.datatypes.ListCustomEmojisResponse +import it.vercruysse.lemmyapi.datatypes.ListLoginsResponse +import it.vercruysse.lemmyapi.datatypes.ListNotifications +import it.vercruysse.lemmyapi.datatypes.MarkNotificationAsRead +import it.vercruysse.lemmyapi.datatypes.MyUserInfo +import it.vercruysse.lemmyapi.datatypes.PagedResponse +import it.vercruysse.lemmyapi.datatypes.UnreadCountsResponse +import it.vercruysse.lemmyapi.dto.ExportUserSettingsResponse +import it.vercruysse.lemmyapi.dto.ImportUserSettings + +internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, baseUrl: String, auth: String?) : + LemmyApiBaseController(client, actualVersion, baseUrl, auth) { + private val api = LemmyApiController(client, auth) + private val transformer = Transformer() + + override var auth: String? + get() = super.auth + set(value) { + super.auth = value + api.auth = value + } + + override suspend fun getSite(): Result = + api.getSite().map(transformer::toUni) + + override suspend fun createSite(form: it.vercruysse.lemmyapi.datatypes.CreateSite): Result = + api.createSite(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun editSite(form: it.vercruysse.lemmyapi.datatypes.EditSite): Result = + api.editSite(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun getModlog(form: it.vercruysse.lemmyapi.datatypes.GetModlog): Result> = + api.getModlog(transformer.fromUni(form)).map { resp -> + PagedResponse(resp.items.map(transformer::toUni)) + } + + override suspend fun search(form: it.vercruysse.lemmyapi.datatypes.Search): Result = + api.search(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun resolveObject(form: it.vercruysse.lemmyapi.datatypes.ResolveObject): Result = + api.resolveObject(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun getCommunity(form: it.vercruysse.lemmyapi.datatypes.GetCommunity): Result = + api.getCommunity(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun createCommunity(form: it.vercruysse.lemmyapi.datatypes.CreateCommunity): Result = + api.createCommunity(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun editCommunity(form: it.vercruysse.lemmyapi.datatypes.EditCommunity): Result = + api.editCommunity(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun hideCommunity(form: it.vercruysse.lemmyapi.datatypes.HideCommunity): Result = + api.hideCommunity(transformer.fromUni(form)) + + override suspend fun listCommunities(form: it.vercruysse.lemmyapi.datatypes.ListCommunities): Result> = + api.listCommunities(transformer.fromUni(form)).map { resp -> + PagedResponse(resp.items.map(transformer::toUni)) + } + + override suspend fun followCommunity(form: it.vercruysse.lemmyapi.datatypes.FollowCommunity): Result = + api.followCommunity(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun blockCommunity(form: it.vercruysse.lemmyapi.datatypes.BlockCommunity): Result = + api.blockCommunity(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun deleteCommunity(form: it.vercruysse.lemmyapi.datatypes.DeleteCommunity): Result = + api.deleteCommunity(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun removeCommunity(form: it.vercruysse.lemmyapi.datatypes.RemoveCommunity): Result = + api.removeCommunity(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun transferCommunity(form: it.vercruysse.lemmyapi.datatypes.TransferCommunity): Result = + api.transferCommunity(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun banFromCommunity(form: it.vercruysse.lemmyapi.datatypes.BanFromCommunity): Result = + api.banFromCommunity(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun addModToCommunity(form: it.vercruysse.lemmyapi.datatypes.AddModToCommunity): Result = + api.addModToCommunity(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun getFederatedInstances(form: it.vercruysse.lemmyapi.datatypes.GetFederatedInstances): Result> = + api.getFederatedInstances(transformer.fromUni(form)).map { resp -> + PagedResponse(resp.items.map(transformer::toUni)) + } + + override suspend fun getPost(form: it.vercruysse.lemmyapi.datatypes.GetPost): Result = + api.getPost(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun editPost(form: it.vercruysse.lemmyapi.datatypes.EditPost): Result = + api.editPost(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun createPost(form: it.vercruysse.lemmyapi.datatypes.CreatePost): Result = + api.createPost(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun getPosts(form: it.vercruysse.lemmyapi.datatypes.GetPosts): Result> = + api.getPosts(transformer.fromUni(form.toValidatedForm())).map { resp -> + PagedResponse(resp.items.map(transformer::toUni)) + } + + override suspend fun deletePost(form: it.vercruysse.lemmyapi.datatypes.DeletePost): Result = + api.deletePost(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun removePost(form: it.vercruysse.lemmyapi.datatypes.RemovePost): Result = + api.removePost(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun markPostAsRead(form: it.vercruysse.lemmyapi.datatypes.MarkPostAsRead): Result = + api.markPostAsRead(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun markManyPostsAsRead(form: it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead): Result = + api.markManyPostsAsRead(transformer.fromUni(form)) + + override suspend fun lockPost(form: it.vercruysse.lemmyapi.datatypes.LockPost): Result = + api.lockPost(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun featurePost(form: it.vercruysse.lemmyapi.datatypes.FeaturePost): Result = + api.featurePost(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun createPostLike(form: it.vercruysse.lemmyapi.datatypes.CreatePostLike): Result = + api.createPostLike(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun savePost(form: it.vercruysse.lemmyapi.datatypes.SavePost): Result = + api.savePost(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun createPostReport(form: it.vercruysse.lemmyapi.datatypes.CreatePostReport): Result = + api.createPostReport(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun resolvePostReport(form: it.vercruysse.lemmyapi.datatypes.ResolvePostReport): Result = + api.resolvePostReport(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun listReports(form: it.vercruysse.lemmyapi.datatypes.ListReports): Result> = + api.listReports(transformer.fromUni(form)).map { resp -> + PagedResponse(resp.items.map(transformer::toUni)) + } + + override suspend fun getSiteMetadata(form: it.vercruysse.lemmyapi.datatypes.GetSiteMetadata): Result = + api.getSiteMetadata(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun getComment(form: it.vercruysse.lemmyapi.datatypes.GetComment): Result = + api.getComment(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun createComment(form: it.vercruysse.lemmyapi.datatypes.CreateComment): Result = + api.createComment(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun editComment(form: it.vercruysse.lemmyapi.datatypes.EditComment): Result = + api.editComment(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun getComments(form: it.vercruysse.lemmyapi.datatypes.GetComments): Result> = + api.getComments(transformer.fromUni(form)).map { resp -> + PagedResponse(resp.items.map(transformer::toUni)) + } + + override suspend fun deleteComment(form: it.vercruysse.lemmyapi.datatypes.DeleteComment): Result = + api.deleteComment(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun removeComment(form: it.vercruysse.lemmyapi.datatypes.RemoveComment): Result = + api.removeComment(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun distinguishComment(form: it.vercruysse.lemmyapi.datatypes.DistinguishComment): Result = + api.distinguishComment(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun createCommentLike(form: it.vercruysse.lemmyapi.datatypes.CreateCommentLike): Result = + api.createCommentLike(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun saveComment(form: it.vercruysse.lemmyapi.datatypes.SaveComment): Result = + api.saveComment(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun createCommentReport(form: it.vercruysse.lemmyapi.datatypes.CreateCommentReport): Result = + api.createCommentReport(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun resolveCommentReport(form: it.vercruysse.lemmyapi.datatypes.ResolveCommentReport): Result = + api.resolveCommentReport(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun editPrivateMessage(form: it.vercruysse.lemmyapi.datatypes.EditPrivateMessage): Result = + api.editPrivateMessage(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun createPrivateMessage(form: it.vercruysse.lemmyapi.datatypes.CreatePrivateMessage): Result = + api.createPrivateMessage(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun deletePrivateMessage(form: it.vercruysse.lemmyapi.datatypes.DeletePrivateMessage): Result = + api.deletePrivateMessage(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun createPrivateMessageReport(form: it.vercruysse.lemmyapi.datatypes.CreatePrivateMessageReport): Result = + api.createPrivateMessageReport(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun resolvePrivateMessageReport(form: it.vercruysse.lemmyapi.datatypes.ResolvePrivateMessageReport): Result = + api.resolvePrivateMessageReport(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun getPersonDetails(form: it.vercruysse.lemmyapi.datatypes.GetPersonDetails): Result = + api.getPersonDetails(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun register(form: it.vercruysse.lemmyapi.datatypes.Register): Result = + api.register(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun getCaptcha(): Result = + api.getCaptcha().map(transformer::toUni) + + override suspend fun markNotificationAsRead(form: MarkNotificationAsRead): Result = + api.markNotificationAsRead(transformer.fromUni(form)) + + override suspend fun markAllNotificationsAsRead(): Result = + api.markAllNotificationsAsRead() + + override suspend fun listNotifications(form: ListNotifications): Result> = + api.listNotifications(transformer.fromUni(form)).map { resp -> + PagedResponse(resp.items.map(transformer::toUni)) + } + + override suspend fun banPerson(form: it.vercruysse.lemmyapi.datatypes.BanPerson): Result = + api.banPerson(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun getBannedPersons(): Result> = + notSupported() + + override suspend fun blockPerson(form: it.vercruysse.lemmyapi.datatypes.BlockPerson): Result = + api.blockPerson(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun login(form: it.vercruysse.lemmyapi.datatypes.Login): Result = + api.login(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun deleteAccount(form: it.vercruysse.lemmyapi.datatypes.DeleteAccount): Result = + api.deleteAccount(transformer.fromUni(form)) + + override suspend fun resetPassword(form: it.vercruysse.lemmyapi.datatypes.PasswordReset): Result = + api.resetPassword(transformer.fromUni(form)) + + override suspend fun changePasswordAfterReset(form: it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset): Result = + api.changePasswordAfterReset(transformer.fromUni(form)) + + override suspend fun saveUserSettings(form: it.vercruysse.lemmyapi.datatypes.SaveUserSettings): Result = + api.saveUserSettings(transformer.fromUni(form)) + + override suspend fun changePassword(form: it.vercruysse.lemmyapi.datatypes.ChangePassword): Result = + api.changePassword(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun getUnreadCounts(): Result = + api.getUnreadCounts().map(transformer::toUni) + + override suspend fun verifyEmail(form: it.vercruysse.lemmyapi.datatypes.VerifyEmail): Result = + api.verifyEmail(transformer.fromUni(form)) + + override suspend fun leaveAdmin(): Result = + api.leaveAdmin().map(transformer::toUni) + + override suspend fun markDonationDialogShown(): Result = + api.markDonationDialogShown() + + override suspend fun addAdmin(form: it.vercruysse.lemmyapi.datatypes.AddAdmin): Result = + api.addAdmin(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun listRegistrationApplications(form: it.vercruysse.lemmyapi.datatypes.ListRegistrationApplications): Result> = + api.listRegistrationApplications(transformer.fromUni(form)).map { resp -> + PagedResponse(resp.items.map(transformer::toUni)) + } + + override suspend fun approveRegistrationApplication(form: it.vercruysse.lemmyapi.datatypes.ApproveRegistrationApplication): Result = + api.approveRegistrationApplication(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun purgePerson(form: it.vercruysse.lemmyapi.datatypes.PurgePerson): Result = + api.purgePerson(transformer.fromUni(form)) + + override suspend fun purgeCommunity(form: it.vercruysse.lemmyapi.datatypes.PurgeCommunity): Result = + api.purgeCommunity(transformer.fromUni(form)) + + override suspend fun purgePost(form: it.vercruysse.lemmyapi.datatypes.PurgePost): Result = + api.purgePost(transformer.fromUni(form)) + + override suspend fun purgeComment(form: it.vercruysse.lemmyapi.datatypes.PurgeComment): Result = + api.purgeComment(transformer.fromUni(form)) + + override suspend fun editCustomEmoji(form: it.vercruysse.lemmyapi.datatypes.EditCustomEmoji): Result = + api.editCustomEmoji(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun createCustomEmoji(form: it.vercruysse.lemmyapi.datatypes.CreateCustomEmoji): Result = + api.createCustomEmoji(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun deleteCustomEmoji(form: it.vercruysse.lemmyapi.datatypes.DeleteCustomEmoji): Result = + api.deleteCustomEmoji(transformer.fromUni(form)) + + override suspend fun listCustomEmojis(form: ListCustomEmojis): Result = + api.listCustomEmojis(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun userBlockInstanceCommunities(form: it.vercruysse.lemmyapi.datatypes.UserBlockInstanceCommunitiesParams): Result = + api.userBlockInstanceCommunities(transformer.fromUni(form)) + + override suspend fun generateTotpSecret(): Result = + api.generateTotpSecret().map(transformer::toUni) + + override suspend fun editTotp(form: it.vercruysse.lemmyapi.datatypes.EditTotp): Result = + api.editTotp(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun exportUserSettings(): Result = + api.exportUserSettings() + + override suspend fun importUserSettings(form: ImportUserSettings): Result = + api.importUserSettings(form) + + override suspend fun listLogins(): Result = + api.listLogins().map(transformer::toUni) + + override suspend fun validateAuth(): Result = + api.validateAuth() + + override suspend fun getMyUser(): Result = + api.getMyUser().map(transformer::toUni) + + override suspend fun logout(): Result = + api.logout() + + override suspend fun listPostLikes(form: it.vercruysse.lemmyapi.datatypes.ListPostLikes): Result> = + api.listPostLikes(transformer.fromUni(form)).map { resp -> + PagedResponse(resp.items.map(transformer::toUni)) + } + + override suspend fun listCommentLikes(form: it.vercruysse.lemmyapi.datatypes.ListCommentLikes): Result> = + api.listCommentLikes(transformer.fromUni(form)).map { resp -> + PagedResponse(resp.items.map(transformer::toUni)) + } + + override suspend fun listMedia(form: it.vercruysse.lemmyapi.datatypes.ListMedia): Result> = + api.listMedia(transformer.fromUni(form)).map { resp -> + PagedResponse(resp.items.map(transformer::toUni)) + } + + override suspend fun listMediaAdmin(form: it.vercruysse.lemmyapi.datatypes.ListMedia): Result> = + api.listMediaAdmin(transformer.fromUni(form)).map { resp -> + PagedResponse(resp.items.map(transformer::toUni)) + } + + override suspend fun hidePost(form: it.vercruysse.lemmyapi.datatypes.HidePost): Result = + api.hidePost(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun hidePosts(form: it.vercruysse.lemmyapi.datatypes.HidePosts): Result = notSupported() + + override suspend fun getRegistrationApplication(form: it.vercruysse.lemmyapi.datatypes.GetRegistrationApplication): Result = + api.getRegistrationApplication(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun listPersonContent(form: it.vercruysse.lemmyapi.datatypes.ListPersonContent): Result> = + api.listPersonContent(transformer.fromUni(form)).map { resp -> + PagedResponse(resp.items.map(transformer::toUni)) + } + + override suspend fun uploadImage(image: ByteArray): Result = + api.uploadImage(image).map(transformer::toUni) + + override suspend fun uploadCommunityBanner(image: ByteArray, form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery): Result = + api.uploadCommunityBanner(image, transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun uploadCommunityIcon(image: ByteArray, form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery): Result = + api.uploadCommunityIcon(image, transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun uploadSiteBanner(image: ByteArray): Result = + api.uploadSiteBanner(image).map(transformer::toUni) + + override suspend fun uploadSiteIcon(image: ByteArray): Result = + api.uploadSiteIcon(image).map(transformer::toUni) + + override suspend fun uploadUserAvatar(image: ByteArray): Result = + api.uploadUserAvatar(image).map(transformer::toUni) + + override suspend fun uploadUserBanner(image: ByteArray): Result = + api.uploadUserBanner(image).map(transformer::toUni) + + override suspend fun deleteUserAvatar(): Result = + api.deleteUserAvatar() + + override suspend fun deleteUserBanner(): Result = + api.deleteUserBanner() + + override suspend fun deleteCommunityBanner(form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery): Result = + api.deleteCommunityBanner(transformer.fromUni(form)) + + override suspend fun deleteCommunityIcon(form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery): Result = + api.deleteCommunityIcon(transformer.fromUni(form)) + + override suspend fun deleteSiteBanner(): Result = + api.deleteSiteBanner() + + override suspend fun deleteSiteIcon(): Result = + api.deleteSiteIcon() + + override suspend fun deleteMedia(form: it.vercruysse.lemmyapi.datatypes.DeleteImageParams): Result = + api.deleteMedia(transformer.fromUni(form)) + + override suspend fun deleteMediaAdmin(form: it.vercruysse.lemmyapi.datatypes.DeleteImageParams): Result = + api.deleteMediaAdmin(transformer.fromUni(form)) + + override suspend fun imageHealth(): Result = + api.imageHealth() + + override suspend fun adminListUsers(form: it.vercruysse.lemmyapi.datatypes.AdminListUsers): Result> = + api.adminListUsers(transformer.fromUni(form)).map { resp -> + PagedResponse(resp.items.map(transformer::toUni)) + } + + override suspend fun getRandomCommunity(form: it.vercruysse.lemmyapi.datatypes.GetRandomCommunity): Result = + api.getRandomCommunity(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun createCommunityReport(form: it.vercruysse.lemmyapi.datatypes.CreateCommunityReport): Result = + api.createCommunityReport(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun resolveCommunityReport(form: it.vercruysse.lemmyapi.datatypes.ResolveCommunityReport): Result = + api.resolveCommunityReport(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun createCommunityTag(form: it.vercruysse.lemmyapi.datatypes.CreateCommunityTag): Result = + api.createCommunityTag(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun editCommunityTag(form: it.vercruysse.lemmyapi.datatypes.EditCommunityTag): Result = + api.editCommunityTag(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun deleteCommunityTag(form: it.vercruysse.lemmyapi.datatypes.DeleteCommunityTag): Result = + api.deleteCommunityTag(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun editCommunityNotifications(form: it.vercruysse.lemmyapi.datatypes.EditCommunityNotifications): Result = + api.editCommunityNotifications(transformer.fromUni(form)) + + override suspend fun approveCommunityPendingFollow(form: it.vercruysse.lemmyapi.datatypes.ApproveCommunityPendingFollower): Result = + api.approveCommunityPendingFollow(transformer.fromUni(form)) + + override suspend fun listCommunityPendingFollows(form: it.vercruysse.lemmyapi.datatypes.ListCommunityPendingFollows): Result> = + api.listCommunityPendingFollows(transformer.fromUni(form)).map { resp -> + PagedResponse(resp.items.map(transformer::toUni)) + } + + override suspend fun modEditPost(form: it.vercruysse.lemmyapi.datatypes.ModEditPost): Result = + api.modEditPost(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun editPostNotifications(form: it.vercruysse.lemmyapi.datatypes.EditPostNotifications): Result = + api.editPostNotifications(transformer.fromUni(form)) + + override suspend fun warnPost(form: it.vercruysse.lemmyapi.datatypes.CreatePostWarning): Result = + api.warnPost(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun getCommentsSlim(form: it.vercruysse.lemmyapi.datatypes.GetComments): Result> = + api.getCommentsSlim(transformer.fromUni(form)).map { resp -> + PagedResponse(resp.items.map(transformer::toUni)) + } + + override suspend fun lockComment(form: it.vercruysse.lemmyapi.datatypes.LockComment): Result = + api.lockComment(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun warnComment(form: it.vercruysse.lemmyapi.datatypes.CreateCommentWarning): Result = + api.warnComment(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun notePerson(form: it.vercruysse.lemmyapi.datatypes.NotePerson): Result = + api.notePerson(transformer.fromUni(form)) + + override suspend fun listPersonSaved(form: it.vercruysse.lemmyapi.datatypes.ListPersonSaved): Result> = + api.listPersonSaved(transformer.fromUni(form)).map { resp -> + PagedResponse(resp.items.map(transformer::toUni)) + } + + override suspend fun listPersonRead(form: it.vercruysse.lemmyapi.datatypes.ListPersonRead): Result> = + api.listPersonRead(transformer.fromUni(form)).map { resp -> + PagedResponse(resp.items.map(transformer::toUni)) + } + + override suspend fun listPersonHidden(form: it.vercruysse.lemmyapi.datatypes.ListPersonHidden): Result> = + api.listPersonHidden(transformer.fromUni(form)).map { resp -> + PagedResponse(resp.items.map(transformer::toUni)) + } + + override suspend fun listPersonLiked(form: it.vercruysse.lemmyapi.datatypes.ListPersonLiked): Result> = + api.listPersonLiked(transformer.fromUni(form)).map { resp -> + PagedResponse(resp.items.map(transformer::toUni)) + } + + override suspend fun resendVerificationEmail(form: it.vercruysse.lemmyapi.datatypes.ResendVerificationEmail): Result = + api.resendVerificationEmail(transformer.fromUni(form)) + + override suspend fun authenticateWithOAuth(form: it.vercruysse.lemmyapi.datatypes.AuthenticateWithOauth): Result = + api.authenticateWithOAuth(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun userBlockInstancePersons(form: it.vercruysse.lemmyapi.datatypes.UserBlockInstancePersonsParams): Result = + api.userBlockInstancePersons(transformer.fromUni(form)) + + override suspend fun adminAllowInstance(form: it.vercruysse.lemmyapi.datatypes.AdminAllowInstanceParams): Result = + api.adminAllowInstance(transformer.fromUni(form)) + + override suspend fun adminBlockInstance(form: it.vercruysse.lemmyapi.datatypes.AdminBlockInstanceParams): Result = + api.adminBlockInstance(transformer.fromUni(form)) + + override suspend fun createTagline(form: it.vercruysse.lemmyapi.datatypes.CreateTagline): Result = + api.createTagline(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun editTagline(form: it.vercruysse.lemmyapi.datatypes.EditTagline): Result = + api.editTagline(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun deleteTagline(form: it.vercruysse.lemmyapi.datatypes.DeleteTagline): Result = + api.deleteTagline(transformer.fromUni(form)) + + override suspend fun listTaglines(form: it.vercruysse.lemmyapi.datatypes.ListTaglines): Result> = + api.listTaglines(transformer.fromUni(form)).map { resp -> + PagedResponse(resp.items.map(transformer::toUni)) + } + + override suspend fun createOAuthProvider(form: it.vercruysse.lemmyapi.datatypes.CreateOAuthProvider): Result = + api.createOAuthProvider(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun editOAuthProvider(form: it.vercruysse.lemmyapi.datatypes.EditOAuthProvider): Result = + api.editOAuthProvider(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun deleteOAuthProvider(form: it.vercruysse.lemmyapi.datatypes.DeleteOAuthProvider): Result = + api.deleteOAuthProvider(transformer.fromUni(form)) + + override suspend fun getMultiCommunity(form: it.vercruysse.lemmyapi.datatypes.GetMultiCommunity): Result = + api.getMultiCommunity(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun createMultiCommunity(form: it.vercruysse.lemmyapi.datatypes.CreateMultiCommunity): Result = + api.createMultiCommunity(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun editMultiCommunity(form: it.vercruysse.lemmyapi.datatypes.EditMultiCommunity): Result = + api.editMultiCommunity(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun createMultiCommunityEntry(form: it.vercruysse.lemmyapi.datatypes.CreateOrDeleteMultiCommunityEntry): Result = + api.createMultiCommunityEntry(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun deleteMultiCommunityEntry(form: it.vercruysse.lemmyapi.datatypes.CreateOrDeleteMultiCommunityEntry): Result = + api.deleteMultiCommunityEntry(transformer.fromUni(form)) + + override suspend fun followMultiCommunity(form: it.vercruysse.lemmyapi.datatypes.FollowMultiCommunity): Result = + api.followMultiCommunity(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun listMultiCommunities(form: it.vercruysse.lemmyapi.datatypes.ListMultiCommunities): Result> = + api.listMultiCommunities(transformer.fromUni(form)).map { resp -> + PagedResponse(resp.items.map(transformer::toUni)) + } +} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/MapperGenerator.kt index f0b42fa9..364fb7c3 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/MapperGenerator.kt @@ -160,13 +160,18 @@ internal interface MapperGenerator { // body mappings fun fromUni(d: it.vercruysse.lemmyapi.datatypes.AddAdmin): AddAdmin fun fromUni(d: it.vercruysse.lemmyapi.datatypes.AddModToCommunity): AddModToCommunity + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.AdminAllowInstanceParams): AdminAllowInstanceParams + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.AdminBlockInstanceParams): AdminBlockInstanceParams + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.AdminListUsers): AdminListUsers fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ApproveCommunityPendingFollower): ApproveCommunityPendingFollower fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ApproveRegistrationApplication): ApproveRegistrationApplication + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.AuthenticateWithOauth): AuthenticateWithOauth fun fromUni(d: it.vercruysse.lemmyapi.datatypes.BanFromCommunity): BanFromCommunity fun fromUni(d: it.vercruysse.lemmyapi.datatypes.BanPerson): BanPerson fun fromUni(d: it.vercruysse.lemmyapi.datatypes.BlockCommunity): BlockCommunity fun fromUni(d: it.vercruysse.lemmyapi.datatypes.BlockPerson): BlockPerson fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ChangePassword): ChangePassword + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery): CommunityIdQuery fun fromUni(d: it.vercruysse.lemmyapi.datatypes.CreateComment): CreateComment fun fromUni(d: it.vercruysse.lemmyapi.datatypes.CreateCommentLike): CreateCommentLike fun fromUni(d: it.vercruysse.lemmyapi.datatypes.CreateCommentReport): CreateCommentReport @@ -249,6 +254,8 @@ internal interface MapperGenerator { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead): MarkManyPostsAsRead fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkNotificationAsRead): MarkNotificationAsRead fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkPostAsRead): MarkPostAsRead + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ModEditPost): ModEditPost + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.NotePerson): NotePerson fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset): PasswordChangeAfterReset fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordReset): PasswordReset fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgeComment): PurgeComment @@ -259,6 +266,7 @@ internal interface MapperGenerator { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.RemoveComment): RemoveComment fun fromUni(d: it.vercruysse.lemmyapi.datatypes.RemoveCommunity): RemoveCommunity fun fromUni(d: it.vercruysse.lemmyapi.datatypes.RemovePost): RemovePost + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ResendVerificationEmail): ResendVerificationEmail fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ResolveCommentReport): ResolveCommentReport fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ResolveCommunityReport): ResolveCommunityReport fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ResolveObject): ResolveObject @@ -269,5 +277,7 @@ internal interface MapperGenerator { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.SaveUserSettings): SaveUserSettings fun fromUni(d: it.vercruysse.lemmyapi.datatypes.Search): Search fun fromUni(d: it.vercruysse.lemmyapi.datatypes.TransferCommunity): TransferCommunity + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.UserBlockInstanceCommunitiesParams): UserBlockInstanceCommunitiesParams + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.UserBlockInstancePersonsParams): UserBlockInstancePersonsParams fun fromUni(d: it.vercruysse.lemmyapi.datatypes.VerifyEmail): VerifyEmail } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/Transformer.kt index 7d5d9522..8c544839 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/Transformer.kt @@ -462,32 +462,51 @@ import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.VerifyEmail as X0DatatypesVerif import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.VoteView as X0DatatypesVoteView internal class Transformer : MapperGenerator { + + fun voteBoolToInt(d: Boolean) = if (d) 1 else -1 + fun voteTriBoolToInt(d: Boolean?) = when (d) { + null -> 0 + true -> 1 + false -> -1 + } + fun voteIntToBool(d: Int): Boolean = when (d) { + 1 -> true + -1 -> false + else -> throw IllegalArgumentException("Invalid vote value: $d") + } + fun voteIntToTriBool(d: Int): Boolean? = when (d) { + 1 -> true + -1 -> false + 0 -> null + else -> throw IllegalArgumentException("Invalid vote value: $d") + } + override fun toUni(d: X0DatatypesAddAdminResponse): LemmyapiDatatypesAddAdminResponse = LemmyapiDatatypesAddAdminResponse( - admins = d.admins.map { this.toUni(d = it) } + admins = d.admins.map { this.toUni(d = it) }, ) override fun toUni(d: X0DatatypesAddModToCommunityResponse): LemmyapiDatatypesAddModToCommunityResponse = LemmyapiDatatypesAddModToCommunityResponse( - moderators = d.moderators.map { this.toUni(d = it) } + moderators = d.moderators.map { this.toUni(d = it) }, ) override fun toUni(d: X0DatatypesAdminAllowInstanceParams): LemmyapiDatatypesAdminAllowInstanceParams = LemmyapiDatatypesAdminAllowInstanceParams( instance = d.instance, allow = d.allow, - reason = d.reason + reason = d.reason, ) override fun toUni(d: X0DatatypesAdminBlockInstanceParams): LemmyapiDatatypesAdminBlockInstanceParams = LemmyapiDatatypesAdminBlockInstanceParams( instance = d.instance, block = d.block, reason = d.reason, - expires_at = d.expires_at + expires_at = d.expires_at, ) override fun toUni(d: X0DatatypesAdminListUsers): LemmyapiDatatypesAdminListUsers = LemmyapiDatatypesAdminListUsers( banned_only = d.banned_only, page_cursor = d.page_cursor, sort = d.sort, - limit = d.limit + limit = d.limit, ) override fun toUni(d: X0DatatypesAdminOAuthProvider): LemmyapiDatatypesAdminOAuthProvider = LemmyapiDatatypesAdminOAuthProvider( @@ -505,7 +524,7 @@ internal class Transformer : MapperGenerator { enabled = d.enabled, published_at = d.published_at, updated_at = d.updated_at, - use_pkce = d.use_pkce + use_pkce = d.use_pkce, ) override fun toUni(d: X0DatatypesAuthenticateWithOauth): LemmyapiDatatypesAuthenticateWithOauth = LemmyapiDatatypesAuthenticateWithOauth( @@ -516,13 +535,13 @@ internal class Transformer : MapperGenerator { username = d.username, answer = d.answer, pkce_code_verifier = d.pkce_code_verifier, - stay_logged_in = d.stay_logged_in + stay_logged_in = d.stay_logged_in, ) override fun toUni(d: X0DatatypesCaptchaResponse): LemmyapiDatatypesCaptchaResponse = LemmyapiDatatypesCaptchaResponse( png = d.png, wav = d.wav, - uuid = d.uuid + uuid = d.uuid, ) override fun toUni(d: X0DatatypesComment): LemmyapiDatatypesComment = LemmyapiDatatypesComment( @@ -546,12 +565,13 @@ internal class Transformer : MapperGenerator { report_count = d.report_count, unresolved_report_count = d.unresolved_report_count, federation_pending = d.federation_pending, - locked = d.locked + locked = d.locked, ) override fun toUni(d: X0DatatypesCommentActions): LemmyapiDatatypesCommentActions = LemmyapiDatatypesCommentActions( + like_score = voteTriBoolToInt(d.vote_is_upvote), voted_at = d.voted_at, - saved_at = d.saved_at + saved_at = d.saved_at, ) override fun toUni(d: X0DatatypesCommentReport): LemmyapiDatatypesCommentReport = LemmyapiDatatypesCommentReport( @@ -563,11 +583,11 @@ internal class Transformer : MapperGenerator { resolved = d.resolved, resolver_id = d.resolver_id, published_at = d.published_at, - updated_at = d.updated_at + updated_at = d.updated_at, ) override fun toUni(d: X0DatatypesCommentReportResponse): LemmyapiDatatypesCommentReportResponse = LemmyapiDatatypesCommentReportResponse( - comment_report_view = this.toUni(d = d.comment_report_view) + comment_report_view = this.toUni(d = d.comment_report_view), ) override fun toUni(d: X0DatatypesCommentReportView): LemmyapiDatatypesCommentReportView = LemmyapiDatatypesCommentReportView( @@ -586,11 +606,11 @@ internal class Transformer : MapperGenerator { creator_banned = d.creator_banned, creator_ban_expires_at = d.creator_ban_expires_at, creator_banned_from_community = d.creator_banned_from_community, - creator_community_ban_expires_at = d.creator_community_ban_expires_at + creator_community_ban_expires_at = d.creator_community_ban_expires_at, ) override fun toUni(d: X0DatatypesCommentResponse): LemmyapiDatatypesCommentResponse = LemmyapiDatatypesCommentResponse( - comment_view = this.toUni(d = d.comment_view) + comment_view = this.toUni(d = d.comment_view), ) override fun toUni(d: X0DatatypesCommentSlimView): LemmyapiDatatypesCommentSlimView = LemmyapiDatatypesCommentSlimView( @@ -602,7 +622,7 @@ internal class Transformer : MapperGenerator { can_mod = d.can_mod, creator_banned = d.creator_banned, creator_is_moderator = d.creator_is_moderator, - creator_banned_from_community = d.creator_banned_from_community + creator_banned_from_community = d.creator_banned_from_community, ) override fun toUni(d: X0DatatypesCommentView): LemmyapiDatatypesCommentView = LemmyapiDatatypesCommentView( @@ -620,7 +640,7 @@ internal class Transformer : MapperGenerator { creator_is_admin = d.creator_is_admin, creator_is_moderator = d.creator_is_moderator, creator_banned_from_community = d.creator_banned_from_community, - creator_community_ban_expires_at = d.creator_community_ban_expires_at + creator_community_ban_expires_at = d.creator_community_ban_expires_at, ) override fun toUni(d: X0DatatypesCommunity): LemmyapiDatatypesCommunity = LemmyapiDatatypesCommunity( @@ -652,7 +672,7 @@ internal class Transformer : MapperGenerator { subscribers_local = d.subscribers_local, report_count = d.report_count, unresolved_report_count = d.unresolved_report_count, - local_removed = d.local_removed + local_removed = d.local_removed, ) override fun toUni(d: X0DatatypesCommunityActions): LemmyapiDatatypesCommunityActions = LemmyapiDatatypesCommunityActions( @@ -662,21 +682,21 @@ internal class Transformer : MapperGenerator { became_moderator_at = d.became_moderator_at, received_ban_at = d.received_ban_at, ban_expires_at = d.ban_expires_at, - notifications = d.notifications + notifications = d.notifications, ) override fun toUni(d: X0DatatypesCommunityFollowerView): LemmyapiDatatypesCommunityFollowerView = LemmyapiDatatypesCommunityFollowerView( community = this.toUni(d = d.community), - follower = this.toUni(d = d.follower) + follower = this.toUni(d = d.follower), ) override fun toUni(d: X0DatatypesCommunityIdQuery): LemmyapiDatatypesCommunityIdQuery = LemmyapiDatatypesCommunityIdQuery( - id = d.id + id = d.id, ) override fun toUni(d: X0DatatypesCommunityModeratorView): LemmyapiDatatypesCommunityModeratorView = LemmyapiDatatypesCommunityModeratorView( community = this.toUni(d = d.community), - moderator = this.toUni(d = d.moderator) + moderator = this.toUni(d = d.moderator), ) override fun toUni(d: X0DatatypesCommunityReport): LemmyapiDatatypesCommunityReport = LemmyapiDatatypesCommunityReport( @@ -693,11 +713,11 @@ internal class Transformer : MapperGenerator { resolved = d.resolved, resolver_id = d.resolver_id, published_at = d.published_at, - updated_at = d.updated_at + updated_at = d.updated_at, ) override fun toUni(d: X0DatatypesCommunityReportResponse): LemmyapiDatatypesCommunityReportResponse = LemmyapiDatatypesCommunityReportResponse( - community_report_view = this.toUni(d = d.community_report_view) + community_report_view = this.toUni(d = d.community_report_view), ) override fun toUni(d: X0DatatypesCommunityReportView): LemmyapiDatatypesCommunityReportView = LemmyapiDatatypesCommunityReportView( @@ -710,12 +730,12 @@ internal class Transformer : MapperGenerator { creator_banned = d.creator_banned, creator_ban_expires_at = d.creator_ban_expires_at, creator_banned_from_community = d.creator_banned_from_community, - creator_community_ban_expires_at = d.creator_community_ban_expires_at + creator_community_ban_expires_at = d.creator_community_ban_expires_at, ) override fun toUni(d: X0DatatypesCommunityResponse): LemmyapiDatatypesCommunityResponse = LemmyapiDatatypesCommunityResponse( community_view = this.toUni(d = d.community_view), - discussion_languages = d.discussion_languages + discussion_languages = d.discussion_languages, ) override fun toUni(d: X0DatatypesCommunityTag): LemmyapiDatatypesCommunityTag = LemmyapiDatatypesCommunityTag( @@ -728,14 +748,14 @@ internal class Transformer : MapperGenerator { published_at = d.published_at, updated_at = d.updated_at, deleted = d.deleted, - color = d.color + color = d.color, ) override fun toUni(d: X0DatatypesCommunityView): LemmyapiDatatypesCommunityView = LemmyapiDatatypesCommunityView( community = this.toUni(d = d.community), community_actions = d.community_actions?.let { this.toUni(d = it) }, can_mod = d.can_mod, - tags = d.tags.map { this.toUni(d = it) } + tags = d.tags.map { this.toUni(d = it) }, ) override fun toUni(d: X0DatatypesCustomEmoji): LemmyapiDatatypesCustomEmoji = LemmyapiDatatypesCustomEmoji( @@ -745,25 +765,25 @@ internal class Transformer : MapperGenerator { alt_text = d.alt_text, category = d.category, published_at = d.published_at, - updated_at = d.updated_at + updated_at = d.updated_at, ) override fun toUni(d: X0DatatypesCustomEmojiKeyword): LemmyapiDatatypesCustomEmojiKeyword = LemmyapiDatatypesCustomEmojiKeyword( custom_emoji_id = d.custom_emoji_id, - keyword = d.keyword + keyword = d.keyword, ) override fun toUni(d: X0DatatypesCustomEmojiResponse): LemmyapiDatatypesCustomEmojiResponse = LemmyapiDatatypesCustomEmojiResponse( - custom_emoji = this.toUni(d = d.custom_emoji) + custom_emoji = this.toUni(d = d.custom_emoji), ) override fun toUni(d: X0DatatypesCustomEmojiView): LemmyapiDatatypesCustomEmojiView = LemmyapiDatatypesCustomEmojiView( custom_emoji = this.toUni(d = d.custom_emoji), - keywords = d.keywords.map { this.toUni(d = it) } + keywords = d.keywords.map { this.toUni(d = it) }, ) override fun toUni(d: X0DatatypesEditTotpResponse): LemmyapiDatatypesEditTotpResponse = LemmyapiDatatypesEditTotpResponse( - enabled = d.enabled + enabled = d.enabled, ) override fun toUni(d: X0DatatypesExportDataResponse): LemmyapiDatatypesExportDataResponse = LemmyapiDatatypesExportDataResponse( @@ -772,7 +792,7 @@ internal class Transformer : MapperGenerator { read_posts = d.read_posts, liked = d.liked, moderates = d.moderates, - settings = this.toUni(d = d.settings) + settings = this.toUni(d = d.settings), ) override fun toUni(d: X0DatatypesFederatedInstanceView): LemmyapiDatatypesFederatedInstanceView = LemmyapiDatatypesFederatedInstanceView( @@ -780,18 +800,18 @@ internal class Transformer : MapperGenerator { site = d.site?.let { this.toUni(d = it) }, queue_state = d.queue_state?.let { this.toUni(d = it) }, blocked = d.blocked?.let { this.toUni(d = it) }, - allowed = d.allowed?.let { this.toUni(d = it) } + allowed = d.allowed?.let { this.toUni(d = it) }, ) override fun toUni(d: X0DatatypesFederationAllowList): LemmyapiDatatypesFederationAllowList = LemmyapiDatatypesFederationAllowList( published_at = d.published_at, - updated_at = d.updated_at + updated_at = d.updated_at, ) override fun toUni(d: X0DatatypesFederationBlockList): LemmyapiDatatypesFederationBlockList = LemmyapiDatatypesFederationBlockList( published_at = d.published_at, updated_at = d.updated_at, - expires_at = d.expires_at + expires_at = d.expires_at, ) override fun toUni(d: X0DatatypesFederationQueueState): LemmyapiDatatypesFederationQueueState = LemmyapiDatatypesFederationQueueState( @@ -799,44 +819,44 @@ internal class Transformer : MapperGenerator { last_successful_id = d.last_successful_id, last_successful_published_time_at = d.last_successful_published_time_at, fail_count = d.fail_count, - last_retry_at = d.last_retry_at + last_retry_at = d.last_retry_at, ) override fun toUni(d: X0DatatypesGenerateTotpSecretResponse): LemmyapiDatatypesGenerateTotpSecretResponse = LemmyapiDatatypesGenerateTotpSecretResponse( - totp_secret_url = d.totp_secret_url + totp_secret_url = d.totp_secret_url, ) override fun toUni(d: X0DatatypesGetCaptchaResponse): LemmyapiDatatypesGetCaptchaResponse = LemmyapiDatatypesGetCaptchaResponse( - ok = d.ok?.let { this.toUni(d = it) } + ok = d.ok?.let { this.toUni(d = it) }, ) override fun toUni(d: X0DatatypesGetCommunityResponse): LemmyapiDatatypesGetCommunityResponse = LemmyapiDatatypesGetCommunityResponse( community_view = this.toUni(d = d.community_view), site = d.site?.let { this.toUni(d = it) }, moderators = d.moderators.map { this.toUni(d = it) }, - discussion_languages = d.discussion_languages + discussion_languages = d.discussion_languages, ) override fun toUni(d: X0DatatypesGetMultiCommunityResponse): LemmyapiDatatypesGetMultiCommunityResponse = LemmyapiDatatypesGetMultiCommunityResponse( multi_community_view = this.toUni(d = d.multi_community_view), - communities = d.communities.map { this.toUni(d = it) } + communities = d.communities.map { this.toUni(d = it) }, ) override fun toUni(d: X0DatatypesGetPersonDetailsResponse): LemmyapiDatatypesGetPersonDetailsResponse = LemmyapiDatatypesGetPersonDetailsResponse( person_view = this.toUni(d = d.person_view), site = d.site?.let { this.toUni(d = it) }, moderates = d.moderates.map { this.toUni(d = it) }, - multi_communities_created = d.multi_communities_created.map { this.toUni(d = it) } + multi_communities_created = d.multi_communities_created.map { this.toUni(d = it) }, ) override fun toUni(d: X0DatatypesGetPostResponse): LemmyapiDatatypesGetPostResponse = LemmyapiDatatypesGetPostResponse( post_view = this.toUni(d = d.post_view), community_view = this.toUni(d = d.community_view), - cross_posts = d.cross_posts.map { this.toUni(d = it) } + cross_posts = d.cross_posts.map { this.toUni(d = it) }, ) override fun toUni(d: X0DatatypesGetSiteMetadataResponse): LemmyapiDatatypesGetSiteMetadataResponse = LemmyapiDatatypesGetSiteMetadataResponse( - metadata = this.toUni(d = d.metadata) + metadata = this.toUni(d = d.metadata), ) override fun toUni(d: X0DatatypesGetSiteResponse): LemmyapiDatatypesGetSiteResponse = LemmyapiDatatypesGetSiteResponse( @@ -851,7 +871,7 @@ internal class Transformer : MapperGenerator { admin_oauth_providers = d.admin_oauth_providers.map { this.toUni(d = it) }, image_upload_disabled = d.image_upload_disabled, active_plugins = d.active_plugins.map { this.toUni(d = it) }, - last_application_duration_seconds = d.last_application_duration_seconds + last_application_duration_seconds = d.last_application_duration_seconds, ) override fun toUni(d: X0DatatypesImageDetails): LemmyapiDatatypesImageDetails = LemmyapiDatatypesImageDetails( @@ -859,18 +879,18 @@ internal class Transformer : MapperGenerator { width = d.width, height = d.height, content_type = d.content_type, - blurhash = d.blurhash + blurhash = d.blurhash, ) override fun toUni(d: X0DatatypesImageGetParams): LemmyapiDatatypesImageGetParams = LemmyapiDatatypesImageGetParams( file_type = d.file_type, - max_size = d.max_size + max_size = d.max_size, ) override fun toUni(d: X0DatatypesImageProxyParams): LemmyapiDatatypesImageProxyParams = LemmyapiDatatypesImageProxyParams( url = d.url, file_type = d.file_type, - max_size = d.max_size + max_size = d.max_size, ) override fun toUni(d: X0DatatypesInstance): LemmyapiDatatypesInstance = LemmyapiDatatypesInstance( @@ -879,20 +899,20 @@ internal class Transformer : MapperGenerator { published_at = d.published_at, updated_at = d.updated_at, software = d.software, - version = d.version + version = d.version, ) override fun toUni(d: X0DatatypesInstanceActions): LemmyapiDatatypesInstanceActions = LemmyapiDatatypesInstanceActions( blocked_communities_at = d.blocked_communities_at, received_ban_at = d.received_ban_at, ban_expires_at = d.ban_expires_at, - blocked_persons_at = d.blocked_persons_at + blocked_persons_at = d.blocked_persons_at, ) override fun toUni(d: X0DatatypesLanguage): LemmyapiDatatypesLanguage = LemmyapiDatatypesLanguage( id = d.id, code = d.code, - name = d.name + name = d.name, ) override fun toUni(d: X0DatatypesLinkMetadata): LemmyapiDatatypesLinkMetadata = LemmyapiDatatypesLinkMetadata( @@ -904,28 +924,28 @@ internal class Transformer : MapperGenerator { image_height = d.image_height, embed_video_url = d.embed_video_url, video_width = d.video_width, - video_height = d.video_height + video_height = d.video_height, ) override fun toUni(d: X0DatatypesListCustomEmojisResponse): LemmyapiDatatypesListCustomEmojisResponse = LemmyapiDatatypesListCustomEmojisResponse( - custom_emojis = d.custom_emojis.map { this.toUni(d = it) } + custom_emojis = d.custom_emojis.map { this.toUni(d = it) }, ) override fun toUni(d: X0DatatypesListLoginsResponse): LemmyapiDatatypesListLoginsResponse = LemmyapiDatatypesListLoginsResponse( - logins = d.logins.map { this.toUni(d = it) } + logins = d.logins.map { this.toUni(d = it) }, ) override fun toUni(d: X0DatatypesLocalImage): LemmyapiDatatypesLocalImage = LemmyapiDatatypesLocalImage( person_id = d.person_id, pictrs_alias = d.pictrs_alias, published_at = d.published_at, - thumbnail_for_post_id = d.thumbnail_for_post_id + thumbnail_for_post_id = d.thumbnail_for_post_id, ) override fun toUni(d: X0DatatypesLocalImageView): LemmyapiDatatypesLocalImageView = LemmyapiDatatypesLocalImageView( local_image = this.toUni(d = d.local_image), person = this.toUni(d = d.person), - post = d.post?.let { this.toUni(d = it) } + post = d.post?.let { this.toUni(d = it) }, ) override fun toUni(d: X0DatatypesLocalSite): LemmyapiDatatypesLocalSite = LemmyapiDatatypesLocalSite( @@ -969,7 +989,7 @@ internal class Transformer : MapperGenerator { users_active_half_year = d.users_active_half_year, disable_email_notifications = d.disable_email_notifications, suggested_multi_community_id = d.suggested_multi_community_id, - default_items_per_page = d.default_items_per_page + default_items_per_page = d.default_items_per_page, ) override fun toUni(d: X0DatatypesLocalSiteRateLimit): LemmyapiDatatypesLocalSiteRateLimit = LemmyapiDatatypesLocalSiteRateLimit( @@ -989,14 +1009,14 @@ internal class Transformer : MapperGenerator { published_at = d.published_at, updated_at = d.updated_at, import_user_settings_max_requests = d.import_user_settings_max_requests, - import_user_settings_interval_seconds = d.import_user_settings_interval_seconds + import_user_settings_interval_seconds = d.import_user_settings_interval_seconds, ) override fun toUni(d: X0DatatypesLocalSiteUrlBlocklist): LemmyapiDatatypesLocalSiteUrlBlocklist = LemmyapiDatatypesLocalSiteUrlBlocklist( id = d.id, url = d.url, published_at = d.published_at, - updated_at = d.updated_at + updated_at = d.updated_at, ) override fun toUni(d: X0DatatypesLocalUser): LemmyapiDatatypesLocalUser = LemmyapiDatatypesLocalUser( @@ -1033,33 +1053,33 @@ internal class Transformer : MapperGenerator { show_downvotes = d.show_downvotes, show_upvote_percentage = d.show_upvote_percentage, show_person_votes = d.show_person_votes, - default_items_per_page = d.default_items_per_page + default_items_per_page = d.default_items_per_page, ) override fun toUni(d: X0DatatypesLocalUserView): LemmyapiDatatypesLocalUserView = LemmyapiDatatypesLocalUserView( local_user = this.toUni(d = d.local_user), person = this.toUni(d = d.person), banned = d.banned, - ban_expires_at = d.ban_expires_at + ban_expires_at = d.ban_expires_at, ) override fun toUni(d: X0DatatypesLoginResponse): LemmyapiDatatypesLoginResponse = LemmyapiDatatypesLoginResponse( jwt = d.jwt, registration_created = d.registration_created, - verify_email_sent = d.verify_email_sent + verify_email_sent = d.verify_email_sent, ) override fun toUni(d: X0DatatypesLoginToken): LemmyapiDatatypesLoginToken = LemmyapiDatatypesLoginToken( user_id = d.user_id, published_at = d.published_at, ip = d.ip, - user_agent = d.user_agent + user_agent = d.user_agent, ) override fun toUni(d: X0DatatypesModEditPost): LemmyapiDatatypesModEditPost = LemmyapiDatatypesModEditPost( post_id = d.post_id, nsfw = d.nsfw, - tags = d.tags + tags = d.tags, ) override fun toUni(d: X0DatatypesModlog): LemmyapiDatatypesModlog = LemmyapiDatatypesModlog( @@ -1068,7 +1088,7 @@ internal class Transformer : MapperGenerator { is_revert = d.is_revert, reason = d.reason, expires_at = d.expires_at, - published_at = d.published_at + published_at = d.published_at, ) override fun toUni(d: X0DatatypesModlogView): LemmyapiDatatypesModlogView = LemmyapiDatatypesModlogView( @@ -1078,7 +1098,7 @@ internal class Transformer : MapperGenerator { target_instance = d.target_instance?.let { this.toUni(d = it) }, target_community = d.target_community?.let { this.toUni(d = it) }, target_post = d.target_post?.let { this.toUni(d = it) }, - target_comment = d.target_comment?.let { this.toUni(d = it) } + target_comment = d.target_comment?.let { this.toUni(d = it) }, ) override fun toUni(d: X0DatatypesMultiCommunity): LemmyapiDatatypesMultiCommunity = LemmyapiDatatypesMultiCommunity( @@ -1096,28 +1116,28 @@ internal class Transformer : MapperGenerator { updated_at = d.updated_at, subscribers = d.subscribers, subscribers_local = d.subscribers_local, - communities = d.communities + communities = d.communities, ) override fun toUni(d: X0DatatypesMultiCommunityEntry): LemmyapiDatatypesMultiCommunityEntry = LemmyapiDatatypesMultiCommunityEntry( multi_community_id = d.multi_community_id, - community_id = d.community_id + community_id = d.community_id, ) override fun toUni(d: X0DatatypesMultiCommunityFollow): LemmyapiDatatypesMultiCommunityFollow = LemmyapiDatatypesMultiCommunityFollow( multi_community_id = d.multi_community_id, person_id = d.person_id, - follow_state = d.follow_state + follow_state = d.follow_state, ) override fun toUni(d: X0DatatypesMultiCommunityResponse): LemmyapiDatatypesMultiCommunityResponse = LemmyapiDatatypesMultiCommunityResponse( - multi_community_view = this.toUni(d = d.multi_community_view) + multi_community_view = this.toUni(d = d.multi_community_view), ) override fun toUni(d: X0DatatypesMultiCommunityView): LemmyapiDatatypesMultiCommunityView = LemmyapiDatatypesMultiCommunityView( multi = this.toUni(d = d.multi), follow_state = d.follow_state, - owner = this.toUni(d = d.owner) + owner = this.toUni(d = d.owner), ) override fun toUni(d: X0DatatypesMyUserInfo): LemmyapiDatatypesMyUserInfo = LemmyapiDatatypesMyUserInfo( @@ -1130,12 +1150,12 @@ internal class Transformer : MapperGenerator { instance_persons_blocks = d.instance_persons_blocks.map { this.toUni(d = it) }, person_blocks = d.person_blocks.map { this.toUni(d = it) }, keyword_blocks = d.keyword_blocks, - discussion_languages = d.discussion_languages + discussion_languages = d.discussion_languages, ) override fun toUni(d: X0DatatypesNotePerson): LemmyapiDatatypesNotePerson = LemmyapiDatatypesNotePerson( person_id = d.person_id, - note = d.note + note = d.note, ) override fun toUni(d: X0DatatypesNotification): LemmyapiDatatypesNotification = LemmyapiDatatypesNotification( @@ -1147,14 +1167,14 @@ internal class Transformer : MapperGenerator { kind = d.kind, post_id = d.post_id, private_message_id = d.private_message_id, - modlog_id = d.modlog_id + modlog_id = d.modlog_id, ) override fun toUni(d: X0DatatypesNotificationData): LemmyapiDatatypesNotificationData = super.toUni(d) override fun toUni(d: X0DatatypesNotificationView): LemmyapiDatatypesNotificationView = LemmyapiDatatypesNotificationView( notification = this.toUni(d = d.notification), - data = d.let { toUni(d.data) } + data = d.let { toUni(d.data) }, ) override fun toUni(d: X0DatatypesOAuthAccount): LemmyapiDatatypesOAuthAccount = LemmyapiDatatypesOAuthAccount( @@ -1162,21 +1182,21 @@ internal class Transformer : MapperGenerator { oauth_provider_id = d.oauth_provider_id, oauth_user_id = d.oauth_user_id, published_at = d.published_at, - updated_at = d.updated_at + updated_at = d.updated_at, ) override fun toUni(d: X0DatatypesPendingFollow): LemmyapiDatatypesPendingFollow = LemmyapiDatatypesPendingFollow( person = this.toUni(d = d.person), community = this.toUni(d = d.community), is_new_instance = d.is_new_instance, - follow_state = d.follow_state + follow_state = d.follow_state, ) override fun toUni(d: X0DatatypesPendingFollowerView): LemmyapiDatatypesPendingFollowerView = LemmyapiDatatypesPendingFollowerView( person = this.toUni(d = d.person), community = this.toUni(d = d.community), is_new_instance = d.is_new_instance, - follow_state = d.follow_state + follow_state = d.follow_state, ) override fun toUni(d: X0DatatypesPerson): LemmyapiDatatypesPerson = LemmyapiDatatypesPerson( @@ -1196,7 +1216,7 @@ internal class Transformer : MapperGenerator { instance_id = d.instance_id, post_count = d.post_count, comment_count = d.comment_count, - last_refreshed_at = d.last_refreshed_at + last_refreshed_at = d.last_refreshed_at, ) override fun toUni(d: X0DatatypesPersonActions): LemmyapiDatatypesPersonActions = LemmyapiDatatypesPersonActions( @@ -1205,11 +1225,11 @@ internal class Transformer : MapperGenerator { note = d.note, voted_at = d.voted_at, upvotes = d.upvotes, - downvotes = d.downvotes + downvotes = d.downvotes, ) override fun toUni(d: X0DatatypesPersonResponse): LemmyapiDatatypesPersonResponse = LemmyapiDatatypesPersonResponse( - person_view = this.toUni(d = d.person_view) + person_view = this.toUni(d = d.person_view), ) override fun toUni(d: X0DatatypesPersonView): LemmyapiDatatypesPersonView = LemmyapiDatatypesPersonView( @@ -1217,13 +1237,13 @@ internal class Transformer : MapperGenerator { is_admin = d.is_admin, person_actions = d.person_actions?.let { this.toUni(d = it) }, banned = d.banned, - ban_expires_at = d.ban_expires_at + ban_expires_at = d.ban_expires_at, ) override fun toUni(d: X0DatatypesPluginMetadata): LemmyapiDatatypesPluginMetadata = LemmyapiDatatypesPluginMetadata( name = d.name, url = d.url, - description = d.description + description = d.description, ) override fun toUni(d: X0DatatypesPost): LemmyapiDatatypesPost = LemmyapiDatatypesPost( @@ -1260,7 +1280,7 @@ internal class Transformer : MapperGenerator { unresolved_report_count = d.unresolved_report_count, federation_pending = d.federation_pending, embed_video_width = d.embed_video_width, - embed_video_height = d.embed_video_height + embed_video_height = d.embed_video_height, ) override fun toUni(d: X0DatatypesPostActions): LemmyapiDatatypesPostActions = LemmyapiDatatypesPostActions( @@ -1270,7 +1290,8 @@ internal class Transformer : MapperGenerator { saved_at = d.saved_at, voted_at = d.voted_at, hidden_at = d.hidden_at, - notifications = d.notifications + notifications = d.notifications, + like_score = voteTriBoolToInt(d.vote_is_upvote), ) override fun toUni(d: X0DatatypesPostCommentCombinedView): LemmyapiDatatypesPostCommentCombinedView = super.toUni(d) @@ -1289,11 +1310,11 @@ internal class Transformer : MapperGenerator { resolver_id = d.resolver_id, published_at = d.published_at, updated_at = d.updated_at, - violates_instance_rules = d.violates_instance_rules + violates_instance_rules = d.violates_instance_rules, ) override fun toUni(d: X0DatatypesPostReportResponse): LemmyapiDatatypesPostReportResponse = LemmyapiDatatypesPostReportResponse( - post_report_view = this.toUni(d = d.post_report_view) + post_report_view = this.toUni(d = d.post_report_view), ) override fun toUni(d: X0DatatypesPostReportView): LemmyapiDatatypesPostReportView = LemmyapiDatatypesPostReportView( @@ -1311,11 +1332,11 @@ internal class Transformer : MapperGenerator { creator_banned = d.creator_banned, creator_ban_expires_at = d.creator_ban_expires_at, creator_banned_from_community = d.creator_banned_from_community, - creator_community_ban_expires_at = d.creator_community_ban_expires_at + creator_community_ban_expires_at = d.creator_community_ban_expires_at, ) override fun toUni(d: X0DatatypesPostResponse): LemmyapiDatatypesPostResponse = LemmyapiDatatypesPostResponse( - post_view = this.toUni(d = d.post_view) + post_view = this.toUni(d = d.post_view), ) override fun toUni(d: X0DatatypesPostView): LemmyapiDatatypesPostView = LemmyapiDatatypesPostView( @@ -1333,7 +1354,7 @@ internal class Transformer : MapperGenerator { creator_is_admin = d.creator_is_admin, creator_is_moderator = d.creator_is_moderator, creator_banned_from_community = d.creator_banned_from_community, - creator_community_ban_expires_at = d.creator_community_ban_expires_at + creator_community_ban_expires_at = d.creator_community_ban_expires_at, ) override fun toUni(d: X0DatatypesPrivateMessage): LemmyapiDatatypesPrivateMessage = LemmyapiDatatypesPrivateMessage( @@ -1346,7 +1367,7 @@ internal class Transformer : MapperGenerator { updated_at = d.updated_at, ap_id = d.ap_id, local = d.local, - removed = d.removed + removed = d.removed, ) override fun toUni(d: X0DatatypesPrivateMessageReport): LemmyapiDatatypesPrivateMessageReport = LemmyapiDatatypesPrivateMessageReport( @@ -1358,11 +1379,11 @@ internal class Transformer : MapperGenerator { resolved = d.resolved, resolver_id = d.resolver_id, published_at = d.published_at, - updated_at = d.updated_at + updated_at = d.updated_at, ) override fun toUni(d: X0DatatypesPrivateMessageReportResponse): LemmyapiDatatypesPrivateMessageReportResponse = LemmyapiDatatypesPrivateMessageReportResponse( - private_message_report_view = this.toUni(d = d.private_message_report_view) + private_message_report_view = this.toUni(d = d.private_message_report_view), ) override fun toUni(d: X0DatatypesPrivateMessageReportView): LemmyapiDatatypesPrivateMessageReportView = LemmyapiDatatypesPrivateMessageReportView( @@ -1373,17 +1394,17 @@ internal class Transformer : MapperGenerator { resolver = d.resolver?.let { this.toUni(d = it) }, creator_is_admin = d.creator_is_admin, creator_banned = d.creator_banned, - creator_ban_expires_at = d.creator_ban_expires_at + creator_ban_expires_at = d.creator_ban_expires_at, ) override fun toUni(d: X0DatatypesPrivateMessageResponse): LemmyapiDatatypesPrivateMessageResponse = LemmyapiDatatypesPrivateMessageResponse( - private_message_view = this.toUni(d = d.private_message_view) + private_message_view = this.toUni(d = d.private_message_view), ) override fun toUni(d: X0DatatypesPrivateMessageView): LemmyapiDatatypesPrivateMessageView = LemmyapiDatatypesPrivateMessageView( private_message = this.toUni(d = d.private_message), creator = this.toUni(d = d.creator), - recipient = this.toUni(d = d.recipient) + recipient = this.toUni(d = d.recipient), ) override fun toUni(d: X0DatatypesPublicOAuthProvider): LemmyapiDatatypesPublicOAuthProvider = LemmyapiDatatypesPublicOAuthProvider( @@ -1392,7 +1413,7 @@ internal class Transformer : MapperGenerator { authorization_endpoint = d.authorization_endpoint, client_id = d.client_id, scopes = d.scopes, - use_pkce = d.use_pkce + use_pkce = d.use_pkce, ) override fun toUni(d: X0DatatypesRegistrationApplication): LemmyapiDatatypesRegistrationApplication = LemmyapiDatatypesRegistrationApplication( @@ -1402,24 +1423,24 @@ internal class Transformer : MapperGenerator { admin_id = d.admin_id, deny_reason = d.deny_reason, published_at = d.published_at, - updated_at = d.updated_at + updated_at = d.updated_at, ) override fun toUni(d: X0DatatypesRegistrationApplicationResponse): LemmyapiDatatypesRegistrationApplicationResponse = LemmyapiDatatypesRegistrationApplicationResponse( - registration_application = this.toUni(d = d.registration_application) + registration_application = this.toUni(d = d.registration_application), ) override fun toUni(d: X0DatatypesRegistrationApplicationView): LemmyapiDatatypesRegistrationApplicationView = LemmyapiDatatypesRegistrationApplicationView( registration_application = this.toUni(d = d.registration_application), creator_local_user = this.toUni(d = d.creator_local_user), creator = this.toUni(d = d.creator), - admin = d.admin?.let { this.toUni(d = it) } + admin = d.admin?.let { this.toUni(d = it) }, ) override fun toUni(d: X0DatatypesReportCombinedView): LemmyapiDatatypesReportCombinedView = super.toUni(d) override fun toUni(d: X0DatatypesResendVerificationEmail): LemmyapiDatatypesResendVerificationEmail = LemmyapiDatatypesResendVerificationEmail( - email = d.email + email = d.email, ) override fun toUni(d: X0DatatypesSearchCombinedView): LemmyapiDatatypesSearchCombinedView = super.toUni(d) @@ -1428,7 +1449,7 @@ internal class Transformer : MapperGenerator { resolve = d.resolve?.let { this.toUni(d = it) }, search = d.search.map { this.toUni(d = it) }, next_page = d.next_page, - prev_page = d.prev_page + prev_page = d.prev_page, ) override fun toUni(d: X0DatatypesSite): LemmyapiDatatypesSite = LemmyapiDatatypesSite( @@ -1445,51 +1466,51 @@ internal class Transformer : MapperGenerator { inbox_url = d.inbox_url, public_key = d.public_key, instance_id = d.instance_id, - content_warning = d.content_warning + content_warning = d.content_warning, ) override fun toUni(d: X0DatatypesSiteResponse): LemmyapiDatatypesSiteResponse = LemmyapiDatatypesSiteResponse( - site_view = this.toUni(d = d.site_view) + site_view = this.toUni(d = d.site_view), ) override fun toUni(d: X0DatatypesSiteView): LemmyapiDatatypesSiteView = LemmyapiDatatypesSiteView( site = this.toUni(d = d.site), local_site = this.toUni(d = d.local_site), local_site_rate_limit = this.toUni(d = d.local_site_rate_limit), - instance = this.toUni(d = d.instance) + instance = this.toUni(d = d.instance), ) override fun toUni(d: X0DatatypesTagline): LemmyapiDatatypesTagline = LemmyapiDatatypesTagline( id = d.id, content = d.content, published_at = d.published_at, - updated_at = d.updated_at + updated_at = d.updated_at, ) override fun toUni(d: X0DatatypesTaglineResponse): LemmyapiDatatypesTaglineResponse = LemmyapiDatatypesTaglineResponse( - tagline = this.toUni(d = d.tagline) + tagline = this.toUni(d = d.tagline), ) override fun toUni(d: X0DatatypesUnreadCountsResponse): LemmyapiDatatypesUnreadCountsResponse = LemmyapiDatatypesUnreadCountsResponse( notification_count = d.notification_count, report_count = d.report_count, pending_follow_count = d.pending_follow_count, - registration_application_count = d.registration_application_count + registration_application_count = d.registration_application_count, ) override fun toUni(d: X0DatatypesUploadImageResponse): LemmyapiDatatypesUploadImageResponse = LemmyapiDatatypesUploadImageResponse( image_url = d.image_url, - filename = d.filename + filename = d.filename, ) override fun toUni(d: X0DatatypesUserBlockInstanceCommunitiesParams): LemmyapiDatatypesUserBlockInstanceCommunitiesParams = LemmyapiDatatypesUserBlockInstanceCommunitiesParams( instance_id = d.instance_id, - block = d.block + block = d.block, ) override fun toUni(d: X0DatatypesUserBlockInstancePersonsParams): LemmyapiDatatypesUserBlockInstancePersonsParams = LemmyapiDatatypesUserBlockInstancePersonsParams( instance_id = d.instance_id, - block = d.block + block = d.block, ) override fun toUni(d: X0DatatypesUserSettingsBackup): LemmyapiDatatypesUserSettingsBackup = LemmyapiDatatypesUserSettingsBackup( @@ -1508,37 +1529,68 @@ internal class Transformer : MapperGenerator { blocked_instances_communities = d.blocked_instances_communities, blocked_instances_persons = d.blocked_instances_persons, blocking_keywords = d.blocking_keywords, - discussion_languages = d.discussion_languages + discussion_languages = d.discussion_languages, ) override fun toUni(d: X0DatatypesVoteView): LemmyapiDatatypesVoteView = LemmyapiDatatypesVoteView( creator = this.toUni(d = d.creator), creator_banned = d.creator_banned, creator_banned_from_community = d.creator_banned_from_community, - score = d.let { if (d.is_upvote) 1 else -1 } + score = d.let { if (d.is_upvote) 1 else -1 }, ) override fun fromUni(d: LemmyapiDatatypesAddAdmin): X0DatatypesAddAdmin = X0DatatypesAddAdmin( person_id = d.person_id, - added = d.added + added = d.added, ) override fun fromUni(d: LemmyapiDatatypesAddModToCommunity): X0DatatypesAddModToCommunity = X0DatatypesAddModToCommunity( community_id = d.community_id, person_id = d.person_id, - added = d.added + added = d.added, + ) + + override fun fromUni(d: LemmyapiDatatypesAdminAllowInstanceParams): X0DatatypesAdminAllowInstanceParams = X0DatatypesAdminAllowInstanceParams( + instance = d.instance, + allow = d.allow, + reason = d.reason, + ) + + override fun fromUni(d: LemmyapiDatatypesAdminBlockInstanceParams): X0DatatypesAdminBlockInstanceParams = X0DatatypesAdminBlockInstanceParams( + instance = d.instance, + block = d.block, + reason = d.reason, + expires_at = d.expires_at, + ) + + override fun fromUni(d: LemmyapiDatatypesAdminListUsers): X0DatatypesAdminListUsers = X0DatatypesAdminListUsers( + banned_only = d.banned_only, + page_cursor = d.page_cursor, + sort = d.sort, + limit = d.limit, ) override fun fromUni(d: LemmyapiDatatypesApproveCommunityPendingFollower): X0DatatypesApproveCommunityPendingFollower = X0DatatypesApproveCommunityPendingFollower( community_id = d.community_id, follower_id = d.follower_id, - approve = d.approve + approve = d.approve, ) override fun fromUni(d: LemmyapiDatatypesApproveRegistrationApplication): X0DatatypesApproveRegistrationApplication = X0DatatypesApproveRegistrationApplication( id = d.id, approve = d.approve, - deny_reason = d.deny_reason + deny_reason = d.deny_reason, + ) + + override fun fromUni(d: LemmyapiDatatypesAuthenticateWithOauth): X0DatatypesAuthenticateWithOauth = X0DatatypesAuthenticateWithOauth( + code = d.code, + oauth_provider_id = d.oauth_provider_id, + redirect_uri = d.redirect_uri, + show_nsfw = d.show_nsfw, + username = d.username, + answer = d.answer, + pkce_code_verifier = d.pkce_code_verifier, + stay_logged_in = d.stay_logged_in, ) override fun fromUni(d: LemmyapiDatatypesBanFromCommunity): X0DatatypesBanFromCommunity = X0DatatypesBanFromCommunity( @@ -1547,7 +1599,7 @@ internal class Transformer : MapperGenerator { ban = d.ban, remove_or_restore_data = d.remove_or_restore_data, reason = d.reason, - expires_at = d.expires_at + expires_at = d.expires_at, ) override fun fromUni(d: LemmyapiDatatypesBanPerson): X0DatatypesBanPerson = X0DatatypesBanPerson( @@ -1555,46 +1607,51 @@ internal class Transformer : MapperGenerator { ban = d.ban, remove_or_restore_data = d.remove_or_restore_data, reason = d.reason, - expires_at = d.expires_at + expires_at = d.expires_at, ) override fun fromUni(d: LemmyapiDatatypesBlockCommunity): X0DatatypesBlockCommunity = X0DatatypesBlockCommunity( community_id = d.community_id, - block = d.block + block = d.block, ) override fun fromUni(d: LemmyapiDatatypesBlockPerson): X0DatatypesBlockPerson = X0DatatypesBlockPerson( person_id = d.person_id, - block = d.block + block = d.block, ) override fun fromUni(d: LemmyapiDatatypesChangePassword): X0DatatypesChangePassword = X0DatatypesChangePassword( new_password = d.new_password, new_password_verify = d.new_password_verify, old_password = d.old_password, - stay_logged_in = d.stay_logged_in + stay_logged_in = d.stay_logged_in, + ) + + override fun fromUni(d: LemmyapiDatatypesCommunityIdQuery): X0DatatypesCommunityIdQuery = X0DatatypesCommunityIdQuery( + id = d.id, ) override fun fromUni(d: LemmyapiDatatypesCreateComment): X0DatatypesCreateComment = X0DatatypesCreateComment( content = d.content, post_id = d.post_id, parent_id = d.parent_id, - language_id = d.language_id + language_id = d.language_id, ) override fun fromUni(d: LemmyapiDatatypesCreateCommentLike): X0DatatypesCreateCommentLike = X0DatatypesCreateCommentLike( - comment_id = d.comment_id + comment_id = d.comment_id, + is_upvote = voteIntToTriBool(d.score), ) override fun fromUni(d: LemmyapiDatatypesCreateCommentReport): X0DatatypesCreateCommentReport = X0DatatypesCreateCommentReport( comment_id = d.comment_id, reason = d.reason, - violates_instance_rules = d.violates_instance_rules + violates_instance_rules = d.violates_instance_rules, ) override fun fromUni(d: LemmyapiDatatypesCreateCommentWarning): X0DatatypesCreateCommentWarning = X0DatatypesCreateCommentWarning( comment_id = d.comment_id, - reason = d.reason + reason = d.reason, ) override fun fromUni(d: LemmyapiDatatypesCreateCommunity): X0DatatypesCreateCommunity = X0DatatypesCreateCommunity( @@ -1607,12 +1664,12 @@ internal class Transformer : MapperGenerator { nsfw = d.nsfw, posting_restricted_to_mods = d.posting_restricted_to_mods, discussion_languages = d.discussion_languages, - visibility = d.visibility + visibility = d.visibility, ) override fun fromUni(d: LemmyapiDatatypesCreateCommunityReport): X0DatatypesCreateCommunityReport = X0DatatypesCreateCommunityReport( community_id = d.community_id, - reason = d.reason + reason = d.reason, ) override fun fromUni(d: LemmyapiDatatypesCreateCommunityTag): X0DatatypesCreateCommunityTag = X0DatatypesCreateCommunityTag( @@ -1620,7 +1677,7 @@ internal class Transformer : MapperGenerator { name = d.name, display_name = d.display_name, summary = d.summary, - color = d.color + color = d.color, ) override fun fromUni(d: LemmyapiDatatypesCreateCustomEmoji): X0DatatypesCreateCustomEmoji = X0DatatypesCreateCustomEmoji( @@ -1628,13 +1685,13 @@ internal class Transformer : MapperGenerator { shortcode = d.shortcode, image_url = d.image_url, alt_text = d.alt_text, - keywords = d.keywords + keywords = d.keywords, ) override fun fromUni(d: LemmyapiDatatypesCreateMultiCommunity): X0DatatypesCreateMultiCommunity = X0DatatypesCreateMultiCommunity( name = d.name, title = d.title, - summary = d.summary + summary = d.summary, ) override fun fromUni(d: LemmyapiDatatypesCreateOAuthProvider): X0DatatypesCreateOAuthProvider = X0DatatypesCreateOAuthProvider( @@ -1650,12 +1707,12 @@ internal class Transformer : MapperGenerator { auto_verify_email = d.auto_verify_email, account_linking_enabled = d.account_linking_enabled, use_pkce = d.use_pkce, - enabled = d.enabled + enabled = d.enabled, ) override fun fromUni(d: LemmyapiDatatypesCreateOrDeleteMultiCommunityEntry): X0DatatypesCreateOrDeleteMultiCommunityEntry = X0DatatypesCreateOrDeleteMultiCommunityEntry( id = d.id, - community_id = d.community_id + community_id = d.community_id, ) override fun fromUni(d: LemmyapiDatatypesCreatePost): X0DatatypesCreatePost = X0DatatypesCreatePost( @@ -1669,32 +1726,33 @@ internal class Transformer : MapperGenerator { language_id = d.language_id, custom_thumbnail = d.custom_thumbnail, tags = d.tags, - scheduled_publish_time_at = d.scheduled_publish_time_at + scheduled_publish_time_at = d.scheduled_publish_time_at, ) override fun fromUni(d: LemmyapiDatatypesCreatePostLike): X0DatatypesCreatePostLike = X0DatatypesCreatePostLike( - post_id = d.post_id + post_id = d.post_id, + is_upvote = voteIntToTriBool(d.score), ) override fun fromUni(d: LemmyapiDatatypesCreatePostReport): X0DatatypesCreatePostReport = X0DatatypesCreatePostReport( post_id = d.post_id, reason = d.reason, - violates_instance_rules = d.violates_instance_rules + violates_instance_rules = d.violates_instance_rules, ) override fun fromUni(d: LemmyapiDatatypesCreatePostWarning): X0DatatypesCreatePostWarning = X0DatatypesCreatePostWarning( post_id = d.post_id, - reason = d.reason + reason = d.reason, ) override fun fromUni(d: LemmyapiDatatypesCreatePrivateMessage): X0DatatypesCreatePrivateMessage = X0DatatypesCreatePrivateMessage( content = d.content, - recipient_id = d.recipient_id + recipient_id = d.recipient_id, ) override fun fromUni(d: LemmyapiDatatypesCreatePrivateMessageReport): X0DatatypesCreatePrivateMessageReport = X0DatatypesCreatePrivateMessageReport( private_message_id = d.private_message_id, - reason = d.reason + reason = d.reason, ) override fun fromUni(d: LemmyapiDatatypesCreateSite): X0DatatypesCreateSite = X0DatatypesCreateSite( @@ -1741,68 +1799,68 @@ internal class Transformer : MapperGenerator { comment_downvotes = d.comment_downvotes, disallow_nsfw_content = d.disallow_nsfw_content, disable_email_notifications = d.disable_email_notifications, - suggested_multi_community_id = d.suggested_multi_community_id + suggested_multi_community_id = d.suggested_multi_community_id, ) override fun fromUni(d: LemmyapiDatatypesCreateTagline): X0DatatypesCreateTagline = X0DatatypesCreateTagline( - content = d.content + content = d.content, ) override fun fromUni(d: LemmyapiDatatypesDeleteAccount): X0DatatypesDeleteAccount = X0DatatypesDeleteAccount( password = d.password, - delete_content = d.delete_content + delete_content = d.delete_content, ) override fun fromUni(d: LemmyapiDatatypesDeleteComment): X0DatatypesDeleteComment = X0DatatypesDeleteComment( comment_id = d.comment_id, - deleted = d.deleted + deleted = d.deleted, ) override fun fromUni(d: LemmyapiDatatypesDeleteCommunity): X0DatatypesDeleteCommunity = X0DatatypesDeleteCommunity( community_id = d.community_id, - deleted = d.deleted + deleted = d.deleted, ) override fun fromUni(d: LemmyapiDatatypesDeleteCommunityTag): X0DatatypesDeleteCommunityTag = X0DatatypesDeleteCommunityTag( tag_id = d.tag_id, - delete = d.delete + delete = d.delete, ) override fun fromUni(d: LemmyapiDatatypesDeleteCustomEmoji): X0DatatypesDeleteCustomEmoji = X0DatatypesDeleteCustomEmoji( - id = d.id + id = d.id, ) override fun fromUni(d: LemmyapiDatatypesDeleteImageParams): X0DatatypesDeleteImageParams = X0DatatypesDeleteImageParams( - filename = d.filename + filename = d.filename, ) override fun fromUni(d: LemmyapiDatatypesDeleteOAuthProvider): X0DatatypesDeleteOAuthProvider = X0DatatypesDeleteOAuthProvider( - id = d.id + id = d.id, ) override fun fromUni(d: LemmyapiDatatypesDeletePost): X0DatatypesDeletePost = X0DatatypesDeletePost( post_id = d.post_id, - deleted = d.deleted + deleted = d.deleted, ) override fun fromUni(d: LemmyapiDatatypesDeletePrivateMessage): X0DatatypesDeletePrivateMessage = X0DatatypesDeletePrivateMessage( private_message_id = d.private_message_id, - deleted = d.deleted + deleted = d.deleted, ) override fun fromUni(d: LemmyapiDatatypesDeleteTagline): X0DatatypesDeleteTagline = X0DatatypesDeleteTagline( - id = d.id + id = d.id, ) override fun fromUni(d: LemmyapiDatatypesDistinguishComment): X0DatatypesDistinguishComment = X0DatatypesDistinguishComment( comment_id = d.comment_id, - distinguished = d.distinguished + distinguished = d.distinguished, ) override fun fromUni(d: LemmyapiDatatypesEditComment): X0DatatypesEditComment = X0DatatypesEditComment( comment_id = d.comment_id, content = d.content, - language_id = d.language_id + language_id = d.language_id, ) override fun fromUni(d: LemmyapiDatatypesEditCommunity): X0DatatypesEditCommunity = X0DatatypesEditCommunity( @@ -1813,19 +1871,19 @@ internal class Transformer : MapperGenerator { nsfw = d.nsfw, posting_restricted_to_mods = d.posting_restricted_to_mods, discussion_languages = d.discussion_languages, - visibility = d.visibility + visibility = d.visibility, ) override fun fromUni(d: LemmyapiDatatypesEditCommunityNotifications): X0DatatypesEditCommunityNotifications = X0DatatypesEditCommunityNotifications( community_id = d.community_id, - mode = d.mode + mode = d.mode, ) override fun fromUni(d: LemmyapiDatatypesEditCommunityTag): X0DatatypesEditCommunityTag = X0DatatypesEditCommunityTag( tag_id = d.tag_id, display_name = d.display_name, summary = d.summary, - color = d.color + color = d.color, ) override fun fromUni(d: LemmyapiDatatypesEditCustomEmoji): X0DatatypesEditCustomEmoji = X0DatatypesEditCustomEmoji( @@ -1834,14 +1892,14 @@ internal class Transformer : MapperGenerator { shortcode = d.shortcode, image_url = d.image_url, alt_text = d.alt_text, - keywords = d.keywords + keywords = d.keywords, ) override fun fromUni(d: LemmyapiDatatypesEditMultiCommunity): X0DatatypesEditMultiCommunity = X0DatatypesEditMultiCommunity( id = d.id, title = d.title, summary = d.summary, - deleted = d.deleted + deleted = d.deleted, ) override fun fromUni(d: LemmyapiDatatypesEditOAuthProvider): X0DatatypesEditOAuthProvider = X0DatatypesEditOAuthProvider( @@ -1856,7 +1914,7 @@ internal class Transformer : MapperGenerator { auto_verify_email = d.auto_verify_email, account_linking_enabled = d.account_linking_enabled, use_pkce = d.use_pkce, - enabled = d.enabled + enabled = d.enabled, ) override fun fromUni(d: LemmyapiDatatypesEditPost): X0DatatypesEditPost = X0DatatypesEditPost( @@ -1869,17 +1927,17 @@ internal class Transformer : MapperGenerator { language_id = d.language_id, custom_thumbnail = d.custom_thumbnail, scheduled_publish_time_at = d.scheduled_publish_time_at, - tags = d.tags + tags = d.tags, ) override fun fromUni(d: LemmyapiDatatypesEditPostNotifications): X0DatatypesEditPostNotifications = X0DatatypesEditPostNotifications( post_id = d.post_id, - mode = d.mode + mode = d.mode, ) override fun fromUni(d: LemmyapiDatatypesEditPrivateMessage): X0DatatypesEditPrivateMessage = X0DatatypesEditPrivateMessage( private_message_id = d.private_message_id, - content = d.content + content = d.content, ) override fun fromUni(d: LemmyapiDatatypesEditSite): X0DatatypesEditSite = X0DatatypesEditSite( @@ -1922,37 +1980,37 @@ internal class Transformer : MapperGenerator { registration_mode = d.registration_mode, reports_email_admins = d.reports_email_admins, content_warning = d.content_warning, - suggested_multi_community_id = d.suggested_multi_community_id + suggested_multi_community_id = d.suggested_multi_community_id, ) override fun fromUni(d: LemmyapiDatatypesEditTagline): X0DatatypesEditTagline = X0DatatypesEditTagline( id = d.id, - content = d.content + content = d.content, ) override fun fromUni(d: LemmyapiDatatypesEditTotp): X0DatatypesEditTotp = X0DatatypesEditTotp( totp_token = d.totp_token, - enabled = d.enabled + enabled = d.enabled, ) override fun fromUni(d: LemmyapiDatatypesFeaturePost): X0DatatypesFeaturePost = X0DatatypesFeaturePost( post_id = d.post_id, featured = d.featured, - feature_type = d.feature_type + feature_type = d.feature_type, ) override fun fromUni(d: LemmyapiDatatypesFollowCommunity): X0DatatypesFollowCommunity = X0DatatypesFollowCommunity( community_id = d.community_id, - follow = d.follow + follow = d.follow, ) override fun fromUni(d: LemmyapiDatatypesFollowMultiCommunity): X0DatatypesFollowMultiCommunity = X0DatatypesFollowMultiCommunity( multi_community_id = d.multi_community_id, - follow = d.follow + follow = d.follow, ) override fun fromUni(d: LemmyapiDatatypesGetComment): X0DatatypesGetComment = X0DatatypesGetComment( - id = d.id + id = d.id, ) override fun fromUni(d: LemmyapiDatatypesGetComments): X0DatatypesGetComments = X0DatatypesGetComments( @@ -1965,19 +2023,19 @@ internal class Transformer : MapperGenerator { community_id = d.community_id, community_name = d.community_name, post_id = d.post_id, - parent_id = d.parent_id + parent_id = d.parent_id, ) override fun fromUni(d: LemmyapiDatatypesGetCommunity): X0DatatypesGetCommunity = X0DatatypesGetCommunity( id = d.id, - name = d.name + name = d.name, ) override fun fromUni(d: LemmyapiDatatypesGetFederatedInstances): X0DatatypesGetFederatedInstances = X0DatatypesGetFederatedInstances( domain_filter = d.domain_filter, kind = d.kind, page_cursor = d.page_cursor, - limit = d.limit + limit = d.limit, ) override fun fromUni(d: LemmyapiDatatypesGetModlog): X0DatatypesGetModlog = X0DatatypesGetModlog( @@ -1989,22 +2047,22 @@ internal class Transformer : MapperGenerator { post_id = d.post_id, comment_id = d.comment_id, page_cursor = d.page_cursor, - limit = d.limit + limit = d.limit, ) override fun fromUni(d: LemmyapiDatatypesGetMultiCommunity): X0DatatypesGetMultiCommunity = X0DatatypesGetMultiCommunity( id = d.id, - name = d.name + name = d.name, ) override fun fromUni(d: LemmyapiDatatypesGetPersonDetails): X0DatatypesGetPersonDetails = X0DatatypesGetPersonDetails( person_id = d.person_id, - username = d.username + username = d.username, ) override fun fromUni(d: LemmyapiDatatypesGetPost): X0DatatypesGetPost = X0DatatypesGetPost( id = d.id, - comment_id = d.comment_id + comment_id = d.comment_id, ) override fun fromUni(d: LemmyapiDatatypesGetPosts): X0DatatypesGetPosts = X0DatatypesGetPosts( @@ -2022,37 +2080,37 @@ internal class Transformer : MapperGenerator { mark_as_read = d.mark_as_read, no_comments_only = d.no_comments_only, page_cursor = d.page_cursor, - limit = d.limit + limit = d.limit, ) override fun fromUni(d: LemmyapiDatatypesGetRandomCommunity): X0DatatypesGetRandomCommunity = X0DatatypesGetRandomCommunity( type_ = d.type_, - show_nsfw = d.show_nsfw + show_nsfw = d.show_nsfw, ) override fun fromUni(d: LemmyapiDatatypesGetRegistrationApplication): X0DatatypesGetRegistrationApplication = X0DatatypesGetRegistrationApplication( - person_id = d.person_id + person_id = d.person_id, ) override fun fromUni(d: LemmyapiDatatypesGetSiteMetadata): X0DatatypesGetSiteMetadata = X0DatatypesGetSiteMetadata( - url = d.url + url = d.url, ) override fun fromUni(d: LemmyapiDatatypesHideCommunity): X0DatatypesHideCommunity = X0DatatypesHideCommunity( community_id = d.community_id, hidden = d.hidden, - reason = d.reason + reason = d.reason, ) override fun fromUni(d: LemmyapiDatatypesHidePost): X0DatatypesHidePost = X0DatatypesHidePost( post_id = d.post_id, - hide = d.hide + hide = d.hide, ) override fun fromUni(d: LemmyapiDatatypesListCommentLikes): X0DatatypesListCommentLikes = X0DatatypesListCommentLikes( comment_id = d.comment_id, page_cursor = d.page_cursor, - limit = d.limit + limit = d.limit, ) override fun fromUni(d: LemmyapiDatatypesListCommunities): X0DatatypesListCommunities = X0DatatypesListCommunities( @@ -2060,23 +2118,23 @@ internal class Transformer : MapperGenerator { sort = d.sort, show_nsfw = d.show_nsfw, page_cursor = d.page_cursor, - limit = d.limit + limit = d.limit, ) override fun fromUni(d: LemmyapiDatatypesListCommunityPendingFollows): X0DatatypesListCommunityPendingFollows = X0DatatypesListCommunityPendingFollows( unread_only = d.unread_only, all_communities = d.all_communities, page_cursor = d.page_cursor, - limit = d.limit + limit = d.limit, ) override fun fromUni(d: LemmyapiDatatypesListCustomEmojis): X0DatatypesListCustomEmojis = X0DatatypesListCustomEmojis( - category = d.category + category = d.category, ) override fun fromUni(d: LemmyapiDatatypesListMedia): X0DatatypesListMedia = X0DatatypesListMedia( page_cursor = d.page_cursor, - limit = d.limit + limit = d.limit, ) override fun fromUni(d: LemmyapiDatatypesListMultiCommunities): X0DatatypesListMultiCommunities = X0DatatypesListMultiCommunities( @@ -2085,14 +2143,14 @@ internal class Transformer : MapperGenerator { creator_id = d.creator_id, time_range_seconds = d.time_range_seconds, page_cursor = d.page_cursor, - limit = d.limit + limit = d.limit, ) override fun fromUni(d: LemmyapiDatatypesListNotifications): X0DatatypesListNotifications = X0DatatypesListNotifications( type_ = d.type_, unread_only = d.unread_only, page_cursor = d.page_cursor, - limit = d.limit + limit = d.limit, ) override fun fromUni(d: LemmyapiDatatypesListPersonContent): X0DatatypesListPersonContent = X0DatatypesListPersonContent( @@ -2100,42 +2158,42 @@ internal class Transformer : MapperGenerator { person_id = d.person_id, username = d.username, page_cursor = d.page_cursor, - limit = d.limit + limit = d.limit, ) override fun fromUni(d: LemmyapiDatatypesListPersonHidden): X0DatatypesListPersonHidden = X0DatatypesListPersonHidden( page_cursor = d.page_cursor, - limit = d.limit + limit = d.limit, ) override fun fromUni(d: LemmyapiDatatypesListPersonLiked): X0DatatypesListPersonLiked = X0DatatypesListPersonLiked( type_ = d.type_, like_type = d.like_type, page_cursor = d.page_cursor, - limit = d.limit + limit = d.limit, ) override fun fromUni(d: LemmyapiDatatypesListPersonRead): X0DatatypesListPersonRead = X0DatatypesListPersonRead( page_cursor = d.page_cursor, - limit = d.limit + limit = d.limit, ) override fun fromUni(d: LemmyapiDatatypesListPersonSaved): X0DatatypesListPersonSaved = X0DatatypesListPersonSaved( type_ = d.type_, page_cursor = d.page_cursor, - limit = d.limit + limit = d.limit, ) override fun fromUni(d: LemmyapiDatatypesListPostLikes): X0DatatypesListPostLikes = X0DatatypesListPostLikes( post_id = d.post_id, page_cursor = d.page_cursor, - limit = d.limit + limit = d.limit, ) override fun fromUni(d: LemmyapiDatatypesListRegistrationApplications): X0DatatypesListRegistrationApplications = X0DatatypesListRegistrationApplications( unread_only = d.unread_only, page_cursor = d.page_cursor, - limit = d.limit + limit = d.limit, ) override fun fromUni(d: LemmyapiDatatypesListReports): X0DatatypesListReports = X0DatatypesListReports( @@ -2146,76 +2204,87 @@ internal class Transformer : MapperGenerator { page_cursor = d.page_cursor, limit = d.limit, show_community_rule_violations = d.show_community_rule_violations, - my_reports_only = d.my_reports_only + my_reports_only = d.my_reports_only, ) override fun fromUni(d: LemmyapiDatatypesListTaglines): X0DatatypesListTaglines = X0DatatypesListTaglines( page_cursor = d.page_cursor, - limit = d.limit + limit = d.limit, ) override fun fromUni(d: LemmyapiDatatypesLockComment): X0DatatypesLockComment = X0DatatypesLockComment( comment_id = d.comment_id, locked = d.locked, - reason = d.reason + reason = d.reason, ) override fun fromUni(d: LemmyapiDatatypesLockPost): X0DatatypesLockPost = X0DatatypesLockPost( post_id = d.post_id, locked = d.locked, - reason = d.reason + reason = d.reason, ) override fun fromUni(d: LemmyapiDatatypesLogin): X0DatatypesLogin = X0DatatypesLogin( username_or_email = d.username_or_email, password = d.password, totp_2fa_token = d.totp_2fa_token, - stay_logged_in = d.stay_logged_in + stay_logged_in = d.stay_logged_in, ) override fun fromUni(d: LemmyapiDatatypesMarkManyPostsAsRead): X0DatatypesMarkManyPostsAsRead = X0DatatypesMarkManyPostsAsRead( post_ids = d.post_ids, - read = d.read + read = d.read, ) override fun fromUni(d: LemmyapiDatatypesMarkNotificationAsRead): X0DatatypesMarkNotificationAsRead = X0DatatypesMarkNotificationAsRead( notification_id = d.notification_id, - read = d.read + read = d.read, ) override fun fromUni(d: LemmyapiDatatypesMarkPostAsRead): X0DatatypesMarkPostAsRead = X0DatatypesMarkPostAsRead( post_id = d.post_id, - read = d.read + read = d.read, + ) + + override fun fromUni(d: LemmyapiDatatypesModEditPost): X0DatatypesModEditPost = X0DatatypesModEditPost( + post_id = d.post_id, + nsfw = d.nsfw, + tags = d.tags, + ) + + override fun fromUni(d: LemmyapiDatatypesNotePerson): X0DatatypesNotePerson = X0DatatypesNotePerson( + person_id = d.person_id, + note = d.note, ) override fun fromUni(d: LemmyapiDatatypesPasswordChangeAfterReset): X0DatatypesPasswordChangeAfterReset = X0DatatypesPasswordChangeAfterReset( token = d.token, password = d.password, - password_verify = d.password_verify + password_verify = d.password_verify, ) override fun fromUni(d: LemmyapiDatatypesPasswordReset): X0DatatypesPasswordReset = X0DatatypesPasswordReset( - email = d.email + email = d.email, ) override fun fromUni(d: LemmyapiDatatypesPurgeComment): X0DatatypesPurgeComment = X0DatatypesPurgeComment( comment_id = d.comment_id, - reason = d.reason + reason = d.reason, ) override fun fromUni(d: LemmyapiDatatypesPurgeCommunity): X0DatatypesPurgeCommunity = X0DatatypesPurgeCommunity( community_id = d.community_id, - reason = d.reason + reason = d.reason, ) override fun fromUni(d: LemmyapiDatatypesPurgePerson): X0DatatypesPurgePerson = X0DatatypesPurgePerson( person_id = d.person_id, - reason = d.reason + reason = d.reason, ) override fun fromUni(d: LemmyapiDatatypesPurgePost): X0DatatypesPurgePost = X0DatatypesPurgePost( post_id = d.post_id, - reason = d.reason + reason = d.reason, ) override fun fromUni(d: LemmyapiDatatypesRegister): X0DatatypesRegister = X0DatatypesRegister( @@ -2228,59 +2297,63 @@ internal class Transformer : MapperGenerator { captcha_answer = d.captcha_answer, honeypot = d.honeypot, answer = d.answer, - stay_logged_in = d.stay_logged_in + stay_logged_in = d.stay_logged_in, ) override fun fromUni(d: LemmyapiDatatypesRemoveComment): X0DatatypesRemoveComment = X0DatatypesRemoveComment( comment_id = d.comment_id, removed = d.removed, - reason = d.reason + reason = d.reason, ) override fun fromUni(d: LemmyapiDatatypesRemoveCommunity): X0DatatypesRemoveCommunity = X0DatatypesRemoveCommunity( community_id = d.community_id, removed = d.removed, - reason = d.reason + reason = d.reason, ) override fun fromUni(d: LemmyapiDatatypesRemovePost): X0DatatypesRemovePost = X0DatatypesRemovePost( post_id = d.post_id, removed = d.removed, - reason = d.reason + reason = d.reason, + ) + + override fun fromUni(d: LemmyapiDatatypesResendVerificationEmail): X0DatatypesResendVerificationEmail = X0DatatypesResendVerificationEmail( + email = d.email, ) override fun fromUni(d: LemmyapiDatatypesResolveCommentReport): X0DatatypesResolveCommentReport = X0DatatypesResolveCommentReport( report_id = d.report_id, - resolved = d.resolved + resolved = d.resolved, ) override fun fromUni(d: LemmyapiDatatypesResolveCommunityReport): X0DatatypesResolveCommunityReport = X0DatatypesResolveCommunityReport( report_id = d.report_id, - resolved = d.resolved + resolved = d.resolved, ) override fun fromUni(d: LemmyapiDatatypesResolveObject): X0DatatypesResolveObject = X0DatatypesResolveObject( - q = d.q + q = d.q, ) override fun fromUni(d: LemmyapiDatatypesResolvePostReport): X0DatatypesResolvePostReport = X0DatatypesResolvePostReport( report_id = d.report_id, - resolved = d.resolved + resolved = d.resolved, ) override fun fromUni(d: LemmyapiDatatypesResolvePrivateMessageReport): X0DatatypesResolvePrivateMessageReport = X0DatatypesResolvePrivateMessageReport( report_id = d.report_id, - resolved = d.resolved + resolved = d.resolved, ) override fun fromUni(d: LemmyapiDatatypesSaveComment): X0DatatypesSaveComment = X0DatatypesSaveComment( comment_id = d.comment_id, - save = d.save + save = d.save, ) override fun fromUni(d: LemmyapiDatatypesSavePost): X0DatatypesSavePost = X0DatatypesSavePost( post_id = d.post_id, - save = d.save + save = d.save, ) override fun fromUni(d: LemmyapiDatatypesSaveUserSettings): X0DatatypesSaveUserSettings = X0DatatypesSaveUserSettings( @@ -2316,7 +2389,7 @@ internal class Transformer : MapperGenerator { show_upvote_percentage = d.show_upvote_percentage, auto_mark_fetched_posts_as_read = d.auto_mark_fetched_posts_as_read, hide_media = d.hide_media, - show_person_votes = d.show_person_votes + show_person_votes = d.show_person_votes, ) override fun fromUni(d: LemmyapiDatatypesSearch): X0DatatypesSearch = X0DatatypesSearch( @@ -2334,15 +2407,25 @@ internal class Transformer : MapperGenerator { disliked_only = d.disliked_only, show_nsfw = d.show_nsfw, page_cursor = d.page_cursor, - limit = d.limit + limit = d.limit, ) override fun fromUni(d: LemmyapiDatatypesTransferCommunity): X0DatatypesTransferCommunity = X0DatatypesTransferCommunity( community_id = d.community_id, - person_id = d.person_id + person_id = d.person_id, + ) + + override fun fromUni(d: LemmyapiDatatypesUserBlockInstanceCommunitiesParams): X0DatatypesUserBlockInstanceCommunitiesParams = X0DatatypesUserBlockInstanceCommunitiesParams( + instance_id = d.instance_id, + block = d.block, + ) + + override fun fromUni(d: LemmyapiDatatypesUserBlockInstancePersonsParams): X0DatatypesUserBlockInstancePersonsParams = X0DatatypesUserBlockInstancePersonsParams( + instance_id = d.instance_id, + block = d.block, ) override fun fromUni(d: LemmyapiDatatypesVerifyEmail): X0DatatypesVerifyEmail = X0DatatypesVerifyEmail( - token = d.token + token = d.token, ) } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentActions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentActions.kt index 8d5e16e7..f2325bc3 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentActions.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentActions.kt @@ -2,7 +2,6 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes import kotlinx.serialization.Serializable -// TODO: Change @Serializable internal data class CommentActions( val voted_at: String? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreatePostLike.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreatePostLike.kt index 3336e6aa..7a084e4b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreatePostLike.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreatePostLike.kt @@ -5,6 +5,5 @@ import kotlinx.serialization.Serializable @Serializable internal data class CreatePostLike( val post_id: PostId, - // TODO: update val is_upvote: Boolean? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostActions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostActions.kt index 57deaf83..d47cbef4 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostActions.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostActions.kt @@ -3,8 +3,6 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes import it.vercruysse.lemmyapi.enums.PostNotificationsMode import kotlinx.serialization.Serializable -// TODO: refactor - @Serializable internal data class PostActions( val read_at: String? = null, diff --git a/app/src/jvmTest/kotlin/Controllers.kt b/app/src/jvmTest/kotlin/Controllers.kt index 093bb78e..cb91c12d 100644 --- a/app/src/jvmTest/kotlin/Controllers.kt +++ b/app/src/jvmTest/kotlin/Controllers.kt @@ -5,4 +5,5 @@ val controllerVersions = arrayOf( "0.19.4", "0.19.6", "0.19.11", + "1.0.0", ) diff --git a/app/src/jvmTest/kotlin/PostsListPageParamTest.kt b/app/src/jvmTest/kotlin/PostsListPageParamTest.kt index 03818cfb..1dfa182f 100644 --- a/app/src/jvmTest/kotlin/PostsListPageParamTest.kt +++ b/app/src/jvmTest/kotlin/PostsListPageParamTest.kt @@ -46,7 +46,7 @@ class PostsListPageParamTest { // page_cursor takes priority // never send pagination_guard // work with null and value - if (url.encodedPath != "/api/v3/post/list") { + if (url.encodedPath != "/api/v3/post/list" && url.encodedPath != "/api/v4/post/list") { success = false } else if (url.parameters.contains("page_cursor") && url.parameters.contains("page")) { success = false @@ -55,11 +55,19 @@ class PostsListPageParamTest { } if (success) { - respond( - content = ByteReadChannel("""{"posts": [], "next_page": null}"""), - status = HttpStatusCode.OK, - headers = headersOf(HttpHeaders.ContentType, "application/json"), - ) + if (url.encodedPath.startsWith("/api/v4")) { + respond( + content = ByteReadChannel("""{"items": [], "next_page": null}"""), + status = HttpStatusCode.OK, + headers = headersOf(HttpHeaders.ContentType, "application/json"), + ) + } else { + respond( + content = ByteReadChannel("""{"posts": [], "next_page": null}"""), + status = HttpStatusCode.OK, + headers = headersOf(HttpHeaders.ContentType, "application/json"), + ) + } } else { respond( content = ByteReadChannel("Failed validation"), From 3fb78adeb467ca54a6ba82fadc8ac88d1478a65f Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Sun, 24 May 2026 06:33:50 +0200 Subject: [PATCH 069/110] Bump deps --- GeneratorScripts/build.gradle.kts | 10 +++++----- app/build.gradle.kts | 14 +++++++------- .../it/vercruysse/lemmyapi/v1/x0/x0/Transformer.kt | 2 +- app/src/jvmTest/kotlin/PostsListPageParamTest.kt | 12 ++++++------ gradle.properties | 1 + settings.gradle.kts | 2 +- 6 files changed, 21 insertions(+), 20 deletions(-) diff --git a/GeneratorScripts/build.gradle.kts b/GeneratorScripts/build.gradle.kts index 5f09dfb2..b9c200d4 100644 --- a/GeneratorScripts/build.gradle.kts +++ b/GeneratorScripts/build.gradle.kts @@ -11,18 +11,18 @@ repositories { dependencies { testImplementation("org.jetbrains.kotlin:kotlin-test") implementation("com.charleskorn.kaml:kaml:0.55.0") - val ktorVersion = "3.1.2" + val ktorVersion = "3.5.0" val konvertVersion = "4.5.0" implementation("io.ktor:ktor-client-core:$ktorVersion") implementation("io.ktor:ktor-client-content-negotiation:$ktorVersion") implementation("io.ktor:ktor-serialization-kotlinx-json:$ktorVersion") implementation("io.ktor:ktor-client-logging:$ktorVersion") - implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.10.2") - implementation("org.jetbrains.kotlinx:kotlinx-serialization-json:1.8.1") + implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.11.0") + implementation("org.jetbrains.kotlinx:kotlinx-serialization-json:1.11.0") - implementation("com.squareup.okio:okio:3.10.2") - implementation("org.jetbrains.kotlinx:kotlinx-io-core:0.6.0") + implementation("com.squareup.okio:okio:3.17.0") + implementation("org.jetbrains.kotlinx:kotlinx-io-core:0.9.0") implementation("io.mcarle:konvert-api:$konvertVersion") implementation(project(":app")) diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 58164834..abf43f2c 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -8,7 +8,7 @@ plugins { id("org.jmailen.kotlinter") version "5.0.1" id("com.google.devtools.ksp") version ("2.3.8") id("com.vanniktech.maven.publish") version "0.33.0" - id("com.github.ben-manes.versions") version "0.51.0" + id("com.github.ben-manes.versions") version "0.54.0" id("com.android.library") id("kotlin-parcelize") } @@ -69,13 +69,13 @@ kotlin { sourceSets { - val ktorVersion = "3.1.2" + val ktorVersion = "3.5.0" commonMain.dependencies { implementation("io.ktor:ktor-client-core:$ktorVersion") - implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.10.2") - implementation("org.jetbrains.kotlinx:kotlinx-serialization-json:1.8.1") + implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.11.0") + implementation("org.jetbrains.kotlinx:kotlinx-serialization-json:1.11.0") implementation("io.ktor:ktor-client-content-negotiation:$ktorVersion") implementation("io.ktor:ktor-serialization-kotlinx-json:$ktorVersion") @@ -84,7 +84,7 @@ kotlin { commonTest.dependencies { implementation(kotlin("test")) - implementation("org.jetbrains.kotlinx:kotlinx-coroutines-test:1.10.2") + implementation("org.jetbrains.kotlinx:kotlinx-coroutines-test:1.11.0") implementation("io.ktor:ktor-client-logging:$ktorVersion") } @@ -96,9 +96,9 @@ kotlin { jvmTest.dependencies { implementation(kotlin("reflect")) implementation("io.mockk:mockk:1.13.13") - implementation("org.wiremock:wiremock:3.9.2") + implementation("org.wiremock:wiremock:3.13.2") implementation("com.marcinziolo:kotlin-wiremock:2.1.1") - implementation("ch.qos.logback:logback-classic:1.5.15") + implementation("ch.qos.logback:logback-classic:1.5.32") implementation("io.ktor:ktor-client-mock:$ktorVersion") } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/Transformer.kt index 8c544839..29ac8598 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/Transformer.kt @@ -1536,7 +1536,7 @@ internal class Transformer : MapperGenerator { creator = this.toUni(d = d.creator), creator_banned = d.creator_banned, creator_banned_from_community = d.creator_banned_from_community, - score = d.let { if (d.is_upvote) 1 else -1 }, + score = voteBoolToInt(d.is_upvote), ) override fun fromUni(d: LemmyapiDatatypesAddAdmin): X0DatatypesAddAdmin = X0DatatypesAddAdmin( diff --git a/app/src/jvmTest/kotlin/PostsListPageParamTest.kt b/app/src/jvmTest/kotlin/PostsListPageParamTest.kt index 1dfa182f..0b048f04 100644 --- a/app/src/jvmTest/kotlin/PostsListPageParamTest.kt +++ b/app/src/jvmTest/kotlin/PostsListPageParamTest.kt @@ -101,7 +101,7 @@ class PostsListPageParamTest { controllerVersions.forEach { runBlocking { val api = LemmyApi.getLemmyApi("lemmy.ml", it) - var resp = api.getPosts(GetPosts()) + val resp = api.getPosts(GetPosts()) assertDoesNotThrow("Failed for $it") { resp.getOrThrow() } } } @@ -112,7 +112,7 @@ class PostsListPageParamTest { controllerVersions.forEach { runBlocking { val api = LemmyApi.getLemmyApi("lemmy.ml", it) - var resp = api.getPosts(GetPosts(page = 1)) + val resp = api.getPosts(GetPosts(page = 1)) assertDoesNotThrow("Failed for $it") { resp.getOrThrow() } } } @@ -123,7 +123,7 @@ class PostsListPageParamTest { controllerVersions.forEach { runBlocking { val api = LemmyApi.getLemmyApi("lemmy.ml", it) - var resp = api.getPosts(GetPosts(page_cursor = "cursor")) + val resp = api.getPosts(GetPosts(page_cursor = "cursor")) assertDoesNotThrow("Failed for $it") { resp.getOrThrow() } } } @@ -134,7 +134,7 @@ class PostsListPageParamTest { controllerVersions.forEach { runBlocking { val api = LemmyApi.getLemmyApi("lemmy.ml", it) - var resp = api.getPosts(GetPosts(page_cursor = null)) + val resp = api.getPosts(GetPosts(page_cursor = null)) assertDoesNotThrow("Failed for $it") { resp.getOrThrow() } } } @@ -145,7 +145,7 @@ class PostsListPageParamTest { controllerVersions.forEach { runBlocking { val api = LemmyApi.getLemmyApi("lemmy.ml", it) - var resp = api.getPosts(GetPosts(page = 1, page_cursor = "cursor")) + val resp = api.getPosts(GetPosts(page = 1, page_cursor = "cursor")) assertDoesNotThrow("Failed for $it") { resp.getOrThrow() } } } @@ -156,7 +156,7 @@ class PostsListPageParamTest { controllerVersions.forEach { runBlocking { val api = LemmyApi.getLemmyApi("lemmy.ml", it) - var resp = api.getPosts(GetPosts(page = 1, page_cursor = null)) + val resp = api.getPosts(GetPosts(page = 1, page_cursor = null)) assertDoesNotThrow("Failed for $it") { resp.getOrThrow() } } } diff --git a/gradle.properties b/gradle.properties index 7c991f8e..8a2f7f74 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,4 +1,5 @@ kotlin.code.style=official +android.useAndroidX=true POM_NAME=Lemmy Backwards Compatible API POM_DESCRIPTION=Kotlin multiplatform Backward compatible Lemmy API client diff --git a/settings.gradle.kts b/settings.gradle.kts index f068d049..e89e8788 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -14,7 +14,7 @@ dependencyResolutionManagement { } plugins { - id("org.gradle.toolchains.foojay-resolver-convention") version "0.8.0" + id("org.gradle.toolchains.foojay-resolver-convention") version "1.0.0" kotlin("jvm") version "2.3.21" apply false id("com.android.library") version "8.10.1" apply false } From 8348f7c1017e8a2ec460969881e3b70286e05092 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Sun, 24 May 2026 07:50:57 +0200 Subject: [PATCH 070/110] Fix enums nont snake_case --- .../lemmyapi/enums/CommunityFollowerState.kt | 8 ++++ .../enums/CommunityNotificationsMode.kt | 8 ++++ .../lemmyapi/enums/FederationMode.kt | 6 +++ .../enums/GetFederatedInstancesKind.kt | 9 +++- .../it/vercruysse/lemmyapi/enums/LikeType.kt | 6 +++ .../vercruysse/lemmyapi/enums/ModlogKind.kt | 45 ++++++++++++++++++- .../enums/MultiCommunityListingType.kt | 7 ++- .../lemmyapi/enums/NotificationDataType.kt | 10 +++++ .../lemmyapi/enums/NotificationType.kt | 10 +++++ .../lemmyapi/enums/PostNotificationsMode.kt | 6 +++ .../vercruysse/lemmyapi/enums/ReportType.kt | 10 +++++ .../it/vercruysse/lemmyapi/enums/VoteShow.kt | 6 +++ 12 files changed, 128 insertions(+), 3 deletions(-) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/CommunityFollowerState.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/CommunityFollowerState.kt index e22ed488..f2305686 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/CommunityFollowerState.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/CommunityFollowerState.kt @@ -1,13 +1,21 @@ package it.vercruysse.lemmyapi.enums import it.vercruysse.lemmyapi.v0.enums.SubscribedType +import kotlinx.serialization.SerialName import kotlinx.serialization.Serializable @Serializable enum class CommunityFollowerState { + @SerialName("accepted") Accepted, + + @SerialName("pending") Pending, + + @SerialName("approval_required") ApprovalRequired, + + @SerialName("denied") Denied, ; diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/CommunityNotificationsMode.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/CommunityNotificationsMode.kt index 5a53f0fd..84a9ad2e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/CommunityNotificationsMode.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/CommunityNotificationsMode.kt @@ -2,12 +2,20 @@ package it.vercruysse.lemmyapi.enums import io.github.z4kn4fein.semver.Version import it.vercruysse.lemmyapi.V1_0_0 +import kotlinx.serialization.SerialName import kotlinx.serialization.Serializable @Serializable enum class CommunityNotificationsMode(override val minimumVersion: Version = V1_0_0, override val maximumVersion: Version? = null) : VersionTracker { + @SerialName("all_posts_and_comments") AllPostsAndComments, + + @SerialName("all_posts") AllPosts, + + @SerialName("replies_and_mentions") RepliesAndMentions, + + @SerialName("mute") Mute, } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/FederationMode.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/FederationMode.kt index e6bde343..8bdaa39d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/FederationMode.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/FederationMode.kt @@ -2,11 +2,17 @@ package it.vercruysse.lemmyapi.enums import io.github.z4kn4fein.semver.Version import it.vercruysse.lemmyapi.V1_0_0 +import kotlinx.serialization.SerialName import kotlinx.serialization.Serializable @Serializable enum class FederationMode(override val minimumVersion: Version = V1_0_0, override val maximumVersion: Version? = null) : VersionTracker { + @SerialName("all") All, + + @SerialName("local") Local, + + @SerialName("disable") Disable, } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/GetFederatedInstancesKind.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/GetFederatedInstancesKind.kt index 5c387eef..bf678326 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/GetFederatedInstancesKind.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/GetFederatedInstancesKind.kt @@ -2,13 +2,20 @@ package it.vercruysse.lemmyapi.enums import io.github.z4kn4fein.semver.Version import it.vercruysse.lemmyapi.V1_0_0 -import it.vercruysse.lemmyapi.enums.VersionTracker +import kotlinx.serialization.SerialName import kotlinx.serialization.Serializable @Serializable enum class GetFederatedInstancesKind(override val minimumVersion: Version = V1_0_0, override val maximumVersion: Version? = null) : VersionTracker { + @SerialName("all") All, + + @SerialName("linked") Linked, + + @SerialName("allowed") Allowed, + + @SerialName("blocked") Blocked, } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/LikeType.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/LikeType.kt index de5c2b84..909974ef 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/LikeType.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/LikeType.kt @@ -2,11 +2,17 @@ package it.vercruysse.lemmyapi.enums import io.github.z4kn4fein.semver.Version import it.vercruysse.lemmyapi.V1_0_0 +import kotlinx.serialization.SerialName import kotlinx.serialization.Serializable @Serializable enum class LikeType(override val minimumVersion: Version = V1_0_0, override val maximumVersion: Version? = null) : VersionTracker { + @SerialName("all") All, + + @SerialName("liked_only") LikedOnly, + + @SerialName("disliked_only") DislikedOnly, } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/ModlogKind.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/ModlogKind.kt index 08f17f17..f9e90f12 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/ModlogKind.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/ModlogKind.kt @@ -2,31 +2,74 @@ package it.vercruysse.lemmyapi.enums import io.github.z4kn4fein.semver.Version import it.vercruysse.lemmyapi.V1_0_0 -import it.vercruysse.lemmyapi.enums.VersionTracker +import kotlinx.serialization.SerialName import kotlinx.serialization.Serializable @Serializable enum class ModlogKind(override val minimumVersion: Version = V1_0_0, override val maximumVersion: Version? = null) : VersionTracker { + @SerialName("all") All, + + @SerialName("admin_add") AdminAdd, + + @SerialName("admin_ban") AdminBan, + + @SerialName("admin_allow_instance") AdminAllowInstance, + + @SerialName("admin_block_instance") AdminBlockInstance, + + @SerialName("admin_purge_comment") AdminPurgeComment, + + @SerialName("admin_purge_community") AdminPurgeCommunity, + + @SerialName("admin_purge_person") AdminPurgePerson, + + @SerialName("admin_purge_post") AdminPurgePost, + + @SerialName("mod_add_to_community") ModAddToCommunity, + + @SerialName("mod_ban_from_community") ModBanFromCommunity, + + @SerialName("admin_feature_post_site") AdminFeaturePostSite, + + @SerialName("mod_feature_post_community") ModFeaturePostCommunity, + + @SerialName("mod_change_community_visibility") ModChangeCommunityVisibility, + + @SerialName("mod_lock_post") ModLockPost, + + @SerialName("mod_remove_comment") ModRemoveComment, + + @SerialName("admin_remove_community") AdminRemoveCommunity, + + @SerialName("mod_remove_post") ModRemovePost, + + @SerialName("mod_transfer_community") ModTransferCommunity, + + @SerialName("mod_lock_comment") ModLockComment, + + @SerialName("mod_warn_comment") ModWarnComment, + + @SerialName("mod_warn_post") ModWarnPost, } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/MultiCommunityListingType.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/MultiCommunityListingType.kt index 02fe6634..24aa9bc3 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/MultiCommunityListingType.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/MultiCommunityListingType.kt @@ -2,12 +2,17 @@ package it.vercruysse.lemmyapi.enums import io.github.z4kn4fein.semver.Version import it.vercruysse.lemmyapi.V1_0_0 -import it.vercruysse.lemmyapi.enums.VersionTracker +import kotlinx.serialization.SerialName import kotlinx.serialization.Serializable @Serializable enum class MultiCommunityListingType(override val minimumVersion: Version = V1_0_0, override val maximumVersion: Version? = null) : VersionTracker { + @SerialName("all") All, + + @SerialName("local") Local, + + @SerialName("subscribed") Subscribed, } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/NotificationDataType.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/NotificationDataType.kt index d933aca0..0f3365fa 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/NotificationDataType.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/NotificationDataType.kt @@ -2,13 +2,23 @@ package it.vercruysse.lemmyapi.enums import io.github.z4kn4fein.semver.Version import it.vercruysse.lemmyapi.V1_0_0 +import kotlinx.serialization.SerialName import kotlinx.serialization.Serializable @Serializable enum class NotificationDataType(override val minimumVersion: Version = V1_0_0, override val maximumVersion: Version? = null) : VersionTracker { + @SerialName("all") All, + + @SerialName("reply") Reply, + + @SerialName("mention") Mention, + + @SerialName("private_message") PrivateMessage, + + @SerialName("subscribed") Subscribed, } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/NotificationType.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/NotificationType.kt index 1d86d882..d7b087d5 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/NotificationType.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/NotificationType.kt @@ -3,13 +3,23 @@ package it.vercruysse.lemmyapi.enums import io.github.z4kn4fein.semver.Version import it.vercruysse.lemmyapi.MINIMUM_API_VERSION import it.vercruysse.lemmyapi.V1_0_0 +import kotlinx.serialization.SerialName import kotlinx.serialization.Serializable @Serializable enum class NotificationType(override val minimumVersion: Version = MINIMUM_API_VERSION, override val maximumVersion: Version? = null) : VersionTracker { + @SerialName("mention") Mention, + + @SerialName("reply") Reply, + + @SerialName("private_message") PrivateMessage, + + @SerialName("subscribed") Subscribed(V1_0_0), + + @SerialName("mod_action") ModAction(V1_0_0), } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/PostNotificationsMode.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/PostNotificationsMode.kt index f9f2a7c2..c9046a6b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/PostNotificationsMode.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/PostNotificationsMode.kt @@ -2,11 +2,17 @@ package it.vercruysse.lemmyapi.enums import io.github.z4kn4fein.semver.Version import it.vercruysse.lemmyapi.V1_0_0 +import kotlinx.serialization.SerialName import kotlinx.serialization.Serializable @Serializable enum class PostNotificationsMode(override val minimumVersion: Version = V1_0_0, override val maximumVersion: Version? = null) : VersionTracker { + @SerialName("all_comments") AllComments, + + @SerialName("replies_and_mentions") RepliesAndMentions, + + @SerialName("mute") Mute, } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/ReportType.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/ReportType.kt index 70ac9ee6..397567e7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/ReportType.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/ReportType.kt @@ -2,14 +2,24 @@ package it.vercruysse.lemmyapi.enums import io.github.z4kn4fein.semver.Version import it.vercruysse.lemmyapi.V1_0_0 +import kotlinx.serialization.SerialName import kotlinx.serialization.Serializable @Serializable enum class ReportType(override val minimumVersion: Version = V1_0_0, override val maximumVersion: Version? = null) : VersionTracker { + @SerialName("all") All, + + @SerialName("posts") Posts, + + @SerialName("comments") Comments, + + @SerialName("private_messages") PrivateMessages, + + @SerialName("communities") Communities, } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/VoteShow.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/VoteShow.kt index 8cfa2794..40888665 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/VoteShow.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/VoteShow.kt @@ -4,11 +4,17 @@ import io.github.z4kn4fein.semver.Version import it.vercruysse.lemmyapi.MINIMUM_API_VERSION import it.vercruysse.lemmyapi.V0_19_4 import it.vercruysse.lemmyapi.V1_0_0 +import kotlinx.serialization.SerialName import kotlinx.serialization.Serializable @Serializable enum class VoteShow(override val minimumVersion: Version = MINIMUM_API_VERSION, override val maximumVersion: Version? = null) : VersionTracker { + @SerialName("show") Show, + + @SerialName("show_for_others") ShowForOthers(V1_0_0), + + @SerialName("hide") Hide(V0_19_4), } From 4ba8f696d85faedb86331cc8cb1bbb8c529b1577 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Sun, 24 May 2026 07:55:49 +0200 Subject: [PATCH 071/110] Bump AGP + remove remnants --- .../main/kotlin/testingscripts/basicApi.kt | 24 +++++++++++++++++++ app/build.gradle.kts | 20 +++++++--------- .../it/vercruysse/lemmyapi/datatypes/Site.kt | 1 - .../lemmyapi/datatypes/UploadImageResponse.kt | 2 ++ .../lemmyapi/v1/x0/x0/Transformer.kt | 1 - .../lemmyapi/v1/x0/x0/datatypes/Site.kt | 1 - app/src/commonTest/kotlin/TestStuff.kt | 24 ------------------- app/src/jvmTest/kotlin/TestPictrs.kt | 20 ---------------- gradle.properties | 1 + gradle/wrapper/gradle-wrapper.properties | 4 ++-- kotlin-js-store/yarn.lock | 8 +++---- settings.gradle.kts | 2 +- 12 files changed, 43 insertions(+), 65 deletions(-) create mode 100644 GeneratorScripts/src/main/kotlin/testingscripts/basicApi.kt delete mode 100644 app/src/commonTest/kotlin/TestStuff.kt delete mode 100644 app/src/jvmTest/kotlin/TestPictrs.kt diff --git a/GeneratorScripts/src/main/kotlin/testingscripts/basicApi.kt b/GeneratorScripts/src/main/kotlin/testingscripts/basicApi.kt new file mode 100644 index 00000000..68d7a8eb --- /dev/null +++ b/GeneratorScripts/src/main/kotlin/testingscripts/basicApi.kt @@ -0,0 +1,24 @@ +package testingscripts + +import io.github.z4kn4fein.semver.toVersion +import it.vercruysse.lemmyapi.LemmyApi +import it.vercruysse.lemmyapi.datatypes.GetPosts +import kotlinx.coroutines.runBlocking + + +fun script1() { + runBlocking { + + val semver = "1.0.0-nightly-2026-05-23".toVersion() + println(semver) + val api = LemmyApi.getLemmyApi("voyager.lemmy.ml", "1.0.0") + println(api.version) + println(api.getSite()) + println(api.getPosts(GetPosts())) + } +} + + +fun main() { + script1() +} diff --git a/app/build.gradle.kts b/app/build.gradle.kts index abf43f2c..058cb274 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -9,7 +9,7 @@ plugins { id("com.google.devtools.ksp") version ("2.3.8") id("com.vanniktech.maven.publish") version "0.33.0" id("com.github.ben-manes.versions") version "0.54.0" - id("com.android.library") + id("com.android.kotlin.multiplatform.library") id("kotlin-parcelize") } @@ -19,14 +19,6 @@ repositories { google() } -android { - namespace = "it.vercruysse.lemmyapi" - compileSdk = 35 - defaultConfig { - minSdk = 21 - } -} - kotlin { jvmToolchain(17) @@ -38,9 +30,15 @@ kotlin { } } - androidTarget { + android { + namespace = "it.vercruysse.lemmyapi" + compileSdk = 35 + minSdk = 21 compilerOptions { - freeCompilerArgs.addAll("-P", "plugin:org.jetbrains.kotlin.parcelize:additionalAnnotation=it.vercruysse.lemmyapi.CommonParcelize") + freeCompilerArgs.addAll( + "-P", + "plugin:org.jetbrains.kotlin.parcelize:additionalAnnotation=it.vercruysse.lemmyapi.CommonParcelize" + ) } } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Site.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Site.kt index 43becd2c..b80de4b7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Site.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Site.kt @@ -20,7 +20,6 @@ data class Site( val ap_id: String, val last_refreshed_at: String, val inbox_url: String, - val public_key: String? = null, val instance_id: InstanceId, val content_warning: String? = null, ) : DatatypeRoot, Identity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UploadImageResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UploadImageResponse.kt index f75f2559..7d3f5dc3 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UploadImageResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UploadImageResponse.kt @@ -9,5 +9,7 @@ import kotlinx.serialization.Serializable data class UploadImageResponse( val image_url: String, val filename: String, + /* Added for pre V1 compatability, deletion requires a combination of filename and secret. + Pass this to delete endpoint */ val delete_filename: String = filename, ): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/Transformer.kt index 29ac8598..11603146 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/Transformer.kt @@ -1464,7 +1464,6 @@ internal class Transformer : MapperGenerator { ap_id = d.ap_id, last_refreshed_at = d.last_refreshed_at, inbox_url = d.inbox_url, - public_key = d.public_key, instance_id = d.instance_id, content_warning = d.content_warning, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Site.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Site.kt index 6476b75a..b1a9013d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Site.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Site.kt @@ -15,7 +15,6 @@ internal data class Site( val ap_id: DbUrl, val last_refreshed_at: String, val inbox_url: DbUrl, - val public_key: String, val instance_id: InstanceId, val content_warning: String? = null, ) diff --git a/app/src/commonTest/kotlin/TestStuff.kt b/app/src/commonTest/kotlin/TestStuff.kt deleted file mode 100644 index fa57ccc1..00000000 --- a/app/src/commonTest/kotlin/TestStuff.kt +++ /dev/null @@ -1,24 +0,0 @@ -import io.ktor.http.* -import it.vercruysse.lemmyapi.LemmyApi -import it.vercruysse.lemmyapi.datatypes.GetPosts -import kotlinx.coroutines.test.runTest -import kotlin.test.Ignore -import kotlin.test.Test - -@Ignore -class TestStuff { - @Test - fun test() { - val url = Url("lemmy.ml") - println(url.protocol) - } - - @Test - fun test2() = runTest { - val api = LemmyApi.getLemmyApi("lemmy.ml") - - println(api.version) - println(api.getSite()) - println(api.getPosts(GetPosts())) - } -} diff --git a/app/src/jvmTest/kotlin/TestPictrs.kt b/app/src/jvmTest/kotlin/TestPictrs.kt deleted file mode 100644 index 623f7ed8..00000000 --- a/app/src/jvmTest/kotlin/TestPictrs.kt +++ /dev/null @@ -1,20 +0,0 @@ -import kotlin.test.Test - -class TestPictrs { - @Test - fun upload() { -// val api = PictrsService(getKtor("https://lemmy.one"), false) -// -// println( -// api.uploadImage( -// UploadImage( -// auth = "", -// images = listOf( -// File("temp", "test4.jpg").readBytes(), -// // File("temp", "test3.jpg").readBytes() -// ), -// ), -// ), -// ) - } -} diff --git a/gradle.properties b/gradle.properties index 8a2f7f74..32a6a55d 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,5 +1,6 @@ kotlin.code.style=official android.useAndroidX=true +org.gradle.configuration-cache=true POM_NAME=Lemmy Backwards Compatible API POM_DESCRIPTION=Kotlin multiplatform Backward compatible Lemmy API client diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index ef1721de..2c8b2b12 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,8 +1,8 @@ #Sun May 24 01:53:04 CEST 2026 distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionSha256Sum=f397b287023acdba1e9f6fc5ea72d22dd63669d59ed4a289a29b1a76eee151c6 -distributionUrl=https\://services.gradle.org/distributions/gradle-8.11.1-bin.zip +distributionSha256Sum=bafc141b619ad6350fd975fc903156dd5c151998cc8b058e8c1044ab5f7b031f +distributionUrl=https\://services.gradle.org/distributions/gradle-9.5.1-bin.zip networkTimeout=10000 validateDistributionUrl=true zipStoreBase=GRADLE_USER_HOME diff --git a/kotlin-js-store/yarn.lock b/kotlin-js-store/yarn.lock index 038eeae3..36ed7c26 100644 --- a/kotlin-js-store/yarn.lock +++ b/kotlin-js-store/yarn.lock @@ -507,10 +507,10 @@ wrap-ansi@^8.1.0: string-width "^5.0.1" strip-ansi "^7.0.1" -ws@8.18.0: - version "8.18.0" - resolved "https://registry.yarnpkg.com/ws/-/ws-8.18.0.tgz#0d7505a6eafe2b0e712d232b42279f53bc289bbc" - integrity sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw== +ws@8.18.3: + version "8.18.3" + resolved "https://registry.yarnpkg.com/ws/-/ws-8.18.3.tgz#b56b88abffde62791c639170400c93dcb0c95472" + integrity sha512-PEIGCY5tSlUt50cqyMXfCzX+oOPqN0vuGqWzbcJ2xvnkzkq46oOpz7dQaTDBdfICb4N14+GARUDw2XV2N4tvzg== y18n@^5.0.5: version "5.0.8" diff --git a/settings.gradle.kts b/settings.gradle.kts index e89e8788..ae292546 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -16,7 +16,7 @@ dependencyResolutionManagement { plugins { id("org.gradle.toolchains.foojay-resolver-convention") version "1.0.0" kotlin("jvm") version "2.3.21" apply false - id("com.android.library") version "8.10.1" apply false + id("com.android.kotlin.multiplatform.library") version "9.2.1" apply false } rootProject.name = "LemmyBackwardsCompatibleAPI" From 7cb187954fd259e6f403e61de7f68e6e219fae3a Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Sun, 24 May 2026 14:08:41 +0200 Subject: [PATCH 072/110] Update types --- GeneratorScripts/src/main/kotlin/MapperGenerator0x18x5.kt | 4 ++-- GeneratorScripts/src/main/kotlin/MapperGenerator0x19x0.kt | 4 ++-- .../src/main/kotlin/MapperGenerator0x19x11.kt | 4 ++-- GeneratorScripts/src/main/kotlin/MapperGenerator0x19x3.kt | 4 ++-- GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt | 4 ++-- GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt | 4 ++-- GeneratorScripts/src/main/kotlin/MapperGenerator1x0x0.kt | 6 ++---- .../it/vercruysse/lemmyapi/LemmyApiBaseController.kt | 4 ++-- ...ordChangeAfterReset.kt => ChangePasswordAfterReset.kt} | 2 +- .../datatypes/{PasswordReset.kt => ResetPassword.kt} | 2 +- .../vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt | 4 ++-- .../it/vercruysse/lemmyapi/v0/x18/x5/MapperGenerator.kt | 4 ++-- .../it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt | 4 ++-- .../vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt | 4 ++-- .../it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt | 4 ++-- .../it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt | 4 ++-- .../vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt | 4 ++-- .../it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt | 4 ++-- .../it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt | 4 ++-- .../vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt | 4 ++-- .../it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt | 4 ++-- .../it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt | 4 ++-- .../vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt | 4 ++-- .../it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt | 4 ++-- .../it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt | 4 ++-- .../vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt | 4 ++-- .../it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt | 4 ++-- .../it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt | 4 ++-- .../it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiController.kt | 4 ++-- .../it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiRouter.kt | 4 ++-- .../it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiUniWrapper.kt | 4 ++-- .../it/vercruysse/lemmyapi/v1/x0/x0/MapperGenerator.kt | 4 ++-- .../kotlin/it/vercruysse/lemmyapi/v1/x0/x0/Transformer.kt | 8 ++++---- ...ordChangeAfterReset.kt => ChangePasswordAfterReset.kt} | 2 +- .../x0/datatypes/{PasswordReset.kt => ResetPassword.kt} | 2 +- 35 files changed, 68 insertions(+), 70 deletions(-) rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/{PasswordChangeAfterReset.kt => ChangePasswordAfterReset.kt} (89%) rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/{PasswordReset.kt => ResetPassword.kt} (90%) rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/{PasswordChangeAfterReset.kt => ChangePasswordAfterReset.kt} (82%) rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/{PasswordReset.kt => ResetPassword.kt} (80%) diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x18x5.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x18x5.kt index 001f41bf..5d8f57f3 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x18x5.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x18x5.kt @@ -332,8 +332,8 @@ internal interface MapperGenerator0x18x5 { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.LockPost): LockPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.Login): Login - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset): PasswordChangeAfterReset - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordReset): PasswordReset + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ChangePasswordAfterReset): PasswordChangeAfterReset + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ResetPassword): PasswordReset @Konvert(mappings = [Mapping(target = "auth", constant = "auth")]) fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgeComment): PurgeComment diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x0.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x0.kt index 2bd97142..961a1463 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x0.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x0.kt @@ -206,8 +206,8 @@ internal interface MapperGenerator0x19x0 { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.LockPost): LockPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.Login): Login fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead): MarkPostAsRead - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset): PasswordChangeAfterReset - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordReset): PasswordReset + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ChangePasswordAfterReset): PasswordChangeAfterReset + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ResetPassword): PasswordReset fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgeComment): PurgeComment fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgeCommunity): PurgeCommunity fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgePerson): PurgePerson diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt index e443f707..242822ba 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt @@ -132,8 +132,8 @@ internal interface MapperGenerator0x19x11 { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.LockPost): LockPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.Login): Login fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead): MarkPostAsRead - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset): PasswordChangeAfterReset - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordReset): PasswordReset + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ChangePasswordAfterReset): PasswordChangeAfterReset + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ResetPassword): PasswordReset fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgeComment): PurgeComment fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgeCommunity): PurgeCommunity fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgePerson): PurgePerson diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x3.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x3.kt index a17b69bc..a3e36e10 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x3.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x3.kt @@ -207,8 +207,8 @@ internal interface MapperGenerator0x19x3 { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.LockPost): LockPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.Login): Login fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead): MarkPostAsRead - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset): PasswordChangeAfterReset - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordReset): PasswordReset + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ChangePasswordAfterReset): PasswordChangeAfterReset + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ResetPassword): PasswordReset fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgeComment): PurgeComment fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgeCommunity): PurgeCommunity fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgePerson): PurgePerson diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt index 34b22c84..ac68511e 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt @@ -130,8 +130,8 @@ internal interface MapperGenerator0x19x4 { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.LockPost): LockPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.Login): Login fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead): MarkPostAsRead - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset): PasswordChangeAfterReset - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordReset): PasswordReset + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ChangePasswordAfterReset): PasswordChangeAfterReset + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ResetPassword): PasswordReset fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgeComment): PurgeComment fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgeCommunity): PurgeCommunity fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgePerson): PurgePerson diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt index bf6b07b1..fa6f3e18 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt @@ -132,8 +132,8 @@ internal interface MapperGenerator0x19x6 { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.LockPost): LockPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.Login): Login fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead): MarkPostAsRead - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset): PasswordChangeAfterReset - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordReset): PasswordReset + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ChangePasswordAfterReset): PasswordChangeAfterReset + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ResetPassword): PasswordReset fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgeComment): PurgeComment fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgeCommunity): PurgeCommunity fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgePerson): PurgePerson diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator1x0x0.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator1x0x0.kt index 97734834..02b8a96f 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator1x0x0.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator1x0x0.kt @@ -2,9 +2,7 @@ import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.* -import io.mcarle.konvert.api.Konfig import io.mcarle.konvert.api.Konvert -import io.mcarle.konvert.api.Konverter import io.mcarle.konvert.api.Mapping //@Konverter( @@ -266,8 +264,8 @@ internal interface MapperGenerator1x0x0 { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead): MarkManyPostsAsRead fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkNotificationAsRead): MarkNotificationAsRead fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkPostAsRead): MarkPostAsRead - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset): PasswordChangeAfterReset - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordReset): PasswordReset + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ChangePasswordAfterReset): ChangePasswordAfterReset + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ResetPassword): ResetPassword fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgeComment): PurgeComment fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgeCommunity): PurgeCommunity fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgePerson): PurgePerson diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt index 411521a1..0ac125a0 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt @@ -449,14 +449,14 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version * * @POST("user/password_reset") */ - abstract suspend fun resetPassword(form: PasswordReset): Result + abstract suspend fun resetPassword(form: ResetPassword): Result /** * Change your password from an email / token based reset. * * @POST("user/password_change") */ - abstract suspend fun changePasswordAfterReset(form: PasswordChangeAfterReset): Result + abstract suspend fun changePasswordAfterReset(form: ChangePasswordAfterReset): Result /** * Mark all notifications as read. diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PasswordChangeAfterReset.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ChangePasswordAfterReset.kt similarity index 89% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PasswordChangeAfterReset.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ChangePasswordAfterReset.kt index 2b1d308b..ca730ce6 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PasswordChangeAfterReset.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ChangePasswordAfterReset.kt @@ -7,7 +7,7 @@ import it.vercruysse.lemmyapi.CommonParcelize @CommonParcelize @Serializable -data class PasswordChangeAfterReset( +data class ChangePasswordAfterReset( val token: SensitiveString, val password: SensitiveString, val password_verify: SensitiveString, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PasswordReset.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ResetPassword.kt similarity index 90% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PasswordReset.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ResetPassword.kt index 0572672a..efde2b95 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PasswordReset.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ResetPassword.kt @@ -7,6 +7,6 @@ import it.vercruysse.lemmyapi.CommonParcelize @CommonParcelize @Serializable -data class PasswordReset( +data class ResetPassword( val email: SensitiveString, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt index c054cdb2..52a5b85c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt @@ -746,7 +746,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @POST("user/password_reset") */ - override suspend fun resetPassword(form: it.vercruysse.lemmyapi.datatypes.PasswordReset): Result = + override suspend fun resetPassword(form: it.vercruysse.lemmyapi.datatypes.ResetPassword): Result = apiV18.passwordReset(transformer.fromUni(form)) /** @@ -754,7 +754,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @POST("user/password_change") */ - override suspend fun changePasswordAfterReset(form: it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset): Result = + override suspend fun changePasswordAfterReset(form: it.vercruysse.lemmyapi.datatypes.ChangePasswordAfterReset): Result = apiV18.passwordChangeAfterReset(transformer.fromUni(form)) /** diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/MapperGenerator.kt index ef897268..6be1c04e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/MapperGenerator.kt @@ -201,8 +201,8 @@ internal interface MapperGenerator { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.LockPost): LockPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.Login): Login - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset): PasswordChangeAfterReset - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordReset): PasswordReset + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ChangePasswordAfterReset): PasswordChangeAfterReset + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ResetPassword): PasswordReset fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgeComment): PurgeComment diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt index 4ba119ec..d6b2c199 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt @@ -98,8 +98,8 @@ import it.vercruysse.lemmyapi.datatypes.LockPost as LemmyapiDatatypesLockPost import it.vercruysse.lemmyapi.datatypes.Login as LemmyapiDatatypesLogin import it.vercruysse.lemmyapi.datatypes.LoginResponse as LemmyapiDatatypesLoginResponse import it.vercruysse.lemmyapi.datatypes.MyUserInfo as LemmyapiDatatypesMyUserInfo -import it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset as LemmyapiDatatypesPasswordChangeAfterReset -import it.vercruysse.lemmyapi.datatypes.PasswordReset as LemmyapiDatatypesPasswordReset +import it.vercruysse.lemmyapi.datatypes.ChangePasswordAfterReset as LemmyapiDatatypesPasswordChangeAfterReset +import it.vercruysse.lemmyapi.datatypes.ResetPassword as LemmyapiDatatypesPasswordReset import it.vercruysse.lemmyapi.datatypes.Person as LemmyapiDatatypesPerson import it.vercruysse.lemmyapi.datatypes.PersonResponse as LemmyapiDatatypesPersonResponse import it.vercruysse.lemmyapi.datatypes.PersonView as LemmyapiDatatypesPersonView diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt index 043d8a27..4f175aeb 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt @@ -709,7 +709,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @POST("user/password_reset") */ - override suspend fun resetPassword(form: it.vercruysse.lemmyapi.datatypes.PasswordReset): Result = + override suspend fun resetPassword(form: it.vercruysse.lemmyapi.datatypes.ResetPassword): Result = api.resetPassword(transformer.fromUni(form)) /** @@ -717,7 +717,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @POST("user/password_change") */ - override suspend fun changePasswordAfterReset(form: it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset): Result = + override suspend fun changePasswordAfterReset(form: it.vercruysse.lemmyapi.datatypes.ChangePasswordAfterReset): Result = api.changePasswordAfterReset(transformer.fromUni(form)) /** diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt index 7525b441..ceccc28e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt @@ -151,8 +151,8 @@ internal interface MapperGenerator { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.LockPost): LockPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.Login): Login fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead): MarkPostAsRead - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset): PasswordChangeAfterReset - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordReset): PasswordReset + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ChangePasswordAfterReset): PasswordChangeAfterReset + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ResetPassword): PasswordReset fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgeComment): PurgeComment fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgeCommunity): PurgeCommunity fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgePerson): PurgePerson diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt index d4c907f2..3ace3cbb 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt @@ -102,8 +102,8 @@ import it.vercruysse.lemmyapi.datatypes.LoginResponse as LemmyapiDatatypesLoginR import it.vercruysse.lemmyapi.datatypes.LoginToken as LemmyapiDatatypesLoginToken import it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead as LemmyapiDatatypesMarkPostAsRead import it.vercruysse.lemmyapi.datatypes.MyUserInfo as LemmyapiDatatypesMyUserInfo -import it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset as LemmyapiDatatypesPasswordChangeAfterReset -import it.vercruysse.lemmyapi.datatypes.PasswordReset as LemmyapiDatatypesPasswordReset +import it.vercruysse.lemmyapi.datatypes.ChangePasswordAfterReset as LemmyapiDatatypesPasswordChangeAfterReset +import it.vercruysse.lemmyapi.datatypes.ResetPassword as LemmyapiDatatypesPasswordReset import it.vercruysse.lemmyapi.datatypes.Person as LemmyapiDatatypesPerson import it.vercruysse.lemmyapi.datatypes.PersonView as LemmyapiDatatypesPersonView import it.vercruysse.lemmyapi.datatypes.Post as LemmyapiDatatypesPost diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt index 61e8e261..abde97ef 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt @@ -709,7 +709,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @POST("user/password_reset") */ - override suspend fun resetPassword(form: it.vercruysse.lemmyapi.datatypes.PasswordReset): Result = + override suspend fun resetPassword(form: it.vercruysse.lemmyapi.datatypes.ResetPassword): Result = api.resetPassword(transformer.fromUni(form)) /** @@ -717,7 +717,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @POST("user/password_change") */ - override suspend fun changePasswordAfterReset(form: it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset): Result = + override suspend fun changePasswordAfterReset(form: it.vercruysse.lemmyapi.datatypes.ChangePasswordAfterReset): Result = api.changePasswordAfterReset(transformer.fromUni(form)) /** diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt index 2cf1aac6..34e8a4ea 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt @@ -134,8 +134,8 @@ internal interface MapperGenerator { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.LockPost): LockPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.Login): Login fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead): MarkPostAsRead - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset): PasswordChangeAfterReset - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordReset): PasswordReset + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ChangePasswordAfterReset): PasswordChangeAfterReset + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ResetPassword): PasswordReset fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgeComment): PurgeComment fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgeCommunity): PurgeCommunity fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgePerson): PurgePerson diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt index 59ca589e..df4fc552 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt @@ -111,8 +111,8 @@ import it.vercruysse.lemmyapi.datatypes.LoginResponse as LemmyapiDatatypesLoginR import it.vercruysse.lemmyapi.datatypes.LoginToken as LemmyapiDatatypesLoginToken import it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead as LemmyapiDatatypesMarkPostAsRead import it.vercruysse.lemmyapi.datatypes.MyUserInfo as LemmyapiDatatypesMyUserInfo -import it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset as LemmyapiDatatypesPasswordChangeAfterReset -import it.vercruysse.lemmyapi.datatypes.PasswordReset as LemmyapiDatatypesPasswordReset +import it.vercruysse.lemmyapi.datatypes.ChangePasswordAfterReset as LemmyapiDatatypesPasswordChangeAfterReset +import it.vercruysse.lemmyapi.datatypes.ResetPassword as LemmyapiDatatypesPasswordReset import it.vercruysse.lemmyapi.datatypes.Person as LemmyapiDatatypesPerson import it.vercruysse.lemmyapi.datatypes.PersonView as LemmyapiDatatypesPersonView import it.vercruysse.lemmyapi.datatypes.Post as LemmyapiDatatypesPost diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt index b1e62256..4d11e55c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt @@ -710,7 +710,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @POST("user/password_reset") */ - override suspend fun resetPassword(form: it.vercruysse.lemmyapi.datatypes.PasswordReset): Result = + override suspend fun resetPassword(form: it.vercruysse.lemmyapi.datatypes.ResetPassword): Result = api.resetPassword(transformer.fromUni(form)) /** @@ -718,7 +718,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @POST("user/password_change") */ - override suspend fun changePasswordAfterReset(form: it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset): Result = + override suspend fun changePasswordAfterReset(form: it.vercruysse.lemmyapi.datatypes.ChangePasswordAfterReset): Result = api.changePasswordAfterReset(transformer.fromUni(form)) /** diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt index 7c9de2d9..25d1ae23 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt @@ -145,8 +145,8 @@ internal interface MapperGenerator { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.LockPost): LockPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.Login): Login fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead): MarkPostAsRead - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset): PasswordChangeAfterReset - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordReset): PasswordReset + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ChangePasswordAfterReset): PasswordChangeAfterReset + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ResetPassword): PasswordReset fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgeComment): PurgeComment fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgeCommunity): PurgeCommunity fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgePerson): PurgePerson diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt index 1858afe2..2cda68e1 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt @@ -106,8 +106,8 @@ import it.vercruysse.lemmyapi.datatypes.LoginResponse as LemmyapiDatatypesLoginR import it.vercruysse.lemmyapi.datatypes.LoginToken as LemmyapiDatatypesLoginToken import it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead as LemmyapiDatatypesMarkPostAsRead import it.vercruysse.lemmyapi.datatypes.MyUserInfo as LemmyapiDatatypesMyUserInfo -import it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset as LemmyapiDatatypesPasswordChangeAfterReset -import it.vercruysse.lemmyapi.datatypes.PasswordReset as LemmyapiDatatypesPasswordReset +import it.vercruysse.lemmyapi.datatypes.ChangePasswordAfterReset as LemmyapiDatatypesPasswordChangeAfterReset +import it.vercruysse.lemmyapi.datatypes.ResetPassword as LemmyapiDatatypesPasswordReset import it.vercruysse.lemmyapi.datatypes.Person as LemmyapiDatatypesPerson import it.vercruysse.lemmyapi.datatypes.PersonView as LemmyapiDatatypesPersonView import it.vercruysse.lemmyapi.datatypes.Post as LemmyapiDatatypesPost diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt index e6896478..b7e5e9d6 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt @@ -709,7 +709,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @POST("user/password_reset") */ - override suspend fun resetPassword(form: it.vercruysse.lemmyapi.datatypes.PasswordReset): Result = + override suspend fun resetPassword(form: it.vercruysse.lemmyapi.datatypes.ResetPassword): Result = api.resetPassword(transformer.fromUni(form)) /** @@ -717,7 +717,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @POST("user/password_change") */ - override suspend fun changePasswordAfterReset(form: it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset): Result = + override suspend fun changePasswordAfterReset(form: it.vercruysse.lemmyapi.datatypes.ChangePasswordAfterReset): Result = api.changePasswordAfterReset(transformer.fromUni(form)) /** diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt index 2c5c9046..cf2c546a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt @@ -131,8 +131,8 @@ internal interface MapperGenerator { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.LockPost): LockPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.Login): Login fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead): MarkPostAsRead - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset): PasswordChangeAfterReset - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordReset): PasswordReset + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ChangePasswordAfterReset): PasswordChangeAfterReset + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ResetPassword): PasswordReset fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgeComment): PurgeComment fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgeCommunity): PurgeCommunity fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgePerson): PurgePerson diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt index 44e65858..aada3024 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt @@ -109,8 +109,8 @@ import it.vercruysse.lemmyapi.datatypes.LoginResponse as LemmyapiDatatypesLoginR import it.vercruysse.lemmyapi.datatypes.LoginToken as LemmyapiDatatypesLoginToken import it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead as LemmyapiDatatypesMarkPostAsRead import it.vercruysse.lemmyapi.datatypes.MyUserInfo as LemmyapiDatatypesMyUserInfo -import it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset as LemmyapiDatatypesPasswordChangeAfterReset -import it.vercruysse.lemmyapi.datatypes.PasswordReset as LemmyapiDatatypesPasswordReset +import it.vercruysse.lemmyapi.datatypes.ChangePasswordAfterReset as LemmyapiDatatypesPasswordChangeAfterReset +import it.vercruysse.lemmyapi.datatypes.ResetPassword as LemmyapiDatatypesPasswordReset import it.vercruysse.lemmyapi.datatypes.Person as LemmyapiDatatypesPerson import it.vercruysse.lemmyapi.datatypes.PersonView as LemmyapiDatatypesPersonView import it.vercruysse.lemmyapi.datatypes.Post as LemmyapiDatatypesPost diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt index 7cae983f..bf45dece 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt @@ -710,7 +710,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @POST("user/password_reset") */ - override suspend fun resetPassword(form: it.vercruysse.lemmyapi.datatypes.PasswordReset): Result = + override suspend fun resetPassword(form: it.vercruysse.lemmyapi.datatypes.ResetPassword): Result = api.resetPassword(transformer.fromUni(form)) /** @@ -718,7 +718,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @POST("user/password_change") */ - override suspend fun changePasswordAfterReset(form: it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset): Result = + override suspend fun changePasswordAfterReset(form: it.vercruysse.lemmyapi.datatypes.ChangePasswordAfterReset): Result = api.changePasswordAfterReset(transformer.fromUni(form)) /** diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt index 458b79a9..4d065853 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt @@ -134,8 +134,8 @@ internal interface MapperGenerator { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.LockPost): LockPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.Login): Login fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead): MarkPostAsRead - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset): PasswordChangeAfterReset - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordReset): PasswordReset + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ChangePasswordAfterReset): PasswordChangeAfterReset + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ResetPassword): PasswordReset fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgeComment): PurgeComment fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgeCommunity): PurgeCommunity fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgePerson): PurgePerson diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt index c77f2e2c..539cf553 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt @@ -111,8 +111,8 @@ import it.vercruysse.lemmyapi.datatypes.LoginResponse as LemmyapiDatatypesLoginR import it.vercruysse.lemmyapi.datatypes.LoginToken as LemmyapiDatatypesLoginToken import it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead as LemmyapiDatatypesMarkPostAsRead import it.vercruysse.lemmyapi.datatypes.MyUserInfo as LemmyapiDatatypesMyUserInfo -import it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset as LemmyapiDatatypesPasswordChangeAfterReset -import it.vercruysse.lemmyapi.datatypes.PasswordReset as LemmyapiDatatypesPasswordReset +import it.vercruysse.lemmyapi.datatypes.ChangePasswordAfterReset as LemmyapiDatatypesPasswordChangeAfterReset +import it.vercruysse.lemmyapi.datatypes.ResetPassword as LemmyapiDatatypesPasswordReset import it.vercruysse.lemmyapi.datatypes.Person as LemmyapiDatatypesPerson import it.vercruysse.lemmyapi.datatypes.PersonView as LemmyapiDatatypesPersonView import it.vercruysse.lemmyapi.datatypes.Post as LemmyapiDatatypesPost diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiController.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiController.kt index 29d9cf93..57af9eb5 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiController.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiController.kt @@ -338,11 +338,11 @@ internal class LemmyApiController(client: HttpClient, auth: String?) : client.getResult("account/auth/get_captcha") /** @POST("account/auth/password_reset") */ - override suspend fun resetPassword(form: PasswordReset): Result = + override suspend fun resetPassword(form: ResetPassword): Result = client.postResult("account/auth/password_reset", form) /** @POST("account/auth/password_change") */ - override suspend fun changePasswordAfterReset(form: PasswordChangeAfterReset): Result = + override suspend fun changePasswordAfterReset(form: ChangePasswordAfterReset): Result = client.postResult("account/auth/password_change", form) /** @PUT("account/auth/change_password") */ diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiRouter.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiRouter.kt index 9815bd57..b4c4525b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiRouter.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiRouter.kt @@ -237,10 +237,10 @@ internal abstract class LemmyApiRouter(client: HttpClient, auth: String?) : Auth abstract suspend fun getCaptcha(): Result /** @POST("account/auth/password_reset") */ - abstract suspend fun resetPassword(form: PasswordReset): Result + abstract suspend fun resetPassword(form: ResetPassword): Result /** @POST("account/auth/password_change") */ - abstract suspend fun changePasswordAfterReset(form: PasswordChangeAfterReset): Result + abstract suspend fun changePasswordAfterReset(form: ChangePasswordAfterReset): Result /** @PUT("account/auth/change_password") */ abstract suspend fun changePassword(form: ChangePassword): Result diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiUniWrapper.kt index 89a1cf2e..ee93c5ab 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiUniWrapper.kt @@ -226,10 +226,10 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun deleteAccount(form: it.vercruysse.lemmyapi.datatypes.DeleteAccount): Result = api.deleteAccount(transformer.fromUni(form)) - override suspend fun resetPassword(form: it.vercruysse.lemmyapi.datatypes.PasswordReset): Result = + override suspend fun resetPassword(form: it.vercruysse.lemmyapi.datatypes.ResetPassword): Result = api.resetPassword(transformer.fromUni(form)) - override suspend fun changePasswordAfterReset(form: it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset): Result = + override suspend fun changePasswordAfterReset(form: it.vercruysse.lemmyapi.datatypes.ChangePasswordAfterReset): Result = api.changePasswordAfterReset(transformer.fromUni(form)) override suspend fun saveUserSettings(form: it.vercruysse.lemmyapi.datatypes.SaveUserSettings): Result = diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/MapperGenerator.kt index 364fb7c3..e480d316 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/MapperGenerator.kt @@ -256,8 +256,8 @@ internal interface MapperGenerator { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.MarkPostAsRead): MarkPostAsRead fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ModEditPost): ModEditPost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.NotePerson): NotePerson - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset): PasswordChangeAfterReset - fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PasswordReset): PasswordReset + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ChangePasswordAfterReset): ChangePasswordAfterReset + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ResetPassword): ResetPassword fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgeComment): PurgeComment fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgeCommunity): PurgeCommunity fun fromUni(d: it.vercruysse.lemmyapi.datatypes.PurgePerson): PurgePerson diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/Transformer.kt index 11603146..8538702b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/Transformer.kt @@ -168,8 +168,8 @@ import it.vercruysse.lemmyapi.datatypes.Notification as LemmyapiDatatypesNotific import it.vercruysse.lemmyapi.datatypes.NotificationData as LemmyapiDatatypesNotificationData import it.vercruysse.lemmyapi.datatypes.NotificationView as LemmyapiDatatypesNotificationView import it.vercruysse.lemmyapi.datatypes.OAuthAccount as LemmyapiDatatypesOAuthAccount -import it.vercruysse.lemmyapi.datatypes.PasswordChangeAfterReset as LemmyapiDatatypesPasswordChangeAfterReset -import it.vercruysse.lemmyapi.datatypes.PasswordReset as LemmyapiDatatypesPasswordReset +import it.vercruysse.lemmyapi.datatypes.ChangePasswordAfterReset as LemmyapiDatatypesPasswordChangeAfterReset +import it.vercruysse.lemmyapi.datatypes.ResetPassword as LemmyapiDatatypesPasswordReset import it.vercruysse.lemmyapi.datatypes.PendingFollow as LemmyapiDatatypesPendingFollow import it.vercruysse.lemmyapi.datatypes.PendingFollowerView as LemmyapiDatatypesPendingFollowerView import it.vercruysse.lemmyapi.datatypes.Person as LemmyapiDatatypesPerson @@ -398,8 +398,8 @@ import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.Notification as X0DatatypesNoti import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.NotificationData as X0DatatypesNotificationData import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.NotificationView as X0DatatypesNotificationView import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.OAuthAccount as X0DatatypesOAuthAccount -import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PasswordChangeAfterReset as X0DatatypesPasswordChangeAfterReset -import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PasswordReset as X0DatatypesPasswordReset +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ChangePasswordAfterReset as X0DatatypesPasswordChangeAfterReset +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ResetPassword as X0DatatypesPasswordReset import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PendingFollow as X0DatatypesPendingFollow import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PendingFollowerView as X0DatatypesPendingFollowerView import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.Person as X0DatatypesPerson diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PasswordChangeAfterReset.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ChangePasswordAfterReset.kt similarity index 82% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PasswordChangeAfterReset.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ChangePasswordAfterReset.kt index fc8a716e..0f7a7087 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PasswordChangeAfterReset.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ChangePasswordAfterReset.kt @@ -3,7 +3,7 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes import kotlinx.serialization.Serializable @Serializable -internal data class PasswordChangeAfterReset( +internal data class ChangePasswordAfterReset( val token: SensitiveString, val password: SensitiveString, val password_verify: SensitiveString, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PasswordReset.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ResetPassword.kt similarity index 80% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PasswordReset.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ResetPassword.kt index 24bfd26f..d68261d2 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PasswordReset.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ResetPassword.kt @@ -3,6 +3,6 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes import kotlinx.serialization.Serializable @Serializable -internal data class PasswordReset( +internal data class ResetPassword( val email: SensitiveString, ) From 739c97fda5c8576ae3d3067c011e8eba754b63dc Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Sun, 24 May 2026 15:08:39 +0200 Subject: [PATCH 073/110] Fix types --- .../it/vercruysse/lemmyapi/datatypes/EditSite.kt | 2 ++ .../lemmyapi/datatypes/ListPersonLiked.kt | 4 ++-- .../v1/x0/x0/datatypes/CreateCustomEmoji.kt | 2 +- .../lemmyapi/v1/x0/x0/datatypes/CreateSite.kt | 4 ++-- .../lemmyapi/v1/x0/x0/datatypes/EditSite.kt | 13 +++++++------ .../lemmyapi/v1/x0/x0/datatypes/GetPosts.kt | 2 +- .../lemmyapi/v1/x0/x0/datatypes/ListCommunities.kt | 2 +- .../lemmyapi/v1/x0/x0/datatypes/ListPersonLiked.kt | 3 ++- .../lemmyapi/v1/x0/x0/datatypes/LocalSite.kt | 4 ++-- .../lemmyapi/v1/x0/x0/datatypes/LocalUser.kt | 2 +- .../v1/x0/x0/datatypes/ReportCombinedView.kt | 1 - .../lemmyapi/v1/x0/x0/datatypes/SaveUserSettings.kt | 4 ++-- .../lemmyapi/v1/x0/x0/datatypes/Search.kt | 2 +- .../v1/x0/x0/datatypes/SearchCombinedView.kt | 1 - 14 files changed, 24 insertions(+), 22 deletions(-) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt index c02c0dcc..ae3aa925 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt @@ -9,6 +9,8 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +// TODO: missing fields + mapping + @CommonParcelize @Serializable data class EditSite( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonLiked.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonLiked.kt index 204d60da..040bf664 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonLiked.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonLiked.kt @@ -2,13 +2,13 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PaginationCursor +import it.vercruysse.lemmyapi.enums.PersonContentType import kotlinx.serialization.Serializable @CommonParcelize @Serializable data class ListPersonLiked( - val type_: String? /* "all" | "comments" | "posts" */ = null, + val type_: PersonContentType? /* "all" | "comments" | "posts" */ = null, val like_type: String? /* "all" | "liked_only" | "disliked_only" */ = null, val page_cursor: PaginationCursor? = null, val limit: Long? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCustomEmoji.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCustomEmoji.kt index e5d4aeda..72409189 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCustomEmoji.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCustomEmoji.kt @@ -6,7 +6,7 @@ import kotlinx.serialization.Serializable internal data class CreateCustomEmoji( val category: String, val shortcode: String, - val image_url: String, + val image_url: DbUrl, val alt_text: String, val keywords: List, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateSite.kt index f9bacfe9..29a73c7d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateSite.kt @@ -1,10 +1,10 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes import it.vercruysse.lemmyapi.enums.FederationMode +import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.enums.PostListingMode import it.vercruysse.lemmyapi.enums.RegistrationMode import it.vercruysse.lemmyapi.enums.SortType -import it.vercruysse.lemmyapi.enums.PostListingMode -import it.vercruysse.lemmyapi.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditSite.kt index 56ba3940..62f667e3 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditSite.kt @@ -1,9 +1,10 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes +import it.vercruysse.lemmyapi.enums.FederationMode +import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.enums.PostListingMode import it.vercruysse.lemmyapi.enums.RegistrationMode import it.vercruysse.lemmyapi.enums.SortType -import it.vercruysse.lemmyapi.enums.PostListingMode -import it.vercruysse.lemmyapi.enums.ListingType import kotlinx.serialization.Serializable @Serializable @@ -48,10 +49,10 @@ internal data class EditSite( val reports_email_admins: Boolean? = null, val content_warning: String? = null, val oauth_registration: Boolean? = null, - val post_upvotes: RegistrationMode? /* "all" | "local" | "disable" */ = null, - val post_downvotes: RegistrationMode? /* "all" | "local" | "disable" */ = null, - val comment_upvotes: RegistrationMode? /* "all" | "local" | "disable" */ = null, - val comment_downvotes: RegistrationMode? /* "all" | "local" | "disable" */ = null, + val post_upvotes: FederationMode? /* "all" | "local" | "disable" */ = null, + val post_downvotes: FederationMode? /* "all" | "local" | "disable" */ = null, + val comment_upvotes: FederationMode? /* "all" | "local" | "disable" */ = null, + val comment_downvotes: FederationMode? /* "all" | "local" | "disable" */ = null, val disallow_nsfw_content: Boolean? = null, val disable_email_notifications: Boolean? = null, val suggested_multi_community_id: MultiCommunityId? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetPosts.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetPosts.kt index 635f036b..8c963d5f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetPosts.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetPosts.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -import it.vercruysse.lemmyapi.enums.SortType import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommunities.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommunities.kt index cd2178b6..367ab8ca 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommunities.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommunities.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -import it.vercruysse.lemmyapi.enums.SortType import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonLiked.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonLiked.kt index 3f7f63a0..a13f5190 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonLiked.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonLiked.kt @@ -1,10 +1,11 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes +import it.vercruysse.lemmyapi.enums.PersonContentType import kotlinx.serialization.Serializable @Serializable internal data class ListPersonLiked( - val type_: String? /* "all" | "comments" | "posts" */ = null, + val type_: PersonContentType? /* "all" | "comments" | "posts" */ = null, val like_type: String? /* "all" | "liked_only" | "disliked_only" */ = null, val page_cursor: PaginationCursor? = null, val limit: Long? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSite.kt index f044c22d..6b9279eb 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSite.kt @@ -1,10 +1,10 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes import it.vercruysse.lemmyapi.enums.FederationMode -import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.enums.ListingType import it.vercruysse.lemmyapi.enums.PostListingMode import it.vercruysse.lemmyapi.enums.RegistrationMode -import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUser.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUser.kt index cc157b6a..02c5289c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUser.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUser.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -import it.vercruysse.lemmyapi.enums.PostListingMode import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.enums.PostListingMode import it.vercruysse.lemmyapi.enums.SortType import it.vercruysse.lemmyapi.enums.VoteShow import kotlinx.serialization.Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ReportCombinedView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ReportCombinedView.kt index 579b9e51..b8cf0584 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ReportCombinedView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ReportCombinedView.kt @@ -3,7 +3,6 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes import kotlinx.serialization.ExperimentalSerializationApi import kotlinx.serialization.json.JsonClassDiscriminator - @OptIn(ExperimentalSerializationApi::class) @JsonClassDiscriminator("type_") internal sealed interface ReportCombinedView diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SaveUserSettings.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SaveUserSettings.kt index 6e2e9809..1b90adb7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SaveUserSettings.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SaveUserSettings.kt @@ -1,8 +1,8 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes -import it.vercruysse.lemmyapi.enums.SortType -import it.vercruysse.lemmyapi.enums.PostListingMode import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.enums.PostListingMode +import it.vercruysse.lemmyapi.enums.SortType import it.vercruysse.lemmyapi.enums.VoteShow import kotlinx.serialization.Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Search.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Search.kt index 2385cc94..d78adda8 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Search.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Search.kt @@ -1,8 +1,8 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes import it.vercruysse.lemmyapi.enums.ListingType -import it.vercruysse.lemmyapi.enums.SortType import it.vercruysse.lemmyapi.enums.SearchType +import it.vercruysse.lemmyapi.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SearchCombinedView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SearchCombinedView.kt index f6319c27..b33bbe59 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SearchCombinedView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SearchCombinedView.kt @@ -3,7 +3,6 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes import kotlinx.serialization.ExperimentalSerializationApi import kotlinx.serialization.json.JsonClassDiscriminator - @OptIn(ExperimentalSerializationApi::class) @JsonClassDiscriminator("type_") internal sealed interface SearchCombinedView From ee7d41bbebf5a2e5b62ac77cf755d273844fb74f Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Sun, 24 May 2026 16:14:05 +0200 Subject: [PATCH 074/110] Update types --- .../datatypes/CreateMultiCommunity.kt | 1 + .../lemmyapi/datatypes/EditMultiCommunity.kt | 1 + .../lemmyapi/datatypes/GetComments.kt | 6 +++ .../lemmyapi/datatypes/GetModlog.kt | 4 ++ .../vercruysse/lemmyapi/datatypes/GetPosts.kt | 10 +++++ .../lemmyapi/datatypes/GetSiteResponse.kt | 4 +- .../lemmyapi/datatypes/ListCommunities.kt | 11 +++++- .../datatypes/ListMultiCommunities.kt | 2 + .../lemmyapi/datatypes/ListNotifications.kt | 1 + .../lemmyapi/datatypes/ListPersonContent.kt | 4 ++ .../lemmyapi/datatypes/LocalUser.kt | 4 +- .../vercruysse/lemmyapi/datatypes/Modlog.kt | 1 + .../lemmyapi/datatypes/MultiCommunity.kt | 1 + .../lemmyapi/datatypes/Notification.kt | 1 + .../lemmyapi/datatypes/PrivateMessage.kt | 2 + .../lemmyapi/datatypes/RemoveComment.kt | 2 + .../lemmyapi/datatypes/RemovePost.kt | 2 + .../lemmyapi/datatypes/SaveUserSettings.kt | 4 +- .../lemmyapi/enums/NotificationDataType.kt | 3 ++ .../lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt | 3 +- .../lemmyapi/v0/x18/x5/Transformer.kt | 10 +++-- .../lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt | 3 +- .../lemmyapi/v0/x19/x0/Transformer.kt | 12 ++++-- .../lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt | 3 +- .../lemmyapi/v0/x19/x11/Transformer.kt | 12 ++++-- .../lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt | 3 +- .../lemmyapi/v0/x19/x3/Transformer.kt | 10 +++-- .../lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt | 3 +- .../lemmyapi/v0/x19/x4/Transformer.kt | 12 ++++-- .../lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt | 3 +- .../lemmyapi/v0/x19/x6/Transformer.kt | 12 ++++-- .../lemmyapi/v1/x0/x0/Transformer.kt | 39 ++++++++++++++++--- .../x0/x0/datatypes/CreateMultiCommunity.kt | 1 + .../v1/x0/x0/datatypes/EditMultiCommunity.kt | 1 + .../v1/x0/x0/datatypes/GetComments.kt | 3 ++ .../lemmyapi/v1/x0/x0/datatypes/GetModlog.kt | 2 + .../lemmyapi/v1/x0/x0/datatypes/GetPosts.kt | 5 +++ .../v1/x0/x0/datatypes/GetSiteResponse.kt | 2 +- .../v1/x0/x0/datatypes/ListCommunities.kt | 3 ++ .../x0/x0/datatypes/ListMultiCommunities.kt | 2 + .../v1/x0/x0/datatypes/ListNotifications.kt | 1 + .../v1/x0/x0/datatypes/ListPersonContent.kt | 2 + .../lemmyapi/v1/x0/x0/datatypes/LocalUser.kt | 4 +- .../lemmyapi/v1/x0/x0/datatypes/Modlog.kt | 1 + .../v1/x0/x0/datatypes/MultiCommunity.kt | 1 + .../v1/x0/x0/datatypes/Notification.kt | 1 + .../v1/x0/x0/datatypes/PrivateMessage.kt | 1 + .../v1/x0/x0/datatypes/RemoveComment.kt | 1 + .../lemmyapi/v1/x0/x0/datatypes/RemovePost.kt | 1 + .../v1/x0/x0/datatypes/SaveUserSettings.kt | 4 +- 50 files changed, 178 insertions(+), 47 deletions(-) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateMultiCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateMultiCommunity.kt index 08495742..44f98b72 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateMultiCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateMultiCommunity.kt @@ -10,4 +10,5 @@ data class CreateMultiCommunity( val name: String, val title: String? = null, val summary: String? = null, + val sidebar: String? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditMultiCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditMultiCommunity.kt index b32c67e5..f2198b94 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditMultiCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditMultiCommunity.kt @@ -10,5 +10,6 @@ data class EditMultiCommunity( val id: MultiCommunityId, val title: String? = null, val summary: String? = null, + val sidebar: String? = null, val deleted: Boolean? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetComments.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetComments.kt index fb50821e..a09cc862 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetComments.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetComments.kt @@ -22,8 +22,14 @@ data class GetComments( val limit: Long? = null, val community_id: CommunityId? = null, val community_name: String? = null, + /** Added in 1.0.0 */ + val creator_id: PersonId? = null, + /** Added in 1.0.0 */ + val creator_username: String? = null, val post_id: PostId? = null, val parent_id: CommentId? = null, + /** Added in 1.0.0 */ + val search_term: String? = null, /** Removed in 1.0.0 */ val saved_only: Boolean? = null, /** Removed in 1.0.0 */ diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetModlog.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetModlog.kt index ec698f52..da50b24d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetModlog.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetModlog.kt @@ -19,6 +19,10 @@ data class GetModlog( val post_id: PostId? = null, val comment_id: CommentId? = null, /** Added in 1.0.0 */ + val show_bulk: Boolean? = null, + /** Added in 1.0.0 */ + val bulk_action_parent_id: ModlogId? = null, + /** Added in 1.0.0 */ val page_cursor: PaginationCursor? = null, /** Removed in 1.0.0 */ val page: Long? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPosts.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPosts.kt index 18435c00..55245cb7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPosts.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPosts.kt @@ -19,6 +19,10 @@ data class GetPosts( val community_id: CommunityId? = null, val community_name: String? = null, /** Added in 1.0.0 */ + val creator_id: PersonId? = null, + /** Added in 1.0.0 */ + val creator_username: String? = null, + /** Added in 1.0.0 */ val multi_community_id: MultiCommunityId? = null, /** Added in 1.0.0 */ val multi_community_name: String? = null, @@ -33,6 +37,12 @@ data class GetPosts( val mark_as_read: Boolean? = null, /** Added in 1.0.0 */ val no_comments_only: Boolean? = null, + /** Added in 1.0.0 */ + val search_term: String? = null, + /** Added in 1.0.0 */ + val search_title_only: Boolean? = null, + /** Added in 1.0.0 */ + val search_url_only: Boolean? = null, /** The page cursor to the next list, null is valid and considered first list */ val page_cursor: PaginationCursor? = PAGE_CURSOR_GUARD, // Guard is used to detect when null is set /** starts from 1, null is considered not set, deprecated 0.19+, set to support 0.18, removed in 1.0.0 */ diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetSiteResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetSiteResponse.kt index 0d033b54..5dbfe178 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetSiteResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetSiteResponse.kt @@ -20,8 +20,8 @@ data class GetSiteResponse( /** Added in 1.0.0 */ val admin_oauth_providers: List, /** Added in 1.0.0 */ - val image_upload_disabled: Boolean, - /** Added in 1.0.0 */ val active_plugins: List, val last_application_duration_seconds: Long? = null, + /** Added in 1.0.0 */ + val captcha_enabled: Boolean, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommunities.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommunities.kt index f6a4e84c..fb5b85e2 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommunities.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommunities.kt @@ -10,9 +10,16 @@ import it.vercruysse.lemmyapi.CommonParcelize @CommonParcelize @Serializable data class ListCommunities( + val type_: ListingType? /* "all" | "local" | "subscribed" | "moderator_view" | "suggested" */ = null, + val sort: SortType? /* "active_six_months" | "active_monthly" | "active_weekly" | "active_daily" | "hot" | "new" | "old" | "name_asc" | "name_desc" | "comments" | "posts" | "subscribers" | "subscribers_local" */ = null, + val time_range_seconds: Long? = null, val show_nsfw: Boolean? = null, - val type_: ListingType? /* "All" | "Local" | "Subscribed" | "ModeratorView" */ = null, - val sort: SortType? /* "Active" | "Hot" | "New" | "Old" | "TopDay" | "TopWeek" | "TopMonth" | "TopYear" | "TopAll" | "MostComments" | "NewComments" | "TopHour" | "TopSixHour" | "TopTwelveHour" | "TopThreeMonths" | "TopSixMonths" | "TopNineMonths" | "Controversial" | "Scaled" */ = null, + /** Added in 1.0.0 */ + val multi_community_id: MultiCommunityId? = null, + /** Added in 1.0.0 */ + val search_term: String? = null, + /** Added in 1.0.0 */ + val search_title_only: Boolean? = null, /** Added in 1.0.0 */ val page_cursor: PaginationCursor? = null, /** Removed in 1.0.0 */ diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListMultiCommunities.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListMultiCommunities.kt index 23f2ecb8..5f5b94f1 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListMultiCommunities.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListMultiCommunities.kt @@ -13,6 +13,8 @@ data class ListMultiCommunities( val sort: MultiCommunitySortType? /* "new" | "old" | "name_asc" | "name_desc" | "communities" | "subscribers" | "subscribers_local" */ = null, val creator_id: PersonId? = null, val time_range_seconds: Long? = null, + val search_term: String? = null, + val search_title_only: Boolean? = null, val page_cursor: PaginationCursor? = null, val limit: Long? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListNotifications.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListNotifications.kt index 7afb3784..89829aab 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListNotifications.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListNotifications.kt @@ -10,6 +10,7 @@ import kotlinx.serialization.Serializable data class ListNotifications( val type_: NotificationDataType /* "All" | "Reply" | "Mention" | "PrivateMessage" | "Subscribed" */, val unread_only: Boolean? = null, + val creator_id: PersonId? = null, /** Removed in 1.0.0 */ val page: Long? = null, /** Added 1.0.0 */ diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonContent.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonContent.kt index ec4bd754..35428ed2 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonContent.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonContent.kt @@ -3,6 +3,7 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import it.vercruysse.lemmyapi.enums.PersonContentType +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CommunityId import kotlinx.serialization.Serializable @CommonParcelize @@ -11,6 +12,9 @@ data class ListPersonContent( val type_: PersonContentType? /* "all" | "comments" | "posts" */ = null, val person_id: PersonId? = null, val username: String? = null, + val community_id: CommunityId? = null, + /** Added in 1.0.0 */ + val community_name: String? = null, val page_cursor: PaginationCursor? = null, val limit: Long? = null, /** Removed in 1.0.0 */ diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUser.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUser.kt index e700aa54..97de8250 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUser.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUser.kt @@ -33,9 +33,9 @@ data class LocalUser( val admin: Boolean, val post_listing_mode: PostListingMode /* "List" | "Card" | "SmallCard" */, val totp_2fa_enabled: Boolean, - val enable_animated_images: Boolean, + val animated_images_enabled: Boolean, /** Added in 1.0.0 */ - val enable_private_messages: Boolean, + val private_messages_enabled: Boolean, val collapse_bot_comments: Boolean, /** Added in 1.0.0 */ val default_comment_sort_type: SortType, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Modlog.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Modlog.kt index 26612bc0..b1b74131 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Modlog.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Modlog.kt @@ -14,4 +14,5 @@ data class Modlog( val reason: String? = null, val expires_at: String? = null, val published_at: String, + val bulk_action_parent_id: ModlogId? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MultiCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MultiCommunity.kt index 1bdbbe97..9e38c085 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MultiCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MultiCommunity.kt @@ -22,4 +22,5 @@ data class MultiCommunity( val subscribers: Long, val subscribers_local: Long, val communities: Long, + val sidebar: String? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Notification.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Notification.kt index 688e22eb..78cb50af 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Notification.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Notification.kt @@ -17,4 +17,5 @@ data class Notification( val post_id: PostId? = null, val private_message_id: PrivateMessageId? = null, val modlog_id: ModlogId? = null, + val creator_id: PersonId, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessage.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessage.kt index 36eda852..c8ed160e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessage.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessage.kt @@ -24,4 +24,6 @@ data class PrivateMessage( val local: Boolean, /** Added in Lemmy 1.0.0 */ val removed: Boolean, + /** Added in Lemmy 1.0.0 */ + val deleted_by_recipient: Boolean, ) : DatatypeRoot, Identity, PostOrCommentOrPrivateMessage diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/RemoveComment.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/RemoveComment.kt index 24bb4113..9af33c2b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/RemoveComment.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/RemoveComment.kt @@ -11,4 +11,6 @@ data class RemoveComment( val comment_id: CommentId, val removed: Boolean, val reason: String, + /** Added in Lemmy 1.0.0 */ + val remove_children: Boolean? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/RemovePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/RemovePost.kt index fcbbc51e..5f5c14c6 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/RemovePost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/RemovePost.kt @@ -11,4 +11,6 @@ data class RemovePost( val post_id: PostId, val removed: Boolean, val reason: String, + /** Added in Lemmy 1.0.0 */ + val remove_children: Boolean? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SaveUserSettings.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SaveUserSettings.kt index 1979bdb5..78563c52 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SaveUserSettings.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SaveUserSettings.kt @@ -41,8 +41,8 @@ data class SaveUserSettings( val blocking_keywords: List? = null, val open_links_in_new_tab: Boolean? = null, val infinite_scroll_enabled: Boolean? = null, - val enable_animated_images: Boolean? = null, - val enable_private_messages: Boolean? = null, + val animated_images_enabled: Boolean? = null, + val private_messages_enabled: Boolean? = null, val collapse_bot_comments: Boolean? = null, val show_score: Boolean? = null, val show_upvotes: Boolean? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/NotificationDataType.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/NotificationDataType.kt index 0f3365fa..ff7a7e4e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/NotificationDataType.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/NotificationDataType.kt @@ -21,4 +21,7 @@ enum class NotificationDataType(override val minimumVersion: Version = V1_0_0, o @SerialName("subscribed") Subscribed, + + @SerialName("mod_action") + ModAction, } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt index 52a5b85c..3913de32 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt @@ -688,7 +688,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba PagedResponse(resp.private_messages.map(transformer::toUniPMV)) } - NotificationDataType.Subscribed -> Result.success(PagedResponse(emptyList())) + NotificationDataType.Subscribed, NotificationDataType.ModAction -> Result.success(PagedResponse(emptyList())) } /** @@ -1072,6 +1072,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba val getPersonDetailsForm = GetPersonDetails( username = form.username, person_id = form.person_id, + community_id = form.community_id, page = form.page, limit = form.limit, auth = auth, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt index d6b2c199..b16a1300 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt @@ -318,7 +318,7 @@ internal class Transformer(var auth: String) : MapperGenerator { admin = false, post_listing_mode = PostListingMode.Card, totp_2fa_enabled = d.let { this.mapLocalUserTotp(it) }, - enable_animated_images = true, + animated_images_enabled = true, collapse_bot_comments = false, last_donation_notification_at = "", show_score = d.show_scores, @@ -327,7 +327,7 @@ internal class Transformer(var auth: String) : MapperGenerator { show_person_votes = d.show_scores, show_upvote_percentage = d.show_scores, hide_media = false, - enable_private_messages = true, + private_messages_enabled = true, default_comment_sort_type = SortType.Active, auto_mark_fetched_posts_as_read = false, default_post_time_range_seconds = 0, @@ -453,8 +453,8 @@ internal class Transformer(var auth: String) : MapperGenerator { tagline = if (d.taglines.isEmpty()) null else this.toUni(d = d.taglines.random()), oauth_providers = emptyList(), admin_oauth_providers = emptyList(), - image_upload_disabled = false, active_plugins = emptyList(), + captcha_enabled = false, ) override fun toUni(d: X5DatatypesLocalSite, counts: X5DatatypesSiteAggregates): LemmyapiDatatypesLocalSite = @@ -693,6 +693,7 @@ internal class Transformer(var auth: String) : MapperGenerator { published_at = addTimezoneOffset(d.comment_reply.published), kind = NotificationType.Reply, post_id = d.post.id, + creator_id = d.creator.id, ), data = this.toUniCV(d), ) @@ -725,6 +726,7 @@ internal class Transformer(var auth: String) : MapperGenerator { published_at = addTimezoneOffset(d.person_mention.published), kind = NotificationType.Mention, post_id = d.post.id, + creator_id = d.creator.id, ), data = this.toUniPV(d), ) @@ -755,6 +757,7 @@ internal class Transformer(var auth: String) : MapperGenerator { read = d.private_message.read, published_at = addTimezoneOffset(d.private_message.published), kind = NotificationType.PrivateMessage, + creator_id = d.creator.id, ), data = this.toUni(d), ) @@ -887,6 +890,7 @@ internal class Transformer(var auth: String) : MapperGenerator { ap_id = d.ap_id, local = d.local, removed = false, + deleted_by_recipient = false, ) override fun toUni(d: X5DatatypesPrivateMessageReport): LemmyapiDatatypesPrivateMessageReport = diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt index 4f175aeb..230a495e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt @@ -657,7 +657,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba NotificationDataType.PrivateMessage -> api.getPrivateMessages(transformer.fromUniP(form)).map { resp -> PagedResponse(resp.private_messages.map(transformer::toUniPMV)) } - NotificationDataType.Subscribed -> Result.success(PagedResponse(emptyList())) + NotificationDataType.Subscribed, NotificationDataType.ModAction -> Result.success(PagedResponse(emptyList())) } /** @@ -1034,6 +1034,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba val getPersonDetailsForm = GetPersonDetails( username = form.username, person_id = form.person_id, + community_id = form.community_id, page = form.page, limit = form.limit, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt index 3ace3cbb..d21eb6a7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt @@ -391,8 +391,8 @@ internal class Transformer : MapperGenerator { tagline = if (d.taglines.isEmpty()) null else this.toUni(d = d.taglines.random()), oauth_providers = emptyList(), admin_oauth_providers = emptyList(), - image_upload_disabled = false, active_plugins = emptyList(), + captcha_enabled = false, ) override fun toUni(d: X0DatatypesLocalSite, counts: X0DatatypesSiteAggregates): LemmyapiDatatypesLocalSite = @@ -635,6 +635,7 @@ internal class Transformer : MapperGenerator { published_at = d.comment_reply.published, kind = NotificationType.Reply, post_id = d.post.id, + creator_id = d.creator.id, ), data = this.toUniCV(d), ) @@ -667,6 +668,7 @@ internal class Transformer : MapperGenerator { published_at = d.person_mention.published, kind = NotificationType.Mention, post_id = d.post.id, + creator_id = d.creator.id, ), data = this.toUniPV(d), ) @@ -697,6 +699,7 @@ internal class Transformer : MapperGenerator { read = d.private_message.read, published_at = d.private_message.published, kind = NotificationType.PrivateMessage, + creator_id = d.creator.id, ), data = this.toUni(d), ) @@ -772,7 +775,7 @@ internal class Transformer : MapperGenerator { infinite_scroll_enabled = d.infinite_scroll_enabled, admin = d.admin, post_listing_mode = d.post_listing_mode.toUni(), - enable_animated_images = d.enable_animated_images, + animated_images_enabled = d.enable_animated_images, collapse_bot_comments = d.collapse_bot_comments, last_donation_notification_at = "", show_score = d.show_scores, @@ -782,7 +785,7 @@ internal class Transformer : MapperGenerator { show_downvotes = VoteShow.Show, hide_media = false, default_comment_sort_type = SortType.Active, - enable_private_messages = true, + private_messages_enabled = true, auto_mark_fetched_posts_as_read = false, default_post_time_range_seconds = null, default_items_per_page = 20, @@ -928,6 +931,7 @@ internal class Transformer : MapperGenerator { ap_id = d.ap_id, local = d.local, removed = false, + deleted_by_recipient = false, ) override fun toUni(d: X0DatatypesPrivateMessageReport): LemmyapiDatatypesPrivateMessageReport = @@ -1664,7 +1668,7 @@ internal class Transformer : MapperGenerator { open_links_in_new_tab = d.open_links_in_new_tab, infinite_scroll_enabled = d.infinite_scroll_enabled, post_listing_mode = V0PostListingMode.fromUniNullable(d.post_listing_mode), - enable_animated_images = d.enable_animated_images, + enable_animated_images = d.animated_images_enabled, collapse_bot_comments = d.collapse_bot_comments, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt index abde97ef..e716717e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt @@ -657,7 +657,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba NotificationDataType.PrivateMessage -> api.getPrivateMessages(transformer.fromUniP(form)).map { resp -> PagedResponse(resp.private_messages.map(transformer::toUniPMV)) } - NotificationDataType.Subscribed -> Result.success(PagedResponse(emptyList())) + NotificationDataType.Subscribed, NotificationDataType.ModAction -> Result.success(PagedResponse(emptyList())) } /** @@ -1043,6 +1043,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba val getPersonDetailsForm = GetPersonDetails( person_id = form.person_id, username = form.username, + community_id = form.community_id, page = form.page, limit = form.limit, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt index df4fc552..5d6cb2fa 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt @@ -566,6 +566,7 @@ internal class Transformer : MapperGenerator { published_at = d.comment_reply.published, kind = NotificationType.Reply, post_id = d.post.id, + creator_id = d.creator.id, ), data = this.toUniCV(d), ) @@ -598,6 +599,7 @@ internal class Transformer : MapperGenerator { published_at = d.person_mention.published, kind = NotificationType.Mention, post_id = d.post.id, + creator_id = d.creator.id, ), data = this.toUniPV(d), ) @@ -628,6 +630,7 @@ internal class Transformer : MapperGenerator { read = d.private_message.read, published_at = d.private_message.published, kind = NotificationType.PrivateMessage, + creator_id = d.creator.id, ), data = this.toUni(d), ) @@ -647,8 +650,8 @@ internal class Transformer : MapperGenerator { tagline = if (d.taglines.isEmpty()) null else this.toUni(d = d.taglines.random()), oauth_providers = emptyList(), admin_oauth_providers = emptyList(), - image_upload_disabled = false, active_plugins = emptyList(), + captcha_enabled = false, ) override fun toUni(d: X11DatatypesImageDetails): LemmyapiDatatypesImageDetails = @@ -804,7 +807,7 @@ internal class Transformer : MapperGenerator { infinite_scroll_enabled = d.infinite_scroll_enabled, admin = d.admin, post_listing_mode = d.post_listing_mode.toUni(), - enable_animated_images = d.enable_animated_images, + animated_images_enabled = d.enable_animated_images, collapse_bot_comments = d.collapse_bot_comments, last_donation_notification_at = d.last_donation_notification, show_score = e.score, @@ -814,7 +817,7 @@ internal class Transformer : MapperGenerator { show_downvotes = if (e.downvotes) VoteShow.Show else VoteShow.Hide, auto_mark_fetched_posts_as_read = false, default_comment_sort_type = SortType.Active, - enable_private_messages = true, + private_messages_enabled = true, hide_media = false, default_post_time_range_seconds = null, default_items_per_page = 20, @@ -997,6 +1000,7 @@ internal class Transformer : MapperGenerator { ap_id = d.ap_id, local = d.local, removed = false, + deleted_by_recipient = false, ) override fun toUni(d: X11DatatypesPrivateMessageReport): LemmyapiDatatypesPrivateMessageReport = @@ -1794,7 +1798,7 @@ internal class Transformer : MapperGenerator { open_links_in_new_tab = d.open_links_in_new_tab, infinite_scroll_enabled = d.infinite_scroll_enabled, post_listing_mode = V0PostListingMode.fromUniNullable(d.post_listing_mode), - enable_animated_images = d.enable_animated_images, + enable_animated_images = d.animated_images_enabled, collapse_bot_comments = d.collapse_bot_comments, show_scores = d.show_score, show_upvotes = d.show_upvotes, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt index 4d11e55c..700b244c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt @@ -658,7 +658,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba NotificationDataType.PrivateMessage -> api.getPrivateMessages(transformer.fromUniP(form)).map { resp -> PagedResponse(resp.private_messages.map(transformer::toUniPMV)) } - NotificationDataType.Subscribed -> Result.success(PagedResponse(emptyList())) + NotificationDataType.Subscribed, NotificationDataType.ModAction -> Result.success(PagedResponse(emptyList())) } /** @@ -1033,6 +1033,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba val getPersonDetailsForm = GetPersonDetails( person_id = form.person_id, username = form.username, + community_id = form.community_id, page = form.page, limit = form.limit, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt index 2cda68e1..f1c07d1a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt @@ -405,8 +405,8 @@ internal class Transformer : MapperGenerator { tagline = if (d.taglines.isEmpty()) null else this.toUni(d = d.taglines.random()), oauth_providers = emptyList(), admin_oauth_providers = emptyList(), - image_upload_disabled = false, active_plugins = emptyList(), + captcha_enabled = false, ) override fun toUni(d: X3DatatypesLocalSite, counts: X3DatatypesSiteAggregates): LemmyapiDatatypesLocalSite = @@ -654,6 +654,7 @@ internal class Transformer : MapperGenerator { published_at = d.comment_reply.published, kind = NotificationType.Reply, post_id = d.post.id, + creator_id = d.creator.id, ), data = this.toUniCV(d), ) @@ -686,6 +687,7 @@ internal class Transformer : MapperGenerator { published_at = d.person_mention.published, kind = NotificationType.Mention, post_id = d.post.id, + creator_id = d.creator.id, ), data = this.toUniPV(d), ) @@ -716,6 +718,7 @@ internal class Transformer : MapperGenerator { read = d.private_message.read, published_at = d.private_message.published, kind = NotificationType.PrivateMessage, + creator_id = d.creator.id, ), data = this.toUni(d), ) @@ -791,7 +794,7 @@ internal class Transformer : MapperGenerator { infinite_scroll_enabled = d.infinite_scroll_enabled, admin = d.admin, post_listing_mode = d.post_listing_mode.toUni(), - enable_animated_images = d.enable_animated_images, + animated_images_enabled = d.enable_animated_images, collapse_bot_comments = d.collapse_bot_comments, last_donation_notification_at = "", show_score = d.show_scores, @@ -800,7 +803,7 @@ internal class Transformer : MapperGenerator { show_upvote_percentage = d.show_scores, hide_media = false, show_downvotes = VoteShow.Show, - enable_private_messages = true, + private_messages_enabled = true, default_comment_sort_type = SortType.Active, auto_mark_fetched_posts_as_read = false, default_post_time_range_seconds = null, @@ -946,6 +949,7 @@ internal class Transformer : MapperGenerator { ap_id = d.ap_id, local = d.local, removed = false, + deleted_by_recipient = false, ) override fun toUni(d: X3DatatypesPrivateMessageReport): LemmyapiDatatypesPrivateMessageReport = diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt index b7e5e9d6..a8bfcd0d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt @@ -657,7 +657,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba NotificationDataType.PrivateMessage -> api.getPrivateMessages(transformer.fromUniP(form)).map { resp -> PagedResponse(resp.private_messages.map(transformer::toUniPMV)) } - NotificationDataType.Subscribed -> Result.success(PagedResponse(emptyList())) + NotificationDataType.Subscribed, NotificationDataType.ModAction -> Result.success(PagedResponse(emptyList())) } /** @@ -1041,6 +1041,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba val getPersonDetailsForm = GetPersonDetails( username = form.username, person_id = form.person_id, + community_id = form.community_id, page = form.page, limit = form.limit, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt index aada3024..d7bc84be 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt @@ -571,6 +571,7 @@ internal class Transformer : MapperGenerator { published_at = d.comment_reply.published, kind = NotificationType.Reply, post_id = d.post.id, + creator_id = d.creator.id, ), data = this.toUniCV(d), ) @@ -603,6 +604,7 @@ internal class Transformer : MapperGenerator { published_at = d.person_mention.published, kind = NotificationType.Mention, post_id = d.post.id, + creator_id = d.creator.id, ), data = this.toUniPV(d), ) @@ -633,6 +635,7 @@ internal class Transformer : MapperGenerator { read = d.private_message.read, published_at = d.private_message.published, kind = NotificationType.PrivateMessage, + creator_id = d.creator.id, ), data = this.toUni(d), ) @@ -652,8 +655,8 @@ internal class Transformer : MapperGenerator { tagline = if (d.taglines.isEmpty()) null else this.toUni(d = d.taglines.random()), oauth_providers = emptyList(), admin_oauth_providers = emptyList(), - image_upload_disabled = false, active_plugins = emptyList(), + captcha_enabled = false, ) override fun toUni(d: X4DatatypesInstance): LemmyapiDatatypesInstance = LemmyapiDatatypesInstance( @@ -799,7 +802,7 @@ internal class Transformer : MapperGenerator { infinite_scroll_enabled = d.infinite_scroll_enabled, admin = d.admin, post_listing_mode = d.post_listing_mode.toUni(), - enable_animated_images = d.enable_animated_images, + animated_images_enabled = d.enable_animated_images, collapse_bot_comments = d.collapse_bot_comments, last_donation_notification_at = "", show_score = e.score, @@ -808,7 +811,7 @@ internal class Transformer : MapperGenerator { show_upvote_percentage = e.upvote_percentage, show_downvotes = if (e.downvotes) VoteShow.Show else VoteShow.Hide, hide_media = false, - enable_private_messages = true, + private_messages_enabled = true, default_comment_sort_type = SortType.Active, auto_mark_fetched_posts_as_read = false, default_post_time_range_seconds = null, @@ -989,6 +992,7 @@ internal class Transformer : MapperGenerator { ap_id = d.ap_id, local = d.local, removed = false, + deleted_by_recipient = false, ) override fun toUni(d: X4DatatypesPrivateMessageReport): LemmyapiDatatypesPrivateMessageReport = @@ -1773,7 +1777,7 @@ internal class Transformer : MapperGenerator { open_links_in_new_tab = d.open_links_in_new_tab, infinite_scroll_enabled = d.infinite_scroll_enabled, post_listing_mode = V0PostListingMode.fromUniNullable(d.post_listing_mode), - enable_animated_images = d.enable_animated_images, + enable_animated_images = d.animated_images_enabled, collapse_bot_comments = d.collapse_bot_comments, show_scores = d.show_score, show_upvotes = d.show_upvotes, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt index bf45dece..39bf4727 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt @@ -658,7 +658,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba NotificationDataType.PrivateMessage -> api.getPrivateMessages(transformer.fromUniP(form)).map { resp -> PagedResponse(resp.private_messages.map(transformer::toUniPMV)) } - NotificationDataType.Subscribed -> Result.success(PagedResponse(emptyList())) + NotificationDataType.Subscribed, NotificationDataType.ModAction -> Result.success(PagedResponse(emptyList())) } /** @@ -1036,6 +1036,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba val getPersonDetailsForm = GetPersonDetails( person_id = form.person_id, username = form.username, + community_id = form.community_id, page = form.page, limit = form.limit, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt index 539cf553..c7013f79 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt @@ -567,6 +567,7 @@ internal class Transformer : MapperGenerator { published_at = d.comment_reply.published, kind = NotificationType.Reply, post_id = d.post.id, + creator_id = d.creator.id, ), data = this.toUniCV(d), ) @@ -599,6 +600,7 @@ internal class Transformer : MapperGenerator { published_at = d.person_mention.published, kind = NotificationType.Mention, post_id = d.post.id, + creator_id = d.creator.id, ), data = this.toUniPV(d), ) @@ -629,6 +631,7 @@ internal class Transformer : MapperGenerator { read = d.private_message.read, published_at = d.private_message.published, kind = NotificationType.PrivateMessage, + creator_id = d.creator.id, ), data = this.toUni(d), ) @@ -648,8 +651,8 @@ internal class Transformer : MapperGenerator { tagline = if (d.taglines.isEmpty()) null else this.toUni(d = d.taglines.random()), oauth_providers = emptyList(), admin_oauth_providers = emptyList(), - image_upload_disabled = false, active_plugins = emptyList(), + captcha_enabled = false, ) override fun toUni(d: X6DatatypesImageDetails): LemmyapiDatatypesImageDetails = @@ -803,7 +806,7 @@ internal class Transformer : MapperGenerator { infinite_scroll_enabled = d.infinite_scroll_enabled, admin = d.admin, post_listing_mode = d.post_listing_mode.toUni(), - enable_animated_images = d.enable_animated_images, + animated_images_enabled = d.enable_animated_images, collapse_bot_comments = d.collapse_bot_comments, last_donation_notification_at = "", show_score = e.score, @@ -812,7 +815,7 @@ internal class Transformer : MapperGenerator { show_upvote_percentage = e.upvote_percentage, show_downvotes = if (e.downvotes) VoteShow.Show else VoteShow.Hide, hide_media = false, - enable_private_messages = true, + private_messages_enabled = true, default_comment_sort_type = SortType.Active, auto_mark_fetched_posts_as_read = false, default_post_time_range_seconds = null, @@ -994,6 +997,7 @@ internal class Transformer : MapperGenerator { ap_id = d.ap_id, local = d.local, removed = false, + deleted_by_recipient = false, ) override fun toUni(d: X6DatatypesPrivateMessageReport): LemmyapiDatatypesPrivateMessageReport = @@ -1785,7 +1789,7 @@ internal class Transformer : MapperGenerator { open_links_in_new_tab = d.open_links_in_new_tab, infinite_scroll_enabled = d.infinite_scroll_enabled, post_listing_mode = V0PostListingMode.fromUniNullable(d.post_listing_mode), - enable_animated_images = d.enable_animated_images, + enable_animated_images = d.animated_images_enabled, collapse_bot_comments = d.collapse_bot_comments, show_scores = d.show_score, show_upvotes = d.show_upvotes, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/Transformer.kt index 8538702b..1c7294d1 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/Transformer.kt @@ -869,9 +869,9 @@ internal class Transformer : MapperGenerator { tagline = d.tagline?.let { this.toUni(d = it) }, oauth_providers = d.oauth_providers.map { this.toUni(d = it) }, admin_oauth_providers = d.admin_oauth_providers.map { this.toUni(d = it) }, - image_upload_disabled = d.image_upload_disabled, active_plugins = d.active_plugins.map { this.toUni(d = it) }, last_application_duration_seconds = d.last_application_duration_seconds, + captcha_enabled = d.captcha_enabled, ) override fun toUni(d: X0DatatypesImageDetails): LemmyapiDatatypesImageDetails = LemmyapiDatatypesImageDetails( @@ -1040,8 +1040,8 @@ internal class Transformer : MapperGenerator { admin = d.admin, post_listing_mode = d.post_listing_mode, totp_2fa_enabled = d.totp_2fa_enabled, - enable_animated_images = d.enable_animated_images, - enable_private_messages = d.enable_private_messages, + animated_images_enabled = d.animated_images_enabled, + private_messages_enabled = d.private_messages_enabled, collapse_bot_comments = d.collapse_bot_comments, default_comment_sort_type = d.default_comment_sort_type, auto_mark_fetched_posts_as_read = d.auto_mark_fetched_posts_as_read, @@ -1089,6 +1089,7 @@ internal class Transformer : MapperGenerator { reason = d.reason, expires_at = d.expires_at, published_at = d.published_at, + bulk_action_parent_id = d.bulk_action_parent_id, ) override fun toUni(d: X0DatatypesModlogView): LemmyapiDatatypesModlogView = LemmyapiDatatypesModlogView( @@ -1117,6 +1118,7 @@ internal class Transformer : MapperGenerator { subscribers = d.subscribers, subscribers_local = d.subscribers_local, communities = d.communities, + sidebar = d.sidebar, ) override fun toUni(d: X0DatatypesMultiCommunityEntry): LemmyapiDatatypesMultiCommunityEntry = LemmyapiDatatypesMultiCommunityEntry( @@ -1168,13 +1170,14 @@ internal class Transformer : MapperGenerator { post_id = d.post_id, private_message_id = d.private_message_id, modlog_id = d.modlog_id, + creator_id = d.creator_id, ) override fun toUni(d: X0DatatypesNotificationData): LemmyapiDatatypesNotificationData = super.toUni(d) override fun toUni(d: X0DatatypesNotificationView): LemmyapiDatatypesNotificationView = LemmyapiDatatypesNotificationView( notification = this.toUni(d = d.notification), - data = d.let { toUni(d.data) }, + data = this.toUni(d.data), ) override fun toUni(d: X0DatatypesOAuthAccount): LemmyapiDatatypesOAuthAccount = LemmyapiDatatypesOAuthAccount( @@ -1368,6 +1371,7 @@ internal class Transformer : MapperGenerator { ap_id = d.ap_id, local = d.local, removed = d.removed, + deleted_by_recipient = d.deleted_by_recipient, ) override fun toUni(d: X0DatatypesPrivateMessageReport): LemmyapiDatatypesPrivateMessageReport = LemmyapiDatatypesPrivateMessageReport( @@ -1691,6 +1695,7 @@ internal class Transformer : MapperGenerator { name = d.name, title = d.title, summary = d.summary, + sidebar = d.sidebar, ) override fun fromUni(d: LemmyapiDatatypesCreateOAuthProvider): X0DatatypesCreateOAuthProvider = X0DatatypesCreateOAuthProvider( @@ -1898,6 +1903,7 @@ internal class Transformer : MapperGenerator { id = d.id, title = d.title, summary = d.summary, + sidebar = d.sidebar, deleted = d.deleted, ) @@ -2021,8 +2027,11 @@ internal class Transformer : MapperGenerator { limit = d.limit, community_id = d.community_id, community_name = d.community_name, + creator_id = d.creator_id, + creator_username = d.creator_username, post_id = d.post_id, parent_id = d.parent_id, + search_term = d.search_term, ) override fun fromUni(d: LemmyapiDatatypesGetCommunity): X0DatatypesGetCommunity = X0DatatypesGetCommunity( @@ -2045,6 +2054,8 @@ internal class Transformer : MapperGenerator { other_person_id = d.other_person_id, post_id = d.post_id, comment_id = d.comment_id, + show_bulk = d.show_bulk, + bulk_action_parent_id = d.bulk_action_parent_id, page_cursor = d.page_cursor, limit = d.limit, ) @@ -2070,6 +2081,8 @@ internal class Transformer : MapperGenerator { time_range_seconds = d.time_range_seconds, community_id = d.community_id, community_name = d.community_name, + creator_id = d.creator_id, + creator_username = d.creator_username, multi_community_id = d.multi_community_id, multi_community_name = d.multi_community_name, show_hidden = d.show_hidden, @@ -2078,6 +2091,9 @@ internal class Transformer : MapperGenerator { hide_media = d.hide_media, mark_as_read = d.mark_as_read, no_comments_only = d.no_comments_only, + search_term = d.search_term, + search_title_only = d.search_title_only, + search_url_only = d.search_url_only, page_cursor = d.page_cursor, limit = d.limit, ) @@ -2115,7 +2131,11 @@ internal class Transformer : MapperGenerator { override fun fromUni(d: LemmyapiDatatypesListCommunities): X0DatatypesListCommunities = X0DatatypesListCommunities( type_ = d.type_, sort = d.sort, + time_range_seconds = d.time_range_seconds, show_nsfw = d.show_nsfw, + multi_community_id = d.multi_community_id, + search_term = d.search_term, + search_title_only = d.search_title_only, page_cursor = d.page_cursor, limit = d.limit, ) @@ -2141,6 +2161,8 @@ internal class Transformer : MapperGenerator { sort = d.sort, creator_id = d.creator_id, time_range_seconds = d.time_range_seconds, + search_term = d.search_term, + search_title_only = d.search_title_only, page_cursor = d.page_cursor, limit = d.limit, ) @@ -2148,6 +2170,7 @@ internal class Transformer : MapperGenerator { override fun fromUni(d: LemmyapiDatatypesListNotifications): X0DatatypesListNotifications = X0DatatypesListNotifications( type_ = d.type_, unread_only = d.unread_only, + creator_id = d.creator_id, page_cursor = d.page_cursor, limit = d.limit, ) @@ -2156,6 +2179,8 @@ internal class Transformer : MapperGenerator { type_ = d.type_, person_id = d.person_id, username = d.username, + community_id = d.community_id, + community_name = d.community_name, page_cursor = d.page_cursor, limit = d.limit, ) @@ -2303,6 +2328,7 @@ internal class Transformer : MapperGenerator { comment_id = d.comment_id, removed = d.removed, reason = d.reason, + remove_children = d.remove_children, ) override fun fromUni(d: LemmyapiDatatypesRemoveCommunity): X0DatatypesRemoveCommunity = X0DatatypesRemoveCommunity( @@ -2315,6 +2341,7 @@ internal class Transformer : MapperGenerator { post_id = d.post_id, removed = d.removed, reason = d.reason, + remove_children = d.remove_children, ) override fun fromUni(d: LemmyapiDatatypesResendVerificationEmail): X0DatatypesResendVerificationEmail = X0DatatypesResendVerificationEmail( @@ -2379,8 +2406,8 @@ internal class Transformer : MapperGenerator { blocking_keywords = d.blocking_keywords, open_links_in_new_tab = d.open_links_in_new_tab, infinite_scroll_enabled = d.infinite_scroll_enabled, - enable_animated_images = d.enable_animated_images, - enable_private_messages = d.enable_private_messages, + animated_images_enabled = d.animated_images_enabled, + private_messages_enabled = d.private_messages_enabled, collapse_bot_comments = d.collapse_bot_comments, show_score = d.show_score, show_upvotes = d.show_upvotes, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateMultiCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateMultiCommunity.kt index 99f99964..28210ed5 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateMultiCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateMultiCommunity.kt @@ -7,4 +7,5 @@ internal data class CreateMultiCommunity( val name: String, val title: String? = null, val summary: String? = null, + val sidebar: String? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditMultiCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditMultiCommunity.kt index 968014ec..9b02daf3 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditMultiCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditMultiCommunity.kt @@ -7,5 +7,6 @@ internal data class EditMultiCommunity( val id: MultiCommunityId, val title: String? = null, val summary: String? = null, + val sidebar: String? = null, val deleted: Boolean? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetComments.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetComments.kt index 3fe4d524..80ac90ab 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetComments.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetComments.kt @@ -14,6 +14,9 @@ internal data class GetComments( val limit: Long? = null, val community_id: CommunityId? = null, val community_name: String? = null, + val creator_id: PersonId? = null, + val creator_username: String? = null, val post_id: PostId? = null, val parent_id: CommentId? = null, + val search_term: String? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetModlog.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetModlog.kt index 4fbbbaa5..dfcb68f3 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetModlog.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetModlog.kt @@ -13,6 +13,8 @@ internal data class GetModlog( val other_person_id: PersonId? = null, val post_id: PostId? = null, val comment_id: CommentId? = null, + val show_bulk: Boolean? = null, + val bulk_action_parent_id: ModlogId? = null, val page_cursor: PaginationCursor? = null, val limit: Long? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetPosts.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetPosts.kt index 8c963d5f..f8c7f2bd 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetPosts.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetPosts.kt @@ -11,6 +11,8 @@ internal data class GetPosts( val time_range_seconds: Long? = null, val community_id: CommunityId? = null, val community_name: String? = null, + val creator_id: PersonId? = null, + val creator_username: String? = null, val multi_community_id: MultiCommunityId? = null, val multi_community_name: String? = null, val show_hidden: Boolean? = null, @@ -19,6 +21,9 @@ internal data class GetPosts( val hide_media: Boolean? = null, val mark_as_read: Boolean? = null, val no_comments_only: Boolean? = null, + val search_term: String? = null, + val search_title_only: Boolean? = null, + val search_url_only: Boolean? = null, val page_cursor: PaginationCursor? = null, val limit: Long? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetSiteResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetSiteResponse.kt index a54219c8..d78b047f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetSiteResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetSiteResponse.kt @@ -13,7 +13,7 @@ internal data class GetSiteResponse( val oauth_providers: List, val admin_oauth_providers: List, val blocked_urls: List, - val image_upload_disabled: Boolean, val active_plugins: List, val last_application_duration_seconds: Long? = null, + val captcha_enabled: Boolean, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommunities.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommunities.kt index 367ab8ca..99e524a8 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommunities.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListCommunities.kt @@ -10,6 +10,9 @@ internal data class ListCommunities( val sort: SortType? /* "active_six_months" | "active_monthly" | "active_weekly" | "active_daily" | "hot" | "new" | "old" | "name_asc" | "name_desc" | "comments" | "posts" | "subscribers" | "subscribers_local" */ = null, val time_range_seconds: Long? = null, val show_nsfw: Boolean? = null, + val multi_community_id: MultiCommunityId? = null, + val search_term: String? = null, + val search_title_only: Boolean? = null, val page_cursor: PaginationCursor? = null, val limit: Long? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListMultiCommunities.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListMultiCommunities.kt index 2d4ec1ee..a131cc0d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListMultiCommunities.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListMultiCommunities.kt @@ -10,6 +10,8 @@ internal data class ListMultiCommunities( val sort: MultiCommunitySortType? /* "new" | "old" | "name_asc" | "name_desc" | "communities" | "subscribers" | "subscribers_local" */ = null, val creator_id: PersonId? = null, val time_range_seconds: Long? = null, + val search_term: String? = null, + val search_title_only: Boolean? = null, val page_cursor: PaginationCursor? = null, val limit: Long? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListNotifications.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListNotifications.kt index 75f9dad9..b746b6dc 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListNotifications.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListNotifications.kt @@ -7,6 +7,7 @@ import kotlinx.serialization.Serializable internal data class ListNotifications( val type_: NotificationDataType? /* "all" | "mention" | "reply" | "subscribed" | "private_message" | "mod_action" */ = null, val unread_only: Boolean? = null, + val creator_id: PersonId? = null, val page_cursor: PaginationCursor? = null, val limit: Long? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonContent.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonContent.kt index c2260576..fd0003f4 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonContent.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonContent.kt @@ -8,6 +8,8 @@ internal data class ListPersonContent( val type_: PersonContentType? /* "all" | "comments" | "posts" */ = null, val person_id: PersonId? = null, val username: String? = null, + val community_id: CommunityId? = null, + val community_name: String? = null, val page_cursor: PaginationCursor? = null, val limit: Long? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUser.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUser.kt index 02c5289c..2bd68ada 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUser.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUser.kt @@ -28,10 +28,10 @@ internal data class LocalUser( val admin: Boolean, val post_listing_mode: PostListingMode /* "list" | "card" | "small_card" */, val totp_2fa_enabled: Boolean, - val enable_animated_images: Boolean, + val animated_images_enabled: Boolean, val collapse_bot_comments: Boolean, val last_donation_notification_at: String, - val enable_private_messages: Boolean, + val private_messages_enabled: Boolean, val default_comment_sort_type: SortType /* "hot" | "top" | "new" | "old" | "controversial" */, val auto_mark_fetched_posts_as_read: Boolean, val hide_media: Boolean, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Modlog.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Modlog.kt index fe28af11..383d3755 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Modlog.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Modlog.kt @@ -11,4 +11,5 @@ internal data class Modlog( val reason: String? = null, val expires_at: String? = null, val published_at: String, + val bulk_action_parent_id: ModlogId? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MultiCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MultiCommunity.kt index 2d66576d..2e60b501 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MultiCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MultiCommunity.kt @@ -19,4 +19,5 @@ internal data class MultiCommunity( val subscribers: Long, val subscribers_local: Long, val communities: Long, + val sidebar: String? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Notification.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Notification.kt index ed3bbd7b..8d870d8b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Notification.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Notification.kt @@ -14,4 +14,5 @@ internal data class Notification( val post_id: PostId? = null, val private_message_id: PrivateMessageId? = null, val modlog_id: ModlogId? = null, + val creator_id: PersonId, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessage.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessage.kt index 96172383..6718c26a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessage.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PrivateMessage.kt @@ -16,4 +16,5 @@ internal data class PrivateMessage( val ap_id: DbUrl, val local: Boolean, val removed: Boolean, + val deleted_by_recipient: Boolean, ) : PostOrCommentOrPrivateMessage diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RemoveComment.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RemoveComment.kt index 7cb67dbb..2b7239bc 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RemoveComment.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RemoveComment.kt @@ -7,4 +7,5 @@ internal data class RemoveComment( val comment_id: CommentId, val removed: Boolean, val reason: String, + val remove_children: Boolean? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RemovePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RemovePost.kt index 71a2d65c..46e5adc6 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RemovePost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RemovePost.kt @@ -7,4 +7,5 @@ internal data class RemovePost( val post_id: PostId, val removed: Boolean, val reason: String, + val remove_children: Boolean? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SaveUserSettings.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SaveUserSettings.kt index 1b90adb7..8e9f0fbc 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SaveUserSettings.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SaveUserSettings.kt @@ -31,8 +31,8 @@ internal data class SaveUserSettings( val blocking_keywords: List? = null, val open_links_in_new_tab: Boolean? = null, val infinite_scroll_enabled: Boolean? = null, - val enable_animated_images: Boolean? = null, - val enable_private_messages: Boolean? = null, + val animated_images_enabled: Boolean? = null, + val private_messages_enabled: Boolean? = null, val collapse_bot_comments: Boolean? = null, val show_score: Boolean? = null, val show_upvotes: Boolean? = null, From badc578ff9aad32ee868a0401dd70eb297eef46e Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Sun, 24 May 2026 16:57:08 +0200 Subject: [PATCH 075/110] Update the genTypes script --- .../main/kotlin/autogenscripts/GenTypes.kt | 468 +++++++++++------- 1 file changed, 277 insertions(+), 191 deletions(-) diff --git a/GeneratorScripts/src/main/kotlin/autogenscripts/GenTypes.kt b/GeneratorScripts/src/main/kotlin/autogenscripts/GenTypes.kt index 24f676b8..759b15f2 100644 --- a/GeneratorScripts/src/main/kotlin/autogenscripts/GenTypes.kt +++ b/GeneratorScripts/src/main/kotlin/autogenscripts/GenTypes.kt @@ -12,237 +12,323 @@ import kotlin.system.exitProcess const val ROOT_PATH = "app/src/commonMain/kotlin/" const val ROOT_PACKAGE_PATH = "it/vercruysse/lemmyapi/" const val ROOT_PACKAGE = "it.vercruysse.lemmyapi." -const val CUSTOM_DATATYPES_PACKAGE = "dto." +const val ENUMS_PACKAGE = "enums." -val filesThatShouldNotBeAdded = setOf("SuccessResponse.ts", "OpenGraphData.ts") +val filesThatShouldNotBeAdded = setOf("SuccessResponse", "OpenGraphData", "AllLemmyErrors", "NodeInfo", "NodeInfoServices", "NodeInfoSoftware", "NodeInfoUsage", "NodeInfoUsers") val propsThatShouldBeInt = setOf("my_vote") +// ============================================================ +// Enum Replacement Configuration +// ============================================================ + +// Field names whose String type should be replaced with a specific enum, regardless of which file they appear in. +// File-specific overrides take priority (see fileFieldEnumOverrides below). +val globalFieldEnums = mapOf( + "listing_type" to "ListingType", + "registration_mode" to "RegistrationMode", + "subscribed" to "SubscribedType", + "feature_type" to "PostFeatureType", + "post_listing_mode" to "PostListingMode", + "sort_type" to "SortType", + "visibility" to "CommunityVisibility", + "follow_state" to "CommunityFollowerState", + "post_upvotes" to "FederationMode", + "post_downvotes" to "FederationMode", + "comment_upvotes" to "FederationMode", + "comment_downvotes" to "FederationMode", + "show_downvotes" to "VoteShow", + // Defaults for ambiguous fields overridden per file below + "type_" to "ListingType", + "sort" to "SortType", +) + +// Per-file overrides: fileName (without extension) → (fieldName → enum class). +// These take priority over globalFieldEnums for the given file. +val fileFieldEnumOverrides = mapOf( + "GetComments" to mapOf("sort" to "CommentSortType"), + "GetPersonMentions" to mapOf("sort" to "CommentSortType"), + "GetReplies" to mapOf("sort" to "CommentSortType"), + "AdminListUsers" to mapOf("sort" to "LocalUserSortType"), + "ListMultiCommunities" to mapOf("sort" to "MultiCommunitySortType", "type_" to "MultiCommunityListingType"), + "ListPersonContent" to mapOf("type_" to "PersonContentType"), + "ListPersonSaved" to mapOf("type_" to "PersonContentType"), + "ListPersonLiked" to mapOf("type_" to "PersonContentType"), + "ListNotifications" to mapOf("type_" to "NotificationDataType"), + "ListReports" to mapOf("type_" to "ReportType"), + "Search" to mapOf("type_" to "SearchType"), + "SearchResponse" to mapOf("type_" to "SearchType"), + "GetModlog" to mapOf("type_" to "ModlogActionType"), + "Notification" to mapOf("kind" to "NotificationType"), + "Modlog" to mapOf("kind" to "ModlogKind"), + "GetFederatedInstances" to mapOf("kind" to "GetFederatedInstancesKind"), + "CommunityActions" to mapOf("notifications" to "CommunityNotificationsMode"), + "PostActions" to mapOf("notifications" to "PostNotificationsMode"), + "EditCommunityNotifications" to mapOf("mode" to "CommunityNotificationsMode"), + "EditPostNotifications" to mapOf("mode" to "PostNotificationsMode"), +) + +// ============================================================ +// Sealed Interface Configuration +// ============================================================ + +// Sealed interfaces that are not generated by dukat but must exist in the datatypes package. +// Maps the interface name to its @JsonClassDiscriminator field, and whether it needs @Serializable. +data class SealedInterface(val discriminator: String, val serializable: Boolean = false) + +// TODO: don't know yet if serializable required but also it breaks the generated code +val sealedInterfaces = mapOf( + "PostOrCommentOrPrivateMessage" to SealedInterface("type_"), + "SearchCombinedView" to SealedInterface("type_"), + "ReportCombinedView" to SealedInterface("type_"), + "NotificationData" to SealedInterface("type_", serializable = false), + "PostCommentCombinedView" to SealedInterface("type_"), +) + +// Which data classes implement which sealed interfaces and what @SerialName they carry. +data class SealedImpl(val serialName: String, val interfaces: List) + +val sealedImplementations = mapOf( + "Comment" to SealedImpl("comment", listOf("PostOrCommentOrPrivateMessage")), + "Post" to SealedImpl("post", listOf("PostOrCommentOrPrivateMessage")), + "PrivateMessage" to SealedImpl("private_message", listOf("PostOrCommentOrPrivateMessage")), + "CommentView" to SealedImpl("comment", listOf("SearchCombinedView", "NotificationData", "PostCommentCombinedView")), + "PostView" to SealedImpl("post", listOf("SearchCombinedView", "PostCommentCombinedView")), + "CommunityView" to SealedImpl("community", listOf("SearchCombinedView")), + "PersonView" to SealedImpl("person", listOf("SearchCombinedView")), + "MultiCommunityView" to SealedImpl("multi_community", listOf("SearchCombinedView")), + "CommentReportView" to SealedImpl("comment", listOf("ReportCombinedView")), + "PostReportView" to SealedImpl("post", listOf("ReportCombinedView")), + "CommunityReportView" to SealedImpl("community", listOf("ReportCombinedView")), + "PrivateMessageReportView" to SealedImpl("private_message", listOf("ReportCombinedView")), + "PrivateMessageView" to SealedImpl("private_message", listOf("NotificationData")), + "ModlogView" to SealedImpl("mod_action", listOf("NotificationData")), +) + +// ============================================================ +// Helpers +// ============================================================ + fun getTypesPath( version: String, temp: Boolean = true, ) = "$ROOT_PATH$ROOT_PACKAGE_PATH$version/datatypes" + if (temp) "/temp" else "" -fun isInteger(@Suppress("UNUSED_PARAMETER") _l: String) = true - fun getDownloadLink(tag: String) = "https://github.com/LemmyNet/lemmy-js-client/archive/refs/tags/$tag.zip" -// Requires that dukat is installed https://github.com/Kotlin/dukat -// Rewrites the TS types to Kotlin types -fun downloadTypes( - version: String, - subLocation: String, -) { - val temp = File("temp") - temp.mkdir() - - val lemmyJsClient = File("temp", "lemmy-js.zip") +/** Replaces `fieldName: String` with `fieldName: EnumClass` on a single line, adding the import if matched. */ +fun String.replaceFieldEnum( + fieldName: String, + enumClass: String, + imports: MutableSet, + rootPackage: String, +): String { + val pattern = "$fieldName: String" + if (!contains(pattern)) return this + imports.add("import $rootPackage${ENUMS_PACKAGE}$enumClass") + return replace(pattern, "$fieldName: $enumClass") +} - runBlocking { - client.get(getDownloadLink(version)) - .bodyAsChannel() - .copyAndClose(lemmyJsClient.writeChannel()) +/** + * Resolves `dynamic /* ... */` union types (produced by dukat for TypeScript union types) + * back to the appropriate sealed interface type. + */ +fun resolveDynamicType(line: String): String { + if ("dynamic" !in line) return line + + val sealedType = when { + // Post (but not PostView) signals PostOrCommentOrPrivateMessage + Regex("""\bPost\b(?!View)""").containsMatchIn(line) -> "PostOrCommentOrPrivateMessage" + // ModlogView only appears in NotificationData, not SearchCombinedView + "ModlogView" in line -> "NotificationData" + // CommunityView only appears in SearchCombinedView + "CommunityView" in line -> "SearchCombinedView" + else -> return line } + val isOptional = "= null" in line - val dest = File(getTypesPath(subLocation)) + return line + .replace(Regex("""List"""), "List<$sealedType>") + .replace(Regex("""dynamic /\*.*?\*/"""), "$sealedType${if (isOptional) "?" else ""}") +} + +/** Applies all field→enum replacements to a single line. File-specific overrides take priority. */ +fun applyEnumReplacements(line: String, fileName: String, imports: MutableSet, rootPackage: String): String { + val fileOverrides = fileFieldEnumOverrides[fileName] ?: emptyMap() + val effectiveReplacements = globalFieldEnums + fileOverrides - for (typeFile in dest.listFiles() ?: emptyArray()) { - typeFile.delete() + return effectiveReplacements.entries.fold(line) { acc, (fieldName, enumClass) -> + acc.replaceFieldEnum(fieldName, enumClass, imports, rootPackage) } - dest.mkdirs() +} - val zip = ZipFile(lemmyJsClient) - val path = "lemmy-js-client-$version/src/types" +/** Transforms a single line from dukat-output syntax to Kotlin data class syntax. */ +fun processLine(line: String, fileName: String, imports: MutableSet, rootPackage: String): String { + var k = line + .replace("interface ", "internal data class ") + .replace("typealias ", "internal typealias ") + .replace(" {", "(") + .replace("}", ")") - for (entry in zip.entries()) { - if (entry.name.startsWith(path) && !entry.isDirectory) { - val name = entry.name.substring(path.length) - val f = File(dest, name) + if (k.contains("?") && !k.contains("=")) k += " = null" + if (k.contains(":")) k += "," - if(filesThatShouldNotBeAdded.contains(name)) { - continue - } + k = k.replace(Regex("""\bvar\b"""), "val") + .replace(Regex("""\bArray\b"""), "List") - f.createNewFile() - f.writeBytes(zip.getInputStream(entry).readAllBytes()) - } + k = if (propsThatShouldBeInt.any { k.contains(it) }) { + k.replace(Regex("""\bNumber\b"""), "Int") + } else { + k.replace(Regex("""\bNumber\b"""), "Long") + } + + if ("my_vote" in k) { + k = k.replace(Regex("""\bmy_vote: Int\? = null\b"""), "my_vote: Int = 0") } - println("Zip files extracted") + k = resolveDynamicType(k) + k = applyEnumReplacements(k, fileName, imports, rootPackage) + + return k +} + +/** + * Adds @SerialName annotation and sealed interface implementations to a data class body, + * if the type is configured in sealedImplementations. + */ +fun addSealedInterfaceImpl(content: String, fileName: String, imports: MutableSet): String { + val impl = sealedImplementations[fileName] ?: return content + + imports.add("import kotlinx.serialization.SerialName") + val interfaceList = impl.interfaces.joinToString(", ") + + val withSerialName = content.replace( + "internal data class $fileName(", + "@SerialName(\"${impl.serialName}\")\ninternal data class $fileName(", + ) + // Replace the last `)` (closing of the data class) with `) : InterfaceList` + val lastParen = withSerialName.lastIndexOf(')') + return withSerialName.substring(0, lastParen) + ") : $interfaceList" + withSerialName.substring(lastParen + 1) +} + +/** Generates a sealed interface .kt file for each entry in sealedInterfaces. */ +fun writeSealedInterfaces(datatypesDir: File, packageName: String) { + for ((name, info) in sealedInterfaces) { + val serializableImport = if (info.serializable) "\nimport kotlinx.serialization.Serializable" else "" + val serializableAnnotation = if (info.serializable) "\n@Serializable" else "" - val datatypes = File(getTypesPath(subLocation, false)) + File(datatypesDir, "$name.kt").writeText( + """ + package $packageName - val command = - mutableListOf( - "bash", - "-ic", - "dukat temp/*.ts", - "exit" + import kotlinx.serialization.ExperimentalSerializationApi$serializableImport + import kotlinx.serialization.json.JsonClassDiscriminator + + @OptIn(ExperimentalSerializationApi::class)$serializableAnnotation + @JsonClassDiscriminator("${info.discriminator}") + internal sealed interface $name + """.trimIndent() + "\n" ) + } +} - println("Starting Dukat process...") - val proc = ProcessBuilder(command) - .directory(datatypes) - .start() +/** Processes a single dukat-generated .d.kt file into a clean Kotlin datatype file. */ +fun processDukatFile(typeFile: File, fileName: String, packageName: String, rootPackage: String) { + val originalContent = typeFile.readText() + val isTypealias = originalContent.contains("typealias") + + val imports = mutableSetOf() + if (!isTypealias) imports.add("import kotlinx.serialization.Serializable") + + val lines = originalContent + .lines() + .drop(16) // Remove dukat-generated header + .filter { !it.contains("definedExternally") } + .map { processLine(it, fileName, imports, rootPackage) } + + var body = lines.joinToString("\n") + if (!isTypealias) body = addSealedInterfaceImpl(body, fileName, imports) + + val outputFile = File(typeFile.parentFile, "$fileName.kt") + outputFile.writeText(buildString { + appendLine("package $packageName") + appendLine() + imports.sorted().forEach { appendLine(it) } + if (imports.isNotEmpty()) appendLine() + if (!isTypealias) appendLine("@Serializable") + append(body) + if (!body.endsWith("\n")) appendLine() + }) + + typeFile.delete() +} +// ============================================================ +// Main entry point +// ============================================================ -// val errMsg = String(proc.errorStream.readAllBytes()) -// -// if (errMsg.isNotBlank()) { -// throw Exception(errMsg) -// } +// Requires that dukat is installed https://github.com/Kotlin/dukat +// Rewrites the TS types to Kotlin types +fun downloadTypes( + version: String, + subLocation: String, +) { + val packageName = "$ROOT_PACKAGE${subLocation.replace("/", ".")}.datatypes" + val tempDir = File("temp").also { it.mkdir() } + val zipFile = File(tempDir, "lemmy-js.zip") - println(String(proc.inputStream.readAllBytes())) + runBlocking { + client.get(getDownloadLink(version)) + .bodyAsChannel() + .copyAndClose(zipFile.writeChannel()) + } - for (typeFile in datatypes.listFiles()!!) { - if (typeFile.name.startsWith("lib")) { - typeFile.delete() - } else if (typeFile.name.endsWith(".kt") && typeFile.isFile()) { - val originalTypeFile = typeFile.readText() - - val fileName = typeFile.name.substringBefore(".") - val f = File(datatypes, "$fileName.kt") - f.createNewFile() - - // Add header for each file - f.writeText( - """ - package $ROOT_PACKAGE${subLocation.replace("/", ".")}.datatypes - - """.trimIndent(), - ) - - var imports = "" - - // typealiases are not serializable - if (!originalTypeFile.contains("typealias")) { - imports += "import kotlinx.serialization.Serializable\n\n@Serializable" - } + // Extract .ts files to datatypes/temp/ + val tsDestDir = File(getTypesPath(subLocation)).also { it.mkdirs() } + tsDestDir.listFiles()?.forEach { it.delete() } + + ZipFile(zipFile).use { zip -> + val tsPath = "lemmy-js-client-$version/src/types/" + for (entry in zip.entries()) { + if (!entry.name.startsWith(tsPath) || entry.isDirectory) continue + val name = entry.name.substring(tsPath.length) + val nameOnly = name.substringBefore(".") + if (nameOnly in filesThatShouldNotBeAdded) continue + File(tsDestDir, name).writeBytes(zip.getInputStream(entry).readAllBytes()) + } + } + println("TS files extracted") - val lines = - originalTypeFile - .split(Regex("\r?\n")) - .drop(15) // Remove weird dukat imports - .filter { !it.contains("definedExternally") } // Remove these weird getters and setters - .map { line -> - // Convert interface to data class - var k = - line.replace("interface ", "internal data class ") - .replace("typealias ", "internal typealias ") - .replace(" {", "(") - .replace("}", ")") - - if (k.contains("?") && !k.contains("=")) { - k += " = null" - } - - if (k.contains(":")) { - k += "," - } - - // Better align with kotlin conventions - k = - k.replace(Regex("""\b(var)\b"""), "val") - .replace(Regex("""\b(Array)\b"""), "List") - - k = - if (isInteger(k)) { - if (propsThatShouldBeInt.any { k.contains(it) }) { - k.replace(Regex("""\b(Number)\b"""), "Int") - } else { - k.replace(Regex("""\b(Number)\b"""), "Long") - } - } else { - k.replace(Regex("""\b(Number)\b"""), "Float") - } - - if (k.contains("my_vote")) { - k = k.replace(Regex("""\b(my_vote: Int\? = null)\b"""), "my_vote: Int = 0") - } - - // Add the CustomDataTypes, that aren't autogenerated - k = - k.replace(Regex("listing_type: String")) { _ -> - imports = "import $ROOT_PACKAGE${CUSTOM_DATATYPES_PACKAGE}ListingType\n$imports" - "listing_type: ListingType" - } - k = - when (fileName) { - "SearchResponse", "Search" -> { - k.replace(Regex("type_: String")) { _ -> - imports = "import $ROOT_PACKAGE${CUSTOM_DATATYPES_PACKAGE}SearchType\n$imports" - "type_: SearchType" - } - } - - "GetModlog" -> { - k.replace(Regex("type_: String")) { _ -> - imports = "import $ROOT_PACKAGE${CUSTOM_DATATYPES_PACKAGE}ModlogActionType\n$imports" - "type_: ModlogActionType" - } - } - - else -> { - k.replace(Regex("type_: String")) { _ -> - imports = "import $ROOT_PACKAGE${CUSTOM_DATATYPES_PACKAGE}ListingType\n$imports" - "type_: ListingType" - } - } - } - - if (fileName == "GetComments" || fileName == "GetPersonMentions" || fileName == "GetReplies") { - k.replace(Regex("sort: String")) { _ -> - imports = "import $ROOT_PACKAGE${CUSTOM_DATATYPES_PACKAGE}CommentSortType\n$imports" - "sort: CommentSortType" - } - } else { - k.replace(Regex("sort: String")) { _ -> - imports = "import $ROOT_PACKAGE${CUSTOM_DATATYPES_PACKAGE}SortType\n$imports" - "sort: SortType" - }.replace(Regex("sort_type: String")) { _ -> - imports = "import $ROOT_PACKAGE${CUSTOM_DATATYPES_PACKAGE}SortType\n$imports" - "sort_type: SortType" - } - } - .replace(Regex("registration_mode: String")) { _ -> - imports = "import $ROOT_PACKAGE${CUSTOM_DATATYPES_PACKAGE}RegistrationMode\n$imports" - "registration_mode: RegistrationMode" - } - .replace(Regex("subscribed: String")) { _ -> - imports = "import $ROOT_PACKAGE${CUSTOM_DATATYPES_PACKAGE}SubscribedType\n$imports" - "subscribed: SubscribedType" - } - .replace(Regex("feature_type: String")) { _ -> - imports = "import $ROOT_PACKAGE${CUSTOM_DATATYPES_PACKAGE}PostFeatureType\n$imports" - "feature_type: PostFeatureType" - } - .replace(Regex("post_listing_mode: String")) { _ -> - imports = "import $ROOT_PACKAGE${CUSTOM_DATATYPES_PACKAGE}PostListingMode\n$imports" - "post_listing_mode: PostListingMode" - } - } - - if (imports != "") { - f.appendText("\n") - f.appendText(imports) - } + val datatypesDir = File(getTypesPath(subLocation, false)) + datatypesDir.listFiles()?.forEach { if (it.name != "temp") it.deleteRecursively() } - f.appendText(lines.joinToString("\n")) + // Run dukat: reads from temp/*.ts, writes .d.kt files to datatypesDir + println("Starting Dukat process...") + val proc = ProcessBuilder("bash", "-ic", "dukat temp/*.ts", "exit") + .directory(datatypesDir) + .start() + println(String(proc.inputStream.readAllBytes())) - // Must end in a newline to pass formatter - if (lines.last() != "" && lines.last() != "\r") { - f.appendText("\n") + // Process each dukat-generated .d.kt → clean .kt + datatypesDir.listFiles()!!.forEach { typeFile -> + when { + typeFile.name.startsWith("lib") -> typeFile.delete() + typeFile.isFile && typeFile.name.endsWith(".kt") -> { + val fileName = typeFile.name.substringBefore(".") + processDukatFile(typeFile, fileName, packageName, ROOT_PACKAGE) } - typeFile.delete() } } - dest.deleteRecursively() - temp.deleteRecursively() + writeSealedInterfaces(datatypesDir, packageName) + + tsDestDir.deleteRecursively() + tempDir.deleteRecursively() println("Finished!") } fun main() { - downloadTypes("1.0.0-suggested-community-fixes.0", "v1/x0/x1") + // Future version 1.0.0-beta.0 + downloadTypes("1.0.0-beta.0", "v1/x0/x0") exitProcess(0) } From f698e9c3f6e85762af35672b3c5a9672c0933cb4 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Sun, 24 May 2026 17:19:21 +0200 Subject: [PATCH 076/110] Add ListPersons endpoint --- .../lemmyapi/LemmyApiBaseController.kt | 7 +++++++ .../lemmyapi/datatypes/ListPersons.kt | 18 ++++++++++++++++ .../lemmyapi/enums/PersonSortType.kt | 21 +++++++++++++++++++ .../lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt | 2 ++ .../lemmyapi/v0/x18/x5/Transformer.kt | 4 ++-- .../lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt | 2 ++ .../lemmyapi/v0/x19/x0/Transformer.kt | 4 ++-- .../lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt | 2 ++ .../lemmyapi/v0/x19/x11/Transformer.kt | 4 ++-- .../lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt | 2 ++ .../lemmyapi/v0/x19/x3/Transformer.kt | 4 ++-- .../lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt | 2 ++ .../lemmyapi/v0/x19/x4/Transformer.kt | 4 ++-- .../lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt | 2 ++ .../lemmyapi/v0/x19/x6/Transformer.kt | 4 ++-- .../lemmyapi/v1/x0/x0/LemmyApiController.kt | 4 ++++ .../lemmyapi/v1/x0/x0/LemmyApiRouter.kt | 3 +++ .../lemmyapi/v1/x0/x0/LemmyApiUniWrapper.kt | 5 +++++ .../lemmyapi/v1/x0/x0/MapperGenerator.kt | 1 + .../lemmyapi/v1/x0/x0/Transformer.kt | 19 +++++++++++++---- .../v1/x0/x0/datatypes/ListPersons.kt | 15 +++++++++++++ 21 files changed, 113 insertions(+), 16 deletions(-) create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersons.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/PersonSortType.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersons.kt diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt index 0ac125a0..e87ff170 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt @@ -377,6 +377,13 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version */ abstract suspend fun getPersonDetails(form: GetPersonDetails): Result + /** + * List persons. + * + * @GET("person/list") + */ + abstract suspend fun listPersons(form: ListPersons): Result> + /** * List the content for a person. * diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersons.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersons.kt new file mode 100644 index 00000000..471c2a54 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersons.kt @@ -0,0 +1,18 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.enums.PersonSortType +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class ListPersons( + val type_: ListingType? /* "all" | "local" */ = null, + val sort: PersonSortType? /* "new" | "old" | "post_score" | "comment_score" */ = null, + val search_term: String? = null, + val search_title_only: Boolean? = null, + val page_cursor: PaginationCursor? = null, + val limit: Long? = null, +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/PersonSortType.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/PersonSortType.kt new file mode 100644 index 00000000..5162a777 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/PersonSortType.kt @@ -0,0 +1,21 @@ +package it.vercruysse.lemmyapi.enums + +import io.github.z4kn4fein.semver.Version +import it.vercruysse.lemmyapi.V1_0_0 +import kotlinx.serialization.SerialName +import kotlinx.serialization.Serializable + +@Serializable +enum class PersonSortType(override val minimumVersion: Version = V1_0_0, override val maximumVersion: Version? = null) : VersionTracker { + @SerialName("new") + New, + + @SerialName("old") + Old, + + @SerialName("post_score") + PostScore, + + @SerialName("comment_score") + CommentScore, +} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt index 3913de32..aadc060e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt @@ -1253,4 +1253,6 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun deleteMediaAdmin(form: it.vercruysse.lemmyapi.datatypes.DeleteImageParams): Result = notSupported() override suspend fun imageHealth(): Result = notSupported() + + override suspend fun listPersons(form: it.vercruysse.lemmyapi.datatypes.ListPersons): Result> = notSupported() } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt index b16a1300..18d8e2b3 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt @@ -28,6 +28,7 @@ import it.vercruysse.lemmyapi.datatypes.BlockCommunity as LemmyapiDatatypesBlock import it.vercruysse.lemmyapi.datatypes.BlockPerson as LemmyapiDatatypesBlockPerson import it.vercruysse.lemmyapi.datatypes.CaptchaResponse as LemmyapiDatatypesCaptchaResponse import it.vercruysse.lemmyapi.datatypes.ChangePassword as LemmyapiDatatypesChangePassword +import it.vercruysse.lemmyapi.datatypes.ChangePasswordAfterReset as LemmyapiDatatypesPasswordChangeAfterReset import it.vercruysse.lemmyapi.datatypes.Comment as LemmyapiDatatypesComment import it.vercruysse.lemmyapi.datatypes.CommentReport as LemmyapiDatatypesCommentReport import it.vercruysse.lemmyapi.datatypes.CommentReportResponse as LemmyapiDatatypesCommentReportResponse @@ -98,8 +99,6 @@ import it.vercruysse.lemmyapi.datatypes.LockPost as LemmyapiDatatypesLockPost import it.vercruysse.lemmyapi.datatypes.Login as LemmyapiDatatypesLogin import it.vercruysse.lemmyapi.datatypes.LoginResponse as LemmyapiDatatypesLoginResponse import it.vercruysse.lemmyapi.datatypes.MyUserInfo as LemmyapiDatatypesMyUserInfo -import it.vercruysse.lemmyapi.datatypes.ChangePasswordAfterReset as LemmyapiDatatypesPasswordChangeAfterReset -import it.vercruysse.lemmyapi.datatypes.ResetPassword as LemmyapiDatatypesPasswordReset import it.vercruysse.lemmyapi.datatypes.Person as LemmyapiDatatypesPerson import it.vercruysse.lemmyapi.datatypes.PersonResponse as LemmyapiDatatypesPersonResponse import it.vercruysse.lemmyapi.datatypes.PersonView as LemmyapiDatatypesPersonView @@ -126,6 +125,7 @@ import it.vercruysse.lemmyapi.datatypes.RegistrationApplicationView as LemmyapiD import it.vercruysse.lemmyapi.datatypes.RemoveComment as LemmyapiDatatypesRemoveComment import it.vercruysse.lemmyapi.datatypes.RemoveCommunity as LemmyapiDatatypesRemoveCommunity import it.vercruysse.lemmyapi.datatypes.RemovePost as LemmyapiDatatypesRemovePost +import it.vercruysse.lemmyapi.datatypes.ResetPassword as LemmyapiDatatypesPasswordReset import it.vercruysse.lemmyapi.datatypes.ResolveCommentReport as LemmyapiDatatypesResolveCommentReport import it.vercruysse.lemmyapi.datatypes.ResolveObject as LemmyapiDatatypesResolveObject import it.vercruysse.lemmyapi.datatypes.ResolvePostReport as LemmyapiDatatypesResolvePostReport diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt index 230a495e..3c18972c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt @@ -1214,4 +1214,6 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun deleteMediaAdmin(form: it.vercruysse.lemmyapi.datatypes.DeleteImageParams): Result = notSupported() override suspend fun imageHealth(): Result = notSupported() + + override suspend fun listPersons(form: it.vercruysse.lemmyapi.datatypes.ListPersons): Result> = notSupported() } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt index d21eb6a7..b055bc48 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt @@ -26,6 +26,7 @@ import it.vercruysse.lemmyapi.datatypes.BlockCommunity as LemmyapiDatatypesBlock import it.vercruysse.lemmyapi.datatypes.BlockPerson as LemmyapiDatatypesBlockPerson import it.vercruysse.lemmyapi.datatypes.CaptchaResponse as LemmyapiDatatypesCaptchaResponse import it.vercruysse.lemmyapi.datatypes.ChangePassword as LemmyapiDatatypesChangePassword +import it.vercruysse.lemmyapi.datatypes.ChangePasswordAfterReset as LemmyapiDatatypesPasswordChangeAfterReset import it.vercruysse.lemmyapi.datatypes.Comment as LemmyapiDatatypesComment import it.vercruysse.lemmyapi.datatypes.CommentReport as LemmyapiDatatypesCommentReport import it.vercruysse.lemmyapi.datatypes.CommentReportResponse as LemmyapiDatatypesCommentReportResponse @@ -102,8 +103,6 @@ import it.vercruysse.lemmyapi.datatypes.LoginResponse as LemmyapiDatatypesLoginR import it.vercruysse.lemmyapi.datatypes.LoginToken as LemmyapiDatatypesLoginToken import it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead as LemmyapiDatatypesMarkPostAsRead import it.vercruysse.lemmyapi.datatypes.MyUserInfo as LemmyapiDatatypesMyUserInfo -import it.vercruysse.lemmyapi.datatypes.ChangePasswordAfterReset as LemmyapiDatatypesPasswordChangeAfterReset -import it.vercruysse.lemmyapi.datatypes.ResetPassword as LemmyapiDatatypesPasswordReset import it.vercruysse.lemmyapi.datatypes.Person as LemmyapiDatatypesPerson import it.vercruysse.lemmyapi.datatypes.PersonView as LemmyapiDatatypesPersonView import it.vercruysse.lemmyapi.datatypes.Post as LemmyapiDatatypesPost @@ -129,6 +128,7 @@ import it.vercruysse.lemmyapi.datatypes.RegistrationApplicationView as LemmyapiD import it.vercruysse.lemmyapi.datatypes.RemoveComment as LemmyapiDatatypesRemoveComment import it.vercruysse.lemmyapi.datatypes.RemoveCommunity as LemmyapiDatatypesRemoveCommunity import it.vercruysse.lemmyapi.datatypes.RemovePost as LemmyapiDatatypesRemovePost +import it.vercruysse.lemmyapi.datatypes.ResetPassword as LemmyapiDatatypesPasswordReset import it.vercruysse.lemmyapi.datatypes.ResolveCommentReport as LemmyapiDatatypesResolveCommentReport import it.vercruysse.lemmyapi.datatypes.ResolveObject as LemmyapiDatatypesResolveObject import it.vercruysse.lemmyapi.datatypes.ResolvePostReport as LemmyapiDatatypesResolvePostReport diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt index e716717e..897c10fa 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt @@ -1223,4 +1223,6 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun deleteMediaAdmin(form: it.vercruysse.lemmyapi.datatypes.DeleteImageParams): Result = notSupported() override suspend fun imageHealth(): Result = notSupported() + + override suspend fun listPersons(form: it.vercruysse.lemmyapi.datatypes.ListPersons): Result> = notSupported() } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt index 5d6cb2fa..e0d5c9ab 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt @@ -25,6 +25,7 @@ import it.vercruysse.lemmyapi.datatypes.BlockCommunity as LemmyapiDatatypesBlock import it.vercruysse.lemmyapi.datatypes.BlockPerson as LemmyapiDatatypesBlockPerson import it.vercruysse.lemmyapi.datatypes.CaptchaResponse as LemmyapiDatatypesCaptchaResponse import it.vercruysse.lemmyapi.datatypes.ChangePassword as LemmyapiDatatypesChangePassword +import it.vercruysse.lemmyapi.datatypes.ChangePasswordAfterReset as LemmyapiDatatypesPasswordChangeAfterReset import it.vercruysse.lemmyapi.datatypes.Comment as LemmyapiDatatypesComment import it.vercruysse.lemmyapi.datatypes.CommentReport as LemmyapiDatatypesCommentReport import it.vercruysse.lemmyapi.datatypes.CommentReportResponse as LemmyapiDatatypesCommentReportResponse @@ -111,8 +112,6 @@ import it.vercruysse.lemmyapi.datatypes.LoginResponse as LemmyapiDatatypesLoginR import it.vercruysse.lemmyapi.datatypes.LoginToken as LemmyapiDatatypesLoginToken import it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead as LemmyapiDatatypesMarkPostAsRead import it.vercruysse.lemmyapi.datatypes.MyUserInfo as LemmyapiDatatypesMyUserInfo -import it.vercruysse.lemmyapi.datatypes.ChangePasswordAfterReset as LemmyapiDatatypesPasswordChangeAfterReset -import it.vercruysse.lemmyapi.datatypes.ResetPassword as LemmyapiDatatypesPasswordReset import it.vercruysse.lemmyapi.datatypes.Person as LemmyapiDatatypesPerson import it.vercruysse.lemmyapi.datatypes.PersonView as LemmyapiDatatypesPersonView import it.vercruysse.lemmyapi.datatypes.Post as LemmyapiDatatypesPost @@ -138,6 +137,7 @@ import it.vercruysse.lemmyapi.datatypes.RegistrationApplicationView as LemmyapiD import it.vercruysse.lemmyapi.datatypes.RemoveComment as LemmyapiDatatypesRemoveComment import it.vercruysse.lemmyapi.datatypes.RemoveCommunity as LemmyapiDatatypesRemoveCommunity import it.vercruysse.lemmyapi.datatypes.RemovePost as LemmyapiDatatypesRemovePost +import it.vercruysse.lemmyapi.datatypes.ResetPassword as LemmyapiDatatypesPasswordReset import it.vercruysse.lemmyapi.datatypes.ResolveCommentReport as LemmyapiDatatypesResolveCommentReport import it.vercruysse.lemmyapi.datatypes.ResolveObject as LemmyapiDatatypesResolveObject import it.vercruysse.lemmyapi.datatypes.ResolvePostReport as LemmyapiDatatypesResolvePostReport diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt index 700b244c..338a917b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt @@ -1213,4 +1213,6 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun deleteMediaAdmin(form: it.vercruysse.lemmyapi.datatypes.DeleteImageParams): Result = notSupported() override suspend fun imageHealth(): Result = notSupported() + + override suspend fun listPersons(form: it.vercruysse.lemmyapi.datatypes.ListPersons): Result> = notSupported() } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt index f1c07d1a..50febde3 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt @@ -28,6 +28,7 @@ import it.vercruysse.lemmyapi.datatypes.BlockCommunity as LemmyapiDatatypesBlock import it.vercruysse.lemmyapi.datatypes.BlockPerson as LemmyapiDatatypesBlockPerson import it.vercruysse.lemmyapi.datatypes.CaptchaResponse as LemmyapiDatatypesCaptchaResponse import it.vercruysse.lemmyapi.datatypes.ChangePassword as LemmyapiDatatypesChangePassword +import it.vercruysse.lemmyapi.datatypes.ChangePasswordAfterReset as LemmyapiDatatypesPasswordChangeAfterReset import it.vercruysse.lemmyapi.datatypes.Comment as LemmyapiDatatypesComment import it.vercruysse.lemmyapi.datatypes.CommentReport as LemmyapiDatatypesCommentReport import it.vercruysse.lemmyapi.datatypes.CommentReportResponse as LemmyapiDatatypesCommentReportResponse @@ -106,8 +107,6 @@ import it.vercruysse.lemmyapi.datatypes.LoginResponse as LemmyapiDatatypesLoginR import it.vercruysse.lemmyapi.datatypes.LoginToken as LemmyapiDatatypesLoginToken import it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead as LemmyapiDatatypesMarkPostAsRead import it.vercruysse.lemmyapi.datatypes.MyUserInfo as LemmyapiDatatypesMyUserInfo -import it.vercruysse.lemmyapi.datatypes.ChangePasswordAfterReset as LemmyapiDatatypesPasswordChangeAfterReset -import it.vercruysse.lemmyapi.datatypes.ResetPassword as LemmyapiDatatypesPasswordReset import it.vercruysse.lemmyapi.datatypes.Person as LemmyapiDatatypesPerson import it.vercruysse.lemmyapi.datatypes.PersonView as LemmyapiDatatypesPersonView import it.vercruysse.lemmyapi.datatypes.Post as LemmyapiDatatypesPost @@ -133,6 +132,7 @@ import it.vercruysse.lemmyapi.datatypes.RegistrationApplicationView as LemmyapiD import it.vercruysse.lemmyapi.datatypes.RemoveComment as LemmyapiDatatypesRemoveComment import it.vercruysse.lemmyapi.datatypes.RemoveCommunity as LemmyapiDatatypesRemoveCommunity import it.vercruysse.lemmyapi.datatypes.RemovePost as LemmyapiDatatypesRemovePost +import it.vercruysse.lemmyapi.datatypes.ResetPassword as LemmyapiDatatypesPasswordReset import it.vercruysse.lemmyapi.datatypes.ResolveCommentReport as LemmyapiDatatypesResolveCommentReport import it.vercruysse.lemmyapi.datatypes.ResolveObject as LemmyapiDatatypesResolveObject import it.vercruysse.lemmyapi.datatypes.ResolvePostReport as LemmyapiDatatypesResolvePostReport diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt index a8bfcd0d..40f92417 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt @@ -1221,4 +1221,6 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun deleteMediaAdmin(form: it.vercruysse.lemmyapi.datatypes.DeleteImageParams): Result = notSupported() override suspend fun imageHealth(): Result = notSupported() + + override suspend fun listPersons(form: it.vercruysse.lemmyapi.datatypes.ListPersons): Result> = notSupported() } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt index d7bc84be..379f7b61 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt @@ -25,6 +25,7 @@ import it.vercruysse.lemmyapi.datatypes.BlockCommunity as LemmyapiDatatypesBlock import it.vercruysse.lemmyapi.datatypes.BlockPerson as LemmyapiDatatypesBlockPerson import it.vercruysse.lemmyapi.datatypes.CaptchaResponse as LemmyapiDatatypesCaptchaResponse import it.vercruysse.lemmyapi.datatypes.ChangePassword as LemmyapiDatatypesChangePassword +import it.vercruysse.lemmyapi.datatypes.ChangePasswordAfterReset as LemmyapiDatatypesPasswordChangeAfterReset import it.vercruysse.lemmyapi.datatypes.Comment as LemmyapiDatatypesComment import it.vercruysse.lemmyapi.datatypes.CommentReport as LemmyapiDatatypesCommentReport import it.vercruysse.lemmyapi.datatypes.CommentReportResponse as LemmyapiDatatypesCommentReportResponse @@ -109,8 +110,6 @@ import it.vercruysse.lemmyapi.datatypes.LoginResponse as LemmyapiDatatypesLoginR import it.vercruysse.lemmyapi.datatypes.LoginToken as LemmyapiDatatypesLoginToken import it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead as LemmyapiDatatypesMarkPostAsRead import it.vercruysse.lemmyapi.datatypes.MyUserInfo as LemmyapiDatatypesMyUserInfo -import it.vercruysse.lemmyapi.datatypes.ChangePasswordAfterReset as LemmyapiDatatypesPasswordChangeAfterReset -import it.vercruysse.lemmyapi.datatypes.ResetPassword as LemmyapiDatatypesPasswordReset import it.vercruysse.lemmyapi.datatypes.Person as LemmyapiDatatypesPerson import it.vercruysse.lemmyapi.datatypes.PersonView as LemmyapiDatatypesPersonView import it.vercruysse.lemmyapi.datatypes.Post as LemmyapiDatatypesPost @@ -136,6 +135,7 @@ import it.vercruysse.lemmyapi.datatypes.RegistrationApplicationView as LemmyapiD import it.vercruysse.lemmyapi.datatypes.RemoveComment as LemmyapiDatatypesRemoveComment import it.vercruysse.lemmyapi.datatypes.RemoveCommunity as LemmyapiDatatypesRemoveCommunity import it.vercruysse.lemmyapi.datatypes.RemovePost as LemmyapiDatatypesRemovePost +import it.vercruysse.lemmyapi.datatypes.ResetPassword as LemmyapiDatatypesPasswordReset import it.vercruysse.lemmyapi.datatypes.ResolveCommentReport as LemmyapiDatatypesResolveCommentReport import it.vercruysse.lemmyapi.datatypes.ResolveObject as LemmyapiDatatypesResolveObject import it.vercruysse.lemmyapi.datatypes.ResolvePostReport as LemmyapiDatatypesResolvePostReport diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt index 39bf4727..e86e3186 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt @@ -1216,4 +1216,6 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun deleteMediaAdmin(form: it.vercruysse.lemmyapi.datatypes.DeleteImageParams): Result = notSupported() override suspend fun imageHealth(): Result = notSupported() + + override suspend fun listPersons(form: it.vercruysse.lemmyapi.datatypes.ListPersons): Result> = notSupported() } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt index c7013f79..ac7697f1 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt @@ -25,6 +25,7 @@ import it.vercruysse.lemmyapi.datatypes.BlockCommunity as LemmyapiDatatypesBlock import it.vercruysse.lemmyapi.datatypes.BlockPerson as LemmyapiDatatypesBlockPerson import it.vercruysse.lemmyapi.datatypes.CaptchaResponse as LemmyapiDatatypesCaptchaResponse import it.vercruysse.lemmyapi.datatypes.ChangePassword as LemmyapiDatatypesChangePassword +import it.vercruysse.lemmyapi.datatypes.ChangePasswordAfterReset as LemmyapiDatatypesPasswordChangeAfterReset import it.vercruysse.lemmyapi.datatypes.Comment as LemmyapiDatatypesComment import it.vercruysse.lemmyapi.datatypes.CommentReport as LemmyapiDatatypesCommentReport import it.vercruysse.lemmyapi.datatypes.CommentReportResponse as LemmyapiDatatypesCommentReportResponse @@ -111,8 +112,6 @@ import it.vercruysse.lemmyapi.datatypes.LoginResponse as LemmyapiDatatypesLoginR import it.vercruysse.lemmyapi.datatypes.LoginToken as LemmyapiDatatypesLoginToken import it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead as LemmyapiDatatypesMarkPostAsRead import it.vercruysse.lemmyapi.datatypes.MyUserInfo as LemmyapiDatatypesMyUserInfo -import it.vercruysse.lemmyapi.datatypes.ChangePasswordAfterReset as LemmyapiDatatypesPasswordChangeAfterReset -import it.vercruysse.lemmyapi.datatypes.ResetPassword as LemmyapiDatatypesPasswordReset import it.vercruysse.lemmyapi.datatypes.Person as LemmyapiDatatypesPerson import it.vercruysse.lemmyapi.datatypes.PersonView as LemmyapiDatatypesPersonView import it.vercruysse.lemmyapi.datatypes.Post as LemmyapiDatatypesPost @@ -138,6 +137,7 @@ import it.vercruysse.lemmyapi.datatypes.RegistrationApplicationView as LemmyapiD import it.vercruysse.lemmyapi.datatypes.RemoveComment as LemmyapiDatatypesRemoveComment import it.vercruysse.lemmyapi.datatypes.RemoveCommunity as LemmyapiDatatypesRemoveCommunity import it.vercruysse.lemmyapi.datatypes.RemovePost as LemmyapiDatatypesRemovePost +import it.vercruysse.lemmyapi.datatypes.ResetPassword as LemmyapiDatatypesPasswordReset import it.vercruysse.lemmyapi.datatypes.ResolveCommentReport as LemmyapiDatatypesResolveCommentReport import it.vercruysse.lemmyapi.datatypes.ResolveObject as LemmyapiDatatypesResolveObject import it.vercruysse.lemmyapi.datatypes.ResolvePostReport as LemmyapiDatatypesResolvePostReport diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiController.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiController.kt index 57af9eb5..e17ba9b7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiController.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiController.kt @@ -305,6 +305,10 @@ internal class LemmyApiController(client: HttpClient, auth: String?) : override suspend fun getPersonDetails(form: GetPersonDetails): Result = client.getResult("person", form) + /** @GET("person/list") */ + override suspend fun listPersons(form: ListPersons): Result> = + client.getResult("person/list", form) + /** @GET("person/content") */ override suspend fun listPersonContent(form: ListPersonContent): Result> = client.getResult("person/content", form) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiRouter.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiRouter.kt index b4c4525b..d0ef66ac 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiRouter.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiRouter.kt @@ -212,6 +212,9 @@ internal abstract class LemmyApiRouter(client: HttpClient, auth: String?) : Auth /** @GET("person") */ abstract suspend fun getPersonDetails(form: GetPersonDetails): Result + /** @GET("person/list") */ + abstract suspend fun listPersons(form: ListPersons): Result> + /** @GET("person/content") */ abstract suspend fun listPersonContent(form: ListPersonContent): Result> diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiUniWrapper.kt index ee93c5ab..0df4d361 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiUniWrapper.kt @@ -194,6 +194,11 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun getPersonDetails(form: it.vercruysse.lemmyapi.datatypes.GetPersonDetails): Result = api.getPersonDetails(transformer.fromUni(form)).map(transformer::toUni) + override suspend fun listPersons(form: it.vercruysse.lemmyapi.datatypes.ListPersons): Result> = + api.listPersons(transformer.fromUni(form)).map { resp -> + PagedResponse(resp.items.map(transformer::toUni)) + } + override suspend fun register(form: it.vercruysse.lemmyapi.datatypes.Register): Result = api.register(transformer.fromUni(form)).map(transformer::toUni) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/MapperGenerator.kt index e480d316..fac07eb8 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/MapperGenerator.kt @@ -240,6 +240,7 @@ internal interface MapperGenerator { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListMultiCommunities): ListMultiCommunities fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListNotifications): ListNotifications fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListPersonContent): ListPersonContent + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListPersons): ListPersons fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListPersonHidden): ListPersonHidden fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListPersonLiked): ListPersonLiked fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListPersonRead): ListPersonRead diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/Transformer.kt index 1c7294d1..2b93f70c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/Transformer.kt @@ -17,6 +17,7 @@ import it.vercruysse.lemmyapi.datatypes.BlockCommunity as LemmyapiDatatypesBlock import it.vercruysse.lemmyapi.datatypes.BlockPerson as LemmyapiDatatypesBlockPerson import it.vercruysse.lemmyapi.datatypes.CaptchaResponse as LemmyapiDatatypesCaptchaResponse import it.vercruysse.lemmyapi.datatypes.ChangePassword as LemmyapiDatatypesChangePassword +import it.vercruysse.lemmyapi.datatypes.ChangePasswordAfterReset as LemmyapiDatatypesPasswordChangeAfterReset import it.vercruysse.lemmyapi.datatypes.Comment as LemmyapiDatatypesComment import it.vercruysse.lemmyapi.datatypes.CommentActions as LemmyapiDatatypesCommentActions import it.vercruysse.lemmyapi.datatypes.CommentReport as LemmyapiDatatypesCommentReport @@ -135,6 +136,7 @@ import it.vercruysse.lemmyapi.datatypes.ListPersonHidden as LemmyapiDatatypesLis import it.vercruysse.lemmyapi.datatypes.ListPersonLiked as LemmyapiDatatypesListPersonLiked import it.vercruysse.lemmyapi.datatypes.ListPersonRead as LemmyapiDatatypesListPersonRead import it.vercruysse.lemmyapi.datatypes.ListPersonSaved as LemmyapiDatatypesListPersonSaved +import it.vercruysse.lemmyapi.datatypes.ListPersons as LemmyapiDatatypesListPersons import it.vercruysse.lemmyapi.datatypes.ListPostLikes as LemmyapiDatatypesListPostLikes import it.vercruysse.lemmyapi.datatypes.ListRegistrationApplications as LemmyapiDatatypesListRegistrationApplications import it.vercruysse.lemmyapi.datatypes.ListReports as LemmyapiDatatypesListReports @@ -168,8 +170,6 @@ import it.vercruysse.lemmyapi.datatypes.Notification as LemmyapiDatatypesNotific import it.vercruysse.lemmyapi.datatypes.NotificationData as LemmyapiDatatypesNotificationData import it.vercruysse.lemmyapi.datatypes.NotificationView as LemmyapiDatatypesNotificationView import it.vercruysse.lemmyapi.datatypes.OAuthAccount as LemmyapiDatatypesOAuthAccount -import it.vercruysse.lemmyapi.datatypes.ChangePasswordAfterReset as LemmyapiDatatypesPasswordChangeAfterReset -import it.vercruysse.lemmyapi.datatypes.ResetPassword as LemmyapiDatatypesPasswordReset import it.vercruysse.lemmyapi.datatypes.PendingFollow as LemmyapiDatatypesPendingFollow import it.vercruysse.lemmyapi.datatypes.PendingFollowerView as LemmyapiDatatypesPendingFollowerView import it.vercruysse.lemmyapi.datatypes.Person as LemmyapiDatatypesPerson @@ -206,6 +206,7 @@ import it.vercruysse.lemmyapi.datatypes.RemoveCommunity as LemmyapiDatatypesRemo import it.vercruysse.lemmyapi.datatypes.RemovePost as LemmyapiDatatypesRemovePost import it.vercruysse.lemmyapi.datatypes.ReportCombinedView as LemmyapiDatatypesReportCombinedView import it.vercruysse.lemmyapi.datatypes.ResendVerificationEmail as LemmyapiDatatypesResendVerificationEmail +import it.vercruysse.lemmyapi.datatypes.ResetPassword as LemmyapiDatatypesPasswordReset import it.vercruysse.lemmyapi.datatypes.ResolveCommentReport as LemmyapiDatatypesResolveCommentReport import it.vercruysse.lemmyapi.datatypes.ResolveCommunityReport as LemmyapiDatatypesResolveCommunityReport import it.vercruysse.lemmyapi.datatypes.ResolveObject as LemmyapiDatatypesResolveObject @@ -247,6 +248,7 @@ import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.BlockCommunity as X0DatatypesBl import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.BlockPerson as X0DatatypesBlockPerson import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CaptchaResponse as X0DatatypesCaptchaResponse import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ChangePassword as X0DatatypesChangePassword +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ChangePasswordAfterReset as X0DatatypesPasswordChangeAfterReset import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.Comment as X0DatatypesComment import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CommentActions as X0DatatypesCommentActions import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CommentReport as X0DatatypesCommentReport @@ -365,6 +367,7 @@ import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ListPersonHidden as X0Datatypes import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ListPersonLiked as X0DatatypesListPersonLiked import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ListPersonRead as X0DatatypesListPersonRead import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ListPersonSaved as X0DatatypesListPersonSaved +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ListPersons as X0DatatypesListPersons import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ListPostLikes as X0DatatypesListPostLikes import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ListRegistrationApplications as X0DatatypesListRegistrationApplications import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ListReports as X0DatatypesListReports @@ -398,8 +401,6 @@ import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.Notification as X0DatatypesNoti import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.NotificationData as X0DatatypesNotificationData import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.NotificationView as X0DatatypesNotificationView import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.OAuthAccount as X0DatatypesOAuthAccount -import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ChangePasswordAfterReset as X0DatatypesPasswordChangeAfterReset -import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ResetPassword as X0DatatypesPasswordReset import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PendingFollow as X0DatatypesPendingFollow import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PendingFollowerView as X0DatatypesPendingFollowerView import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.Person as X0DatatypesPerson @@ -436,6 +437,7 @@ import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.RemoveCommunity as X0DatatypesR import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.RemovePost as X0DatatypesRemovePost import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ReportCombinedView as X0DatatypesReportCombinedView import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ResendVerificationEmail as X0DatatypesResendVerificationEmail +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ResetPassword as X0DatatypesPasswordReset import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ResolveCommentReport as X0DatatypesResolveCommentReport import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ResolveCommunityReport as X0DatatypesResolveCommunityReport import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ResolveObject as X0DatatypesResolveObject @@ -2185,6 +2187,15 @@ internal class Transformer : MapperGenerator { limit = d.limit, ) + override fun fromUni(d: LemmyapiDatatypesListPersons): X0DatatypesListPersons = X0DatatypesListPersons( + type_ = d.type_, + sort = d.sort, + search_term = d.search_term, + search_title_only = d.search_title_only, + page_cursor = d.page_cursor, + limit = d.limit, + ) + override fun fromUni(d: LemmyapiDatatypesListPersonHidden): X0DatatypesListPersonHidden = X0DatatypesListPersonHidden( page_cursor = d.page_cursor, limit = d.limit, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersons.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersons.kt new file mode 100644 index 00000000..b2fe8bca --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersons.kt @@ -0,0 +1,15 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.enums.PersonSortType +import kotlinx.serialization.Serializable + +@Serializable +internal data class ListPersons( + val type_: ListingType? /* "all" | "local" */ = null, + val sort: PersonSortType? /* "new" | "old" | "post_score" | "comment_score" */ = null, + val search_term: String? = null, + val search_title_only: Boolean? = null, + val page_cursor: PaginationCursor? = null, + val limit: Long? = null, +) From fc726a00ab44ef9cfecbf9fafceffe365404633e Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Sun, 24 May 2026 17:22:58 +0200 Subject: [PATCH 077/110] Tweak for warning --- .../kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt | 4 ++-- .../kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt | 4 ++-- .../kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt | 4 ++-- .../kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt | 4 ++-- .../kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt | 4 ++-- 5 files changed, 10 insertions(+), 10 deletions(-) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt index b055bc48..c610c55a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt @@ -489,8 +489,8 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X0DatatypesBanPersonResponse): it.vercruysse.lemmyapi.datatypes.PersonResponse = it.vercruysse.lemmyapi.datatypes.PersonResponse(person_view = this.toUni(d = d.person_view)) - override fun toUni(d: X0DatatypesBlockCommunityResponse): it.vercruysse.lemmyapi.datatypes.CommunityResponse = - it.vercruysse.lemmyapi.datatypes.CommunityResponse(community_view = this.toUni(d = d.community_view), discussion_languages = emptyList()) + override fun toUni(d: X0DatatypesBlockCommunityResponse): LemmyapiDatatypesCommunityResponse = + LemmyapiDatatypesCommunityResponse(community_view = this.toUni(d = d.community_view), discussion_languages = emptyList()) override fun toUni(d: X0DatatypesBlockPersonResponse): it.vercruysse.lemmyapi.datatypes.PersonResponse = it.vercruysse.lemmyapi.datatypes.PersonResponse(person_view = this.toUni(d = d.person_view)) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt index e0d5c9ab..0ee199c4 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt @@ -344,8 +344,8 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X11DatatypesBanPersonResponse): it.vercruysse.lemmyapi.datatypes.PersonResponse = it.vercruysse.lemmyapi.datatypes.PersonResponse(person_view = this.toUni(d = d.person_view)) - override fun toUni(d: X11DatatypesBlockCommunityResponse): it.vercruysse.lemmyapi.datatypes.CommunityResponse = - it.vercruysse.lemmyapi.datatypes.CommunityResponse(community_view = this.toUni(d = d.community_view), discussion_languages = emptyList()) + override fun toUni(d: X11DatatypesBlockCommunityResponse): LemmyapiDatatypesCommunityResponse = + LemmyapiDatatypesCommunityResponse(community_view = this.toUni(d = d.community_view), discussion_languages = emptyList()) override fun toUni(d: X11DatatypesBlockPersonResponse): it.vercruysse.lemmyapi.datatypes.PersonResponse = it.vercruysse.lemmyapi.datatypes.PersonResponse(person_view = this.toUni(d = d.person_view)) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt index 50febde3..9c7c63b5 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt @@ -507,8 +507,8 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X3DatatypesBanPersonResponse): it.vercruysse.lemmyapi.datatypes.PersonResponse = it.vercruysse.lemmyapi.datatypes.PersonResponse(person_view = this.toUni(d = d.person_view)) - override fun toUni(d: X3DatatypesBlockCommunityResponse): it.vercruysse.lemmyapi.datatypes.CommunityResponse = - it.vercruysse.lemmyapi.datatypes.CommunityResponse(community_view = this.toUni(d = d.community_view), discussion_languages = emptyList()) + override fun toUni(d: X3DatatypesBlockCommunityResponse): LemmyapiDatatypesCommunityResponse = + LemmyapiDatatypesCommunityResponse(community_view = this.toUni(d = d.community_view), discussion_languages = emptyList()) override fun toUni(d: X3DatatypesBlockPersonResponse): it.vercruysse.lemmyapi.datatypes.PersonResponse = it.vercruysse.lemmyapi.datatypes.PersonResponse(person_view = this.toUni(d = d.person_view)) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt index 379f7b61..0b374e77 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt @@ -340,8 +340,8 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X4DatatypesBanPersonResponse): it.vercruysse.lemmyapi.datatypes.PersonResponse = it.vercruysse.lemmyapi.datatypes.PersonResponse(person_view = this.toUni(d = d.person_view)) - override fun toUni(d: X4DatatypesBlockCommunityResponse): it.vercruysse.lemmyapi.datatypes.CommunityResponse = - it.vercruysse.lemmyapi.datatypes.CommunityResponse(community_view = this.toUni(d = d.community_view), discussion_languages = emptyList()) + override fun toUni(d: X4DatatypesBlockCommunityResponse): LemmyapiDatatypesCommunityResponse = + LemmyapiDatatypesCommunityResponse(community_view = this.toUni(d = d.community_view), discussion_languages = emptyList()) override fun toUni(d: X4DatatypesBlockPersonResponse): it.vercruysse.lemmyapi.datatypes.PersonResponse = it.vercruysse.lemmyapi.datatypes.PersonResponse(person_view = this.toUni(d = d.person_view)) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt index ac7697f1..ca3655cb 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt @@ -344,8 +344,8 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X6DatatypesBanPersonResponse): it.vercruysse.lemmyapi.datatypes.PersonResponse = it.vercruysse.lemmyapi.datatypes.PersonResponse(person_view = this.toUni(d = d.person_view)) - override fun toUni(d: X6DatatypesBlockCommunityResponse): it.vercruysse.lemmyapi.datatypes.CommunityResponse = - it.vercruysse.lemmyapi.datatypes.CommunityResponse(community_view = this.toUni(d = d.community_view), discussion_languages = emptyList()) + override fun toUni(d: X6DatatypesBlockCommunityResponse): LemmyapiDatatypesCommunityResponse = + LemmyapiDatatypesCommunityResponse(community_view = this.toUni(d = d.community_view), discussion_languages = emptyList()) override fun toUni(d: X6DatatypesBlockPersonResponse): it.vercruysse.lemmyapi.datatypes.PersonResponse = it.vercruysse.lemmyapi.datatypes.PersonResponse(person_view = this.toUni(d = d.person_view)) From c07e1ee08b580927b7764d05d15889bd67c20dce Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Sun, 24 May 2026 17:27:49 +0200 Subject: [PATCH 078/110] Update genTypes --- GeneratorScripts/src/main/kotlin/autogenscripts/GenTypes.kt | 1 + 1 file changed, 1 insertion(+) diff --git a/GeneratorScripts/src/main/kotlin/autogenscripts/GenTypes.kt b/GeneratorScripts/src/main/kotlin/autogenscripts/GenTypes.kt index 759b15f2..cb1a6b28 100644 --- a/GeneratorScripts/src/main/kotlin/autogenscripts/GenTypes.kt +++ b/GeneratorScripts/src/main/kotlin/autogenscripts/GenTypes.kt @@ -65,6 +65,7 @@ val fileFieldEnumOverrides = mapOf( "PostActions" to mapOf("notifications" to "PostNotificationsMode"), "EditCommunityNotifications" to mapOf("mode" to "CommunityNotificationsMode"), "EditPostNotifications" to mapOf("mode" to "PostNotificationsMode"), + "ListPersons" to mapOf("sort" to "PersonSortType"), ) // ============================================================ From 4f3c381e881f59b4bb4bf681b9bcf2fd279c66f7 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Sun, 24 May 2026 18:04:58 +0200 Subject: [PATCH 079/110] Update site types --- .../lemmyapi/datatypes/CreateSite.kt | 33 ++++++++++-- .../vercruysse/lemmyapi/datatypes/EditSite.kt | 31 ++++++++++- .../lemmyapi/datatypes/LocalSite.kt | 18 +++++-- .../it/vercruysse/lemmyapi/enums/ImageMode.kt | 18 +++++++ .../lemmyapi/v0/x18/x5/Transformer.kt | 31 ++++++----- .../lemmyapi/v0/x19/x0/Transformer.kt | 31 ++++++----- .../lemmyapi/v0/x19/x11/Transformer.kt | 31 ++++++----- .../lemmyapi/v0/x19/x3/Transformer.kt | 31 ++++++----- .../lemmyapi/v0/x19/x4/Transformer.kt | 31 ++++++----- .../lemmyapi/v0/x19/x6/Transformer.kt | 31 ++++++----- .../lemmyapi/v1/x0/x0/Transformer.kt | 53 ++++++++++++++----- .../lemmyapi/v1/x0/x0/datatypes/CreateSite.kt | 21 ++++++-- .../lemmyapi/v1/x0/x0/datatypes/EditSite.kt | 19 +++++-- .../lemmyapi/v1/x0/x0/datatypes/LocalSite.kt | 18 +++++-- 14 files changed, 288 insertions(+), 109 deletions(-) create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/ImageMode.kt diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateSite.kt index d5152cfc..00e7c7a7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateSite.kt @@ -9,6 +9,7 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.enums.FederationMode +import it.vercruysse.lemmyapi.enums.ImageMode @CommonParcelize @Serializable @@ -21,7 +22,7 @@ data class CreateSite( /** Removed in 1.0.0 */ val banner: String? = null, val community_creation_admin_only: Boolean? = null, - val require_email_verification: Boolean? = null, + val email_verification_required: Boolean? = null, val application_question: String? = null, val private_instance: Boolean? = null, val default_theme: String? = null, @@ -29,9 +30,15 @@ data class CreateSite( val default_post_listing_mode: PostListingMode? /* "List" | "Card" | "SmallCard" */ = null, val default_post_sort_type: SortType? /* "Active" | "Hot" | "New" | "Old" | "Top" | "MostComments" | "NewComments" | "Controversial" | "Scaled" */ = null, val default_post_time_range_seconds: Long? = null, + /** Added in 1.0.0 */ + val default_items_per_page: Long? = null, val default_comment_sort_type: SortType? /* "Hot" | "Top" | "New" | "Old" | "Controversial" */ = null, val legal_information: String? = null, val application_email_admins: Boolean? = null, + /** Added in 1.0.0 */ + val reports_email_admins: Boolean? = null, + /** Added in 1.0.0 */ + val federation_signed_fetch: Boolean? = null, val discussion_languages: List? = null, val slur_filter_regex: String? = null, val rate_limit_message_max_requests: Long? = null, @@ -49,7 +56,9 @@ data class CreateSite( val rate_limit_import_user_settings_max_requests: Long? = null, val rate_limit_import_user_settings_interval_seconds: Long? = null, val federation_enabled: Boolean? = null, + /** Removed in 1.0.0 */ val captcha_enabled: Boolean? = null, + /** Removed in 1.0.0 */ val captcha_difficulty: String? = null, /** Removed in 1.0.0 */ val allowed_instances: List? = null, @@ -65,9 +74,27 @@ data class CreateSite( val post_downvotes: FederationMode? /* "All" | "Local" | "Disable" */ = null, val comment_upvotes: FederationMode? /* "All" | "Local" | "Disable" */ = null, val comment_downvotes: FederationMode? /* "All" | "Local" | "Disable" */ = null, - val disallow_nsfw_content: Boolean? = null, + val nsfw_content_disallowed: Boolean? = null, /** Added in 1.0.0 */ - val disable_email_notifications: Boolean? = null, + val email_notifications_disabled: Boolean? = null, /** Added in 1.0.0 */ val suggested_multi_community_id: MultiCommunityId? = null, + /** Added in 1.0.0 */ + val image_mode: ImageMode? /* "none" | "store_link_previews" | "proxy_all_images" */ = null, + /** Added in 1.0.0 */ + val image_proxy_bypass_domains: String? = null, + /** Added in 1.0.0 */ + val image_upload_timeout_seconds: Long? = null, + /** Added in 1.0.0 */ + val image_max_thumbnail_size: Long? = null, + /** Added in 1.0.0 */ + val image_max_avatar_size: Long? = null, + /** Added in 1.0.0 */ + val image_max_banner_size: Long? = null, + /** Added in 1.0.0 */ + val image_max_upload_size: Long? = null, + /** Added in 1.0.0 */ + val image_allow_video_uploads: Boolean? = null, + /** Added in 1.0.0 */ + val image_upload_disabled: Boolean? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt index ae3aa925..0f191ae9 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt @@ -8,9 +8,12 @@ import it.vercruysse.lemmyapi.enums.ListingType import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.enums.ImageMode // TODO: missing fields + mapping +// TODO: icon banner fields prob outdated + @CommonParcelize @Serializable data class EditSite( @@ -22,7 +25,7 @@ data class EditSite( val enable_downvotes: Boolean? = null, val enable_nsfw: Boolean? = null, val community_creation_admin_only: Boolean? = null, - val require_email_verification: Boolean? = null, + val email_verification_required: Boolean? = null, val application_question: String? = null, val private_instance: Boolean? = null, val default_theme: String? = null, @@ -34,6 +37,8 @@ data class EditSite( val default_comment_sort_type: SortType? /* "hot" | "top" | "new" | "old" | "controversial" */ = null, val legal_information: String? = null, val application_email_admins: Boolean? = null, + /** Added in 1.0.0 */ + val federation_signed_fetch: Boolean? = null, val hide_modlog_mod_names: Boolean? = null, val discussion_languages: List? = null, val slur_filter_regex: String? = null, @@ -55,7 +60,9 @@ data class EditSite( val rate_limit_import_user_settings_interval_seconds: Long? = null, val federation_enabled: Boolean? = null, val federation_debug: Boolean? = null, + /** Removed in 1.0.0 */ val captcha_enabled: Boolean? = null, + /** Removed in 1.0.0 */ val captcha_difficulty: String? = null, val allowed_instances: List? = null, val blocked_instances: List? = null, @@ -66,4 +73,26 @@ data class EditSite( val content_warning: String? = null, /** Added in 1.0.0 */ val suggested_multi_community_id: MultiCommunityId? = null, + /** Added in 1.0.0 */ + val nsfw_content_disallowed: Boolean? = null, + /** Added in 1.0.0 */ + val email_notifications_disabled: Boolean? = null, + /** Added in 1.0.0 */ + val image_mode: ImageMode? /* "none" | "store_link_previews" | "proxy_all_images" */ = null, + /** Added in 1.0.0 */ + val image_proxy_bypass_domains: String? = null, + /** Added in 1.0.0 */ + val image_upload_timeout_seconds: Long? = null, + /** Added in 1.0.0 */ + val image_max_thumbnail_size: Long? = null, + /** Added in 1.0.0 */ + val image_max_avatar_size: Long? = null, + /** Added in 1.0.0 */ + val image_max_banner_size: Long? = null, + /** Added in 1.0.0 */ + val image_max_upload_size: Long? = null, + /** Added in 1.0.0 */ + val image_allow_video_uploads: Boolean? = null, + /** Added in 1.0.0 */ + val image_upload_disabled: Boolean? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalSite.kt index 8d6fea03..1f94ff89 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalSite.kt @@ -10,6 +10,7 @@ import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.enums.FederationMode +import it.vercruysse.lemmyapi.enums.ImageMode @CommonParcelize @Serializable @@ -18,7 +19,7 @@ data class LocalSite( val site_id: SiteId, val site_setup: Boolean, val community_creation_admin_only: Boolean, - val require_email_verification: Boolean, + val email_verification_required: Boolean, val application_question: String? = null, val private_instance: Boolean, val default_theme: String, @@ -27,8 +28,6 @@ data class LocalSite( val application_email_admins: Boolean, val slur_filter_regex: String? = null, val federation_enabled: Boolean, - val captcha_enabled: Boolean, - val captcha_difficulty: String, val published_at: String, val updated_at: String? = null, val registration_mode: RegistrationMode /* "Closed" | "RequireApplication" | "Open" */, @@ -43,7 +42,7 @@ data class LocalSite( val comment_upvotes: FederationMode /* "All" | "Local" | "Disable" */, val comment_downvotes: FederationMode /* "All" | "Local" | "Disable" */, val default_post_time_range_seconds: Long? = null, - val disallow_nsfw_content: Boolean, + val nsfw_content_disallowed: Boolean, val users: Long, val posts: Long, val comments: Long, @@ -52,7 +51,16 @@ data class LocalSite( val users_active_week: Long, val users_active_month: Long, val users_active_half_year: Long, - val disable_email_notifications: Boolean, + val email_notifications_disabled: Boolean, val suggested_multi_community_id: MultiCommunityId? = null, val default_items_per_page: Long, + val image_mode: ImageMode /* "none" | "store_link_previews" | "proxy_all_images" */, + val image_proxy_bypass_domains: String? = null, + val image_upload_timeout_seconds: Long, + val image_max_thumbnail_size: Long, + val image_max_avatar_size: Long, + val image_max_banner_size: Long, + val image_max_upload_size: Long, + val image_allow_video_uploads: Boolean, + val image_upload_disabled: Boolean, ) : DatatypeRoot, Identity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/ImageMode.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/ImageMode.kt new file mode 100644 index 00000000..ebc25470 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/ImageMode.kt @@ -0,0 +1,18 @@ +package it.vercruysse.lemmyapi.enums + +import io.github.z4kn4fein.semver.Version +import it.vercruysse.lemmyapi.V1_0_0 +import kotlinx.serialization.SerialName +import kotlinx.serialization.Serializable + +@Serializable +enum class ImageMode(override val minimumVersion: Version = V1_0_0, override val maximumVersion: Version? = null) : VersionTracker { + @SerialName("none") + None, + + @SerialName("store_link_previews") + StoreLinkPreviews, + + @SerialName("proxy_all_images") + ProxyAllImages, +} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt index 18d8e2b3..a5adb8d4 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt @@ -11,6 +11,7 @@ import it.vercruysse.lemmyapi.datatypes.PostActions import it.vercruysse.lemmyapi.enums.CommunityFollowerState import it.vercruysse.lemmyapi.enums.CommunityVisibility import it.vercruysse.lemmyapi.enums.FederationMode +import it.vercruysse.lemmyapi.enums.ImageMode import it.vercruysse.lemmyapi.enums.NotificationType import it.vercruysse.lemmyapi.enums.PostListingMode import it.vercruysse.lemmyapi.enums.SortType @@ -463,7 +464,7 @@ internal class Transformer(var auth: String) : MapperGenerator { site_id = d.site_id, site_setup = d.site_setup, community_creation_admin_only = d.community_creation_admin_only, - require_email_verification = d.require_email_verification, + email_verification_required = d.require_email_verification, application_question = d.application_question, private_instance = d.private_instance, default_theme = d.default_theme, @@ -472,8 +473,6 @@ internal class Transformer(var auth: String) : MapperGenerator { application_email_admins = d.application_email_admins, slur_filter_regex = d.slur_filter_regex, federation_enabled = d.federation_enabled, - captcha_enabled = d.captcha_enabled, - captcha_difficulty = d.captcha_difficulty, published_at = addTimezoneOffset(d.published), updated_at = addTimezoneOffsetNullable(d.updated), registration_mode = d.registration_mode.toUni(), @@ -481,9 +480,9 @@ internal class Transformer(var auth: String) : MapperGenerator { federation_signed_fetch = false, default_post_listing_mode = PostListingMode.Card, default_post_sort_type = SortType.Active, - disallow_nsfw_content = !d.enable_nsfw, + nsfw_content_disallowed = !d.enable_nsfw, oauth_registration = false, - disable_email_notifications = false, + email_notifications_disabled = false, suggested_multi_community_id = null, default_comment_sort_type = SortType.Active, default_post_time_range_seconds = null, @@ -500,6 +499,14 @@ internal class Transformer(var auth: String) : MapperGenerator { users_active_month = counts.users_active_month, users_active_half_year = counts.users_active_half_year, default_items_per_page = 20, + image_mode = ImageMode.StoreLinkPreviews, + image_upload_timeout_seconds = 0, + image_max_thumbnail_size = 0, + image_max_avatar_size = 0, + image_max_banner_size = 0, + image_max_upload_size = 0, + image_allow_video_uploads = false, + image_upload_disabled = false, ) override fun toUni(d: X5DatatypesPersonView, is_admin: Boolean): LemmyapiDatatypesPersonView = @@ -1170,9 +1177,9 @@ internal class Transformer(var auth: String) : MapperGenerator { FederationMode.Disable -> false null -> null }, - enable_nsfw = if (d.disallow_nsfw_content == null) null else !d.disallow_nsfw_content, + enable_nsfw = if (d.nsfw_content_disallowed == null) null else !d.nsfw_content_disallowed, community_creation_admin_only = d.community_creation_admin_only, - require_email_verification = d.require_email_verification, + require_email_verification = d.email_verification_required, application_question = d.application_question, private_instance = d.private_instance, default_theme = d.default_theme, @@ -1194,8 +1201,8 @@ internal class Transformer(var auth: String) : MapperGenerator { rate_limit_search = d.rate_limit_search_max_requests, rate_limit_search_per_second = d.rate_limit_search_interval_seconds, federation_enabled = d.federation_enabled, - captcha_enabled = d.captcha_enabled, - captcha_difficulty = d.captcha_difficulty, + captcha_enabled = null, + captcha_difficulty = null, allowed_instances = d.allowed_instances, blocked_instances = d.blocked_instances, taglines = d.taglines, @@ -1307,7 +1314,7 @@ internal class Transformer(var auth: String) : MapperGenerator { enable_downvotes = d.enable_downvotes, enable_nsfw = d.enable_nsfw, community_creation_admin_only = d.community_creation_admin_only, - require_email_verification = d.require_email_verification, + require_email_verification = d.email_verification_required, application_question = d.application_question, private_instance = d.private_instance, default_theme = d.default_theme, @@ -1331,8 +1338,8 @@ internal class Transformer(var auth: String) : MapperGenerator { rate_limit_search_per_second = d.rate_limit_search_interval_seconds, federation_enabled = d.federation_enabled, federation_debug = d.federation_debug, - captcha_enabled = d.captcha_enabled, - captcha_difficulty = d.captcha_difficulty, + captcha_enabled = null, + captcha_difficulty = null, allowed_instances = d.allowed_instances, blocked_instances = d.blocked_instances, taglines = d.taglines, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt index c610c55a..898f0836 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt @@ -10,6 +10,7 @@ import it.vercruysse.lemmyapi.datatypes.PostActions import it.vercruysse.lemmyapi.enums.CommunityFollowerState import it.vercruysse.lemmyapi.enums.CommunityVisibility import it.vercruysse.lemmyapi.enums.FederationMode +import it.vercruysse.lemmyapi.enums.ImageMode import it.vercruysse.lemmyapi.enums.NotificationType import it.vercruysse.lemmyapi.enums.PostListingMode import it.vercruysse.lemmyapi.enums.SortType @@ -401,7 +402,7 @@ internal class Transformer : MapperGenerator { site_id = d.site_id, site_setup = d.site_setup, community_creation_admin_only = d.community_creation_admin_only, - require_email_verification = d.require_email_verification, + email_verification_required = d.require_email_verification, application_question = d.application_question, private_instance = d.private_instance, default_theme = d.default_theme, @@ -410,8 +411,6 @@ internal class Transformer : MapperGenerator { application_email_admins = d.application_email_admins, slur_filter_regex = d.slur_filter_regex, federation_enabled = d.federation_enabled, - captcha_enabled = d.captcha_enabled, - captcha_difficulty = d.captcha_difficulty, published_at = d.published, updated_at = d.updated, registration_mode = d.registration_mode.toUni(), @@ -419,9 +418,9 @@ internal class Transformer : MapperGenerator { federation_signed_fetch = d.federation_signed_fetch, default_post_listing_mode = PostListingMode.Card, default_post_sort_type = SortType.Active, - disallow_nsfw_content = !d.enable_nsfw, + nsfw_content_disallowed = !d.enable_nsfw, oauth_registration = false, - disable_email_notifications = false, + email_notifications_disabled = false, suggested_multi_community_id = null, default_comment_sort_type = SortType.Active, default_post_time_range_seconds = null, @@ -438,6 +437,14 @@ internal class Transformer : MapperGenerator { users_active_month = counts.users_active_month, users_active_half_year = counts.users_active_half_year, default_items_per_page = 20, + image_mode = ImageMode.StoreLinkPreviews, + image_upload_timeout_seconds = 0, + image_max_thumbnail_size = 0, + image_max_avatar_size = 0, + image_max_banner_size = 0, + image_max_upload_size = 0, + image_allow_video_uploads = false, + image_upload_disabled = false, ) override fun toUni(d: X0DatatypesPostReportView): LemmyapiDatatypesPostReportView = @@ -1211,9 +1218,9 @@ internal class Transformer : MapperGenerator { FederationMode.Disable -> false null -> null }, - enable_nsfw = if (d.disallow_nsfw_content == null) null else !d.disallow_nsfw_content, + enable_nsfw = if (d.nsfw_content_disallowed == null) null else !d.nsfw_content_disallowed, community_creation_admin_only = d.community_creation_admin_only, - require_email_verification = d.require_email_verification, + require_email_verification = d.email_verification_required, application_question = d.application_question, private_instance = d.private_instance, default_theme = d.default_theme, @@ -1235,8 +1242,8 @@ internal class Transformer : MapperGenerator { rate_limit_search = d.rate_limit_search_max_requests, rate_limit_search_per_second = d.rate_limit_search_interval_seconds, federation_enabled = d.federation_enabled, - captcha_enabled = d.captcha_enabled, - captcha_difficulty = d.captcha_difficulty, + captcha_enabled = null, + captcha_difficulty = null, allowed_instances = d.allowed_instances, blocked_instances = d.blocked_instances, taglines = d.taglines, @@ -1336,7 +1343,7 @@ internal class Transformer : MapperGenerator { enable_downvotes = d.enable_downvotes, enable_nsfw = d.enable_nsfw, community_creation_admin_only = d.community_creation_admin_only, - require_email_verification = d.require_email_verification, + require_email_verification = d.email_verification_required, application_question = d.application_question, private_instance = d.private_instance, default_theme = d.default_theme, @@ -1360,8 +1367,8 @@ internal class Transformer : MapperGenerator { rate_limit_search_per_second = d.rate_limit_search_interval_seconds, federation_enabled = d.federation_enabled, federation_debug = d.federation_debug, - captcha_enabled = d.captcha_enabled, - captcha_difficulty = d.captcha_difficulty, + captcha_enabled = null, + captcha_difficulty = null, allowed_instances = d.allowed_instances, blocked_instances = d.blocked_instances, taglines = d.taglines, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt index 0ee199c4..41386471 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt @@ -10,6 +10,7 @@ import it.vercruysse.lemmyapi.datatypes.PostActions import it.vercruysse.lemmyapi.enums.CommunityFollowerState import it.vercruysse.lemmyapi.enums.CommunityVisibility import it.vercruysse.lemmyapi.enums.FederationMode +import it.vercruysse.lemmyapi.enums.ImageMode import it.vercruysse.lemmyapi.enums.NotificationType import it.vercruysse.lemmyapi.enums.SortType import it.vercruysse.lemmyapi.enums.VoteShow @@ -718,7 +719,7 @@ internal class Transformer : MapperGenerator { site_id = d.site_id, site_setup = d.site_setup, community_creation_admin_only = d.community_creation_admin_only, - require_email_verification = d.require_email_verification, + email_verification_required = d.require_email_verification, application_question = d.application_question, private_instance = d.private_instance, default_theme = d.default_theme, @@ -727,8 +728,6 @@ internal class Transformer : MapperGenerator { application_email_admins = d.application_email_admins, slur_filter_regex = d.slur_filter_regex, federation_enabled = d.federation_enabled, - captcha_enabled = d.captcha_enabled, - captcha_difficulty = d.captcha_difficulty, published_at = d.published, updated_at = d.updated, registration_mode = d.registration_mode.toUni(), @@ -736,9 +735,9 @@ internal class Transformer : MapperGenerator { federation_signed_fetch = d.federation_signed_fetch, default_post_listing_mode = d.default_post_listing_mode.toUni(), default_post_sort_type = d.default_sort_type.toUni(), - disallow_nsfw_content = !d.enable_nsfw, + nsfw_content_disallowed = !d.enable_nsfw, oauth_registration = false, - disable_email_notifications = false, + email_notifications_disabled = false, suggested_multi_community_id = null, default_comment_sort_type = SortType.Active, default_post_time_range_seconds = null, @@ -755,6 +754,14 @@ internal class Transformer : MapperGenerator { users_active_month = counts.users_active_month, users_active_half_year = counts.users_active_half_year, default_items_per_page = 20, + image_mode = ImageMode.StoreLinkPreviews, + image_upload_timeout_seconds = 0, + image_max_thumbnail_size = 0, + image_max_avatar_size = 0, + image_max_banner_size = 0, + image_max_upload_size = 0, + image_allow_video_uploads = false, + image_upload_disabled = false, ) override fun toUni(d: X11DatatypesLocalSiteRateLimit): LemmyapiDatatypesLocalSiteRateLimit = @@ -1294,9 +1301,9 @@ internal class Transformer : MapperGenerator { FederationMode.Disable -> false null -> null }, - enable_nsfw = if (d.disallow_nsfw_content == null) null else !d.disallow_nsfw_content, + enable_nsfw = if (d.nsfw_content_disallowed == null) null else !d.nsfw_content_disallowed, community_creation_admin_only = d.community_creation_admin_only, - require_email_verification = d.require_email_verification, + require_email_verification = d.email_verification_required, application_question = d.application_question, private_instance = d.private_instance, default_theme = d.default_theme, @@ -1319,8 +1326,8 @@ internal class Transformer : MapperGenerator { rate_limit_search = d.rate_limit_search_max_requests, rate_limit_search_per_second = d.rate_limit_search_interval_seconds, federation_enabled = d.federation_enabled, - captcha_enabled = d.captcha_enabled, - captcha_difficulty = d.captcha_difficulty, + captcha_enabled = null, + captcha_difficulty = null, allowed_instances = d.allowed_instances, blocked_instances = d.blocked_instances, taglines = d.taglines, @@ -1425,7 +1432,7 @@ internal class Transformer : MapperGenerator { enable_downvotes = d.enable_downvotes, enable_nsfw = d.enable_nsfw, community_creation_admin_only = d.community_creation_admin_only, - require_email_verification = d.require_email_verification, + require_email_verification = d.email_verification_required, application_question = d.application_question, private_instance = d.private_instance, default_theme = d.default_theme, @@ -1450,8 +1457,8 @@ internal class Transformer : MapperGenerator { rate_limit_search_per_second = d.rate_limit_search_interval_seconds, federation_enabled = d.federation_enabled, federation_debug = d.federation_debug, - captcha_enabled = d.captcha_enabled, - captcha_difficulty = d.captcha_difficulty, + captcha_enabled = null, + captcha_difficulty = null, allowed_instances = d.allowed_instances, blocked_instances = d.blocked_instances, blocked_urls = d.blocked_urls, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt index 9c7c63b5..3553d87d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt @@ -11,6 +11,7 @@ import it.vercruysse.lemmyapi.datatypes.PostActions import it.vercruysse.lemmyapi.enums.CommunityFollowerState import it.vercruysse.lemmyapi.enums.CommunityVisibility import it.vercruysse.lemmyapi.enums.FederationMode +import it.vercruysse.lemmyapi.enums.ImageMode import it.vercruysse.lemmyapi.enums.NotificationType import it.vercruysse.lemmyapi.enums.PostListingMode import it.vercruysse.lemmyapi.enums.SortType @@ -415,7 +416,7 @@ internal class Transformer : MapperGenerator { site_id = d.site_id, site_setup = d.site_setup, community_creation_admin_only = d.community_creation_admin_only, - require_email_verification = d.require_email_verification, + email_verification_required = d.require_email_verification, application_question = d.application_question, private_instance = d.private_instance, default_theme = d.default_theme, @@ -424,8 +425,6 @@ internal class Transformer : MapperGenerator { application_email_admins = d.application_email_admins, slur_filter_regex = d.slur_filter_regex, federation_enabled = d.federation_enabled, - captcha_enabled = d.captcha_enabled, - captcha_difficulty = d.captcha_difficulty, published_at = d.published, updated_at = d.updated, registration_mode = d.registration_mode.toUni(), @@ -433,9 +432,9 @@ internal class Transformer : MapperGenerator { federation_signed_fetch = d.federation_signed_fetch, default_post_listing_mode = PostListingMode.Card, default_post_sort_type = SortType.Active, - disallow_nsfw_content = !d.enable_nsfw, + nsfw_content_disallowed = !d.enable_nsfw, oauth_registration = false, - disable_email_notifications = false, + email_notifications_disabled = false, suggested_multi_community_id = null, default_comment_sort_type = SortType.Active, default_post_time_range_seconds = null, @@ -452,6 +451,14 @@ internal class Transformer : MapperGenerator { users_active_month = counts.users_active_month, users_active_half_year = counts.users_active_half_year, default_items_per_page = 20, + image_mode = ImageMode.StoreLinkPreviews, + image_upload_timeout_seconds = 0, + image_max_thumbnail_size = 0, + image_max_avatar_size = 0, + image_max_banner_size = 0, + image_max_upload_size = 0, + image_allow_video_uploads = false, + image_upload_disabled = false, ) override fun toUni(d: X3DatatypesPostReportView): LemmyapiDatatypesPostReportView = @@ -1229,9 +1236,9 @@ internal class Transformer : MapperGenerator { FederationMode.Disable -> false null -> null }, - enable_nsfw = if (d.disallow_nsfw_content == null) null else !d.disallow_nsfw_content, + enable_nsfw = if (d.nsfw_content_disallowed == null) null else !d.nsfw_content_disallowed, community_creation_admin_only = d.community_creation_admin_only, - require_email_verification = d.require_email_verification, + require_email_verification = d.email_verification_required, application_question = d.application_question, private_instance = d.private_instance, default_theme = d.default_theme, @@ -1253,8 +1260,8 @@ internal class Transformer : MapperGenerator { rate_limit_search = d.rate_limit_search_max_requests, rate_limit_search_per_second = d.rate_limit_search_interval_seconds, federation_enabled = d.federation_enabled, - captcha_enabled = d.captcha_enabled, - captcha_difficulty = d.captcha_difficulty, + captcha_enabled = null, + captcha_difficulty = null, allowed_instances = d.allowed_instances, blocked_instances = d.blocked_instances, taglines = d.taglines, @@ -1354,7 +1361,7 @@ internal class Transformer : MapperGenerator { enable_downvotes = d.enable_downvotes, enable_nsfw = d.enable_nsfw, community_creation_admin_only = d.community_creation_admin_only, - require_email_verification = d.require_email_verification, + require_email_verification = d.email_verification_required, application_question = d.application_question, private_instance = d.private_instance, default_theme = d.default_theme, @@ -1378,8 +1385,8 @@ internal class Transformer : MapperGenerator { rate_limit_search_per_second = d.rate_limit_search_interval_seconds, federation_enabled = d.federation_enabled, federation_debug = d.federation_debug, - captcha_enabled = d.captcha_enabled, - captcha_difficulty = d.captcha_difficulty, + captcha_enabled = null, + captcha_difficulty = null, allowed_instances = d.allowed_instances, blocked_instances = d.blocked_instances, taglines = d.taglines, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt index 0b374e77..93440289 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt @@ -10,6 +10,7 @@ import it.vercruysse.lemmyapi.datatypes.PostActions import it.vercruysse.lemmyapi.enums.CommunityFollowerState import it.vercruysse.lemmyapi.enums.CommunityVisibility import it.vercruysse.lemmyapi.enums.FederationMode +import it.vercruysse.lemmyapi.enums.ImageMode import it.vercruysse.lemmyapi.enums.NotificationType import it.vercruysse.lemmyapi.enums.SortType import it.vercruysse.lemmyapi.enums.VoteShow @@ -713,7 +714,7 @@ internal class Transformer : MapperGenerator { site_id = d.site_id, site_setup = d.site_setup, community_creation_admin_only = d.community_creation_admin_only, - require_email_verification = d.require_email_verification, + email_verification_required = d.require_email_verification, application_question = d.application_question, private_instance = d.private_instance, default_theme = d.default_theme, @@ -722,8 +723,6 @@ internal class Transformer : MapperGenerator { application_email_admins = d.application_email_admins, slur_filter_regex = d.slur_filter_regex, federation_enabled = d.federation_enabled, - captcha_enabled = d.captcha_enabled, - captcha_difficulty = d.captcha_difficulty, published_at = d.published, updated_at = d.updated, registration_mode = d.registration_mode.toUni(), @@ -731,9 +730,9 @@ internal class Transformer : MapperGenerator { federation_signed_fetch = d.federation_signed_fetch, default_post_listing_mode = d.default_post_listing_mode.toUni(), default_post_sort_type = d.default_sort_type.toUni(), - disallow_nsfw_content = !d.enable_nsfw, + nsfw_content_disallowed = !d.enable_nsfw, oauth_registration = false, - disable_email_notifications = false, + email_notifications_disabled = false, suggested_multi_community_id = null, default_comment_sort_type = SortType.Active, default_post_time_range_seconds = null, @@ -750,6 +749,14 @@ internal class Transformer : MapperGenerator { users_active_month = counts.users_active_month, users_active_half_year = counts.users_active_half_year, default_items_per_page = 20, + image_mode = ImageMode.StoreLinkPreviews, + image_upload_timeout_seconds = 0, + image_max_thumbnail_size = 0, + image_max_avatar_size = 0, + image_max_banner_size = 0, + image_max_upload_size = 0, + image_allow_video_uploads = false, + image_upload_disabled = false, ) override fun toUni(d: X4DatatypesLocalSiteRateLimit): LemmyapiDatatypesLocalSiteRateLimit = @@ -1284,9 +1291,9 @@ internal class Transformer : MapperGenerator { FederationMode.Disable -> false null -> null }, - enable_nsfw = if (d.disallow_nsfw_content == null) null else !d.disallow_nsfw_content, + enable_nsfw = if (d.nsfw_content_disallowed == null) null else !d.nsfw_content_disallowed, community_creation_admin_only = d.community_creation_admin_only, - require_email_verification = d.require_email_verification, + require_email_verification = d.email_verification_required, application_question = d.application_question, private_instance = d.private_instance, default_theme = d.default_theme, @@ -1309,8 +1316,8 @@ internal class Transformer : MapperGenerator { rate_limit_search = d.rate_limit_search_max_requests, rate_limit_search_per_second = d.rate_limit_search_interval_seconds, federation_enabled = d.federation_enabled, - captcha_enabled = d.captcha_enabled, - captcha_difficulty = d.captcha_difficulty, + captcha_enabled = null, + captcha_difficulty = null, allowed_instances = d.allowed_instances, blocked_instances = d.blocked_instances, taglines = d.taglines, @@ -1415,7 +1422,7 @@ internal class Transformer : MapperGenerator { enable_downvotes = d.enable_downvotes, enable_nsfw = d.enable_nsfw, community_creation_admin_only = d.community_creation_admin_only, - require_email_verification = d.require_email_verification, + require_email_verification = d.email_verification_required, application_question = d.application_question, private_instance = d.private_instance, default_theme = d.default_theme, @@ -1440,8 +1447,8 @@ internal class Transformer : MapperGenerator { rate_limit_search_per_second = d.rate_limit_search_interval_seconds, federation_enabled = d.federation_enabled, federation_debug = d.federation_debug, - captcha_enabled = d.captcha_enabled, - captcha_difficulty = d.captcha_difficulty, + captcha_enabled = null, + captcha_difficulty = null, allowed_instances = d.allowed_instances, blocked_instances = d.blocked_instances, blocked_urls = d.blocked_urls, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt index ca3655cb..0dfac990 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt @@ -10,6 +10,7 @@ import it.vercruysse.lemmyapi.datatypes.PostActions import it.vercruysse.lemmyapi.enums.CommunityFollowerState import it.vercruysse.lemmyapi.enums.CommunityVisibility import it.vercruysse.lemmyapi.enums.FederationMode +import it.vercruysse.lemmyapi.enums.ImageMode import it.vercruysse.lemmyapi.enums.NotificationType import it.vercruysse.lemmyapi.enums.SortType import it.vercruysse.lemmyapi.enums.VoteShow @@ -717,7 +718,7 @@ internal class Transformer : MapperGenerator { site_id = d.site_id, site_setup = d.site_setup, community_creation_admin_only = d.community_creation_admin_only, - require_email_verification = d.require_email_verification, + email_verification_required = d.require_email_verification, application_question = d.application_question, private_instance = d.private_instance, default_theme = d.default_theme, @@ -726,8 +727,6 @@ internal class Transformer : MapperGenerator { application_email_admins = d.application_email_admins, slur_filter_regex = d.slur_filter_regex, federation_enabled = d.federation_enabled, - captcha_enabled = d.captcha_enabled, - captcha_difficulty = d.captcha_difficulty, published_at = d.published, updated_at = d.updated, registration_mode = d.registration_mode.toUni(), @@ -735,9 +734,9 @@ internal class Transformer : MapperGenerator { federation_signed_fetch = d.federation_signed_fetch, default_post_listing_mode = d.default_post_listing_mode.toUni(), default_post_sort_type = d.default_sort_type.toUni(), - disallow_nsfw_content = !d.enable_nsfw, + nsfw_content_disallowed = !d.enable_nsfw, oauth_registration = false, - disable_email_notifications = false, + email_notifications_disabled = false, suggested_multi_community_id = null, default_comment_sort_type = SortType.Active, default_post_time_range_seconds = null, @@ -754,6 +753,14 @@ internal class Transformer : MapperGenerator { users_active_month = counts.users_active_month, users_active_half_year = counts.users_active_half_year, default_items_per_page = 20, + image_mode = ImageMode.StoreLinkPreviews, + image_upload_timeout_seconds = 0, + image_max_thumbnail_size = 0, + image_max_avatar_size = 0, + image_max_banner_size = 0, + image_max_upload_size = 0, + image_allow_video_uploads = false, + image_upload_disabled = false, ) override fun toUni(d: X6DatatypesLocalSiteRateLimit): LemmyapiDatatypesLocalSiteRateLimit = @@ -1288,9 +1295,9 @@ internal class Transformer : MapperGenerator { FederationMode.Disable -> false null -> null }, - enable_nsfw = if (d.disallow_nsfw_content == null) null else !d.disallow_nsfw_content, + enable_nsfw = if (d.nsfw_content_disallowed == null) null else !d.nsfw_content_disallowed, community_creation_admin_only = d.community_creation_admin_only, - require_email_verification = d.require_email_verification, + require_email_verification = d.email_verification_required, application_question = d.application_question, private_instance = d.private_instance, default_theme = d.default_theme, @@ -1313,8 +1320,8 @@ internal class Transformer : MapperGenerator { rate_limit_search = d.rate_limit_search_max_requests, rate_limit_search_per_second = d.rate_limit_search_interval_seconds, federation_enabled = d.federation_enabled, - captcha_enabled = d.captcha_enabled, - captcha_difficulty = d.captcha_difficulty, + captcha_enabled = null, + captcha_difficulty = null, allowed_instances = d.allowed_instances, blocked_instances = d.blocked_instances, taglines = d.taglines, @@ -1419,7 +1426,7 @@ internal class Transformer : MapperGenerator { enable_downvotes = d.enable_downvotes, enable_nsfw = d.enable_nsfw, community_creation_admin_only = d.community_creation_admin_only, - require_email_verification = d.require_email_verification, + require_email_verification = d.email_verification_required, application_question = d.application_question, private_instance = d.private_instance, default_theme = d.default_theme, @@ -1444,8 +1451,8 @@ internal class Transformer : MapperGenerator { rate_limit_search_per_second = d.rate_limit_search_interval_seconds, federation_enabled = d.federation_enabled, federation_debug = d.federation_debug, - captcha_enabled = d.captcha_enabled, - captcha_difficulty = d.captcha_difficulty, + captcha_enabled = null, + captcha_difficulty = null, allowed_instances = d.allowed_instances, blocked_instances = d.blocked_instances, blocked_urls = d.blocked_urls, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/Transformer.kt index 2b93f70c..cb77ef90 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/Transformer.kt @@ -955,7 +955,7 @@ internal class Transformer : MapperGenerator { site_id = d.site_id, site_setup = d.site_setup, community_creation_admin_only = d.community_creation_admin_only, - require_email_verification = d.require_email_verification, + email_verification_required = d.email_verification_required, application_question = d.application_question, private_instance = d.private_instance, default_theme = d.default_theme, @@ -964,8 +964,6 @@ internal class Transformer : MapperGenerator { application_email_admins = d.application_email_admins, slur_filter_regex = d.slur_filter_regex, federation_enabled = d.federation_enabled, - captcha_enabled = d.captcha_enabled, - captcha_difficulty = d.captcha_difficulty, published_at = d.published_at, updated_at = d.updated_at, registration_mode = d.registration_mode, @@ -980,7 +978,7 @@ internal class Transformer : MapperGenerator { comment_upvotes = d.comment_upvotes, comment_downvotes = d.comment_downvotes, default_post_time_range_seconds = d.default_post_time_range_seconds, - disallow_nsfw_content = d.disallow_nsfw_content, + nsfw_content_disallowed = d.nsfw_content_disallowed, users = d.users, posts = d.posts, comments = d.comments, @@ -989,9 +987,18 @@ internal class Transformer : MapperGenerator { users_active_week = d.users_active_week, users_active_month = d.users_active_month, users_active_half_year = d.users_active_half_year, - disable_email_notifications = d.disable_email_notifications, + email_notifications_disabled = d.email_notifications_disabled, suggested_multi_community_id = d.suggested_multi_community_id, default_items_per_page = d.default_items_per_page, + image_mode = d.image_mode, + image_proxy_bypass_domains = d.image_proxy_bypass_domains, + image_upload_timeout_seconds = d.image_upload_timeout_seconds, + image_max_thumbnail_size = d.image_max_thumbnail_size, + image_max_avatar_size = d.image_max_avatar_size, + image_max_banner_size = d.image_max_banner_size, + image_max_upload_size = d.image_max_upload_size, + image_allow_video_uploads = d.image_allow_video_uploads, + image_upload_disabled = d.image_upload_disabled, ) override fun toUni(d: X0DatatypesLocalSiteRateLimit): LemmyapiDatatypesLocalSiteRateLimit = LemmyapiDatatypesLocalSiteRateLimit( @@ -1766,7 +1773,7 @@ internal class Transformer : MapperGenerator { sidebar = d.sidebar, summary = d.summary, community_creation_admin_only = d.community_creation_admin_only, - require_email_verification = d.require_email_verification, + email_verification_required = d.email_verification_required, application_question = d.application_question, private_instance = d.private_instance, default_theme = d.default_theme, @@ -1794,8 +1801,6 @@ internal class Transformer : MapperGenerator { rate_limit_import_user_settings_max_requests = d.rate_limit_import_user_settings_max_requests, rate_limit_import_user_settings_interval_seconds = d.rate_limit_import_user_settings_interval_seconds, federation_enabled = d.federation_enabled, - captcha_enabled = d.captcha_enabled, - captcha_difficulty = d.captcha_difficulty, registration_mode = d.registration_mode, oauth_registration = d.oauth_registration, content_warning = d.content_warning, @@ -1803,9 +1808,21 @@ internal class Transformer : MapperGenerator { post_downvotes = d.post_downvotes, comment_upvotes = d.comment_upvotes, comment_downvotes = d.comment_downvotes, - disallow_nsfw_content = d.disallow_nsfw_content, - disable_email_notifications = d.disable_email_notifications, + nsfw_content_disallowed = d.nsfw_content_disallowed, + email_notifications_disabled = d.email_notifications_disabled, suggested_multi_community_id = d.suggested_multi_community_id, + default_items_per_page = d.default_items_per_page, + reports_email_admins = d.reports_email_admins, + federation_signed_fetch = d.federation_signed_fetch, + image_mode = d.image_mode, + image_proxy_bypass_domains = d.image_proxy_bypass_domains, + image_upload_timeout_seconds = d.image_upload_timeout_seconds, + image_max_thumbnail_size = d.image_max_thumbnail_size, + image_max_avatar_size = d.image_max_avatar_size, + image_max_banner_size = d.image_max_banner_size, + image_max_upload_size = d.image_max_upload_size, + image_allow_video_uploads = d.image_allow_video_uploads, + image_upload_disabled = d.image_upload_disabled, ) override fun fromUni(d: LemmyapiDatatypesCreateTagline): X0DatatypesCreateTagline = X0DatatypesCreateTagline( @@ -1952,7 +1969,7 @@ internal class Transformer : MapperGenerator { sidebar = d.sidebar, summary = d.summary, community_creation_admin_only = d.community_creation_admin_only, - require_email_verification = d.require_email_verification, + email_verification_required = d.email_verification_required, application_question = d.application_question, private_instance = d.private_instance, default_theme = d.default_theme, @@ -1964,6 +1981,7 @@ internal class Transformer : MapperGenerator { default_comment_sort_type = d.default_comment_sort_type, legal_information = d.legal_information, application_email_admins = d.application_email_admins, + federation_signed_fetch = d.federation_signed_fetch, discussion_languages = d.discussion_languages, slur_filter_regex = d.slur_filter_regex, rate_limit_message_max_requests = d.rate_limit_message_max_requests, @@ -1981,13 +1999,22 @@ internal class Transformer : MapperGenerator { rate_limit_import_user_settings_max_requests = d.rate_limit_import_user_settings_max_requests, rate_limit_import_user_settings_interval_seconds = d.rate_limit_import_user_settings_interval_seconds, federation_enabled = d.federation_enabled, - captcha_enabled = d.captcha_enabled, - captcha_difficulty = d.captcha_difficulty, blocked_urls = d.blocked_urls, registration_mode = d.registration_mode, reports_email_admins = d.reports_email_admins, content_warning = d.content_warning, suggested_multi_community_id = d.suggested_multi_community_id, + nsfw_content_disallowed = d.nsfw_content_disallowed, + email_notifications_disabled = d.email_notifications_disabled, + image_mode = d.image_mode, + image_proxy_bypass_domains = d.image_proxy_bypass_domains, + image_upload_timeout_seconds = d.image_upload_timeout_seconds, + image_max_thumbnail_size = d.image_max_thumbnail_size, + image_max_avatar_size = d.image_max_avatar_size, + image_max_banner_size = d.image_max_banner_size, + image_max_upload_size = d.image_max_upload_size, + image_allow_video_uploads = d.image_allow_video_uploads, + image_upload_disabled = d.image_upload_disabled, ) override fun fromUni(d: LemmyapiDatatypesEditTagline): X0DatatypesEditTagline = X0DatatypesEditTagline( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateSite.kt index 29a73c7d..f8c37179 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateSite.kt @@ -1,6 +1,7 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes import it.vercruysse.lemmyapi.enums.FederationMode +import it.vercruysse.lemmyapi.enums.ImageMode import it.vercruysse.lemmyapi.enums.ListingType import it.vercruysse.lemmyapi.enums.PostListingMode import it.vercruysse.lemmyapi.enums.RegistrationMode @@ -13,7 +14,7 @@ internal data class CreateSite( val sidebar: String? = null, val summary: String? = null, val community_creation_admin_only: Boolean? = null, - val require_email_verification: Boolean? = null, + val email_verification_required: Boolean? = null, val application_question: String? = null, val private_instance: Boolean? = null, val default_theme: String? = null, @@ -21,6 +22,7 @@ internal data class CreateSite( val default_post_listing_mode: PostListingMode? /* "list" | "card" | "small_card" */ = null, val default_post_sort_type: SortType? /* "active" | "hot" | "new" | "old" | "top" | "most_comments" | "new_comments" | "controversial" | "scaled" */ = null, val default_post_time_range_seconds: Long? = null, + val default_items_per_page: Long? = null, val default_comment_sort_type: SortType? /* "hot" | "top" | "new" | "old" | "controversial" */ = null, val legal_information: String? = null, val application_email_admins: Boolean? = null, @@ -41,16 +43,25 @@ internal data class CreateSite( val rate_limit_import_user_settings_max_requests: Long? = null, val rate_limit_import_user_settings_interval_seconds: Long? = null, val federation_enabled: Boolean? = null, - val captcha_enabled: Boolean? = null, - val captcha_difficulty: String? = null, val registration_mode: RegistrationMode? /* "closed" | "require_application" | "open" */ = null, val oauth_registration: Boolean? = null, val content_warning: String? = null, + val reports_email_admins: Boolean? = null, + val federation_signed_fetch: Boolean? = null, val post_upvotes: FederationMode? /* "all" | "local" | "disable" */ = null, val post_downvotes: FederationMode? /* "all" | "local" | "disable" */ = null, val comment_upvotes: FederationMode? /* "all" | "local" | "disable" */ = null, val comment_downvotes: FederationMode? /* "all" | "local" | "disable" */ = null, - val disallow_nsfw_content: Boolean? = null, - val disable_email_notifications: Boolean? = null, + val nsfw_content_disallowed: Boolean? = null, + val email_notifications_disabled: Boolean? = null, val suggested_multi_community_id: MultiCommunityId? = null, + val image_mode: ImageMode? /* "none" | "store_link_previews" | "proxy_all_images" */ = null, + val image_proxy_bypass_domains: String? = null, + val image_upload_timeout_seconds: Long? = null, + val image_max_thumbnail_size: Long? = null, + val image_max_avatar_size: Long? = null, + val image_max_banner_size: Long? = null, + val image_max_upload_size: Long? = null, + val image_allow_video_uploads: Boolean? = null, + val image_upload_disabled: Boolean? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditSite.kt index 62f667e3..4a3c6770 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditSite.kt @@ -1,6 +1,7 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes import it.vercruysse.lemmyapi.enums.FederationMode +import it.vercruysse.lemmyapi.enums.ImageMode import it.vercruysse.lemmyapi.enums.ListingType import it.vercruysse.lemmyapi.enums.PostListingMode import it.vercruysse.lemmyapi.enums.RegistrationMode @@ -13,7 +14,7 @@ internal data class EditSite( val sidebar: String? = null, val summary: String? = null, val community_creation_admin_only: Boolean? = null, - val require_email_verification: Boolean? = null, + val email_verification_required: Boolean? = null, val application_question: String? = null, val private_instance: Boolean? = null, val default_theme: String? = null, @@ -25,6 +26,7 @@ internal data class EditSite( val default_comment_sort_type: SortType? /* "hot" | "top" | "new" | "old" | "controversial" */ = null, val legal_information: String? = null, val application_email_admins: Boolean? = null, + val federation_signed_fetch: Boolean? = null, val discussion_languages: List? = null, val slur_filter_regex: String? = null, val rate_limit_message_max_requests: Long? = null, @@ -42,8 +44,6 @@ internal data class EditSite( val rate_limit_import_user_settings_max_requests: Long? = null, val rate_limit_import_user_settings_interval_seconds: Long? = null, val federation_enabled: Boolean? = null, - val captcha_enabled: Boolean? = null, - val captcha_difficulty: String? = null, val blocked_urls: List? = null, val registration_mode: RegistrationMode? /* "closed" | "require_application" | "open" */ = null, val reports_email_admins: Boolean? = null, @@ -53,7 +53,16 @@ internal data class EditSite( val post_downvotes: FederationMode? /* "all" | "local" | "disable" */ = null, val comment_upvotes: FederationMode? /* "all" | "local" | "disable" */ = null, val comment_downvotes: FederationMode? /* "all" | "local" | "disable" */ = null, - val disallow_nsfw_content: Boolean? = null, - val disable_email_notifications: Boolean? = null, + val nsfw_content_disallowed: Boolean? = null, + val email_notifications_disabled: Boolean? = null, val suggested_multi_community_id: MultiCommunityId? = null, + val image_mode: ImageMode? /* "none" | "store_link_previews" | "proxy_all_images" */ = null, + val image_proxy_bypass_domains: String? = null, + val image_upload_timeout_seconds: Long? = null, + val image_max_thumbnail_size: Long? = null, + val image_max_avatar_size: Long? = null, + val image_max_banner_size: Long? = null, + val image_max_upload_size: Long? = null, + val image_allow_video_uploads: Boolean? = null, + val image_upload_disabled: Boolean? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSite.kt index 6b9279eb..680224a1 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSite.kt @@ -1,6 +1,7 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes import it.vercruysse.lemmyapi.enums.FederationMode +import it.vercruysse.lemmyapi.enums.ImageMode import it.vercruysse.lemmyapi.enums.ListingType import it.vercruysse.lemmyapi.enums.PostListingMode import it.vercruysse.lemmyapi.enums.RegistrationMode @@ -13,7 +14,7 @@ internal data class LocalSite( val site_id: SiteId, val site_setup: Boolean, val community_creation_admin_only: Boolean, - val require_email_verification: Boolean, + val email_verification_required: Boolean, val application_question: String? = null, val private_instance: Boolean, val default_theme: String, @@ -22,8 +23,6 @@ internal data class LocalSite( val application_email_admins: Boolean, val slur_filter_regex: String? = null, val federation_enabled: Boolean, - val captcha_enabled: Boolean, - val captcha_difficulty: String, val published_at: String, val updated_at: String? = null, val registration_mode: RegistrationMode /* "closed" | "require_application" | "open" */, @@ -38,7 +37,7 @@ internal data class LocalSite( val comment_upvotes: FederationMode /* "all" | "local" | "disable" */, val comment_downvotes: FederationMode /* "all" | "local" | "disable" */, val default_post_time_range_seconds: Long? = null, - val disallow_nsfw_content: Boolean, + val nsfw_content_disallowed: Boolean, val users: Long, val posts: Long, val comments: Long, @@ -47,7 +46,16 @@ internal data class LocalSite( val users_active_week: Long, val users_active_month: Long, val users_active_half_year: Long, - val disable_email_notifications: Boolean, + val email_notifications_disabled: Boolean, val suggested_multi_community_id: MultiCommunityId? = null, val default_items_per_page: Long, + val image_mode: ImageMode /* "none" | "store_link_previews" | "proxy_all_images" */, + val image_proxy_bypass_domains: String? = null, + val image_upload_timeout_seconds: Long, + val image_max_thumbnail_size: Long, + val image_max_avatar_size: Long, + val image_max_banner_size: Long, + val image_max_upload_size: Long, + val image_allow_video_uploads: Boolean, + val image_upload_disabled: Boolean, ) From 5f2da70671dc7a877092e95feef4e793c56fa5cf Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Sun, 24 May 2026 18:29:31 +0200 Subject: [PATCH 080/110] Update GenTypes.kt --- GeneratorScripts/src/main/kotlin/autogenscripts/GenTypes.kt | 1 + .../vercruysse/lemmyapi/v1/x0/x0/datatypes/NotificationData.kt | 2 -- 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/GeneratorScripts/src/main/kotlin/autogenscripts/GenTypes.kt b/GeneratorScripts/src/main/kotlin/autogenscripts/GenTypes.kt index cb1a6b28..8b7a7062 100644 --- a/GeneratorScripts/src/main/kotlin/autogenscripts/GenTypes.kt +++ b/GeneratorScripts/src/main/kotlin/autogenscripts/GenTypes.kt @@ -37,6 +37,7 @@ val globalFieldEnums = mapOf( "comment_upvotes" to "FederationMode", "comment_downvotes" to "FederationMode", "show_downvotes" to "VoteShow", + "image_mode" to "ImageMode", // Defaults for ambiguous fields overridden per file below "type_" to "ListingType", "sort" to "SortType", diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/NotificationData.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/NotificationData.kt index 719d089f..7da614c7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/NotificationData.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/NotificationData.kt @@ -1,10 +1,8 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes import kotlinx.serialization.ExperimentalSerializationApi -import kotlinx.serialization.Serializable import kotlinx.serialization.json.JsonClassDiscriminator @OptIn(ExperimentalSerializationApi::class) -@Serializable @JsonClassDiscriminator("type_") internal sealed interface NotificationData From 3c1c212221d9f9cf8d923f5ea4f3c55bc47c5323 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Sun, 24 May 2026 18:49:42 +0200 Subject: [PATCH 081/110] Update Search and SearchResponse types --- .../src/main/kotlin/MapperGenerator1x0x0.kt | 2 +- .../main/kotlin/autogenscripts/GenTypes.kt | 18 ++++++++--------- .../lemmyapi/datatypes/CommentView.kt | 2 +- .../lemmyapi/datatypes/CommunityView.kt | 2 +- .../lemmyapi/datatypes/MultiCommunityView.kt | 2 +- .../lemmyapi/datatypes/PersonView.kt | 2 +- .../vercruysse/lemmyapi/datatypes/PostView.kt | 2 +- ...chCombinedView.kt => ResolveObjectView.kt} | 2 +- .../vercruysse/lemmyapi/datatypes/Search.kt | 10 +++------- .../lemmyapi/datatypes/SearchResponse.kt | 8 ++++++-- .../lemmyapi/v0/x18/x5/Transformer.kt | 20 ++++++++++--------- .../lemmyapi/v0/x19/x0/Transformer.kt | 20 ++++++++++--------- .../lemmyapi/v0/x19/x11/Transformer.kt | 20 ++++++++++--------- .../lemmyapi/v0/x19/x3/Transformer.kt | 20 ++++++++++--------- .../lemmyapi/v0/x19/x4/Transformer.kt | 20 ++++++++++--------- .../lemmyapi/v0/x19/x6/Transformer.kt | 20 ++++++++++--------- .../lemmyapi/v1/x0/x0/MapperGenerator.kt | 2 +- .../lemmyapi/v1/x0/x0/Transformer.kt | 18 +++++++++-------- .../v1/x0/x0/datatypes/CommentView.kt | 2 +- .../v1/x0/x0/datatypes/CommunityView.kt | 2 +- .../v1/x0/x0/datatypes/MultiCommunityView.kt | 2 +- .../lemmyapi/v1/x0/x0/datatypes/PersonView.kt | 2 +- .../lemmyapi/v1/x0/x0/datatypes/PostView.kt | 2 +- ...chCombinedView.kt => ResolveObjectView.kt} | 2 +- .../lemmyapi/v1/x0/x0/datatypes/Search.kt | 7 ++----- .../v1/x0/x0/datatypes/SearchResponse.kt | 10 +++++++--- 26 files changed, 117 insertions(+), 102 deletions(-) rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/{SearchCombinedView.kt => ResolveObjectView.kt} (86%) rename app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/{SearchCombinedView.kt => ResolveObjectView.kt} (84%) diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator1x0x0.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator1x0x0.kt index 02b8a96f..b8b1ef85 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator1x0x0.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator1x0x0.kt @@ -151,7 +151,7 @@ internal interface MapperGenerator1x0x0 { // fun toUni(d: ReportCombinedView): already implemented above as when-dispatch fun toUni(d: ResendVerificationEmail): it.vercruysse.lemmyapi.datatypes.ResendVerificationEmail - fun toUni(d: SearchCombinedView): it.vercruysse.lemmyapi.datatypes.SearchCombinedView = when (d) { + fun toUni(d: ResolveObjectView): it.vercruysse.lemmyapi.datatypes.ResolveObjectView = when (d) { is CommentView -> toUni(d) is CommunityView -> toUni(d) is PersonView -> toUni(d) diff --git a/GeneratorScripts/src/main/kotlin/autogenscripts/GenTypes.kt b/GeneratorScripts/src/main/kotlin/autogenscripts/GenTypes.kt index 8b7a7062..3b796fb1 100644 --- a/GeneratorScripts/src/main/kotlin/autogenscripts/GenTypes.kt +++ b/GeneratorScripts/src/main/kotlin/autogenscripts/GenTypes.kt @@ -80,7 +80,7 @@ data class SealedInterface(val discriminator: String, val serializable: Boolean // TODO: don't know yet if serializable required but also it breaks the generated code val sealedInterfaces = mapOf( "PostOrCommentOrPrivateMessage" to SealedInterface("type_"), - "SearchCombinedView" to SealedInterface("type_"), + "ResolveObjectView" to SealedInterface("type_"), "ReportCombinedView" to SealedInterface("type_"), "NotificationData" to SealedInterface("type_", serializable = false), "PostCommentCombinedView" to SealedInterface("type_"), @@ -93,11 +93,11 @@ val sealedImplementations = mapOf( "Comment" to SealedImpl("comment", listOf("PostOrCommentOrPrivateMessage")), "Post" to SealedImpl("post", listOf("PostOrCommentOrPrivateMessage")), "PrivateMessage" to SealedImpl("private_message", listOf("PostOrCommentOrPrivateMessage")), - "CommentView" to SealedImpl("comment", listOf("SearchCombinedView", "NotificationData", "PostCommentCombinedView")), - "PostView" to SealedImpl("post", listOf("SearchCombinedView", "PostCommentCombinedView")), - "CommunityView" to SealedImpl("community", listOf("SearchCombinedView")), - "PersonView" to SealedImpl("person", listOf("SearchCombinedView")), - "MultiCommunityView" to SealedImpl("multi_community", listOf("SearchCombinedView")), + "CommentView" to SealedImpl("comment", listOf("ResolveObjectView", "NotificationData", "PostCommentCombinedView")), + "PostView" to SealedImpl("post", listOf("ResolveObjectView", "PostCommentCombinedView")), + "CommunityView" to SealedImpl("community", listOf("ResolveObjectView")), + "PersonView" to SealedImpl("person", listOf("ResolveObjectView")), + "MultiCommunityView" to SealedImpl("multi_community", listOf("ResolveObjectView")), "CommentReportView" to SealedImpl("comment", listOf("ReportCombinedView")), "PostReportView" to SealedImpl("post", listOf("ReportCombinedView")), "CommunityReportView" to SealedImpl("community", listOf("ReportCombinedView")), @@ -140,10 +140,10 @@ fun resolveDynamicType(line: String): String { val sealedType = when { // Post (but not PostView) signals PostOrCommentOrPrivateMessage Regex("""\bPost\b(?!View)""").containsMatchIn(line) -> "PostOrCommentOrPrivateMessage" - // ModlogView only appears in NotificationData, not SearchCombinedView + // ModlogView only appears in NotificationData, not ResolveObjectView "ModlogView" in line -> "NotificationData" - // CommunityView only appears in SearchCombinedView - "CommunityView" in line -> "SearchCombinedView" + // CommunityView only appears in ResolveObjectView + "CommunityView" in line -> "ResolveObjectView" else -> return line } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentView.kt index e1927481..20b7523d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentView.kt @@ -27,7 +27,7 @@ data class CommentView( val creator_banned_from_community: Boolean, val creator_community_ban_expires_at: String? = null, - ) : DatatypeRoot, Identity, NotificationData, SearchCombinedView, PostCommentCombinedView { + ) : DatatypeRoot, Identity, NotificationData, ResolveObjectView, PostCommentCombinedView { override val id: Long get() = comment.id } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityView.kt index 8c4fb1fa..1630b3e3 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityView.kt @@ -13,4 +13,4 @@ data class CommunityView( val community_actions: CommunityActions? = null, val can_mod: Boolean, val tags: CommunityTagsView, -) : DatatypeRoot, SearchCombinedView +) : DatatypeRoot, ResolveObjectView diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MultiCommunityView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MultiCommunityView.kt index c1099854..8e698af2 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MultiCommunityView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MultiCommunityView.kt @@ -13,4 +13,4 @@ data class MultiCommunityView( val multi: MultiCommunity, val follow_state: CommunityFollowerState? /* "accepted" | "pending" | "approval_required" | "denied" */ = null, val owner: Person, -) : DatatypeRoot, SearchCombinedView +) : DatatypeRoot, ResolveObjectView diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonView.kt index 5cd26937..b6742eed 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonView.kt @@ -15,4 +15,4 @@ data class PersonView( val person_actions: PersonActions? = null, val banned: Boolean, val ban_expires_at: String? = null, -) : DatatypeRoot, SearchCombinedView +) : DatatypeRoot, ResolveObjectView diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostView.kt index bbfb1901..46a3f5c7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostView.kt @@ -28,7 +28,7 @@ data class PostView( val creator_is_moderator: Boolean, val creator_banned_from_community: Boolean, val creator_community_ban_expires_at: String? = null, - ) : DatatypeRoot, Identity, NotificationData, SearchCombinedView, PostCommentCombinedView { + ) : DatatypeRoot, Identity, NotificationData, ResolveObjectView, PostCommentCombinedView { override val id: Long get() = post.id } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SearchCombinedView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ResolveObjectView.kt similarity index 86% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SearchCombinedView.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ResolveObjectView.kt index f52065ba..82d85ebb 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SearchCombinedView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ResolveObjectView.kt @@ -8,4 +8,4 @@ import kotlinx.serialization.json.JsonClassDiscriminator @CommonParcelize @OptIn(ExperimentalSerializationApi::class) @JsonClassDiscriminator("type_") -sealed interface SearchCombinedView : DatatypeRoot +sealed interface ResolveObjectView : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Search.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Search.kt index 3d369924..08708316 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Search.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Search.kt @@ -2,7 +2,6 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.DatatypeRoot import it.vercruysse.lemmyapi.enums.ListingType -import it.vercruysse.lemmyapi.enums.SortType import it.vercruysse.lemmyapi.enums.SearchType import kotlinx.serialization.Serializable @@ -11,12 +10,13 @@ import it.vercruysse.lemmyapi.CommonParcelize @CommonParcelize @Serializable data class Search( - val q: String, + val search_term: String, val community_id: CommunityId? = null, val community_name: String? = null, val creator_id: PersonId? = null, + /** Added in 1.0.0 */ + val creator_username: String? = null, val type_: SearchType? /* "All" | "Comments" | "Posts" | "Communities" | "Users" | "Url" */ = null, - val sort: SortType? /* "Active" | "Hot" | "New" | "Old" | "TopDay" | "TopWeek" | "TopMonth" | "TopYear" | "TopAll" | "MostComments" | "NewComments" | "TopHour" | "TopSixHour" | "TopTwelveHour" | "TopThreeMonths" | "TopSixMonths" | "TopNineMonths" | "Controversial" | "Scaled" */ = null, val time_range_seconds: Long? = null, val listing_type: ListingType? /* "All" | "Local" | "Subscribed" | "ModeratorView" */ = null, /** Removed in 1.0.0 */ @@ -26,10 +26,6 @@ data class Search( /** Added in 1.0.0 */ val post_url_only: Boolean? = null, /** Added in 1.0.0 */ - val liked_only: Boolean? = null, - /** Added in 1.0.0 */ - val disliked_only: Boolean? = null, - /** Added in 1.0.0 */ val show_nsfw: Boolean? = null, /** Added in 1.0.0 */ val page_cursor: PaginationCursor? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SearchResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SearchResponse.kt index 84621516..42697c09 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SearchResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SearchResponse.kt @@ -9,8 +9,12 @@ import it.vercruysse.lemmyapi.CommonParcelize @CommonParcelize @Serializable data class SearchResponse( - val resolve: SearchCombinedView? = null, - val search: List, + val resolve: ResolveObjectView? = null, + val comments: List, + val posts: List, + val communities: List, + val persons: List, + val multi_communities: List, /** Added in 1.0.0 */ val next_page: PaginationCursor? = null, /** Added in 1.0.0 */ diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt index a5adb8d4..0f220624 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt @@ -968,17 +968,20 @@ internal class Transformer(var auth: String) : MapperGenerator { d.person != null -> toUni(d.person) else -> null }, - search = emptyList(), + comments = emptyList(), + posts = emptyList(), + communities = emptyList(), + persons = emptyList(), + multi_communities = emptyList(), ) override fun toUni(d: X5DatatypesSearchResponse): LemmyapiDatatypesSearchResponse = LemmyapiDatatypesSearchResponse( - search = buildList { - addAll(d.comments.map(this@Transformer::toUni)) - addAll(d.posts.map(this@Transformer::toUni)) - addAll(d.communities.map(this@Transformer::toUni)) - addAll(d.users.map(this@Transformer::toUni)) - }, + comments = d.comments.map(this@Transformer::toUni), + posts = d.posts.map(this@Transformer::toUni), + communities = d.communities.map(this@Transformer::toUni), + persons = d.users.map(this@Transformer::toUni), + multi_communities = emptyList(), ) override fun toUni(d: X5DatatypesSite): LemmyapiDatatypesSite = LemmyapiDatatypesSite( @@ -1673,12 +1676,11 @@ internal class Transformer(var auth: String) : MapperGenerator { ) override fun fromUni(d: LemmyapiDatatypesSearch): X5DatatypesSearch = X5DatatypesSearch( - q = d.q, + q = d.search_term, community_id = d.community_id, community_name = d.community_name, creator_id = d.creator_id, type_ = V0SearchType.fromUniNullable(d.type_), - sort = V0SortType.fromUniNullable(d.sort), listing_type = V0ListingType.fromUniNullable(d.listing_type), page = d.page, limit = d.limit, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt index 898f0836..3201e146 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt @@ -1018,17 +1018,20 @@ internal class Transformer : MapperGenerator { d.person != null -> toUni(d.person) else -> null }, - search = emptyList(), + comments = emptyList(), + posts = emptyList(), + communities = emptyList(), + persons = emptyList(), + multi_communities = emptyList(), ) override fun toUni(d: X0DatatypesSearchResponse): LemmyapiDatatypesSearchResponse = LemmyapiDatatypesSearchResponse( - search = buildList { - addAll(d.comments.map(this@Transformer::toUni)) - addAll(d.posts.map(this@Transformer::toUni)) - addAll(d.communities.map(this@Transformer::toUni)) - addAll(d.users.map(this@Transformer::toUni)) - }, + comments = d.comments.map(this@Transformer::toUni), + posts = d.posts.map(this@Transformer::toUni), + communities = d.communities.map(this@Transformer::toUni), + persons = d.users.map(this@Transformer::toUni), + multi_communities = emptyList(), ) override fun toUni(d: X0DatatypesSite): LemmyapiDatatypesSite = LemmyapiDatatypesSite( @@ -1680,12 +1683,11 @@ internal class Transformer : MapperGenerator { ) override fun fromUni(d: LemmyapiDatatypesSearch): X0DatatypesSearch = X0DatatypesSearch( - q = d.q, + q = d.search_term, community_id = d.community_id, community_name = d.community_name, creator_id = d.creator_id, type_ = V0SearchType.fromUniNullable(d.type_), - sort = V0SortType.fromUniNullable(d.sort), listing_type = V0ListingType.fromUniNullable(d.listing_type), page = d.page, limit = d.limit, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt index 41386471..774552a2 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt @@ -1087,17 +1087,20 @@ internal class Transformer : MapperGenerator { d.person != null -> toUni(d.person) else -> null }, - search = emptyList(), + comments = emptyList(), + posts = emptyList(), + communities = emptyList(), + persons = emptyList(), + multi_communities = emptyList(), ) override fun toUni(d: X11DatatypesSearchResponse): LemmyapiDatatypesSearchResponse = LemmyapiDatatypesSearchResponse( - search = buildList { - addAll(d.comments.map(this@Transformer::toUni)) - addAll(d.posts.map(this@Transformer::toUni)) - addAll(d.communities.map(this@Transformer::toUni)) - addAll(d.users.map(this@Transformer::toUni)) - }, + comments = d.comments.map(this@Transformer::toUni), + posts = d.posts.map(this@Transformer::toUni), + communities = d.communities.map(this@Transformer::toUni), + persons = d.users.map(this@Transformer::toUni), + multi_communities = emptyList(), ) override fun toUni(d: X11DatatypesSite): LemmyapiDatatypesSite = LemmyapiDatatypesSite( @@ -1818,12 +1821,11 @@ internal class Transformer : MapperGenerator { ) override fun fromUni(d: LemmyapiDatatypesSearch): X11DatatypesSearch = X11DatatypesSearch( - q = d.q, + q = d.search_term, community_id = d.community_id, community_name = d.community_name, creator_id = d.creator_id, type_ = V0SearchType.fromUniNullable(d.type_), - sort = V0SortType.fromUniNullable(d.sort), listing_type = V0ListingType.fromUniNullable(d.listing_type), page = d.page, limit = d.limit, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt index 3553d87d..3e017487 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt @@ -1036,17 +1036,20 @@ internal class Transformer : MapperGenerator { d.person != null -> toUni(d.person) else -> null }, - search = emptyList(), + comments = emptyList(), + posts = emptyList(), + communities = emptyList(), + persons = emptyList(), + multi_communities = emptyList(), ) override fun toUni(d: X3DatatypesSearchResponse): LemmyapiDatatypesSearchResponse = LemmyapiDatatypesSearchResponse( - search = buildList { - addAll(d.comments.map(this@Transformer::toUni)) - addAll(d.posts.map(this@Transformer::toUni)) - addAll(d.communities.map(this@Transformer::toUni)) - addAll(d.users.map(this@Transformer::toUni)) - }, + comments = d.comments.map(this@Transformer::toUni), + posts = d.posts.map(this@Transformer::toUni), + communities = d.communities.map(this@Transformer::toUni), + persons = d.users.map(this@Transformer::toUni), + multi_communities = emptyList(), ) override fun toUni(d: X3DatatypesSite): LemmyapiDatatypesSite = LemmyapiDatatypesSite( @@ -1710,12 +1713,11 @@ internal class Transformer : MapperGenerator { ) override fun fromUni(d: LemmyapiDatatypesSearch): X3DatatypesSearch = X3DatatypesSearch( - q = d.q, + q = d.search_term, community_id = d.community_id, community_name = d.community_name, creator_id = d.creator_id, type_ = V0SearchType.fromUniNullable(d.type_), - sort = V0SortType.fromUniNullable(d.sort), listing_type = V0ListingType.fromUniNullable(d.listing_type), page = d.page, limit = d.limit, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt index 93440289..bb612c3e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt @@ -1080,17 +1080,20 @@ internal class Transformer : MapperGenerator { d.person != null -> toUni(d.person) else -> null }, - search = emptyList(), + comments = emptyList(), + posts = emptyList(), + communities = emptyList(), + persons = emptyList(), + multi_communities = emptyList(), ) override fun toUni(d: X4DatatypesSearchResponse): LemmyapiDatatypesSearchResponse = LemmyapiDatatypesSearchResponse( - search = buildList { - addAll(d.comments.map(this@Transformer::toUni)) - addAll(d.posts.map(this@Transformer::toUni)) - addAll(d.communities.map(this@Transformer::toUni)) - addAll(d.users.map(this@Transformer::toUni)) - }, + comments = d.comments.map(this@Transformer::toUni), + posts = d.posts.map(this@Transformer::toUni), + communities = d.communities.map(this@Transformer::toUni), + persons = d.users.map(this@Transformer::toUni), + multi_communities = emptyList(), ) override fun toUni(d: X4DatatypesSite): LemmyapiDatatypesSite = LemmyapiDatatypesSite( @@ -1797,12 +1800,11 @@ internal class Transformer : MapperGenerator { ) override fun fromUni(d: LemmyapiDatatypesSearch): X4DatatypesSearch = X4DatatypesSearch( - q = d.q, + q = d.search_term, community_id = d.community_id, community_name = d.community_name, creator_id = d.creator_id, type_ = V0SearchType.fromUniNullable(d.type_), - sort = V0SortType.fromUniNullable(d.sort), listing_type = V0ListingType.fromUniNullable(d.listing_type), page = d.page, limit = d.limit, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt index 0dfac990..753a9a59 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt @@ -1084,17 +1084,20 @@ internal class Transformer : MapperGenerator { d.person != null -> toUni(d.person) else -> null }, - search = emptyList(), + comments = emptyList(), + posts = emptyList(), + communities = emptyList(), + persons = emptyList(), + multi_communities = emptyList(), ) override fun toUni(d: X6DatatypesSearchResponse): LemmyapiDatatypesSearchResponse = LemmyapiDatatypesSearchResponse( - search = buildList { - addAll(d.comments.map(this@Transformer::toUni)) - addAll(d.posts.map(this@Transformer::toUni)) - addAll(d.communities.map(this@Transformer::toUni)) - addAll(d.users.map(this@Transformer::toUni)) - }, + comments = d.comments.map(this@Transformer::toUni), + posts = d.posts.map(this@Transformer::toUni), + communities = d.communities.map(this@Transformer::toUni), + persons = d.users.map(this@Transformer::toUni), + multi_communities = emptyList(), ) override fun toUni(d: X6DatatypesSite): LemmyapiDatatypesSite = LemmyapiDatatypesSite( @@ -1809,12 +1812,11 @@ internal class Transformer : MapperGenerator { ) override fun fromUni(d: LemmyapiDatatypesSearch): X6DatatypesSearch = X6DatatypesSearch( - q = d.q, + q = d.search_term, community_id = d.community_id, community_name = d.community_name, creator_id = d.creator_id, type_ = V0SearchType.fromUniNullable(d.type_), - sort = V0SortType.fromUniNullable(d.sort), listing_type = V0ListingType.fromUniNullable(d.listing_type), page = d.page, limit = d.limit, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/MapperGenerator.kt index fac07eb8..707ceb9d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/MapperGenerator.kt @@ -137,7 +137,7 @@ internal interface MapperGenerator { // fun toUni(d: ReportCombinedView): already implemented above as when-dispatch fun toUni(d: ResendVerificationEmail): it.vercruysse.lemmyapi.datatypes.ResendVerificationEmail - fun toUni(d: SearchCombinedView): it.vercruysse.lemmyapi.datatypes.SearchCombinedView = when (d) { + fun toUni(d: ResolveObjectView): it.vercruysse.lemmyapi.datatypes.ResolveObjectView = when (d) { is CommentView -> toUni(d) is CommunityView -> toUni(d) is PersonView -> toUni(d) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/Transformer.kt index cb77ef90..8382a4a9 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/Transformer.kt @@ -216,7 +216,7 @@ import it.vercruysse.lemmyapi.datatypes.SaveComment as LemmyapiDatatypesSaveComm import it.vercruysse.lemmyapi.datatypes.SavePost as LemmyapiDatatypesSavePost import it.vercruysse.lemmyapi.datatypes.SaveUserSettings as LemmyapiDatatypesSaveUserSettings import it.vercruysse.lemmyapi.datatypes.Search as LemmyapiDatatypesSearch -import it.vercruysse.lemmyapi.datatypes.SearchCombinedView as LemmyapiDatatypesSearchCombinedView +import it.vercruysse.lemmyapi.datatypes.ResolveObjectView as LemmyapiDatatypesResolveObjectView import it.vercruysse.lemmyapi.datatypes.SearchResponse as LemmyapiDatatypesSearchResponse import it.vercruysse.lemmyapi.datatypes.Site as LemmyapiDatatypesSite import it.vercruysse.lemmyapi.datatypes.SiteResponse as LemmyapiDatatypesSiteResponse @@ -447,7 +447,7 @@ import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.SaveComment as X0DatatypesSaveC import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.SavePost as X0DatatypesSavePost import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.SaveUserSettings as X0DatatypesSaveUserSettings import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.Search as X0DatatypesSearch -import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.SearchCombinedView as X0DatatypesSearchCombinedView +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ResolveObjectView as X0DatatypesResolveObjectView import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.SearchResponse as X0DatatypesSearchResponse import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.Site as X0DatatypesSite import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.SiteResponse as X0DatatypesSiteResponse @@ -1456,11 +1456,15 @@ internal class Transformer : MapperGenerator { email = d.email, ) - override fun toUni(d: X0DatatypesSearchCombinedView): LemmyapiDatatypesSearchCombinedView = super.toUni(d) + override fun toUni(d: X0DatatypesResolveObjectView): LemmyapiDatatypesResolveObjectView = super.toUni(d) override fun toUni(d: X0DatatypesSearchResponse): LemmyapiDatatypesSearchResponse = LemmyapiDatatypesSearchResponse( resolve = d.resolve?.let { this.toUni(d = it) }, - search = d.search.map { this.toUni(d = it) }, + comments = d.comments.map { this.toUni(d = it) }, + posts = d.posts.map { this.toUni(d = it) }, + communities = d.communities.map { this.toUni(d = it) }, + persons = d.persons.map { this.toUni(d = it) }, + multi_communities = d.multi_communities.map { this.toUni(d = it) }, next_page = d.next_page, prev_page = d.prev_page, ) @@ -2457,18 +2461,16 @@ internal class Transformer : MapperGenerator { ) override fun fromUni(d: LemmyapiDatatypesSearch): X0DatatypesSearch = X0DatatypesSearch( - q = d.q, + search_term = d.search_term, community_id = d.community_id, community_name = d.community_name, creator_id = d.creator_id, + creator_username = d.creator_username, type_ = d.type_, - sort = d.sort, time_range_seconds = d.time_range_seconds, listing_type = d.listing_type, title_only = d.title_only, post_url_only = d.post_url_only, - liked_only = d.liked_only, - disliked_only = d.disliked_only, show_nsfw = d.show_nsfw, page_cursor = d.page_cursor, limit = d.limit, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentView.kt index cbed9e3c..4b165f2d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentView.kt @@ -21,4 +21,4 @@ internal data class CommentView( val creator_is_moderator: Boolean, val creator_banned_from_community: Boolean, val creator_community_ban_expires_at: String? = null, -) : SearchCombinedView, NotificationData, PostCommentCombinedView +) : ResolveObjectView, NotificationData, PostCommentCombinedView diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityView.kt index 2d9476c0..6c39ae36 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityView.kt @@ -10,4 +10,4 @@ internal data class CommunityView( val community_actions: CommunityActions? = null, val can_mod: Boolean, val tags: CommunityTagsView, -) : SearchCombinedView +) : ResolveObjectView diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MultiCommunityView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MultiCommunityView.kt index 392e869c..2adcf928 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MultiCommunityView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/MultiCommunityView.kt @@ -10,4 +10,4 @@ internal data class MultiCommunityView( val multi: MultiCommunity, val follow_state: CommunityFollowerState? /* "accepted" | "pending" | "approval_required" | "denied" */ = null, val owner: Person, -) : SearchCombinedView +) : ResolveObjectView diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonView.kt index cf13cf89..31177566 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PersonView.kt @@ -11,4 +11,4 @@ internal data class PersonView( val person_actions: PersonActions? = null, val banned: Boolean, val ban_expires_at: String? = null, -) : SearchCombinedView +) : ResolveObjectView diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostView.kt index 467faa40..4febbf2b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostView.kt @@ -21,4 +21,4 @@ internal data class PostView( val creator_is_moderator: Boolean, val creator_banned_from_community: Boolean, val creator_community_ban_expires_at: String? = null, -) : SearchCombinedView, PostCommentCombinedView +) : ResolveObjectView, PostCommentCombinedView diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SearchCombinedView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ResolveObjectView.kt similarity index 84% rename from app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SearchCombinedView.kt rename to app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ResolveObjectView.kt index b33bbe59..dbb5abeb 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SearchCombinedView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ResolveObjectView.kt @@ -5,4 +5,4 @@ import kotlinx.serialization.json.JsonClassDiscriminator @OptIn(ExperimentalSerializationApi::class) @JsonClassDiscriminator("type_") -internal sealed interface SearchCombinedView +internal sealed interface ResolveObjectView diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Search.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Search.kt index d78adda8..70a36cbf 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Search.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Search.kt @@ -2,23 +2,20 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes import it.vercruysse.lemmyapi.enums.ListingType import it.vercruysse.lemmyapi.enums.SearchType -import it.vercruysse.lemmyapi.enums.SortType import kotlinx.serialization.Serializable @Serializable internal data class Search( - val q: String, + val search_term: String, val community_id: CommunityId? = null, val community_name: String? = null, val creator_id: PersonId? = null, + val creator_username: String? = null, val type_: SearchType? /* "all" | "comments" | "posts" | "communities" | "users" | "multi_communities" */ = null, - val sort: SortType? /* "new" | "top" | "old" */ = null, val time_range_seconds: Long? = null, val listing_type: ListingType? /* "all" | "local" | "subscribed" | "moderator_view" | "suggested" */ = null, val title_only: Boolean? = null, val post_url_only: Boolean? = null, - val liked_only: Boolean? = null, - val disliked_only: Boolean? = null, val show_nsfw: Boolean? = null, val page_cursor: PaginationCursor? = null, val limit: Long? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SearchResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SearchResponse.kt index 8d4225fc..02ecbe35 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SearchResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SearchResponse.kt @@ -4,8 +4,12 @@ import kotlinx.serialization.Serializable @Serializable internal data class SearchResponse( - val resolve: SearchCombinedView? = null, - val search: List, - val next_page: PaginationCursor? = null, + val resolve: ResolveObjectView? = null, + val comments: List, + val posts: List, + val communities: List, + val persons: List, + val multi_communities: List, val prev_page: PaginationCursor? = null, + val next_page: PaginationCursor? = null, ) From 54cac47ce97d0bc6e1a171d7e673929424c86d37 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Sun, 24 May 2026 18:53:38 +0200 Subject: [PATCH 082/110] Fix lint --- .../kotlin/it/vercruysse/lemmyapi/v1/x0/x0/Transformer.kt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/Transformer.kt index 8382a4a9..048c9d7a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/Transformer.kt @@ -210,13 +210,13 @@ import it.vercruysse.lemmyapi.datatypes.ResetPassword as LemmyapiDatatypesPasswo import it.vercruysse.lemmyapi.datatypes.ResolveCommentReport as LemmyapiDatatypesResolveCommentReport import it.vercruysse.lemmyapi.datatypes.ResolveCommunityReport as LemmyapiDatatypesResolveCommunityReport import it.vercruysse.lemmyapi.datatypes.ResolveObject as LemmyapiDatatypesResolveObject +import it.vercruysse.lemmyapi.datatypes.ResolveObjectView as LemmyapiDatatypesResolveObjectView import it.vercruysse.lemmyapi.datatypes.ResolvePostReport as LemmyapiDatatypesResolvePostReport import it.vercruysse.lemmyapi.datatypes.ResolvePrivateMessageReport as LemmyapiDatatypesResolvePrivateMessageReport import it.vercruysse.lemmyapi.datatypes.SaveComment as LemmyapiDatatypesSaveComment import it.vercruysse.lemmyapi.datatypes.SavePost as LemmyapiDatatypesSavePost import it.vercruysse.lemmyapi.datatypes.SaveUserSettings as LemmyapiDatatypesSaveUserSettings import it.vercruysse.lemmyapi.datatypes.Search as LemmyapiDatatypesSearch -import it.vercruysse.lemmyapi.datatypes.ResolveObjectView as LemmyapiDatatypesResolveObjectView import it.vercruysse.lemmyapi.datatypes.SearchResponse as LemmyapiDatatypesSearchResponse import it.vercruysse.lemmyapi.datatypes.Site as LemmyapiDatatypesSite import it.vercruysse.lemmyapi.datatypes.SiteResponse as LemmyapiDatatypesSiteResponse @@ -441,13 +441,13 @@ import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ResetPassword as X0DatatypesPas import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ResolveCommentReport as X0DatatypesResolveCommentReport import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ResolveCommunityReport as X0DatatypesResolveCommunityReport import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ResolveObject as X0DatatypesResolveObject +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ResolveObjectView as X0DatatypesResolveObjectView import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ResolvePostReport as X0DatatypesResolvePostReport import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ResolvePrivateMessageReport as X0DatatypesResolvePrivateMessageReport import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.SaveComment as X0DatatypesSaveComment import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.SavePost as X0DatatypesSavePost import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.SaveUserSettings as X0DatatypesSaveUserSettings import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.Search as X0DatatypesSearch -import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ResolveObjectView as X0DatatypesResolveObjectView import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.SearchResponse as X0DatatypesSearchResponse import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.Site as X0DatatypesSite import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.SiteResponse as X0DatatypesSiteResponse From dda22b2713f795211ea6359d506fa0eaa1a534c2 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Sun, 24 May 2026 19:04:12 +0200 Subject: [PATCH 083/110] Implement support for icon/banner/avatar removal endpoints for preV1 --- .../lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt | 36 +++++++++++++++---- .../lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt | 36 +++++++++++++++---- .../lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt | 36 +++++++++++++++---- .../lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt | 36 +++++++++++++++---- .../lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt | 36 +++++++++++++++---- .../lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt | 36 +++++++++++++++---- 6 files changed, 180 insertions(+), 36 deletions(-) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt index aadc060e..a4faafb2 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt @@ -1155,17 +1155,41 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba ) } - override suspend fun deleteUserAvatar(): Result = notSupported() + override suspend fun deleteUserAvatar(): Result = + saveUserSettings(it.vercruysse.lemmyapi.datatypes.SaveUserSettings(avatar = "")) - override suspend fun deleteUserBanner(): Result = notSupported() + override suspend fun deleteUserBanner(): Result = + saveUserSettings(it.vercruysse.lemmyapi.datatypes.SaveUserSettings(banner = "")) - override suspend fun deleteCommunityBanner(form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery): Result = notSupported() + override suspend fun deleteCommunityBanner(form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery): Result = + editCommunity( + it.vercruysse.lemmyapi.datatypes.EditCommunity( + community_id = form.id, + banner = "", + ), + ).map {} - override suspend fun deleteCommunityIcon(form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery): Result = notSupported() + override suspend fun deleteCommunityIcon(form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery): Result = + editCommunity( + it.vercruysse.lemmyapi.datatypes.EditCommunity( + community_id = form.id, + icon = "", + ), + ).map {} - override suspend fun deleteSiteBanner(): Result = notSupported() + override suspend fun deleteSiteBanner(): Result = + editSite( + it.vercruysse.lemmyapi.datatypes.EditSite( + banner = "", + ), + ).map {} - override suspend fun deleteSiteIcon(): Result = notSupported() + override suspend fun deleteSiteIcon(): Result = + editSite( + it.vercruysse.lemmyapi.datatypes.EditSite( + icon = "", + ), + ).map {} override suspend fun deleteMedia(form: it.vercruysse.lemmyapi.datatypes.DeleteImageParams): Result = pictrsApi.deleteMedia(form) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt index 3c18972c..063d7702 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt @@ -1116,17 +1116,41 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba ) } - override suspend fun deleteUserAvatar(): Result = notSupported() + override suspend fun deleteUserAvatar(): Result = + saveUserSettings(it.vercruysse.lemmyapi.datatypes.SaveUserSettings(avatar = "")) - override suspend fun deleteUserBanner(): Result = notSupported() + override suspend fun deleteUserBanner(): Result = + saveUserSettings(it.vercruysse.lemmyapi.datatypes.SaveUserSettings(banner = "")) - override suspend fun deleteCommunityBanner(form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery): Result = notSupported() + override suspend fun deleteCommunityBanner(form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery): Result = + editCommunity( + it.vercruysse.lemmyapi.datatypes.EditCommunity( + community_id = form.id, + banner = "", + ), + ).map {} - override suspend fun deleteCommunityIcon(form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery): Result = notSupported() + override suspend fun deleteCommunityIcon(form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery): Result = + editCommunity( + it.vercruysse.lemmyapi.datatypes.EditCommunity( + community_id = form.id, + icon = "", + ), + ).map {} - override suspend fun deleteSiteBanner(): Result = notSupported() + override suspend fun deleteSiteBanner(): Result = + editSite( + it.vercruysse.lemmyapi.datatypes.EditSite( + banner = "", + ), + ).map {} - override suspend fun deleteSiteIcon(): Result = notSupported() + override suspend fun deleteSiteIcon(): Result = + editSite( + it.vercruysse.lemmyapi.datatypes.EditSite( + icon = "", + ), + ).map {} override suspend fun deleteMedia(form: it.vercruysse.lemmyapi.datatypes.DeleteImageParams): Result = pictrsApi.deleteMedia(form) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt index 897c10fa..dd2b9247 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt @@ -1125,17 +1125,41 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba ) } - override suspend fun deleteUserAvatar(): Result = notSupported() + override suspend fun deleteUserAvatar(): Result = + saveUserSettings(it.vercruysse.lemmyapi.datatypes.SaveUserSettings(avatar = "")) - override suspend fun deleteUserBanner(): Result = notSupported() + override suspend fun deleteUserBanner(): Result = + saveUserSettings(it.vercruysse.lemmyapi.datatypes.SaveUserSettings(banner = "")) - override suspend fun deleteCommunityBanner(form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery): Result = notSupported() + override suspend fun deleteCommunityBanner(form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery): Result = + editCommunity( + it.vercruysse.lemmyapi.datatypes.EditCommunity( + community_id = form.id, + banner = "", + ), + ).map {} - override suspend fun deleteCommunityIcon(form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery): Result = notSupported() + override suspend fun deleteCommunityIcon(form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery): Result = + editCommunity( + it.vercruysse.lemmyapi.datatypes.EditCommunity( + community_id = form.id, + icon = "", + ), + ).map {} - override suspend fun deleteSiteBanner(): Result = notSupported() + override suspend fun deleteSiteBanner(): Result = + editSite( + it.vercruysse.lemmyapi.datatypes.EditSite( + banner = "", + ), + ).map {} - override suspend fun deleteSiteIcon(): Result = notSupported() + override suspend fun deleteSiteIcon(): Result = + editSite( + it.vercruysse.lemmyapi.datatypes.EditSite( + icon = "", + ), + ).map {} override suspend fun deleteMedia(form: it.vercruysse.lemmyapi.datatypes.DeleteImageParams): Result = pictrsApi.deleteMedia(form) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt index 338a917b..7882b952 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt @@ -1115,17 +1115,41 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba ) } - override suspend fun deleteUserAvatar(): Result = notSupported() + override suspend fun deleteUserAvatar(): Result = + saveUserSettings(it.vercruysse.lemmyapi.datatypes.SaveUserSettings(avatar = "")) - override suspend fun deleteUserBanner(): Result = notSupported() + override suspend fun deleteUserBanner(): Result = + saveUserSettings(it.vercruysse.lemmyapi.datatypes.SaveUserSettings(banner = "")) - override suspend fun deleteCommunityBanner(form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery): Result = notSupported() + override suspend fun deleteCommunityBanner(form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery): Result = + editCommunity( + it.vercruysse.lemmyapi.datatypes.EditCommunity( + community_id = form.id, + banner = "", + ), + ).map {} - override suspend fun deleteCommunityIcon(form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery): Result = notSupported() + override suspend fun deleteCommunityIcon(form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery): Result = + editCommunity( + it.vercruysse.lemmyapi.datatypes.EditCommunity( + community_id = form.id, + icon = "", + ), + ).map {} - override suspend fun deleteSiteBanner(): Result = notSupported() + override suspend fun deleteSiteBanner(): Result = + editSite( + it.vercruysse.lemmyapi.datatypes.EditSite( + banner = "", + ), + ).map {} - override suspend fun deleteSiteIcon(): Result = notSupported() + override suspend fun deleteSiteIcon(): Result = + editSite( + it.vercruysse.lemmyapi.datatypes.EditSite( + icon = "", + ), + ).map {} override suspend fun deleteMedia(form: it.vercruysse.lemmyapi.datatypes.DeleteImageParams): Result = pictrsApi.deleteMedia(form) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt index 40f92417..b4f91480 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt @@ -1123,17 +1123,41 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba ) } - override suspend fun deleteUserAvatar(): Result = notSupported() + override suspend fun deleteUserAvatar(): Result = + saveUserSettings(it.vercruysse.lemmyapi.datatypes.SaveUserSettings(avatar = "")) - override suspend fun deleteUserBanner(): Result = notSupported() + override suspend fun deleteUserBanner(): Result = + saveUserSettings(it.vercruysse.lemmyapi.datatypes.SaveUserSettings(banner = "")) - override suspend fun deleteCommunityBanner(form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery): Result = notSupported() + override suspend fun deleteCommunityBanner(form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery): Result = + editCommunity( + it.vercruysse.lemmyapi.datatypes.EditCommunity( + community_id = form.id, + banner = "", + ), + ).map {} - override suspend fun deleteCommunityIcon(form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery): Result = notSupported() + override suspend fun deleteCommunityIcon(form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery): Result = + editCommunity( + it.vercruysse.lemmyapi.datatypes.EditCommunity( + community_id = form.id, + icon = "", + ), + ).map {} - override suspend fun deleteSiteBanner(): Result = notSupported() + override suspend fun deleteSiteBanner(): Result = + editSite( + it.vercruysse.lemmyapi.datatypes.EditSite( + banner = "", + ), + ).map {} - override suspend fun deleteSiteIcon(): Result = notSupported() + override suspend fun deleteSiteIcon(): Result = + editSite( + it.vercruysse.lemmyapi.datatypes.EditSite( + icon = "", + ), + ).map {} override suspend fun deleteMedia(form: it.vercruysse.lemmyapi.datatypes.DeleteImageParams): Result = pictrsApi.deleteMedia(form) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt index e86e3186..bc1e764e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt @@ -1118,17 +1118,41 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba ) } - override suspend fun deleteUserAvatar(): Result = notSupported() + override suspend fun deleteUserAvatar(): Result = + saveUserSettings(it.vercruysse.lemmyapi.datatypes.SaveUserSettings(avatar = "")) - override suspend fun deleteUserBanner(): Result = notSupported() + override suspend fun deleteUserBanner(): Result = + saveUserSettings(it.vercruysse.lemmyapi.datatypes.SaveUserSettings(banner = "")) - override suspend fun deleteCommunityBanner(form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery): Result = notSupported() + override suspend fun deleteCommunityBanner(form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery): Result = + editCommunity( + it.vercruysse.lemmyapi.datatypes.EditCommunity( + community_id = form.id, + banner = "", + ), + ).map {} - override suspend fun deleteCommunityIcon(form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery): Result = notSupported() + override suspend fun deleteCommunityIcon(form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery): Result = + editCommunity( + it.vercruysse.lemmyapi.datatypes.EditCommunity( + community_id = form.id, + icon = "", + ), + ).map {} - override suspend fun deleteSiteBanner(): Result = notSupported() + override suspend fun deleteSiteBanner(): Result = + editSite( + it.vercruysse.lemmyapi.datatypes.EditSite( + banner = "", + ), + ).map {} - override suspend fun deleteSiteIcon(): Result = notSupported() + override suspend fun deleteSiteIcon(): Result = + editSite( + it.vercruysse.lemmyapi.datatypes.EditSite( + icon = "", + ), + ).map {} override suspend fun deleteMedia(form: it.vercruysse.lemmyapi.datatypes.DeleteImageParams): Result = pictrsApi.deleteMedia(form) From 41632ed626a971fb31ca757639cb25eecc60ad04 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Sun, 24 May 2026 19:38:48 +0200 Subject: [PATCH 084/110] Remove update banner/icon/avatar from public API --- ACTIVE_CHANGES.md | 3 ++ .../lemmyapi/datatypes/EditCommunity.kt | 4 -- .../vercruysse/lemmyapi/datatypes/EditSite.kt | 10 ++-- .../lemmyapi/datatypes/SaveUserSettings.kt | 6 +-- .../lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt | 54 +++++++++++-------- .../lemmyapi/v0/x18/x5/Transformer.kt | 6 --- .../lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt | 44 +++++++-------- .../lemmyapi/v0/x19/x0/Transformer.kt | 6 --- .../lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt | 44 +++++++-------- .../lemmyapi/v0/x19/x11/Transformer.kt | 6 --- .../lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt | 44 +++++++-------- .../lemmyapi/v0/x19/x3/Transformer.kt | 6 --- .../lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt | 44 +++++++-------- .../lemmyapi/v0/x19/x4/Transformer.kt | 6 --- .../lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt | 44 +++++++-------- .../lemmyapi/v0/x19/x6/Transformer.kt | 6 --- 16 files changed, 152 insertions(+), 181 deletions(-) diff --git a/ACTIVE_CHANGES.md b/ACTIVE_CHANGES.md index 5adebbda..a0261c8c 100644 --- a/ACTIVE_CHANGES.md +++ b/ACTIVE_CHANGES.md @@ -14,6 +14,9 @@ This document lists the changes that you will need to actively handle, through f - On Lemmy `1.x`, `delete_filename == filename`. - On pre-`1.0`, `delete_filename` contains the full legacy pictrs delete path, like `/pictrs/image/delete/{delete_token}/{file}`. +### Avatar/Icon/Banner + +Should now use the dedicated avatar/icon/banner upload/delete endpoints. ## 0.19.11 diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditCommunity.kt index 2635ae4e..0f20d975 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditCommunity.kt @@ -14,10 +14,6 @@ data class EditCommunity( /** Added in Lemmy 1.0.0 */ val sidebar: String? = null, val summary: String? = null, - /** Removed in Lemmy 1.0.0 */ - val icon: String? = null, - /** Removed in Lemmy 1.0.0 */ - val banner: String? = null, val nsfw: Boolean? = null, val posting_restricted_to_mods: Boolean? = null, val discussion_languages: List? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt index 0f191ae9..b71f1059 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt @@ -12,17 +12,15 @@ import it.vercruysse.lemmyapi.enums.ImageMode // TODO: missing fields + mapping -// TODO: icon banner fields prob outdated - @CommonParcelize @Serializable data class EditSite( val name: String? = null, val sidebar: String? = null, val summary: String? = null, - val icon: String? = null, - val banner: String? = null, + /** Removed in 1.0.0 */ val enable_downvotes: Boolean? = null, + /** Removed in 1.0.0 */ val enable_nsfw: Boolean? = null, val community_creation_admin_only: Boolean? = null, val email_verification_required: Boolean? = null, @@ -59,14 +57,18 @@ data class EditSite( /** Added in 1.0.0 */ val rate_limit_import_user_settings_interval_seconds: Long? = null, val federation_enabled: Boolean? = null, + /** Removed in 1.0.0 */ val federation_debug: Boolean? = null, /** Removed in 1.0.0 */ val captcha_enabled: Boolean? = null, /** Removed in 1.0.0 */ val captcha_difficulty: String? = null, + /** Removed in 1.0.0 */ val allowed_instances: List? = null, + /** Removed in 1.0.0 */ val blocked_instances: List? = null, val blocked_urls: List? = null, + /** Removed in 1.0.0 */ val taglines: List? = null, val registration_mode: RegistrationMode? /* "Closed" | "RequireApplication" | "Open" */ = null, val reports_email_admins: Boolean? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SaveUserSettings.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SaveUserSettings.kt index 78563c52..e6ac06dc 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SaveUserSettings.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SaveUserSettings.kt @@ -23,10 +23,6 @@ data class SaveUserSettings( val default_items_per_page: Long? = null, val default_comment_sort_type: SortType? /* "Hot" | "Top" | "New" | "Old" | "Controversial" */ = null, val interface_language: String? = null, - /** Removed in 1.0.0 */ - val avatar: String? = null, - /** Removed in 1.0.0 */ - val banner: String? = null, val display_name: String? = null, val email: String? = null, val bio: String? = null, @@ -46,7 +42,7 @@ data class SaveUserSettings( val collapse_bot_comments: Boolean? = null, val show_score: Boolean? = null, val show_upvotes: Boolean? = null, - val show_downvotes: VoteShow? /* "Show" | "ShowForOthers" | "Hide" */ = null, + val show_downvotes: VoteShow? /* "show" | "show_for_others" | "hide" */ = null, val show_upvote_percentage: Boolean? = null, /** Added in 1.0.0 */ val auto_mark_fetched_posts_as_read: Boolean? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt index a4faafb2..3ec38009 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt @@ -1098,10 +1098,11 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery, ): Result = uploadAndApplyImage(image) { imageUrl -> - editCommunity( - it.vercruysse.lemmyapi.datatypes.EditCommunity( + apiV18.editCommunity( + it.vercruysse.lemmyapi.v0.x18.x5.datatypes.EditCommunity( community_id = form.id, banner = imageUrl, + auth = auth ?: "", ), ).map {} } @@ -1111,83 +1112,92 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery, ): Result = uploadAndApplyImage(image) { imageUrl -> - editCommunity( - it.vercruysse.lemmyapi.datatypes.EditCommunity( + apiV18.editCommunity( + it.vercruysse.lemmyapi.v0.x18.x5.datatypes.EditCommunity( community_id = form.id, icon = imageUrl, + auth = auth ?: "", ), ).map {} } override suspend fun uploadSiteBanner(image: ByteArray): Result = uploadAndApplyImage(image) { imageUrl -> - editSite( - it.vercruysse.lemmyapi.datatypes.EditSite( + apiV18.editSite( + it.vercruysse.lemmyapi.v0.x18.x5.datatypes.EditSite( banner = imageUrl, + auth = auth ?: "", ), ).map {} } override suspend fun uploadSiteIcon(image: ByteArray): Result = uploadAndApplyImage(image) { imageUrl -> - editSite( - it.vercruysse.lemmyapi.datatypes.EditSite( + apiV18.editSite( + it.vercruysse.lemmyapi.v0.x18.x5.datatypes.EditSite( icon = imageUrl, + auth = auth ?: "", ), ).map {} } override suspend fun uploadUserAvatar(image: ByteArray): Result = uploadAndApplyImage(image) { imageUrl -> - saveUserSettings( - it.vercruysse.lemmyapi.datatypes.SaveUserSettings( + apiV18.saveUserSettings( + it.vercruysse.lemmyapi.v0.x18.x5.datatypes.SaveUserSettings( avatar = imageUrl, + auth = auth ?: "", ), ) } override suspend fun uploadUserBanner(image: ByteArray): Result = uploadAndApplyImage(image) { imageUrl -> - saveUserSettings( - it.vercruysse.lemmyapi.datatypes.SaveUserSettings( + apiV18.saveUserSettings( + it.vercruysse.lemmyapi.v0.x18.x5.datatypes.SaveUserSettings( banner = imageUrl, + auth = auth ?: "", ), ) } override suspend fun deleteUserAvatar(): Result = - saveUserSettings(it.vercruysse.lemmyapi.datatypes.SaveUserSettings(avatar = "")) + apiV18.saveUserSettings(it.vercruysse.lemmyapi.v0.x18.x5.datatypes.SaveUserSettings(avatar = "", auth = auth ?: "")) override suspend fun deleteUserBanner(): Result = - saveUserSettings(it.vercruysse.lemmyapi.datatypes.SaveUserSettings(banner = "")) + apiV18.saveUserSettings(it.vercruysse.lemmyapi.v0.x18.x5.datatypes.SaveUserSettings(banner = "", auth = auth ?: "")) override suspend fun deleteCommunityBanner(form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery): Result = - editCommunity( - it.vercruysse.lemmyapi.datatypes.EditCommunity( + apiV18.editCommunity( + it.vercruysse.lemmyapi.v0.x18.x5.datatypes.EditCommunity( community_id = form.id, banner = "", + auth = auth ?: "", ), ).map {} override suspend fun deleteCommunityIcon(form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery): Result = - editCommunity( - it.vercruysse.lemmyapi.datatypes.EditCommunity( + apiV18.editCommunity( + it.vercruysse.lemmyapi.v0.x18.x5.datatypes.EditCommunity( community_id = form.id, icon = "", + auth = auth ?: "", ), ).map {} override suspend fun deleteSiteBanner(): Result = - editSite( - it.vercruysse.lemmyapi.datatypes.EditSite( + apiV18.editSite( + it.vercruysse.lemmyapi.v0.x18.x5.datatypes.EditSite( banner = "", + auth = auth ?: "", ), ).map {} override suspend fun deleteSiteIcon(): Result = - editSite( - it.vercruysse.lemmyapi.datatypes.EditSite( + apiV18.editSite( + it.vercruysse.lemmyapi.v0.x18.x5.datatypes.EditSite( icon = "", + auth = auth ?: "", ), ).map {} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt index 0f220624..f779f60b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt @@ -1273,8 +1273,6 @@ internal class Transformer(var auth: String) : MapperGenerator { community_id = d.community_id, title = d.title, description = d.summary, - icon = d.icon, - banner = d.banner, nsfw = d.nsfw, posting_restricted_to_mods = d.posting_restricted_to_mods, discussion_languages = d.discussion_languages, @@ -1312,8 +1310,6 @@ internal class Transformer(var auth: String) : MapperGenerator { name = d.name, sidebar = d.sidebar, description = d.summary, - icon = d.icon, - banner = d.banner, enable_downvotes = d.enable_downvotes, enable_nsfw = d.enable_nsfw, community_creation_admin_only = d.community_creation_admin_only, @@ -1659,8 +1655,6 @@ internal class Transformer(var auth: String) : MapperGenerator { default_sort_type = V0SortType.fromUniNullable(d.default_post_sort_type), default_listing_type = V0ListingType.fromUniNullable(d.default_listing_type), interface_language = d.interface_language, - avatar = d.avatar, - banner = d.banner, display_name = d.display_name, email = d.email, bio = d.bio, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt index 063d7702..ce9ac04d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt @@ -1059,8 +1059,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery, ): Result = uploadAndApplyImage(image) { imageUrl -> - editCommunity( - it.vercruysse.lemmyapi.datatypes.EditCommunity( + api.editCommunity( + it.vercruysse.lemmyapi.v0.x19.x0.datatypes.EditCommunity( community_id = form.id, banner = imageUrl, ), @@ -1072,8 +1072,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery, ): Result = uploadAndApplyImage(image) { imageUrl -> - editCommunity( - it.vercruysse.lemmyapi.datatypes.EditCommunity( + api.editCommunity( + it.vercruysse.lemmyapi.v0.x19.x0.datatypes.EditCommunity( community_id = form.id, icon = imageUrl, ), @@ -1082,8 +1082,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun uploadSiteBanner(image: ByteArray): Result = uploadAndApplyImage(image) { imageUrl -> - editSite( - it.vercruysse.lemmyapi.datatypes.EditSite( + api.editSite( + it.vercruysse.lemmyapi.v0.x19.x0.datatypes.EditSite( banner = imageUrl, ), ).map {} @@ -1091,8 +1091,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun uploadSiteIcon(image: ByteArray): Result = uploadAndApplyImage(image) { imageUrl -> - editSite( - it.vercruysse.lemmyapi.datatypes.EditSite( + api.editSite( + it.vercruysse.lemmyapi.v0.x19.x0.datatypes.EditSite( icon = imageUrl, ), ).map {} @@ -1100,8 +1100,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun uploadUserAvatar(image: ByteArray): Result = uploadAndApplyImage(image) { imageUrl -> - saveUserSettings( - it.vercruysse.lemmyapi.datatypes.SaveUserSettings( + api.saveUserSettings( + it.vercruysse.lemmyapi.v0.x19.x0.datatypes.SaveUserSettings( avatar = imageUrl, ), ) @@ -1109,45 +1109,45 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun uploadUserBanner(image: ByteArray): Result = uploadAndApplyImage(image) { imageUrl -> - saveUserSettings( - it.vercruysse.lemmyapi.datatypes.SaveUserSettings( + api.saveUserSettings( + it.vercruysse.lemmyapi.v0.x19.x0.datatypes.SaveUserSettings( banner = imageUrl, ), ) } override suspend fun deleteUserAvatar(): Result = - saveUserSettings(it.vercruysse.lemmyapi.datatypes.SaveUserSettings(avatar = "")) + api.saveUserSettings(it.vercruysse.lemmyapi.v0.x19.x0.datatypes.SaveUserSettings(avatar = "")) override suspend fun deleteUserBanner(): Result = - saveUserSettings(it.vercruysse.lemmyapi.datatypes.SaveUserSettings(banner = "")) + api.saveUserSettings(it.vercruysse.lemmyapi.v0.x19.x0.datatypes.SaveUserSettings(banner = "")) override suspend fun deleteCommunityBanner(form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery): Result = - editCommunity( - it.vercruysse.lemmyapi.datatypes.EditCommunity( + api.editCommunity( + it.vercruysse.lemmyapi.v0.x19.x0.datatypes.EditCommunity( community_id = form.id, banner = "", ), ).map {} override suspend fun deleteCommunityIcon(form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery): Result = - editCommunity( - it.vercruysse.lemmyapi.datatypes.EditCommunity( + api.editCommunity( + it.vercruysse.lemmyapi.v0.x19.x0.datatypes.EditCommunity( community_id = form.id, icon = "", ), ).map {} override suspend fun deleteSiteBanner(): Result = - editSite( - it.vercruysse.lemmyapi.datatypes.EditSite( + api.editSite( + it.vercruysse.lemmyapi.v0.x19.x0.datatypes.EditSite( banner = "", ), ).map {} override suspend fun deleteSiteIcon(): Result = - editSite( - it.vercruysse.lemmyapi.datatypes.EditSite( + api.editSite( + it.vercruysse.lemmyapi.v0.x19.x0.datatypes.EditSite( icon = "", ), ).map {} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt index 3201e146..9edcc3ee 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt @@ -1306,8 +1306,6 @@ internal class Transformer : MapperGenerator { community_id = d.community_id, title = d.title, description = d.summary, - icon = d.icon, - banner = d.banner, nsfw = d.nsfw, posting_restricted_to_mods = d.posting_restricted_to_mods, discussion_languages = d.discussion_languages, @@ -1341,8 +1339,6 @@ internal class Transformer : MapperGenerator { name = d.name, sidebar = d.sidebar, description = d.summary, - icon = d.icon, - banner = d.banner, enable_downvotes = d.enable_downvotes, enable_nsfw = d.enable_nsfw, community_creation_admin_only = d.community_creation_admin_only, @@ -1663,8 +1659,6 @@ internal class Transformer : MapperGenerator { default_sort_type = V0SortType.fromUniNullable(d.default_post_sort_type), default_listing_type = V0ListingType.fromUniNullable(d.default_listing_type), interface_language = d.interface_language, - avatar = d.avatar, - banner = d.banner, display_name = d.display_name, email = d.email, bio = d.bio, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt index dd2b9247..18e0cfb1 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt @@ -1068,8 +1068,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery, ): Result = uploadAndApplyImage(image) { imageUrl -> - editCommunity( - it.vercruysse.lemmyapi.datatypes.EditCommunity( + api.editCommunity( + it.vercruysse.lemmyapi.v0.x19.x11.datatypes.EditCommunity( community_id = form.id, banner = imageUrl, ), @@ -1081,8 +1081,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery, ): Result = uploadAndApplyImage(image) { imageUrl -> - editCommunity( - it.vercruysse.lemmyapi.datatypes.EditCommunity( + api.editCommunity( + it.vercruysse.lemmyapi.v0.x19.x11.datatypes.EditCommunity( community_id = form.id, icon = imageUrl, ), @@ -1091,8 +1091,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun uploadSiteBanner(image: ByteArray): Result = uploadAndApplyImage(image) { imageUrl -> - editSite( - it.vercruysse.lemmyapi.datatypes.EditSite( + api.editSite( + it.vercruysse.lemmyapi.v0.x19.x11.datatypes.EditSite( banner = imageUrl, ), ).map {} @@ -1100,8 +1100,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun uploadSiteIcon(image: ByteArray): Result = uploadAndApplyImage(image) { imageUrl -> - editSite( - it.vercruysse.lemmyapi.datatypes.EditSite( + api.editSite( + it.vercruysse.lemmyapi.v0.x19.x11.datatypes.EditSite( icon = imageUrl, ), ).map {} @@ -1109,8 +1109,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun uploadUserAvatar(image: ByteArray): Result = uploadAndApplyImage(image) { imageUrl -> - saveUserSettings( - it.vercruysse.lemmyapi.datatypes.SaveUserSettings( + api.saveUserSettings( + it.vercruysse.lemmyapi.v0.x19.x11.datatypes.SaveUserSettings( avatar = imageUrl, ), ) @@ -1118,45 +1118,45 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun uploadUserBanner(image: ByteArray): Result = uploadAndApplyImage(image) { imageUrl -> - saveUserSettings( - it.vercruysse.lemmyapi.datatypes.SaveUserSettings( + api.saveUserSettings( + it.vercruysse.lemmyapi.v0.x19.x11.datatypes.SaveUserSettings( banner = imageUrl, ), ) } override suspend fun deleteUserAvatar(): Result = - saveUserSettings(it.vercruysse.lemmyapi.datatypes.SaveUserSettings(avatar = "")) + api.saveUserSettings(it.vercruysse.lemmyapi.v0.x19.x11.datatypes.SaveUserSettings(avatar = "")) override suspend fun deleteUserBanner(): Result = - saveUserSettings(it.vercruysse.lemmyapi.datatypes.SaveUserSettings(banner = "")) + api.saveUserSettings(it.vercruysse.lemmyapi.v0.x19.x11.datatypes.SaveUserSettings(banner = "")) override suspend fun deleteCommunityBanner(form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery): Result = - editCommunity( - it.vercruysse.lemmyapi.datatypes.EditCommunity( + api.editCommunity( + it.vercruysse.lemmyapi.v0.x19.x11.datatypes.EditCommunity( community_id = form.id, banner = "", ), ).map {} override suspend fun deleteCommunityIcon(form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery): Result = - editCommunity( - it.vercruysse.lemmyapi.datatypes.EditCommunity( + api.editCommunity( + it.vercruysse.lemmyapi.v0.x19.x11.datatypes.EditCommunity( community_id = form.id, icon = "", ), ).map {} override suspend fun deleteSiteBanner(): Result = - editSite( - it.vercruysse.lemmyapi.datatypes.EditSite( + api.editSite( + it.vercruysse.lemmyapi.v0.x19.x11.datatypes.EditSite( banner = "", ), ).map {} override suspend fun deleteSiteIcon(): Result = - editSite( - it.vercruysse.lemmyapi.datatypes.EditSite( + api.editSite( + it.vercruysse.lemmyapi.v0.x19.x11.datatypes.EditSite( icon = "", ), ).map {} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt index 774552a2..09c2596b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt @@ -1392,8 +1392,6 @@ internal class Transformer : MapperGenerator { community_id = d.community_id, title = d.title, description = d.summary, - icon = d.icon, - banner = d.banner, nsfw = d.nsfw, posting_restricted_to_mods = d.posting_restricted_to_mods, discussion_languages = d.discussion_languages, @@ -1430,8 +1428,6 @@ internal class Transformer : MapperGenerator { name = d.name, sidebar = d.sidebar, description = d.summary, - icon = d.icon, - banner = d.banner, enable_downvotes = d.enable_downvotes, enable_nsfw = d.enable_nsfw, community_creation_admin_only = d.community_creation_admin_only, @@ -1793,8 +1789,6 @@ internal class Transformer : MapperGenerator { default_sort_type = V0SortType.fromUniNullable(d.default_post_sort_type), default_listing_type = V0ListingType.fromUniNullable(d.default_listing_type), interface_language = d.interface_language, - avatar = d.avatar, - banner = d.banner, display_name = d.display_name, email = d.email, bio = d.bio, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt index 7882b952..dd4fe8b9 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt @@ -1058,8 +1058,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery, ): Result = uploadAndApplyImage(image) { imageUrl -> - editCommunity( - it.vercruysse.lemmyapi.datatypes.EditCommunity( + api.editCommunity( + it.vercruysse.lemmyapi.v0.x19.x3.datatypes.EditCommunity( community_id = form.id, banner = imageUrl, ), @@ -1071,8 +1071,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery, ): Result = uploadAndApplyImage(image) { imageUrl -> - editCommunity( - it.vercruysse.lemmyapi.datatypes.EditCommunity( + api.editCommunity( + it.vercruysse.lemmyapi.v0.x19.x3.datatypes.EditCommunity( community_id = form.id, icon = imageUrl, ), @@ -1081,8 +1081,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun uploadSiteBanner(image: ByteArray): Result = uploadAndApplyImage(image) { imageUrl -> - editSite( - it.vercruysse.lemmyapi.datatypes.EditSite( + api.editSite( + it.vercruysse.lemmyapi.v0.x19.x3.datatypes.EditSite( banner = imageUrl, ), ).map {} @@ -1090,8 +1090,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun uploadSiteIcon(image: ByteArray): Result = uploadAndApplyImage(image) { imageUrl -> - editSite( - it.vercruysse.lemmyapi.datatypes.EditSite( + api.editSite( + it.vercruysse.lemmyapi.v0.x19.x3.datatypes.EditSite( icon = imageUrl, ), ).map {} @@ -1099,8 +1099,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun uploadUserAvatar(image: ByteArray): Result = uploadAndApplyImage(image) { imageUrl -> - saveUserSettings( - it.vercruysse.lemmyapi.datatypes.SaveUserSettings( + api.saveUserSettings( + it.vercruysse.lemmyapi.v0.x19.x3.datatypes.SaveUserSettings( avatar = imageUrl, ), ) @@ -1108,45 +1108,45 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun uploadUserBanner(image: ByteArray): Result = uploadAndApplyImage(image) { imageUrl -> - saveUserSettings( - it.vercruysse.lemmyapi.datatypes.SaveUserSettings( + api.saveUserSettings( + it.vercruysse.lemmyapi.v0.x19.x3.datatypes.SaveUserSettings( banner = imageUrl, ), ) } override suspend fun deleteUserAvatar(): Result = - saveUserSettings(it.vercruysse.lemmyapi.datatypes.SaveUserSettings(avatar = "")) + api.saveUserSettings(it.vercruysse.lemmyapi.v0.x19.x3.datatypes.SaveUserSettings(avatar = "")) override suspend fun deleteUserBanner(): Result = - saveUserSettings(it.vercruysse.lemmyapi.datatypes.SaveUserSettings(banner = "")) + api.saveUserSettings(it.vercruysse.lemmyapi.v0.x19.x3.datatypes.SaveUserSettings(banner = "")) override suspend fun deleteCommunityBanner(form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery): Result = - editCommunity( - it.vercruysse.lemmyapi.datatypes.EditCommunity( + api.editCommunity( + it.vercruysse.lemmyapi.v0.x19.x3.datatypes.EditCommunity( community_id = form.id, banner = "", ), ).map {} override suspend fun deleteCommunityIcon(form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery): Result = - editCommunity( - it.vercruysse.lemmyapi.datatypes.EditCommunity( + api.editCommunity( + it.vercruysse.lemmyapi.v0.x19.x3.datatypes.EditCommunity( community_id = form.id, icon = "", ), ).map {} override suspend fun deleteSiteBanner(): Result = - editSite( - it.vercruysse.lemmyapi.datatypes.EditSite( + api.editSite( + it.vercruysse.lemmyapi.v0.x19.x3.datatypes.EditSite( banner = "", ), ).map {} override suspend fun deleteSiteIcon(): Result = - editSite( - it.vercruysse.lemmyapi.datatypes.EditSite( + api.editSite( + it.vercruysse.lemmyapi.v0.x19.x3.datatypes.EditSite( icon = "", ), ).map {} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt index 3e017487..07259416 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt @@ -1324,8 +1324,6 @@ internal class Transformer : MapperGenerator { community_id = d.community_id, title = d.title, description = d.summary, - icon = d.icon, - banner = d.banner, nsfw = d.nsfw, posting_restricted_to_mods = d.posting_restricted_to_mods, discussion_languages = d.discussion_languages, @@ -1359,8 +1357,6 @@ internal class Transformer : MapperGenerator { name = d.name, sidebar = d.sidebar, description = d.summary, - icon = d.icon, - banner = d.banner, enable_downvotes = d.enable_downvotes, enable_nsfw = d.enable_nsfw, community_creation_admin_only = d.community_creation_admin_only, @@ -1694,8 +1690,6 @@ internal class Transformer : MapperGenerator { default_sort_type = V0SortType.fromUniNullable(d.default_post_sort_type), default_listing_type = V0ListingType.fromUniNullable(d.default_listing_type), interface_language = d.interface_language, - avatar = d.avatar, - banner = d.banner, display_name = d.display_name, email = d.email, bio = d.bio, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt index b4f91480..e97ef4bb 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt @@ -1066,8 +1066,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery, ): Result = uploadAndApplyImage(image) { imageUrl -> - editCommunity( - it.vercruysse.lemmyapi.datatypes.EditCommunity( + api.editCommunity( + it.vercruysse.lemmyapi.v0.x19.x4.datatypes.EditCommunity( community_id = form.id, banner = imageUrl, ), @@ -1079,8 +1079,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery, ): Result = uploadAndApplyImage(image) { imageUrl -> - editCommunity( - it.vercruysse.lemmyapi.datatypes.EditCommunity( + api.editCommunity( + it.vercruysse.lemmyapi.v0.x19.x4.datatypes.EditCommunity( community_id = form.id, icon = imageUrl, ), @@ -1089,8 +1089,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun uploadSiteBanner(image: ByteArray): Result = uploadAndApplyImage(image) { imageUrl -> - editSite( - it.vercruysse.lemmyapi.datatypes.EditSite( + api.editSite( + it.vercruysse.lemmyapi.v0.x19.x4.datatypes.EditSite( banner = imageUrl, ), ).map {} @@ -1098,8 +1098,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun uploadSiteIcon(image: ByteArray): Result = uploadAndApplyImage(image) { imageUrl -> - editSite( - it.vercruysse.lemmyapi.datatypes.EditSite( + api.editSite( + it.vercruysse.lemmyapi.v0.x19.x4.datatypes.EditSite( icon = imageUrl, ), ).map {} @@ -1107,8 +1107,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun uploadUserAvatar(image: ByteArray): Result = uploadAndApplyImage(image) { imageUrl -> - saveUserSettings( - it.vercruysse.lemmyapi.datatypes.SaveUserSettings( + api.saveUserSettings( + it.vercruysse.lemmyapi.v0.x19.x4.datatypes.SaveUserSettings( avatar = imageUrl, ), ) @@ -1116,45 +1116,45 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun uploadUserBanner(image: ByteArray): Result = uploadAndApplyImage(image) { imageUrl -> - saveUserSettings( - it.vercruysse.lemmyapi.datatypes.SaveUserSettings( + api.saveUserSettings( + it.vercruysse.lemmyapi.v0.x19.x4.datatypes.SaveUserSettings( banner = imageUrl, ), ) } override suspend fun deleteUserAvatar(): Result = - saveUserSettings(it.vercruysse.lemmyapi.datatypes.SaveUserSettings(avatar = "")) + api.saveUserSettings(it.vercruysse.lemmyapi.v0.x19.x4.datatypes.SaveUserSettings(avatar = "")) override suspend fun deleteUserBanner(): Result = - saveUserSettings(it.vercruysse.lemmyapi.datatypes.SaveUserSettings(banner = "")) + api.saveUserSettings(it.vercruysse.lemmyapi.v0.x19.x4.datatypes.SaveUserSettings(banner = "")) override suspend fun deleteCommunityBanner(form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery): Result = - editCommunity( - it.vercruysse.lemmyapi.datatypes.EditCommunity( + api.editCommunity( + it.vercruysse.lemmyapi.v0.x19.x4.datatypes.EditCommunity( community_id = form.id, banner = "", ), ).map {} override suspend fun deleteCommunityIcon(form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery): Result = - editCommunity( - it.vercruysse.lemmyapi.datatypes.EditCommunity( + api.editCommunity( + it.vercruysse.lemmyapi.v0.x19.x4.datatypes.EditCommunity( community_id = form.id, icon = "", ), ).map {} override suspend fun deleteSiteBanner(): Result = - editSite( - it.vercruysse.lemmyapi.datatypes.EditSite( + api.editSite( + it.vercruysse.lemmyapi.v0.x19.x4.datatypes.EditSite( banner = "", ), ).map {} override suspend fun deleteSiteIcon(): Result = - editSite( - it.vercruysse.lemmyapi.datatypes.EditSite( + api.editSite( + it.vercruysse.lemmyapi.v0.x19.x4.datatypes.EditSite( icon = "", ), ).map {} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt index bb612c3e..f04debc2 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt @@ -1382,8 +1382,6 @@ internal class Transformer : MapperGenerator { community_id = d.community_id, title = d.title, description = d.summary, - icon = d.icon, - banner = d.banner, nsfw = d.nsfw, posting_restricted_to_mods = d.posting_restricted_to_mods, discussion_languages = d.discussion_languages, @@ -1420,8 +1418,6 @@ internal class Transformer : MapperGenerator { name = d.name, sidebar = d.sidebar, description = d.summary, - icon = d.icon, - banner = d.banner, enable_downvotes = d.enable_downvotes, enable_nsfw = d.enable_nsfw, community_creation_admin_only = d.community_creation_admin_only, @@ -1772,8 +1768,6 @@ internal class Transformer : MapperGenerator { default_sort_type = V0SortType.fromUniNullable(d.default_post_sort_type), default_listing_type = V0ListingType.fromUniNullable(d.default_listing_type), interface_language = d.interface_language, - avatar = d.avatar, - banner = d.banner, display_name = d.display_name, email = d.email, bio = d.bio, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt index bc1e764e..a41525dc 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt @@ -1061,8 +1061,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery, ): Result = uploadAndApplyImage(image) { imageUrl -> - editCommunity( - it.vercruysse.lemmyapi.datatypes.EditCommunity( + api.editCommunity( + it.vercruysse.lemmyapi.v0.x19.x6.datatypes.EditCommunity( community_id = form.id, banner = imageUrl, ), @@ -1074,8 +1074,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery, ): Result = uploadAndApplyImage(image) { imageUrl -> - editCommunity( - it.vercruysse.lemmyapi.datatypes.EditCommunity( + api.editCommunity( + it.vercruysse.lemmyapi.v0.x19.x6.datatypes.EditCommunity( community_id = form.id, icon = imageUrl, ), @@ -1084,8 +1084,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun uploadSiteBanner(image: ByteArray): Result = uploadAndApplyImage(image) { imageUrl -> - editSite( - it.vercruysse.lemmyapi.datatypes.EditSite( + api.editSite( + it.vercruysse.lemmyapi.v0.x19.x6.datatypes.EditSite( banner = imageUrl, ), ).map {} @@ -1093,8 +1093,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun uploadSiteIcon(image: ByteArray): Result = uploadAndApplyImage(image) { imageUrl -> - editSite( - it.vercruysse.lemmyapi.datatypes.EditSite( + api.editSite( + it.vercruysse.lemmyapi.v0.x19.x6.datatypes.EditSite( icon = imageUrl, ), ).map {} @@ -1102,8 +1102,8 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun uploadUserAvatar(image: ByteArray): Result = uploadAndApplyImage(image) { imageUrl -> - saveUserSettings( - it.vercruysse.lemmyapi.datatypes.SaveUserSettings( + api.saveUserSettings( + it.vercruysse.lemmyapi.v0.x19.x6.datatypes.SaveUserSettings( avatar = imageUrl, ), ) @@ -1111,45 +1111,45 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun uploadUserBanner(image: ByteArray): Result = uploadAndApplyImage(image) { imageUrl -> - saveUserSettings( - it.vercruysse.lemmyapi.datatypes.SaveUserSettings( + api.saveUserSettings( + it.vercruysse.lemmyapi.v0.x19.x6.datatypes.SaveUserSettings( banner = imageUrl, ), ) } override suspend fun deleteUserAvatar(): Result = - saveUserSettings(it.vercruysse.lemmyapi.datatypes.SaveUserSettings(avatar = "")) + api.saveUserSettings(it.vercruysse.lemmyapi.v0.x19.x6.datatypes.SaveUserSettings(avatar = "")) override suspend fun deleteUserBanner(): Result = - saveUserSettings(it.vercruysse.lemmyapi.datatypes.SaveUserSettings(banner = "")) + api.saveUserSettings(it.vercruysse.lemmyapi.v0.x19.x6.datatypes.SaveUserSettings(banner = "")) override suspend fun deleteCommunityBanner(form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery): Result = - editCommunity( - it.vercruysse.lemmyapi.datatypes.EditCommunity( + api.editCommunity( + it.vercruysse.lemmyapi.v0.x19.x6.datatypes.EditCommunity( community_id = form.id, banner = "", ), ).map {} override suspend fun deleteCommunityIcon(form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery): Result = - editCommunity( - it.vercruysse.lemmyapi.datatypes.EditCommunity( + api.editCommunity( + it.vercruysse.lemmyapi.v0.x19.x6.datatypes.EditCommunity( community_id = form.id, icon = "", ), ).map {} override suspend fun deleteSiteBanner(): Result = - editSite( - it.vercruysse.lemmyapi.datatypes.EditSite( + api.editSite( + it.vercruysse.lemmyapi.v0.x19.x6.datatypes.EditSite( banner = "", ), ).map {} override suspend fun deleteSiteIcon(): Result = - editSite( - it.vercruysse.lemmyapi.datatypes.EditSite( + api.editSite( + it.vercruysse.lemmyapi.v0.x19.x6.datatypes.EditSite( icon = "", ), ).map {} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt index 753a9a59..4f27212e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt @@ -1386,8 +1386,6 @@ internal class Transformer : MapperGenerator { community_id = d.community_id, title = d.title, description = d.summary, - icon = d.icon, - banner = d.banner, nsfw = d.nsfw, posting_restricted_to_mods = d.posting_restricted_to_mods, discussion_languages = d.discussion_languages, @@ -1424,8 +1422,6 @@ internal class Transformer : MapperGenerator { name = d.name, sidebar = d.sidebar, description = d.summary, - icon = d.icon, - banner = d.banner, enable_downvotes = d.enable_downvotes, enable_nsfw = d.enable_nsfw, community_creation_admin_only = d.community_creation_admin_only, @@ -1784,8 +1780,6 @@ internal class Transformer : MapperGenerator { default_sort_type = V0SortType.fromUniNullable(d.default_post_sort_type), default_listing_type = V0ListingType.fromUniNullable(d.default_listing_type), interface_language = d.interface_language, - avatar = d.avatar, - banner = d.banner, display_name = d.display_name, email = d.email, bio = d.bio, From 0afb03144a0f786e0adadb65b538157f589690c5 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Sun, 24 May 2026 19:39:51 +0200 Subject: [PATCH 085/110] Rename apiV18 to api --- .../lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt | 218 +++++++++--------- 1 file changed, 109 insertions(+), 109 deletions(-) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt index 3ec38009..463a7d46 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt @@ -26,7 +26,7 @@ import kotlin.map internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, baseUrl: String, auth: String?) : LemmyApiBaseController(client, actualVersion, baseUrl, auth) { - private val apiV18 = LemmyApiController(client, actualVersion, baseUrl, auth) + private val api = LemmyApiController(client, actualVersion, baseUrl, auth) private val pictrsApi = PictrsService(client, auth) private val transformer = Transformer(auth ?: "") @@ -34,7 +34,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba get() = super.auth set(value) { super.auth = value - apiV18.auth = value + api.auth = value pictrsApi.auth = value } @@ -59,7 +59,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * * @GET("site") */ - override suspend fun getSite(): Result = apiV18.getSite( + override suspend fun getSite(): Result = api.getSite( it.vercruysse.lemmyapi.v0.x18.x5.datatypes.GetSite(auth), ).map { transformer.toUni(it) @@ -72,7 +72,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun createSite( form: it.vercruysse.lemmyapi.datatypes.CreateSite, - ): Result = apiV18.createSite(transformer.fromUni(form)).map { transformer.toUni(it) } + ): Result = api.createSite(transformer.fromUni(form)).map { transformer.toUni(it) } /** * Edit your site. @@ -80,7 +80,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * @PUT("site") */ override suspend fun editSite(form: it.vercruysse.lemmyapi.datatypes.EditSite): Result = - apiV18.editSite(transformer.fromUni(form)).map { transformer.toUni(it) } + api.editSite(transformer.fromUni(form)).map { transformer.toUni(it) } /** * Get the modlog. @@ -97,7 +97,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * @GET("search") */ override suspend fun search(form: it.vercruysse.lemmyapi.datatypes.Search): Result = - apiV18.search(transformer.fromUni(form)).map(transformer::toUni) + api.search(transformer.fromUni(form)).map(transformer::toUni) /** * Fetch a non-local / federated object. @@ -107,7 +107,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun resolveObject( form: it.vercruysse.lemmyapi.datatypes.ResolveObject, ): Result = - apiV18.resolveObject(transformer.fromUni(form)).map(transformer::toUni) + api.resolveObject(transformer.fromUni(form)).map(transformer::toUni) /** * Get / fetch a community. @@ -117,7 +117,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun getCommunity( form: it.vercruysse.lemmyapi.datatypes.GetCommunity, ): Result = - apiV18.getCommunity(transformer.fromUni(form)).map(transformer::toUni) + api.getCommunity(transformer.fromUni(form)).map(transformer::toUni) /** * Create a new community. @@ -127,7 +127,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun createCommunity( form: it.vercruysse.lemmyapi.datatypes.CreateCommunity, ): Result = - apiV18.createCommunity(transformer.fromUni(form)).map(transformer::toUni) + api.createCommunity(transformer.fromUni(form)).map(transformer::toUni) /** * Edit a community. @@ -137,7 +137,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun editCommunity( form: it.vercruysse.lemmyapi.datatypes.EditCommunity, ): Result = - apiV18.editCommunity(transformer.fromUni(form)).map(transformer::toUni) + api.editCommunity(transformer.fromUni(form)).map(transformer::toUni) /** * Hide a community from public view. @@ -145,7 +145,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * @PUT("community/hide") */ override suspend fun hideCommunity(form: it.vercruysse.lemmyapi.datatypes.HideCommunity): Result = - apiV18.hideCommunity(transformer.fromUni(form)) + api.hideCommunity(transformer.fromUni(form)) /** * List communities, with various filters. @@ -155,7 +155,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun listCommunities( form: it.vercruysse.lemmyapi.datatypes.ListCommunities, ): Result> = - apiV18.listCommunities(transformer.fromUni(form)).map { + api.listCommunities(transformer.fromUni(form)).map { PagedResponse( items = it.communities.map(transformer::toUni), ) @@ -169,7 +169,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun followCommunity( form: it.vercruysse.lemmyapi.datatypes.FollowCommunity, ): Result = - apiV18.followCommunity(transformer.fromUni(form)).map(transformer::toUni) + api.followCommunity(transformer.fromUni(form)).map(transformer::toUni) /** * Block a community. @@ -179,7 +179,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun blockCommunity( form: it.vercruysse.lemmyapi.datatypes.BlockCommunity, ): Result = - apiV18.blockCommunity(transformer.fromUni(form)).map { resp -> + api.blockCommunity(transformer.fromUni(form)).map { resp -> it.vercruysse.lemmyapi.datatypes.CommunityResponse( transformer.toUni(resp.community_view), emptyList(), @@ -194,7 +194,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun deleteCommunity( form: it.vercruysse.lemmyapi.datatypes.DeleteCommunity, ): Result = - apiV18.deleteCommunity(transformer.fromUni(form)).map(transformer::toUni) + api.deleteCommunity(transformer.fromUni(form)).map(transformer::toUni) /** * A moderator remove for a community. @@ -204,7 +204,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun removeCommunity( form: it.vercruysse.lemmyapi.datatypes.RemoveCommunity, ): Result = - apiV18.removeCommunity(transformer.fromUni(form)).map(transformer::toUni) + api.removeCommunity(transformer.fromUni(form)).map(transformer::toUni) /** * Transfer your community to an existing moderator. @@ -214,7 +214,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun transferCommunity( form: it.vercruysse.lemmyapi.datatypes.TransferCommunity, ): Result = - apiV18.transferCommunity(transformer.fromUni(form)).map { communityResponse -> + api.transferCommunity(transformer.fromUni(form)).map { communityResponse -> val uniCommunityResponse = transformer.toUni(communityResponse) it.vercruysse.lemmyapi.datatypes.GetCommunityResponse( community_view = uniCommunityResponse.community_view, @@ -232,7 +232,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun banFromCommunity( form: it.vercruysse.lemmyapi.datatypes.BanFromCommunity, ): Result = - apiV18.banFromCommunity(transformer.fromUni(form)).map(transformer::toUni) + api.banFromCommunity(transformer.fromUni(form)).map(transformer::toUni) /** * Add a moderator to your community. @@ -242,7 +242,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun addModToCommunity( form: it.vercruysse.lemmyapi.datatypes.AddModToCommunity, ): Result = - apiV18.addModToCommunity(transformer.fromUni(form)).map(transformer::toUni) + api.addModToCommunity(transformer.fromUni(form)).map(transformer::toUni) /** * Fetch federated instances. @@ -258,7 +258,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * @GET("post") */ override suspend fun getPost(form: it.vercruysse.lemmyapi.datatypes.GetPost): Result = - apiV18.getPost(transformer.fromUni(form)).map(transformer::toUni) + api.getPost(transformer.fromUni(form)).map(transformer::toUni) /** * Edit a post. @@ -266,7 +266,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * @PUT("post") */ override suspend fun editPost(form: it.vercruysse.lemmyapi.datatypes.EditPost): Result = - apiV18.editPost(transformer.fromUni(form)).map(transformer::toUni) + api.editPost(transformer.fromUni(form)).map(transformer::toUni) /** * Create a post. @@ -276,7 +276,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun createPost( form: it.vercruysse.lemmyapi.datatypes.CreatePost, ): Result = - apiV18.createPost(transformer.fromUni(form)).map(transformer::toUni) + api.createPost(transformer.fromUni(form)).map(transformer::toUni) /** * Get / fetch posts, with various filters. @@ -286,7 +286,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun getPosts( form: it.vercruysse.lemmyapi.datatypes.GetPosts, ): Result> = - apiV18.getPosts(transformer.fromUni(form.toPostsForm())).map { resp -> + api.getPosts(transformer.fromUni(form.toPostsForm())).map { resp -> PagedResponse(resp.posts.map(transformer::toUni)) } @@ -298,7 +298,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun deletePost( form: it.vercruysse.lemmyapi.datatypes.DeletePost, ): Result = - apiV18.deletePost(transformer.fromUni(form)).map(transformer::toUni) + api.deletePost(transformer.fromUni(form)).map(transformer::toUni) /** * A moderator remove for a post. @@ -308,7 +308,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun removePost( form: it.vercruysse.lemmyapi.datatypes.RemovePost, ): Result = - apiV18.removePost(transformer.fromUni(form)).map(transformer::toUni) + api.removePost(transformer.fromUni(form)).map(transformer::toUni) /** * Mark a post as read. @@ -316,7 +316,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * @POST("post/mark_as_read") */ override suspend fun markPostAsRead(form: it.vercruysse.lemmyapi.datatypes.MarkPostAsRead): Result = - apiV18.markPostAsRead( + api.markPostAsRead( MarkPostAsRead( post_id = form.post_id, read = form.read, @@ -333,7 +333,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun markManyPostsAsRead(form: it.vercruysse.lemmyapi.datatypes.MarkManyPostsAsRead): Result = form.post_ids .map { MarkPostAsRead(post_id = it, read = form.read, auth = "" + auth) } - .map { apiV18.markPostAsRead(it) } + .map { api.markPostAsRead(it) } .map { it.map { } } .firstOrNull { it.isFailure } ?: Result.success(Unit) @@ -343,7 +343,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * @POST("post/lock") */ override suspend fun lockPost(form: it.vercruysse.lemmyapi.datatypes.LockPost): Result = - apiV18.lockPost(transformer.fromUni(form)).map(transformer::toUni) + api.lockPost(transformer.fromUni(form)).map(transformer::toUni) /** * A moderator can feature a community post ( IE stick it to the top of a community ). @@ -353,7 +353,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun featurePost( form: it.vercruysse.lemmyapi.datatypes.FeaturePost, ): Result = - apiV18.featurePost(transformer.fromUni(form)).map(transformer::toUni) + api.featurePost(transformer.fromUni(form)).map(transformer::toUni) /** * Like / vote on a post. @@ -363,7 +363,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun createPostLike( form: it.vercruysse.lemmyapi.datatypes.CreatePostLike, ): Result = - apiV18.createPostLike(transformer.fromUni(form)).map(transformer::toUni) + api.createPostLike(transformer.fromUni(form)).map(transformer::toUni) /** * Save a post. @@ -371,7 +371,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * @PUT("post/save") */ override suspend fun savePost(form: it.vercruysse.lemmyapi.datatypes.SavePost): Result = - apiV18.savePost(transformer.fromUni(form)).map(transformer::toUni) + api.savePost(transformer.fromUni(form)).map(transformer::toUni) /** * Report a post. @@ -381,7 +381,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun createPostReport( form: it.vercruysse.lemmyapi.datatypes.CreatePostReport, ): Result = - apiV18.createPostReport(transformer.fromUni(form)).map(transformer::toUni) + api.createPostReport(transformer.fromUni(form)).map(transformer::toUni) /** * Resolve a post report. Only a mod can do this. @@ -391,7 +391,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun resolvePostReport( form: it.vercruysse.lemmyapi.datatypes.ResolvePostReport, ): Result = - apiV18.resolvePostReport(transformer.fromUni(form)).map(transformer::toUni) + api.resolvePostReport(transformer.fromUni(form)).map(transformer::toUni) /** * List reports. @@ -402,28 +402,28 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba when (form.type_) { it.vercruysse.lemmyapi.enums.ReportType.Communities -> notSupported() it.vercruysse.lemmyapi.enums.ReportType.Posts -> { - apiV18.listPostReports(transformer.fromUniP(form)).map { resp -> + api.listPostReports(transformer.fromUniP(form)).map { resp -> PagedResponse(resp.post_reports.map(transformer::toUni)) } } it.vercruysse.lemmyapi.enums.ReportType.Comments -> { - apiV18.listCommentReports(transformer.fromUniC(form)).map { resp -> + api.listCommentReports(transformer.fromUniC(form)).map { resp -> PagedResponse(resp.comment_reports.map(transformer::toUni)) } } it.vercruysse.lemmyapi.enums.ReportType.PrivateMessages -> { - apiV18.listPrivateMessageReports(transformer.fromUniPm(form)).map { resp -> + api.listPrivateMessageReports(transformer.fromUniPm(form)).map { resp -> PagedResponse(resp.private_message_reports.map(transformer::toUni)) } } it.vercruysse.lemmyapi.enums.ReportType.All -> { runCatching { - val postsResp = apiV18.listPostReports(transformer.fromUniP(form)).getOrThrow() - val commentsResp = apiV18.listCommentReports(transformer.fromUniC(form)).getOrThrow() - val privateMessagesResp = apiV18.listPrivateMessageReports(transformer.fromUniPm(form)).getOrThrow() + val postsResp = api.listPostReports(transformer.fromUniP(form)).getOrThrow() + val commentsResp = api.listCommentReports(transformer.fromUniC(form)).getOrThrow() + val privateMessagesResp = api.listPrivateMessageReports(transformer.fromUniPm(form)).getOrThrow() val allReports = mutableListOf() @@ -452,7 +452,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun getSiteMetadata( form: it.vercruysse.lemmyapi.datatypes.GetSiteMetadata, ): Result = - apiV18.getSiteMetadata(transformer.fromUni(form)).map(transformer::toUni) + api.getSiteMetadata(transformer.fromUni(form)).map(transformer::toUni) /** * Get / fetch comment. @@ -462,7 +462,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun getComment( form: it.vercruysse.lemmyapi.datatypes.GetComment, ): Result = - apiV18.getComment(transformer.fromUni(form)).map(transformer::toUni) + api.getComment(transformer.fromUni(form)).map(transformer::toUni) /** * Create a comment. @@ -472,7 +472,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun createComment( form: it.vercruysse.lemmyapi.datatypes.CreateComment, ): Result = - apiV18.createComment(transformer.fromUni(form)).map(transformer::toUni) + api.createComment(transformer.fromUni(form)).map(transformer::toUni) /** * Edit a comment. @@ -482,7 +482,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun editComment( form: it.vercruysse.lemmyapi.datatypes.EditComment, ): Result = - apiV18.editComment(transformer.fromUni(form)).map(transformer::toUni) + api.editComment(transformer.fromUni(form)).map(transformer::toUni) /** * Get / fetch comments. @@ -492,7 +492,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun getComments( form: it.vercruysse.lemmyapi.datatypes.GetComments, ): Result> = - apiV18.getComments(transformer.fromUni(form)).map { resp -> + api.getComments(transformer.fromUni(form)).map { resp -> PagedResponse(resp.comments.map(transformer::toUni)) } @@ -504,7 +504,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun deleteComment( form: it.vercruysse.lemmyapi.datatypes.DeleteComment, ): Result = - apiV18.deleteComment(transformer.fromUni(form)).map(transformer::toUni) + api.deleteComment(transformer.fromUni(form)).map(transformer::toUni) /** * A moderator remove for a comment. @@ -514,7 +514,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun removeComment( form: it.vercruysse.lemmyapi.datatypes.RemoveComment, ): Result = - apiV18.removeComment(transformer.fromUni(form)).map(transformer::toUni) + api.removeComment(transformer.fromUni(form)).map(transformer::toUni) /** * Distinguishes a comment (speak as moderator) @@ -524,7 +524,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun distinguishComment( form: it.vercruysse.lemmyapi.datatypes.DistinguishComment, ): Result = - apiV18.distinguishComment(transformer.fromUni(form)).map(transformer::toUni) + api.distinguishComment(transformer.fromUni(form)).map(transformer::toUni) /** * Like / vote on a comment. @@ -534,7 +534,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun createCommentLike( form: it.vercruysse.lemmyapi.datatypes.CreateCommentLike, ): Result = - apiV18.createCommentLike(transformer.fromUni(form)).map(transformer::toUni) + api.createCommentLike(transformer.fromUni(form)).map(transformer::toUni) /** * Save a comment. @@ -544,7 +544,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun saveComment( form: it.vercruysse.lemmyapi.datatypes.SaveComment, ): Result = - apiV18.saveComment(transformer.fromUni(form)).map(transformer::toUni) + api.saveComment(transformer.fromUni(form)).map(transformer::toUni) /** * Report a comment. @@ -554,7 +554,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun createCommentReport( form: it.vercruysse.lemmyapi.datatypes.CreateCommentReport, ): Result = - apiV18.createCommentReport(transformer.fromUni(form)).map(transformer::toUni) + api.createCommentReport(transformer.fromUni(form)).map(transformer::toUni) /** * Resolve a comment report. Only a mod can do this. @@ -564,7 +564,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun resolveCommentReport( form: it.vercruysse.lemmyapi.datatypes.ResolveCommentReport, ): Result = - apiV18.resolveCommentReport(transformer.fromUni(form)).map(transformer::toUni) + api.resolveCommentReport(transformer.fromUni(form)).map(transformer::toUni) /** * Edit a private message. @@ -574,7 +574,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun editPrivateMessage( form: it.vercruysse.lemmyapi.datatypes.EditPrivateMessage, ): Result = - apiV18.editPrivateMessage(transformer.fromUni(form)).map(transformer::toUni) + api.editPrivateMessage(transformer.fromUni(form)).map(transformer::toUni) /** * Create a private message. @@ -584,7 +584,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun createPrivateMessage( form: it.vercruysse.lemmyapi.datatypes.CreatePrivateMessage, ): Result = - apiV18.createPrivateMessage(transformer.fromUni(form)).map(transformer::toUni) + api.createPrivateMessage(transformer.fromUni(form)).map(transformer::toUni) /** * Delete a private message. @@ -594,7 +594,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun deletePrivateMessage( form: it.vercruysse.lemmyapi.datatypes.DeletePrivateMessage, ): Result = - apiV18.deletePrivateMessage(transformer.fromUni(form)).map(transformer::toUni) + api.deletePrivateMessage(transformer.fromUni(form)).map(transformer::toUni) /** * Create a report for a private message. @@ -604,7 +604,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun createPrivateMessageReport( form: it.vercruysse.lemmyapi.datatypes.CreatePrivateMessageReport, ): Result = - apiV18.createPrivateMessageReport(transformer.fromUni(form)).map(transformer::toUni) + api.createPrivateMessageReport(transformer.fromUni(form)).map(transformer::toUni) /** * Resolve a report for a private message. @@ -614,7 +614,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun resolvePrivateMessageReport( form: it.vercruysse.lemmyapi.datatypes.ResolvePrivateMessageReport, ): Result = - apiV18.resolvePrivateMessageReport(transformer.fromUni(form)).map(transformer::toUni) + api.resolvePrivateMessageReport(transformer.fromUni(form)).map(transformer::toUni) /** * Get the details for a person. @@ -624,7 +624,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun getPersonDetails( form: it.vercruysse.lemmyapi.datatypes.GetPersonDetails, ): Result = - apiV18.getPersonDetails(transformer.fromUni(form)).map(transformer::toUni) + api.getPersonDetails(transformer.fromUni(form)).map(transformer::toUni) /** * Register a new user. @@ -632,7 +632,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * @POST("user/register") */ override suspend fun register(form: it.vercruysse.lemmyapi.datatypes.Register): Result = - apiV18.register(transformer.fromUni(form)).map(transformer::toUni) + api.register(transformer.fromUni(form)).map(transformer::toUni) /** * Fetch a Captcha. @@ -640,16 +640,16 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * @GET("user/get_captcha") */ override suspend fun getCaptcha(): Result = - apiV18.getCaptcha(GetCaptcha(auth)).map(transformer::toUni) + api.getCaptcha(GetCaptcha(auth)).map(transformer::toUni) /** * Mark a notification as read */ override suspend fun markNotificationAsRead(form: MarkNotificationAsRead): Result = when (form._kind) { - NotificationType.Mention -> apiV18.markPersonMentionAsRead(transformer.fromUniM(form)).map { } - NotificationType.Reply -> apiV18.markCommentReplyAsRead(transformer.fromUniR(form)).map { } - NotificationType.PrivateMessage -> apiV18.markPrivateMessageAsRead(transformer.fromUniP(form)).map { } + NotificationType.Mention -> api.markPersonMentionAsRead(transformer.fromUniM(form)).map { } + NotificationType.Reply -> api.markCommentReplyAsRead(transformer.fromUniR(form)).map { } + NotificationType.PrivateMessage -> api.markPrivateMessageAsRead(transformer.fromUniP(form)).map { } NotificationType.Subscribed, NotificationType.ModAction -> notSupported() null -> notSupported() } @@ -660,9 +660,9 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun listNotifications(form: ListNotifications): Result> = when (form.type_) { NotificationDataType.All -> runCatching { - val replies = apiV18.getReplies(transformer.fromUniR(form)).getOrThrow().replies.map(transformer::toUni) - val mentionReplies = apiV18.getPersonMentions(transformer.fromUniM(form)).getOrThrow().mentions.map(transformer::toUni) - val privateMessages = apiV18.getPrivateMessages(transformer.fromUniP(form)).getOrThrow().private_messages.map(transformer::toUniPMV) + val replies = api.getReplies(transformer.fromUniR(form)).getOrThrow().replies.map(transformer::toUni) + val mentionReplies = api.getPersonMentions(transformer.fromUniM(form)).getOrThrow().mentions.map(transformer::toUni) + val privateMessages = api.getPrivateMessages(transformer.fromUniP(form)).getOrThrow().private_messages.map(transformer::toUniPMV) PagedResponse( buildList { @@ -674,17 +674,17 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba } NotificationDataType.Reply -> - apiV18.getReplies(transformer.fromUniR(form)).map { resp -> + api.getReplies(transformer.fromUniR(form)).map { resp -> PagedResponse(resp.replies.map(transformer::toUni)) } NotificationDataType.Mention -> - apiV18.getPersonMentions(transformer.fromUniM(form)).map { resp -> + api.getPersonMentions(transformer.fromUniM(form)).map { resp -> PagedResponse(resp.mentions.map(transformer::toUni)) } NotificationDataType.PrivateMessage -> - apiV18.getPrivateMessages(transformer.fromUniP(form)).map { resp -> + api.getPrivateMessages(transformer.fromUniP(form)).map { resp -> PagedResponse(resp.private_messages.map(transformer::toUniPMV)) } @@ -699,7 +699,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun banPerson( form: it.vercruysse.lemmyapi.datatypes.BanPerson, ): Result = - apiV18.banPerson(transformer.fromUni(form)).map { resp -> + api.banPerson(transformer.fromUni(form)).map { resp -> it.vercruysse.lemmyapi.datatypes.PersonResponse(transformer.toUni(resp.person_view)) } @@ -709,7 +709,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * @GET("user/banned") */ override suspend fun getBannedPersons(): Result> = - apiV18.getBannedPersons(it.vercruysse.lemmyapi.v0.x18.x5.datatypes.GetBannedPersons(auth ?: "")).map { resp -> + api.getBannedPersons(it.vercruysse.lemmyapi.v0.x18.x5.datatypes.GetBannedPersons(auth ?: "")).map { resp -> PagedResponse(resp.banned.map(transformer::toUni)) } @@ -721,7 +721,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun blockPerson( form: it.vercruysse.lemmyapi.datatypes.BlockPerson, ): Result = - apiV18.blockPerson(transformer.fromUni(form)).map { resp -> + api.blockPerson(transformer.fromUni(form)).map { resp -> it.vercruysse.lemmyapi.datatypes.PersonResponse(transformer.toUni(resp.person_view)) } @@ -731,7 +731,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * @POST("user/login") */ override suspend fun login(form: it.vercruysse.lemmyapi.datatypes.Login): Result = - apiV18.login(transformer.fromUni(form)).map(transformer::toUni) + api.login(transformer.fromUni(form)).map(transformer::toUni) /** * Delete your account. @@ -739,7 +739,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * @POST("user/delete_account") */ override suspend fun deleteAccount(form: it.vercruysse.lemmyapi.datatypes.DeleteAccount): Result = - apiV18.deleteAccount(transformer.fromUni(form)) + api.deleteAccount(transformer.fromUni(form)) /** * Reset your password. @@ -747,7 +747,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * @POST("user/password_reset") */ override suspend fun resetPassword(form: it.vercruysse.lemmyapi.datatypes.ResetPassword): Result = - apiV18.passwordReset(transformer.fromUni(form)) + api.passwordReset(transformer.fromUni(form)) /** * Change your password from an email / token based reset. @@ -755,7 +755,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * @POST("user/password_change") */ override suspend fun changePasswordAfterReset(form: it.vercruysse.lemmyapi.datatypes.ChangePasswordAfterReset): Result = - apiV18.passwordChangeAfterReset(transformer.fromUni(form)) + api.passwordChangeAfterReset(transformer.fromUni(form)) /** * Mark all replies as read. @@ -763,7 +763,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * @POST("user/mark_all_as_read") */ override suspend fun markAllNotificationsAsRead(): Result = - apiV18.markAllAsRead(it.vercruysse.lemmyapi.v0.x18.x5.datatypes.MarkAllAsRead(auth ?: "")).map {} + api.markAllAsRead(it.vercruysse.lemmyapi.v0.x18.x5.datatypes.MarkAllAsRead(auth ?: "")).map {} /** * Save your user settings. @@ -772,7 +772,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun saveUserSettings( form: it.vercruysse.lemmyapi.datatypes.SaveUserSettings, - ): Result = apiV18.saveUserSettings(transformer.fromUni(form)) + ): Result = api.saveUserSettings(transformer.fromUni(form)) /** * Change your user password. @@ -782,16 +782,16 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun changePassword( form: it.vercruysse.lemmyapi.datatypes.ChangePassword, ): Result = - apiV18.changePassword(transformer.fromUni(form)).map(transformer::toUni) + api.changePassword(transformer.fromUni(form)).map(transformer::toUni) /** * Get your unread counts * */ override suspend fun getUnreadCounts(): Result = runCatching { - val d = apiV18.getUnreadCount(GetUnreadCount(auth ?: "")).getOrThrow() - val reportCount = apiV18.getReportCount(GetReportCount(null, auth ?: "")).getOrNull() - val applicationCount = apiV18.getUnreadRegistrationApplicationCount(GetUnreadRegistrationApplicationCount(auth ?: "")).getOrNull() + val d = api.getUnreadCount(GetUnreadCount(auth ?: "")).getOrThrow() + val reportCount = api.getReportCount(GetReportCount(null, auth ?: "")).getOrNull() + val applicationCount = api.getUnreadRegistrationApplicationCount(GetUnreadRegistrationApplicationCount(auth ?: "")).getOrNull() UnreadCountsResponse( notification_count = d.replies + d.mentions + d.private_messages, @@ -806,7 +806,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * @POST("user/verify_email") */ override suspend fun verifyEmail(form: it.vercruysse.lemmyapi.datatypes.VerifyEmail): Result = - apiV18.verifyEmail(transformer.fromUni(form)) + api.verifyEmail(transformer.fromUni(form)) /** * Leave the Site admins. @@ -814,7 +814,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * @POST("user/leave_admin") */ override suspend fun leaveAdmin(): Result = - apiV18.leaveAdmin(it.vercruysse.lemmyapi.v0.x18.x5.datatypes.LeaveAdmin(auth ?: "")).map(transformer::toUni) + api.leaveAdmin(it.vercruysse.lemmyapi.v0.x18.x5.datatypes.LeaveAdmin(auth ?: "")).map(transformer::toUni) /** * Mark donation dialog as shown. @@ -831,7 +831,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun addAdmin( form: it.vercruysse.lemmyapi.datatypes.AddAdmin, ): Result = - apiV18.addAdmin(transformer.fromUni(form)).map(transformer::toUni) + api.addAdmin(transformer.fromUni(form)).map(transformer::toUni) /** * List the registration applications. @@ -841,7 +841,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun listRegistrationApplications( form: it.vercruysse.lemmyapi.datatypes.ListRegistrationApplications, ): Result> = - apiV18.listRegistrationApplications(transformer.fromUni(form)).map { resp -> + api.listRegistrationApplications(transformer.fromUni(form)).map { resp -> PagedResponse(resp.registration_applications.map(transformer::toUni)) } @@ -853,7 +853,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun approveRegistrationApplication( form: it.vercruysse.lemmyapi.datatypes.ApproveRegistrationApplication, ): Result = - apiV18.approveRegistrationApplication(transformer.fromUni(form)).map(transformer::toUni) + api.approveRegistrationApplication(transformer.fromUni(form)).map(transformer::toUni) /** * Purge / Delete a person from the database. @@ -861,7 +861,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * @POST("admin/purge/person") */ override suspend fun purgePerson(form: it.vercruysse.lemmyapi.datatypes.PurgePerson): Result = - apiV18.purgePerson(transformer.fromUni(form)) + api.purgePerson(transformer.fromUni(form)) /** * Purge / Delete a community from the database. @@ -869,7 +869,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * @POST("admin/purge/community") */ override suspend fun purgeCommunity(form: it.vercruysse.lemmyapi.datatypes.PurgeCommunity): Result = - apiV18.purgeCommunity(transformer.fromUni(form)) + api.purgeCommunity(transformer.fromUni(form)) /** * Purge / Delete a post from the database. @@ -877,7 +877,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * @POST("admin/purge/post") */ override suspend fun purgePost(form: it.vercruysse.lemmyapi.datatypes.PurgePost): Result = - apiV18.purgePost(transformer.fromUni(form)) + api.purgePost(transformer.fromUni(form)) /** * Purge / Delete a comment from the database. @@ -885,7 +885,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * @POST("admin/purge/comment") */ override suspend fun purgeComment(form: it.vercruysse.lemmyapi.datatypes.PurgeComment): Result = - apiV18.purgeComment(transformer.fromUni(form)) + api.purgeComment(transformer.fromUni(form)) /** * Edit an existing custom emoji @@ -895,7 +895,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun editCustomEmoji( form: it.vercruysse.lemmyapi.datatypes.EditCustomEmoji, ): Result = - apiV18.editCustomEmoji(transformer.fromUni(form)).map(transformer::toUni) + api.editCustomEmoji(transformer.fromUni(form)).map(transformer::toUni) /** * Create a new custom emoji @@ -905,7 +905,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun createCustomEmoji( form: it.vercruysse.lemmyapi.datatypes.CreateCustomEmoji, ): Result = - apiV18.createCustomEmoji(transformer.fromUni(form)).map(transformer::toUni) + api.createCustomEmoji(transformer.fromUni(form)).map(transformer::toUni) /** * Delete a custom emoji @@ -914,7 +914,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun deleteCustomEmoji( form: it.vercruysse.lemmyapi.datatypes.DeleteCustomEmoji, - ): Result = apiV18.deleteCustomEmoji(transformer.fromUni(form)) + ): Result = api.deleteCustomEmoji(transformer.fromUni(form)) /** * List custom emojis @@ -922,7 +922,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * @GET("custom_emoji/list") */ override suspend fun listCustomEmojis(form: ListCustomEmojis): Result = - apiV18.getSite(it.vercruysse.lemmyapi.v0.x18.x5.datatypes.GetSite(auth)).map { + api.getSite(it.vercruysse.lemmyapi.v0.x18.x5.datatypes.GetSite(auth)).map { ListCustomEmojisResponse(it.custom_emojis.map(transformer::toUni)) } @@ -988,7 +988,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba */ override suspend fun validateAuth(): Result = // This request can only fail if the auth token is invalid - apiV18.getPersonMentions(it.vercruysse.lemmyapi.v0.x18.x5.datatypes.GetPersonMentions(auth = auth ?: "")).map { } + api.getPersonMentions(it.vercruysse.lemmyapi.v0.x18.x5.datatypes.GetPersonMentions(auth = auth ?: "")).map { } /** * Get data of current user @@ -996,7 +996,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba * @GET("/account") */ override suspend fun getMyUser(): Result = - apiV18.getSite(it.vercruysse.lemmyapi.v0.x18.x5.datatypes.GetSite(auth)) + api.getSite(it.vercruysse.lemmyapi.v0.x18.x5.datatypes.GetSite(auth)) .mapCatching { it.my_user ?: throw IllegalStateException("Auth invalid") } .map { transformer.toUni(it) } @@ -1077,7 +1077,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba limit = form.limit, auth = auth, ) - return apiV18.getPersonDetails(getPersonDetailsForm).map { response -> + return api.getPersonDetails(getPersonDetailsForm).map { response -> val comments = when (form.type_) { it.vercruysse.lemmyapi.enums.PersonContentType.Posts -> emptyList() else -> response.comments.map { transformer.toUni(it) } @@ -1098,7 +1098,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery, ): Result = uploadAndApplyImage(image) { imageUrl -> - apiV18.editCommunity( + api.editCommunity( it.vercruysse.lemmyapi.v0.x18.x5.datatypes.EditCommunity( community_id = form.id, banner = imageUrl, @@ -1112,7 +1112,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery, ): Result = uploadAndApplyImage(image) { imageUrl -> - apiV18.editCommunity( + api.editCommunity( it.vercruysse.lemmyapi.v0.x18.x5.datatypes.EditCommunity( community_id = form.id, icon = imageUrl, @@ -1123,7 +1123,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun uploadSiteBanner(image: ByteArray): Result = uploadAndApplyImage(image) { imageUrl -> - apiV18.editSite( + api.editSite( it.vercruysse.lemmyapi.v0.x18.x5.datatypes.EditSite( banner = imageUrl, auth = auth ?: "", @@ -1133,7 +1133,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun uploadSiteIcon(image: ByteArray): Result = uploadAndApplyImage(image) { imageUrl -> - apiV18.editSite( + api.editSite( it.vercruysse.lemmyapi.v0.x18.x5.datatypes.EditSite( icon = imageUrl, auth = auth ?: "", @@ -1143,7 +1143,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun uploadUserAvatar(image: ByteArray): Result = uploadAndApplyImage(image) { imageUrl -> - apiV18.saveUserSettings( + api.saveUserSettings( it.vercruysse.lemmyapi.v0.x18.x5.datatypes.SaveUserSettings( avatar = imageUrl, auth = auth ?: "", @@ -1153,7 +1153,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun uploadUserBanner(image: ByteArray): Result = uploadAndApplyImage(image) { imageUrl -> - apiV18.saveUserSettings( + api.saveUserSettings( it.vercruysse.lemmyapi.v0.x18.x5.datatypes.SaveUserSettings( banner = imageUrl, auth = auth ?: "", @@ -1162,13 +1162,13 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba } override suspend fun deleteUserAvatar(): Result = - apiV18.saveUserSettings(it.vercruysse.lemmyapi.v0.x18.x5.datatypes.SaveUserSettings(avatar = "", auth = auth ?: "")) + api.saveUserSettings(it.vercruysse.lemmyapi.v0.x18.x5.datatypes.SaveUserSettings(avatar = "", auth = auth ?: "")) override suspend fun deleteUserBanner(): Result = - apiV18.saveUserSettings(it.vercruysse.lemmyapi.v0.x18.x5.datatypes.SaveUserSettings(banner = "", auth = auth ?: "")) + api.saveUserSettings(it.vercruysse.lemmyapi.v0.x18.x5.datatypes.SaveUserSettings(banner = "", auth = auth ?: "")) override suspend fun deleteCommunityBanner(form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery): Result = - apiV18.editCommunity( + api.editCommunity( it.vercruysse.lemmyapi.v0.x18.x5.datatypes.EditCommunity( community_id = form.id, banner = "", @@ -1177,7 +1177,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba ).map {} override suspend fun deleteCommunityIcon(form: it.vercruysse.lemmyapi.datatypes.CommunityIdQuery): Result = - apiV18.editCommunity( + api.editCommunity( it.vercruysse.lemmyapi.v0.x18.x5.datatypes.EditCommunity( community_id = form.id, icon = "", @@ -1186,7 +1186,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba ).map {} override suspend fun deleteSiteBanner(): Result = - apiV18.editSite( + api.editSite( it.vercruysse.lemmyapi.v0.x18.x5.datatypes.EditSite( banner = "", auth = auth ?: "", @@ -1194,7 +1194,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba ).map {} override suspend fun deleteSiteIcon(): Result = - apiV18.editSite( + api.editSite( it.vercruysse.lemmyapi.v0.x18.x5.datatypes.EditSite( icon = "", auth = auth ?: "", From 91321bd1de152a1b9d6b7ec7d26fbcce22328027 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Sun, 24 May 2026 20:46:50 +0200 Subject: [PATCH 086/110] Remove InstanceWithFederationState remnants --- .../src/main/kotlin/MapperGenerator0x18x5.kt | 10 ---------- .../src/main/kotlin/MapperGenerator0x19x0.kt | 1 - .../src/main/kotlin/MapperGenerator0x19x11.kt | 1 - .../src/main/kotlin/MapperGenerator0x19x3.kt | 1 - .../src/main/kotlin/MapperGenerator0x19x4.kt | 1 - .../src/main/kotlin/MapperGenerator0x19x6.kt | 1 - .../datatypes/InstanceWithFederationState.kt | 18 ------------------ .../lemmyapi/v0/x18/x5/MapperGenerator.kt | 10 ---------- .../lemmyapi/v0/x18/x5/Transformer.kt | 3 --- .../lemmyapi/v0/x19/x0/MapperGenerator.kt | 1 - .../lemmyapi/v0/x19/x0/Transformer.kt | 12 ------------ .../lemmyapi/v0/x19/x11/MapperGenerator.kt | 1 - .../lemmyapi/v0/x19/x11/Transformer.kt | 12 ------------ .../lemmyapi/v0/x19/x3/MapperGenerator.kt | 1 - .../lemmyapi/v0/x19/x3/Transformer.kt | 12 ------------ .../lemmyapi/v0/x19/x4/MapperGenerator.kt | 1 - .../lemmyapi/v0/x19/x4/Transformer.kt | 12 ------------ .../lemmyapi/v0/x19/x6/MapperGenerator.kt | 1 - .../lemmyapi/v0/x19/x6/Transformer.kt | 12 ------------ 19 files changed, 111 deletions(-) delete mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/InstanceWithFederationState.kt diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x18x5.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x18x5.kt index 5d8f57f3..9ea9363e 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x18x5.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x18x5.kt @@ -78,16 +78,6 @@ internal interface MapperGenerator0x18x5 { ) fun toUni(d: CommunityView): it.vercruysse.lemmyapi.datatypes.CommunityView - fun toUniF(d: Instance): it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState = - it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState( - id = d.id, - domain = d.domain, - published_at = d.published, - updated_at = d.updated, - software = d.software, - version = d.version, - ) - fun toUni(d: SiteMetadata): it.vercruysse.lemmyapi.datatypes.LinkMetadata = it.vercruysse.lemmyapi.datatypes.LinkMetadata( title = d.title, diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x0.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x0.kt index 961a1463..38dc680b 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x0.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x0.kt @@ -120,7 +120,6 @@ internal interface MapperGenerator0x19x0 { fun toUni(d: GetSiteMetadataResponse): it.vercruysse.lemmyapi.datatypes.GetSiteMetadataResponse fun toUni(d: Instance): it.vercruysse.lemmyapi.datatypes.Instance - fun toUni(d: InstanceWithFederationState): it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState fun toUni(d: Language): it.vercruysse.lemmyapi.datatypes.Language fun toUni(d: LocalSiteRateLimit): it.vercruysse.lemmyapi.datatypes.LocalSiteRateLimit diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt index 242822ba..91b5acc8 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt @@ -38,7 +38,6 @@ internal interface MapperGenerator0x19x11 { fun toUni(d: GetSiteResponse): it.vercruysse.lemmyapi.datatypes.GetSiteResponse fun toUni(d: ImageDetails): it.vercruysse.lemmyapi.datatypes.ImageDetails fun toUni(d: Instance): it.vercruysse.lemmyapi.datatypes.Instance - fun toUni(d: InstanceWithFederationState): it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState fun toUni(d: Language): it.vercruysse.lemmyapi.datatypes.Language fun toUni(d: LinkMetadata): it.vercruysse.lemmyapi.datatypes.LinkMetadata fun toUni(d: LocalImage): it.vercruysse.lemmyapi.datatypes.LocalImage diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x3.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x3.kt index a3e36e10..665be5c3 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x3.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x3.kt @@ -120,7 +120,6 @@ internal interface MapperGenerator0x19x3 { fun toUni(d: GetSiteMetadataResponse): it.vercruysse.lemmyapi.datatypes.GetSiteMetadataResponse fun toUni(d: Instance): it.vercruysse.lemmyapi.datatypes.Instance - fun toUni(d: InstanceWithFederationState): it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState fun toUni(d: Language): it.vercruysse.lemmyapi.datatypes.Language fun toUni(d: LocalSiteRateLimit): it.vercruysse.lemmyapi.datatypes.LocalSiteRateLimit diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt index ac68511e..030c0c18 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x4.kt @@ -37,7 +37,6 @@ internal interface MapperGenerator0x19x4 { fun toUni(d: GetSiteMetadataResponse): it.vercruysse.lemmyapi.datatypes.GetSiteMetadataResponse fun toUni(d: GetSiteResponse): it.vercruysse.lemmyapi.datatypes.GetSiteResponse fun toUni(d: Instance): it.vercruysse.lemmyapi.datatypes.Instance - fun toUni(d: InstanceWithFederationState): it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState fun toUni(d: Language): it.vercruysse.lemmyapi.datatypes.Language fun toUni(d: LinkMetadata): it.vercruysse.lemmyapi.datatypes.LinkMetadata fun toUni(d: LocalImage): it.vercruysse.lemmyapi.datatypes.LocalImage diff --git a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt index fa6f3e18..04b7a93b 100644 --- a/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt +++ b/GeneratorScripts/src/main/kotlin/MapperGenerator0x19x6.kt @@ -38,7 +38,6 @@ internal interface MapperGenerator0x19x6 { fun toUni(d: GetSiteResponse): it.vercruysse.lemmyapi.datatypes.GetSiteResponse fun toUni(d: ImageDetails): it.vercruysse.lemmyapi.datatypes.ImageDetails fun toUni(d: Instance): it.vercruysse.lemmyapi.datatypes.Instance - fun toUni(d: InstanceWithFederationState): it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState fun toUni(d: Language): it.vercruysse.lemmyapi.datatypes.Language fun toUni(d: LinkMetadata): it.vercruysse.lemmyapi.datatypes.LinkMetadata fun toUni(d: LocalImage): it.vercruysse.lemmyapi.datatypes.LocalImage diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/InstanceWithFederationState.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/InstanceWithFederationState.kt deleted file mode 100644 index 6ecdf2c7..00000000 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/InstanceWithFederationState.kt +++ /dev/null @@ -1,18 +0,0 @@ -package it.vercruysse.lemmyapi.datatypes - -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize - -@CommonParcelize -@Serializable -data class InstanceWithFederationState( - val id: InstanceId, - val domain: String, - val published_at: String, - val updated_at: String? = null, - val software: String? = null, - val version: String? = null, - val federation_state: FederationQueueState? = null, -) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/MapperGenerator.kt index 6be1c04e..88da1f03 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/MapperGenerator.kt @@ -17,16 +17,6 @@ internal interface MapperGenerator { fun toUni(d: CommunityView): it.vercruysse.lemmyapi.datatypes.CommunityView - fun toUniF(d: Instance): it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState = - it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState( - id = d.id, - domain = d.domain, - published_at = d.published, - updated_at = d.updated, - software = d.software, - version = d.version, - ) - fun toUni(d: SiteMetadata): it.vercruysse.lemmyapi.datatypes.LinkMetadata = it.vercruysse.lemmyapi.datatypes.LinkMetadata( title = d.title, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt index f779f60b..e761b5a8 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt @@ -2,7 +2,6 @@ package it.vercruysse.lemmyapi.v0.x18.x5 import it.vercruysse.lemmyapi.datatypes.CommentActions import it.vercruysse.lemmyapi.datatypes.CommunityActions -import it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState import it.vercruysse.lemmyapi.datatypes.MarkNotificationAsRead import it.vercruysse.lemmyapi.datatypes.Notification import it.vercruysse.lemmyapi.datatypes.NotificationView @@ -1018,8 +1017,6 @@ internal class Transformer(var auth: String) : MapperGenerator { updated_at = d.updated, ) - override fun toUniF(d: X5DatatypesInstance): InstanceWithFederationState = super.toUniF(d) - override fun fromUni(d: LemmyapiDatatypesAddAdmin): X5DatatypesAddAdmin = X5DatatypesAddAdmin( person_id = d.person_id, added = d.added, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt index ceccc28e..d44007d7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/MapperGenerator.kt @@ -58,7 +58,6 @@ internal interface MapperGenerator { fun toUni(d: GetPostResponse): it.vercruysse.lemmyapi.datatypes.GetPostResponse fun toUni(d: GetSiteMetadataResponse): it.vercruysse.lemmyapi.datatypes.GetSiteMetadataResponse fun toUni(d: Instance): it.vercruysse.lemmyapi.datatypes.Instance - fun toUni(d: InstanceWithFederationState): it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState fun toUni(d: Language): it.vercruysse.lemmyapi.datatypes.Language fun toUni(d: LocalSiteRateLimit): it.vercruysse.lemmyapi.datatypes.LocalSiteRateLimit diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt index 9edcc3ee..1c761a51 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt @@ -89,7 +89,6 @@ import it.vercruysse.lemmyapi.datatypes.GetSiteMetadataResponse as LemmyapiDatat import it.vercruysse.lemmyapi.datatypes.GetSiteResponse as LemmyapiDatatypesGetSiteResponse import it.vercruysse.lemmyapi.datatypes.HideCommunity as LemmyapiDatatypesHideCommunity import it.vercruysse.lemmyapi.datatypes.Instance as LemmyapiDatatypesInstance -import it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState as LemmyapiDatatypesInstanceWithFederationState import it.vercruysse.lemmyapi.datatypes.Language as LemmyapiDatatypesLanguage import it.vercruysse.lemmyapi.datatypes.ListCommunities as LemmyapiDatatypesListCommunities import it.vercruysse.lemmyapi.datatypes.ListNotifications as LemmyapiDatatypesListNotifications @@ -234,7 +233,6 @@ import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.GetSiteMetadataResponse as X0D import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.GetSiteResponse as X0DatatypesGetSiteResponse import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.HideCommunity as X0DatatypesHideCommunity import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.Instance as X0DatatypesInstance -import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.InstanceWithFederationState as X0DatatypesInstanceWithFederationState import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.Language as X0DatatypesLanguage import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.ListCommentReports as X0DatatypesListCommentReports import it.vercruysse.lemmyapi.v0.x19.x0.datatypes.ListCommunities as X0DatatypesListCommunities @@ -724,16 +722,6 @@ internal class Transformer : MapperGenerator { version = d.version, ) - override fun toUni(d: X0DatatypesInstanceWithFederationState): LemmyapiDatatypesInstanceWithFederationState = LemmyapiDatatypesInstanceWithFederationState( - id = d.id, - domain = d.domain, - published_at = d.published, - updated_at = d.updated, - software = d.software, - version = d.version, - federation_state = d.federation_state?.let { this.toUni(d = it) }, - ) - override fun toUni(d: X0DatatypesLanguage): LemmyapiDatatypesLanguage = LemmyapiDatatypesLanguage( id = d.id, code = d.code, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt index 34e8a4ea..0fa64ebb 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/MapperGenerator.kt @@ -35,7 +35,6 @@ internal interface MapperGenerator { fun toUni(d: GetSiteResponse): it.vercruysse.lemmyapi.datatypes.GetSiteResponse fun toUni(d: ImageDetails): it.vercruysse.lemmyapi.datatypes.ImageDetails fun toUni(d: Instance): it.vercruysse.lemmyapi.datatypes.Instance - fun toUni(d: InstanceWithFederationState): it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState fun toUni(d: Language): it.vercruysse.lemmyapi.datatypes.Language fun toUni(d: LinkMetadata): it.vercruysse.lemmyapi.datatypes.LinkMetadata fun toUni(d: LocalImage): it.vercruysse.lemmyapi.datatypes.LocalImage diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt index 09c2596b..9bfb4c8d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt @@ -91,7 +91,6 @@ import it.vercruysse.lemmyapi.datatypes.HideCommunity as LemmyapiDatatypesHideCo import it.vercruysse.lemmyapi.datatypes.HidePosts as LemmyapiDatatypesHidePosts import it.vercruysse.lemmyapi.datatypes.ImageDetails as LemmyapiDatatypesImageDetails import it.vercruysse.lemmyapi.datatypes.Instance as LemmyapiDatatypesInstance -import it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState as LemmyapiDatatypesInstanceWithFederationState import it.vercruysse.lemmyapi.datatypes.Language as LemmyapiDatatypesLanguage import it.vercruysse.lemmyapi.datatypes.LinkMetadata as LemmyapiDatatypesLinkMetadata import it.vercruysse.lemmyapi.datatypes.ListCommentLikes as LemmyapiDatatypesListCommentLikes @@ -248,7 +247,6 @@ import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.HideCommunity as X11Datatypes import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.HidePost as X11DatatypesHidePost import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.ImageDetails as X11DatatypesImageDetails import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.Instance as X11DatatypesInstance -import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.InstanceWithFederationState as X11DatatypesInstanceWithFederationState import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.Language as X11DatatypesLanguage import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.LinkMetadata as X11DatatypesLinkMetadata import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.ListCommentLikes as X11DatatypesListCommentLikes @@ -673,16 +671,6 @@ internal class Transformer : MapperGenerator { version = d.version, ) - override fun toUni(d: X11DatatypesInstanceWithFederationState): LemmyapiDatatypesInstanceWithFederationState = LemmyapiDatatypesInstanceWithFederationState( - id = d.id, - domain = d.domain, - published_at = d.published, - updated_at = d.updated, - software = d.software, - version = d.version, - federation_state = d.federation_state?.let { this.toUni(d = it) }, - ) - override fun toUni(d: X11DatatypesLanguage): LemmyapiDatatypesLanguage = LemmyapiDatatypesLanguage( id = d.id, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt index 25d1ae23..d05da1b9 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/MapperGenerator.kt @@ -54,7 +54,6 @@ internal interface MapperGenerator { fun toUni(d: GetPostResponse): it.vercruysse.lemmyapi.datatypes.GetPostResponse fun toUni(d: GetSiteMetadataResponse): it.vercruysse.lemmyapi.datatypes.GetSiteMetadataResponse fun toUni(d: Instance): it.vercruysse.lemmyapi.datatypes.Instance - fun toUni(d: InstanceWithFederationState): it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState fun toUni(d: Language): it.vercruysse.lemmyapi.datatypes.Language fun toUni(d: LocalSiteRateLimit): it.vercruysse.lemmyapi.datatypes.LocalSiteRateLimit fun toUni(d: LocalUser): it.vercruysse.lemmyapi.datatypes.LocalUser diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt index 07259416..770ab1da 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt @@ -91,7 +91,6 @@ import it.vercruysse.lemmyapi.datatypes.GetSiteMetadataResponse as LemmyapiDatat import it.vercruysse.lemmyapi.datatypes.GetSiteResponse as LemmyapiDatatypesGetSiteResponse import it.vercruysse.lemmyapi.datatypes.HideCommunity as LemmyapiDatatypesHideCommunity import it.vercruysse.lemmyapi.datatypes.Instance as LemmyapiDatatypesInstance -import it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState as LemmyapiDatatypesInstanceWithFederationState import it.vercruysse.lemmyapi.datatypes.Language as LemmyapiDatatypesLanguage import it.vercruysse.lemmyapi.datatypes.ListCommentLikes as LemmyapiDatatypesListCommentLikes import it.vercruysse.lemmyapi.datatypes.ListCommunities as LemmyapiDatatypesListCommunities @@ -239,7 +238,6 @@ import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.GetSiteMetadataResponse as X3D import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.GetSiteResponse as X3DatatypesGetSiteResponse import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.HideCommunity as X3DatatypesHideCommunity import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.Instance as X3DatatypesInstance -import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.InstanceWithFederationState as X3DatatypesInstanceWithFederationState import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.Language as X3DatatypesLanguage import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.ListCommentLikes as X3DatatypesListCommentLikes import it.vercruysse.lemmyapi.v0.x19.x3.datatypes.ListCommentReports as X3DatatypesListCommentReports @@ -743,16 +741,6 @@ internal class Transformer : MapperGenerator { version = d.version, ) - override fun toUni(d: X3DatatypesInstanceWithFederationState): LemmyapiDatatypesInstanceWithFederationState = LemmyapiDatatypesInstanceWithFederationState( - id = d.id, - domain = d.domain, - published_at = d.published, - updated_at = d.updated, - software = d.software, - version = d.version, - federation_state = d.federation_state?.let { this.toUni(d = it) }, - ) - override fun toUni(d: X3DatatypesLanguage): LemmyapiDatatypesLanguage = LemmyapiDatatypesLanguage( id = d.id, code = d.code, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt index cf2c546a..bf2a0dce 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/MapperGenerator.kt @@ -33,7 +33,6 @@ internal interface MapperGenerator { fun toUni(d: GetSiteMetadataResponse): it.vercruysse.lemmyapi.datatypes.GetSiteMetadataResponse fun toUni(d: GetSiteResponse): it.vercruysse.lemmyapi.datatypes.GetSiteResponse fun toUni(d: Instance): it.vercruysse.lemmyapi.datatypes.Instance - fun toUni(d: InstanceWithFederationState): it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState fun toUni(d: Language): it.vercruysse.lemmyapi.datatypes.Language fun toUni(d: LinkMetadata): it.vercruysse.lemmyapi.datatypes.LinkMetadata fun toUni(d: LocalImage): it.vercruysse.lemmyapi.datatypes.LocalImage diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt index f04debc2..7a2cdaae 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt @@ -89,7 +89,6 @@ import it.vercruysse.lemmyapi.datatypes.GetSiteResponse as LemmyapiDatatypesGetS import it.vercruysse.lemmyapi.datatypes.HideCommunity as LemmyapiDatatypesHideCommunity import it.vercruysse.lemmyapi.datatypes.HidePosts as LemmyapiDatatypesHidePosts import it.vercruysse.lemmyapi.datatypes.Instance as LemmyapiDatatypesInstance -import it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState as LemmyapiDatatypesInstanceWithFederationState import it.vercruysse.lemmyapi.datatypes.Language as LemmyapiDatatypesLanguage import it.vercruysse.lemmyapi.datatypes.LinkMetadata as LemmyapiDatatypesLinkMetadata import it.vercruysse.lemmyapi.datatypes.ListCommentLikes as LemmyapiDatatypesListCommentLikes @@ -244,7 +243,6 @@ import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.GetSiteResponse as X4Datatypes import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.HideCommunity as X4DatatypesHideCommunity import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.HidePost as X4DatatypesHidePost import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.Instance as X4DatatypesInstance -import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.InstanceWithFederationState as X4DatatypesInstanceWithFederationState import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.Language as X4DatatypesLanguage import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.LinkMetadata as X4DatatypesLinkMetadata import it.vercruysse.lemmyapi.v0.x19.x4.datatypes.ListCommentLikes as X4DatatypesListCommentLikes @@ -669,16 +667,6 @@ internal class Transformer : MapperGenerator { version = d.version, ) - override fun toUni(d: X4DatatypesInstanceWithFederationState): LemmyapiDatatypesInstanceWithFederationState = LemmyapiDatatypesInstanceWithFederationState( - id = d.id, - domain = d.domain, - published_at = d.published, - updated_at = d.updated, - software = d.software, - version = d.version, - federation_state = d.federation_state?.let { this.toUni(d = it) }, - ) - override fun toUni(d: X4DatatypesLanguage): LemmyapiDatatypesLanguage = LemmyapiDatatypesLanguage( id = d.id, code = d.code, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt index 4d065853..a0bcc7bf 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/MapperGenerator.kt @@ -35,7 +35,6 @@ internal interface MapperGenerator { fun toUni(d: GetSiteResponse): it.vercruysse.lemmyapi.datatypes.GetSiteResponse fun toUni(d: ImageDetails): it.vercruysse.lemmyapi.datatypes.ImageDetails fun toUni(d: Instance): it.vercruysse.lemmyapi.datatypes.Instance - fun toUni(d: InstanceWithFederationState): it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState fun toUni(d: Language): it.vercruysse.lemmyapi.datatypes.Language fun toUni(d: LinkMetadata): it.vercruysse.lemmyapi.datatypes.LinkMetadata fun toUni(d: LocalImage): it.vercruysse.lemmyapi.datatypes.LocalImage diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt index 4f27212e..7de1b3f1 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt @@ -91,7 +91,6 @@ import it.vercruysse.lemmyapi.datatypes.HideCommunity as LemmyapiDatatypesHideCo import it.vercruysse.lemmyapi.datatypes.HidePosts as LemmyapiDatatypesHidePosts import it.vercruysse.lemmyapi.datatypes.ImageDetails as LemmyapiDatatypesImageDetails import it.vercruysse.lemmyapi.datatypes.Instance as LemmyapiDatatypesInstance -import it.vercruysse.lemmyapi.datatypes.InstanceWithFederationState as LemmyapiDatatypesInstanceWithFederationState import it.vercruysse.lemmyapi.datatypes.Language as LemmyapiDatatypesLanguage import it.vercruysse.lemmyapi.datatypes.LinkMetadata as LemmyapiDatatypesLinkMetadata import it.vercruysse.lemmyapi.datatypes.ListCommentLikes as LemmyapiDatatypesListCommentLikes @@ -248,7 +247,6 @@ import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.HideCommunity as X6DatatypesHi import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.HidePost as X6DatatypesHidePost import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.ImageDetails as X6DatatypesImageDetails import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.Instance as X6DatatypesInstance -import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.InstanceWithFederationState as X6DatatypesInstanceWithFederationState import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.Language as X6DatatypesLanguage import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.LinkMetadata as X6DatatypesLinkMetadata import it.vercruysse.lemmyapi.v0.x19.x6.datatypes.ListCommentLikes as X6DatatypesListCommentLikes @@ -673,16 +671,6 @@ internal class Transformer : MapperGenerator { version = d.version, ) - override fun toUni(d: X6DatatypesInstanceWithFederationState): LemmyapiDatatypesInstanceWithFederationState = LemmyapiDatatypesInstanceWithFederationState( - id = d.id, - domain = d.domain, - published_at = d.published, - updated_at = d.updated, - software = d.software, - version = d.version, - federation_state = d.federation_state?.let { this.toUni(d = it) }, - ) - override fun toUni(d: X6DatatypesLanguage): LemmyapiDatatypesLanguage = LemmyapiDatatypesLanguage( id = d.id, code = d.code, From 7b5c8f06dddfe507541db550242edc1b27049b69 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Sun, 24 May 2026 22:33:33 +0200 Subject: [PATCH 087/110] Fix couple types --- .../kotlin/it/vercruysse/lemmyapi/datatypes/CommentReport.kt | 2 ++ .../kotlin/it/vercruysse/lemmyapi/datatypes/EditCommunityTag.kt | 2 +- .../kotlin/it/vercruysse/lemmyapi/v1/x0/x0/Transformer.kt | 1 + 3 files changed, 4 insertions(+), 1 deletion(-) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReport.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReport.kt index 80238103..d7feef39 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReport.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReport.kt @@ -18,4 +18,6 @@ data class CommentReport( val resolver_id: PersonId? = null, val published_at: String, val updated_at: String? = null, + /** Added in Lemmy 1.0.0 */ + val violates_instance_rules: Boolean = false, ) : DatatypeRoot, Identity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditCommunityTag.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditCommunityTag.kt index 70903c8e..7d651bbe 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditCommunityTag.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditCommunityTag.kt @@ -8,7 +8,7 @@ import kotlinx.serialization.Serializable @Serializable data class EditCommunityTag( val tag_id: CommunityTagId, - val display_name: String, + val display_name: String? = null, val summary: String? = null, val color: String? /* "color01" | "color02" | "color03" | "color04" | "color05" | "color06" | "color07" | "color08" | "color09" | "color10" */ = null, ): DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/Transformer.kt index 048c9d7a..5517fad7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/Transformer.kt @@ -586,6 +586,7 @@ internal class Transformer : MapperGenerator { resolver_id = d.resolver_id, published_at = d.published_at, updated_at = d.updated_at, + violates_instance_rules = d.violates_instance_rules, ) override fun toUni(d: X0DatatypesCommentReportResponse): LemmyapiDatatypesCommentReportResponse = LemmyapiDatatypesCommentReportResponse( From 5624ca3cceecc3afa0cb4e61655b08232d644f33 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Sun, 24 May 2026 22:55:53 +0200 Subject: [PATCH 088/110] Update Site types --- .../vercruysse/lemmyapi/datatypes/CreateSite.kt | 4 ---- .../it/vercruysse/lemmyapi/datatypes/EditSite.kt | 15 +++++++++++---- .../vercruysse/lemmyapi/v0/x18/x5/Transformer.kt | 8 +++++--- .../vercruysse/lemmyapi/v0/x19/x0/Transformer.kt | 8 +++++--- .../vercruysse/lemmyapi/v0/x19/x11/Transformer.kt | 8 +++++--- .../vercruysse/lemmyapi/v0/x19/x3/Transformer.kt | 8 +++++--- .../vercruysse/lemmyapi/v0/x19/x4/Transformer.kt | 8 +++++--- .../vercruysse/lemmyapi/v0/x19/x6/Transformer.kt | 8 +++++--- .../vercruysse/lemmyapi/v1/x0/x0/Transformer.kt | 5 +++++ 9 files changed, 46 insertions(+), 26 deletions(-) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateSite.kt index 00e7c7a7..fc87ca2a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateSite.kt @@ -17,10 +17,6 @@ data class CreateSite( val name: String, val sidebar: String? = null, val summary: String? = null, - /** Removed in 1.0.0 */ - val icon: String? = null, - /** Removed in 1.0.0 */ - val banner: String? = null, val community_creation_admin_only: Boolean? = null, val email_verification_required: Boolean? = null, val application_question: String? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt index b71f1059..4f2de06c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt @@ -8,10 +8,9 @@ import it.vercruysse.lemmyapi.enums.ListingType import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.enums.FederationMode import it.vercruysse.lemmyapi.enums.ImageMode -// TODO: missing fields + mapping - @CommonParcelize @Serializable data class EditSite( @@ -19,8 +18,6 @@ data class EditSite( val sidebar: String? = null, val summary: String? = null, /** Removed in 1.0.0 */ - val enable_downvotes: Boolean? = null, - /** Removed in 1.0.0 */ val enable_nsfw: Boolean? = null, val community_creation_admin_only: Boolean? = null, val email_verification_required: Boolean? = null, @@ -74,6 +71,16 @@ data class EditSite( val reports_email_admins: Boolean? = null, val content_warning: String? = null, /** Added in 1.0.0 */ + val oauth_registration: Boolean? = null, + /** Added in 1.0.0 */ + val post_upvotes: FederationMode? /* "All" | "Local" | "Disable" */ = null, + /** Added in 1.0.0 */ + val post_downvotes: FederationMode? /* "All" | "Local" | "Disable" */ = null, + /** Added in 1.0.0 */ + val comment_upvotes: FederationMode? /* "All" | "Local" | "Disable" */ = null, + /** Added in 1.0.0 */ + val comment_downvotes: FederationMode? /* "All" | "Local" | "Disable" */ = null, + /** Added in 1.0.0 */ val suggested_multi_community_id: MultiCommunityId? = null, /** Added in 1.0.0 */ val nsfw_content_disallowed: Boolean? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt index e761b5a8..c6366a4d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt @@ -1170,8 +1170,6 @@ internal class Transformer(var auth: String) : MapperGenerator { name = d.name, sidebar = d.sidebar, description = d.summary, - icon = d.icon, - banner = d.banner, enable_downvotes = when (d.post_downvotes) { FederationMode.Local, FederationMode.All -> true FederationMode.Disable -> false @@ -1307,7 +1305,11 @@ internal class Transformer(var auth: String) : MapperGenerator { name = d.name, sidebar = d.sidebar, description = d.summary, - enable_downvotes = d.enable_downvotes, + enable_downvotes = when (d.post_downvotes) { + FederationMode.Local, FederationMode.All -> true + FederationMode.Disable -> false + null -> null + }, enable_nsfw = d.enable_nsfw, community_creation_admin_only = d.community_creation_admin_only, require_email_verification = d.email_verification_required, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt index 1c761a51..5b844ce5 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt @@ -1202,8 +1202,6 @@ internal class Transformer : MapperGenerator { name = d.name, sidebar = d.sidebar, description = d.summary, - icon = d.icon, - banner = d.banner, enable_downvotes = when (d.post_downvotes) { FederationMode.Local, FederationMode.All -> true FederationMode.Disable -> false @@ -1327,7 +1325,11 @@ internal class Transformer : MapperGenerator { name = d.name, sidebar = d.sidebar, description = d.summary, - enable_downvotes = d.enable_downvotes, + enable_downvotes = when (d.post_downvotes) { + FederationMode.Local, FederationMode.All -> true + FederationMode.Disable -> false + null -> null + }, enable_nsfw = d.enable_nsfw, community_creation_admin_only = d.community_creation_admin_only, require_email_verification = d.email_verification_required, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt index 9bfb4c8d..612b74bf 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt @@ -1285,8 +1285,6 @@ internal class Transformer : MapperGenerator { name = d.name, sidebar = d.sidebar, description = d.summary, - icon = d.icon, - banner = d.banner, enable_downvotes = when (d.post_downvotes) { FederationMode.Local, FederationMode.All -> true FederationMode.Disable -> false @@ -1416,7 +1414,11 @@ internal class Transformer : MapperGenerator { name = d.name, sidebar = d.sidebar, description = d.summary, - enable_downvotes = d.enable_downvotes, + enable_downvotes = when (d.post_downvotes) { + FederationMode.Local, FederationMode.All -> true + FederationMode.Disable -> false + null -> null + }, enable_nsfw = d.enable_nsfw, community_creation_admin_only = d.community_creation_admin_only, require_email_verification = d.email_verification_required, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt index 770ab1da..200ecc6d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt @@ -1220,8 +1220,6 @@ internal class Transformer : MapperGenerator { name = d.name, sidebar = d.sidebar, description = d.summary, - icon = d.icon, - banner = d.banner, enable_downvotes = when (d.post_downvotes) { FederationMode.Local, FederationMode.All -> true FederationMode.Disable -> false @@ -1345,7 +1343,11 @@ internal class Transformer : MapperGenerator { name = d.name, sidebar = d.sidebar, description = d.summary, - enable_downvotes = d.enable_downvotes, + enable_downvotes = when (d.post_downvotes) { + FederationMode.Local, FederationMode.All -> true + FederationMode.Disable -> false + null -> null + }, enable_nsfw = d.enable_nsfw, community_creation_admin_only = d.community_creation_admin_only, require_email_verification = d.email_verification_required, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt index 7a2cdaae..f1bdcddb 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt @@ -1275,8 +1275,6 @@ internal class Transformer : MapperGenerator { name = d.name, sidebar = d.sidebar, description = d.summary, - icon = d.icon, - banner = d.banner, enable_downvotes = when (d.post_downvotes) { FederationMode.Local, FederationMode.All -> true FederationMode.Disable -> false @@ -1406,7 +1404,11 @@ internal class Transformer : MapperGenerator { name = d.name, sidebar = d.sidebar, description = d.summary, - enable_downvotes = d.enable_downvotes, + enable_downvotes = when (d.post_downvotes) { + FederationMode.Local, FederationMode.All -> true + FederationMode.Disable -> false + null -> null + }, enable_nsfw = d.enable_nsfw, community_creation_admin_only = d.community_creation_admin_only, require_email_verification = d.email_verification_required, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt index 7de1b3f1..cae3b185 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt @@ -1279,8 +1279,6 @@ internal class Transformer : MapperGenerator { name = d.name, sidebar = d.sidebar, description = d.summary, - icon = d.icon, - banner = d.banner, enable_downvotes = when (d.post_downvotes) { FederationMode.Local, FederationMode.All -> true FederationMode.Disable -> false @@ -1410,7 +1408,11 @@ internal class Transformer : MapperGenerator { name = d.name, sidebar = d.sidebar, description = d.summary, - enable_downvotes = d.enable_downvotes, + enable_downvotes = when (d.post_downvotes) { + FederationMode.Local, FederationMode.All -> true + FederationMode.Disable -> false + null -> null + }, enable_nsfw = d.enable_nsfw, community_creation_admin_only = d.community_creation_admin_only, require_email_verification = d.email_verification_required, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/Transformer.kt index 5517fad7..a2399b42 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/Transformer.kt @@ -2008,6 +2008,11 @@ internal class Transformer : MapperGenerator { registration_mode = d.registration_mode, reports_email_admins = d.reports_email_admins, content_warning = d.content_warning, + oauth_registration = d.oauth_registration, + post_upvotes = d.post_upvotes, + post_downvotes = d.post_downvotes, + comment_upvotes = d.comment_upvotes, + comment_downvotes = d.comment_downvotes, suggested_multi_community_id = d.suggested_multi_community_id, nsfw_content_disallowed = d.nsfw_content_disallowed, email_notifications_disabled = d.email_notifications_disabled, From 2c7315742a69e4be41faa6d89314f083b53c00f0 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Sun, 24 May 2026 23:22:33 +0200 Subject: [PATCH 089/110] Update todos --- .../kotlin/it/vercruysse/lemmyapi/LemmyApiBase.kt | 3 +-- .../vercruysse/lemmyapi/LemmyApiBaseController.kt | 11 ++--------- .../kotlin/it/vercruysse/lemmyapi/OldRoutes.kt | 13 ++++++++++++- .../vercruysse/lemmyapi/datatypes/CommentActions.kt | 2 -- .../lemmyapi/datatypes/CreateCommentLike.kt | 1 - .../vercruysse/lemmyapi/datatypes/CreatePostLike.kt | 1 - .../it/vercruysse/lemmyapi/datatypes/PostActions.kt | 2 -- .../it/vercruysse/lemmyapi/datatypes/VoteView.kt | 1 - 8 files changed, 15 insertions(+), 19 deletions(-) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBase.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBase.kt index 5bd49c39..d957f2b3 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBase.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBase.kt @@ -8,8 +8,7 @@ import it.vercruysse.lemmyapi.enums.VersionTracker import it.vercruysse.lemmyapi.exception.NotSupportedException // Wanted to keep this as an interface, but interfaces can't keep state -abstract class LemmyApiBase(httpClient: HttpClient, val version: Version, val baseUrl: String, open var auth: String?) : - OldRoutes { +abstract class LemmyApiBase(httpClient: HttpClient, val version: Version, val baseUrl: String, open var auth: String?) { @Suppress("PropertyName") val FF = FeatureFlags(version) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt index e87ff170..adaae1f1 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt @@ -14,7 +14,8 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version actualVersion, baseUrl, auth, - ) { + ), + OldRoutes { /** * Gets the site, and your user data. * @@ -422,14 +423,6 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version */ abstract suspend fun banPerson(form: BanPerson): Result -// TODO: remove it - /** - * Get a list of banned users - * - * @GET("user/banned") - */ - abstract suspend fun getBannedPersons(): Result> - /** * Block a person. * diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/OldRoutes.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/OldRoutes.kt index 33165e0d..a6c5939d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/OldRoutes.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/OldRoutes.kt @@ -1,7 +1,18 @@ package it.vercruysse.lemmyapi +import it.vercruysse.lemmyapi.datatypes.PagedResponse +import it.vercruysse.lemmyapi.datatypes.PersonView + /** * This file is for routes that are no longer used by the latest version of Lemmy. * But need to be kept for backwards compatibility. */ -interface OldRoutes +interface OldRoutes { + + /** + * Get a list of banned users + * + * @GET("user/banned") + */ + suspend fun getBannedPersons(): Result> +} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentActions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentActions.kt index c95a44b5..b9c2b9d5 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentActions.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentActions.kt @@ -4,8 +4,6 @@ import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -// TODO: voting changes - @CommonParcelize @Serializable data class CommentActions( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommentLike.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommentLike.kt index 4c855957..681bcbfc 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommentLike.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommentLike.kt @@ -9,6 +9,5 @@ import it.vercruysse.lemmyapi.CommonParcelize @Serializable data class CreateCommentLike( val comment_id: CommentId, - // TODO: changed val score: Int, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreatePostLike.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreatePostLike.kt index 32ca4d5e..3eca5c34 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreatePostLike.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreatePostLike.kt @@ -9,6 +9,5 @@ import it.vercruysse.lemmyapi.CommonParcelize @Serializable data class CreatePostLike( val post_id: PostId, - // TODO: update val score: Int, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostActions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostActions.kt index 0df4f7bd..9bc64fe4 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostActions.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostActions.kt @@ -5,8 +5,6 @@ import it.vercruysse.lemmyapi.DatatypeRoot import it.vercruysse.lemmyapi.enums.PostNotificationsMode import kotlinx.serialization.Serializable -// TODO: voting changes - @CommonParcelize @Serializable data class PostActions( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/VoteView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/VoteView.kt index 13e766cb..dbd69737 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/VoteView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/VoteView.kt @@ -12,7 +12,6 @@ data class VoteView( val creator: Person, val creator_banned: Boolean, val creator_banned_from_community: Boolean, - // TODO: to be changed val score: Int, ) : DatatypeRoot, Identity { override val id: Long From 30c0b621f63b2a36875a8e00ea8e8844bf020f2e Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Sun, 24 May 2026 23:30:34 +0200 Subject: [PATCH 090/110] Update some descriptions --- .../lemmyapi/LemmyApiBaseController.kt | 68 +++++++++---------- 1 file changed, 34 insertions(+), 34 deletions(-) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt index adaae1f1..f6afcfdf 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt @@ -6,8 +6,6 @@ import it.vercruysse.lemmyapi.datatypes.* import it.vercruysse.lemmyapi.dto.ExportUserSettingsResponse import it.vercruysse.lemmyapi.dto.ImportUserSettings -// TODO: update these descriptions - abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version, baseUrl: String, override var auth: String?) : LemmyApiBase( client, @@ -45,7 +43,7 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version abstract suspend fun getModlog(form: GetModlog): Result> /** - * Search lemmy. + * Search lemmy. If `search_term` is a url it also attempts to fetch it, just like `resolve_object`. * * @GET("search") */ @@ -248,7 +246,7 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version abstract suspend fun resolvePostReport(form: ResolvePostReport): Result /** - * List reports. + * List user reports. */ abstract suspend fun listReports(form: ListReports): Result> @@ -407,12 +405,12 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version abstract suspend fun getCaptcha(): Result /** - * Mark a notification as read + * Mark a notification as read. */ abstract suspend fun markNotificationAsRead(form: MarkNotificationAsRead): Result /** - * List notifications. + * Get your inbox (replies, comment mentions, post mentions, and messages). */ abstract suspend fun listNotifications(form: ListNotifications): Result> @@ -480,14 +478,16 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version abstract suspend fun changePassword(form: ChangePassword): Result /** - * Get your unread counts + * Returns the amount of unread items of various types. For normal users this means + * the number of unread notifications, mods and admins get additional unread counts for + * reports, registration applications and pending follows to private communities. * * @GET("account/unread_counts") */ abstract suspend fun getUnreadCounts(): Result /** - * Verify your email + * Verify your email. * * @POST("user/verify_email") */ @@ -501,7 +501,7 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version abstract suspend fun leaveAdmin(): Result /** - * Mark donation dialog as shown. + * Mark the donation dialog as shown, so it isn't displayed anymore. * * @POST("user/donation_dialog_shown") */ @@ -585,7 +585,7 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version abstract suspend fun listCustomEmojis(form: ListCustomEmojis): Result /** - * Block an instance. + * Block an instance's communities as a user. * * @POST("site/block") */ @@ -594,7 +594,7 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version /** * Generate a TOTP / two-factor secret. * - * Afterwards you need to call `/user/totp/update` with a valid token to enable it. + * Afterwards you need to call `/account/auth/totp/edit` with a valid token to enable it. * * @POST("user/totp/generate") */ @@ -603,7 +603,7 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version /** * Enable / Disable TOTP / two-factor authentication. * - * To enable, you need to first call `/user/totp/generate` and then pass a valid token to this. + * To enable, you need to first call `/account/auth/totp/generate` and then pass a valid token to this. * * Disabling is only possible if 2FA was previously enabled. Again it is necessary to pass a valid token. * @@ -641,14 +641,14 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version abstract suspend fun validateAuth(): Result /** - * Get data of current user + * Get data of current user. * * @GET("/account") */ abstract suspend fun getMyUser(): Result /** - * Logout your user + * Invalidate the currently used auth token. * * @POST("user/logout") */ @@ -725,7 +725,7 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version abstract suspend fun deleteMedia(form: DeleteImageParams): Result /** - * Upload a user avatar image. + * Upload new user avatar. * * @POST("account/avatar") */ @@ -746,7 +746,7 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version abstract suspend fun uploadSiteBanner(image: ByteArray): Result /** - * Upload a site icon image. + * Upload new site icon. * * @POST("site/icon") */ @@ -767,7 +767,7 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version abstract suspend fun uploadCommunityIcon(image: ByteArray, form: CommunityIdQuery): Result /** - * Delete a user avatar image. + * Delete the user avatar. * * @DELETE("account/avatar") */ @@ -802,7 +802,7 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version abstract suspend fun deleteSiteBanner(): Result /** - * Delete a site icon image. + * Delete the site icon. * * @DELETE("site/icon") */ @@ -872,21 +872,21 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version abstract suspend fun listCommunityPendingFollows(form: ListCommunityPendingFollows): Result> /** - * Mod edit a post. + * Mods can change nsfw flag and tags for a post. * * @PUT("post/mod_edit") */ abstract suspend fun modEditPost(form: ModEditPost): Result /** - * Edit post notifications. + * Change notification settings for a post. * * @PUT("post/notifications") */ abstract suspend fun editPostNotifications(form: EditPostNotifications): Result /** - * Warn a post. + * Creates a warning against a post and notifies the user. * * @POST("post/warn") */ @@ -914,21 +914,21 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version abstract suspend fun warnComment(form: CreateCommentWarning): Result /** - * Note a person (moderator note). + * Make a note for a person. * * @POST("person/note") */ abstract suspend fun notePerson(form: NotePerson): Result /** - * List saved posts and comments for a person. + * List your saved content. * * @GET("account/saved") */ abstract suspend fun listPersonSaved(form: ListPersonSaved): Result> /** - * List read posts for a person. + * List your read content. * * @GET("account/read") */ @@ -942,14 +942,14 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version abstract suspend fun listPersonHidden(form: ListPersonHidden): Result> /** - * List liked posts and comments for a person. + * List your liked content. * * @GET("account/liked") */ abstract suspend fun listPersonLiked(form: ListPersonLiked): Result> /** - * Resend verification email. + * Resend a verification email. * * @POST("account/auth/resend_verification_email") */ @@ -963,35 +963,35 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version abstract suspend fun authenticateWithOAuth(form: AuthenticateWithOauth): Result /** - * Block an instance for persons. + * Block an instance's persons as a user. * * @POST("account/block/instance/persons") */ abstract suspend fun userBlockInstancePersons(form: UserBlockInstancePersonsParams): Result /** - * Allow an instance (admin). + * Globally allow an instance as admin. * * @POST("admin/instance/allow") */ abstract suspend fun adminAllowInstance(form: AdminAllowInstanceParams): Result /** - * Block an instance (admin). + * Globally block an instance as admin. * * @POST("admin/instance/block") */ abstract suspend fun adminBlockInstance(form: AdminBlockInstanceParams): Result /** - * Create a tagline. + * Create a new tagline. * * @POST("admin/tagline") */ abstract suspend fun createTagline(form: CreateTagline): Result /** - * Edit a tagline. + * Edit an existing tagline. * * @PUT("admin/tagline") */ @@ -1012,21 +1012,21 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version abstract suspend fun listTaglines(form: ListTaglines): Result> /** - * Create an OAuth provider. + * Create a new OAuth provider method. * * @POST("oauth_provider") */ abstract suspend fun createOAuthProvider(form: CreateOAuthProvider): Result /** - * Edit an OAuth provider. + * Edit an existing OAuth provider method. * * @PUT("oauth_provider") */ abstract suspend fun editOAuthProvider(form: EditOAuthProvider): Result /** - * Delete an OAuth provider. + * Delete an OAuth provider method. * * @DELETE("oauth_provider") */ From 7e3cb7858a72ebfcb2f5a2403ddd358caf4b80bd Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Mon, 25 May 2026 00:04:31 +0200 Subject: [PATCH 091/110] Documentation changes --- ACTIVE_CHANGES.md | 31 ++++----- CONTRIBUTING.md | 65 +++++++++++++++++++ .../main/kotlin/testingscripts/basicApi.kt | 21 +++--- README.md | 61 +++++------------ 4 files changed, 111 insertions(+), 67 deletions(-) create mode 100644 CONTRIBUTING.md diff --git a/ACTIVE_CHANGES.md b/ACTIVE_CHANGES.md index a0261c8c..27914092 100644 --- a/ACTIVE_CHANGES.md +++ b/ACTIVE_CHANGES.md @@ -5,6 +5,13 @@ This document lists the changes that you will need to actively handle, through f ## V1 +### Sort types split + `time_range_seconds` + +The many `Top*` `SortType` variants (`TopDay`, `TopWeek`, `TopMonth`, `TopYear`, `TopAll`, `TopHour`, `TopSixHour`, `TopTwelveHour`, `TopThreeMonths`, `TopSixMonths`, `TopNineMonths`) have been collapsed into a single `Top` value in v1. Time range is now expressed via `time_range_seconds: Long?` on the query (`GetPosts`, `GetComments`, `ListCommunities`, `ListMultiCommunities`, `Search`). + +- On v1, set `sort = SortType.Top` and pass `time_range_seconds` (e.g. `86400` for top day). +- On pre-v1, the old `Top*` variants are still used; `time_range_seconds` is ignored. The wrapper translates automatically. + ### Image upload / delete compatibility - Consumers should use `LemmyApiBaseController.uploadImage()` and `LemmyApiBaseController.deleteMedia()`. @@ -18,6 +25,15 @@ This document lists the changes that you will need to actively handle, through f Should now use the dedicated avatar/icon/banner upload/delete endpoints. +### Pagination: `page` replaced by `page_cursor` + +`page: Long?` has been removed from all list/query types in v1 (`GetPosts`, `GetComments`, `GetModlog`, `Search`, `ListCommunities`, `ListReports`, `ListNotifications`, `ListMedia`, `ListPersonContent`, `ListPostLikes`, `ListCommentLikes`, `ListRegistrationApplications`). + +- On v1, use `page_cursor` for cursor-based pagination. +- To support pre-v1 instances, populate **both** `page` (for older versions, handled internally) and `page_cursor` (for v1). The wrapper will pass the appropriate one. + + + ## 0.19.11 - Added `last_donation_notification` field to LocalUser @@ -44,18 +60,3 @@ But each has different behaviour. The old behaviour is to hide all voting types - Log out support (invalidates the current JWT) - Instance block support - 2FA rework, one must now provide a valid 2FA code to enable 2FA. Added routes to support this. - - - -TODO: cleanup - -## 1.0.0 too many to write down... -https://github.com/LemmyNet/lemmy/issues/6292 tags to CommunityTags -https://github.com/LemmyNet/lemmy/issues/6291 description to summary -https://github.com/LemmyNet/lemmy/issues/6150 page back removal -https://github.com/LemmyNet/lemmy/issues/6062 All enums use snake_case now - -TODO: -media changes -enum changes -combined types diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 00000000..d624b1f7 --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,65 @@ +# Contributing to this project + + +## Architecture + +``` +LemmyApi (factory object) + └─ getLemmyApi(instance, version) → LemmyApiBaseController + │ + └─ version-specific LemmyApiUniWrapper (implements LemmyApiBaseController) + ├─ LemmyApiController (raw Ktor HTTP calls, version-specific datatypes) + ├─ Transformer (maps version-specific ↔ unified datatypes) + └─ MapperGenerator (interface) (declares all toUni/fromUni signatures) +``` + +### Per-version module structure + +Each `vX/xN/xM/` folder contains exactly these files: + +| File | Purpose | +|---|---| +| `datatypes/` | Auto-generated version-specific Kotlin datatypes. **Do not edit by hand.** | +| `MapperGenerator.kt` | Interface declaring all `toUni` / `fromUni` signatures, used to drive Konvert code generation. Annotations are commented out in committed code; uncomment + build to regenerate. | +| `Transformer.kt` | Implements `MapperGenerator`. Contains all field-level mapping logic. Generated initially by Konvert, then hand-maintained for non-trivial differences. | +| `LemmyApiUniWrapper.kt` | Implements `LemmyApiBaseController`. Delegates HTTP calls to `LemmyApiController` and transforms results. Unsupported endpoints call `notSupported()`. | +| `LemmyApiController.kt` | Raw Ktor HTTP calls returning version-specific datatypes. | +| `LemmyApiRouter.kt` | Route path definitions for this version. | + +### Unified datatypes (1.0.0 baseline) + +The `it.vercruysse.lemmyapi.datatypes` package represents the **1.0.0 Lemmy API** and is the single source of truth for all API consumers. Older version wrappers transform their version-specific types into these unified types. See `ACTIVE_CHANGES.md` for the key API differences consumers need to handle. + + +## Backwards Compatibility Strategy + +- **API route added**: add a function to `FeatureFlags` that returns whether this feature is supported. Older versions implement this route by throwing `notSupported()`. +- **API route removed**: newer versions implement the old route by throwing `notSupported()`. Add to the `oldRoutes` interface if needed. +- **Request/response changes**: transform using `Transformer`. The unified type (usually the latest datatype shape) is returned regardless of version. Example: [moving admin flag from person to local_user](https://github.com/LemmyNet/lemmy/pull/3403) — pre-0.19 APIs map their type to the latest shape. +- **Enum entries**: each entry tracks `minimumVersion`/`maximumVersion`. Use `getSupportedEntries()` to retrieve the valid entries for the connected instance (e.g. sort options). + + +## Compatibility Rules + +When adding or updating an older-version implementation: + +1. **Reference `v0.x18.x5`** — it is always kept up-to-date with the unified interface. Copy its `LemmyApiUniWrapper.kt` pattern. +2. `MapperGenerator.kt` return types must use **unified** types only. +3. `Transformer.kt` must not import deleted unified types. +4. `LemmyApiUniWrapper.kt` must implement **every** abstract method from `LemmyApiBaseController`. Missing features use `notSupported()`. +5. Import aliases are required in `Transformer.kt`: + - Unified types: `import it.vercruysse.lemmyapi.datatypes.Foo as LemmyapiDatatypesFoo` + - Local version types: `import it.vercruysse.lemmyapi.vX.xN.xM.datatypes.Foo as XMDatatypesFoo` + - Unused aliases cause compilation errors — remove them when the corresponding method is deleted. + + +## AutoGenerated Code + +To minimize the maintenance burden, many aspects have been automated via Kotlin scripts in the `GeneratorScripts` submodule: + +- **`GenTypes`**: Downloads TS types from [lemmy-js-client](https://github.com/LemmyNet/lemmy-js-client) and generates `datatypes/` for a target version. Requires [dukat](https://github.com/Kotlin/dukat). +- **`GenRoutes`**: Generates route/controller templates from [lemmy_openapi_spec](https://github.com/MV-GH/lemmy_openapi_spec). Output goes to `temp/`. +- **`GenMapperRoutes`**: Generates `MapperGenerator.kt` by diffing two version datatypes. Uncomment the Konvert annotations and build to generate `Transformer.kt` base, then copy from the build output. Output goes to `temp/`. + +See `STEPS_TO_SUPPORT_MORE_VERSION.md` for the full checklist when adding a new Lemmy version. + diff --git a/GeneratorScripts/src/main/kotlin/testingscripts/basicApi.kt b/GeneratorScripts/src/main/kotlin/testingscripts/basicApi.kt index 68d7a8eb..c0081217 100644 --- a/GeneratorScripts/src/main/kotlin/testingscripts/basicApi.kt +++ b/GeneratorScripts/src/main/kotlin/testingscripts/basicApi.kt @@ -1,20 +1,23 @@ package testingscripts -import io.github.z4kn4fein.semver.toVersion -import it.vercruysse.lemmyapi.LemmyApi -import it.vercruysse.lemmyapi.datatypes.GetPosts import kotlinx.coroutines.runBlocking fun script1() { runBlocking { - val semver = "1.0.0-nightly-2026-05-23".toVersion() - println(semver) - val api = LemmyApi.getLemmyApi("voyager.lemmy.ml", "1.0.0") - println(api.version) - println(api.getSite()) - println(api.getPosts(GetPosts())) +// val semver = "1.0.0-nightly-2026-05-23".toVersion() +// println(semver) +// val api = LemmyApi.getLemmyApi("voyager.lemmy.ml", "1.0.0") +// println(api.version) +// println(api.getSite()) +// println(api.getPosts(GetPosts())) + +// println(api.getUnreadCounts()) +// println(api.getMyUser()) +// println(api.listNotifications(ListNotifications(NotificationDataType.All))) +// println(api.listLogins()) +// println(api.search(Search(search_term = "test", type_ = SearchType.All))) } } diff --git a/README.md b/README.md index 17866dfd..6444681f 100644 --- a/README.md +++ b/README.md @@ -19,7 +19,11 @@ # LemmyBackwardsCompatibleAPI -A backwards compatible API for Lemmy made with Kotlin Multiplatform. Supports Lemmy 0.18+ +## Project Overview + +A **Kotlin Multiplatform** library that provides a single, unified API surface over multiple Lemmy server versions (0.18+, 0.19+, 1.0+). Consumers call one interface (`LemmyApiBaseController`) and receive unified ("uni") datatypes regardless of which Lemmy version the target instance is running. + +Built with **Ktor** (HTTP), **kotlinx.serialization** (JSON), and targets JVM, Android, iOS, macOS, Linux, Windows, and JS. ## Usage @@ -45,6 +49,19 @@ implementation("it.vercruysse.lemmyapi:lemmy-api:VERSION") ``` It is currently in beta. +## Architecture + +``` +LemmyApi (factory object) + └─ getLemmyApi(instance, version) → LemmyApiBaseController + │ + └─ version-specific LemmyApiUniWrapper (implements LemmyApiBaseController) + ├─ LemmyApiController (raw Ktor HTTP calls, version-specific datatypes) + ├─ Transformer (maps version-specific ↔ unified datatypes) + └─ MapperGenerator (interface) (declares all toUni/fromUni signatures) +``` + + ## Goals The intention is to provide an easy-to-use API that supports a wide range of Lemmy instances. @@ -59,48 +76,6 @@ It is a non-goal to provide a stable API. The API can change with every iteratio - JVM datatypes implement `Serializable` - Android datatypes implement `Parcelable` and `Serializable` -## Backwards Compatibility Strategy - -The API is backwards compatible by using the following strategy: -- API route gets added. - Add a function that returns if this feature is supported. - Older versions implement this route by throwing an error (nonSupported). -- API route gets removed. - newer versions implement this route by throwing an error (nonSupported). - Is added to the `oldRoutes` interface -- API routes its request/response changes. - For this, we transform response/requests to a "universal" type. - Concrete this means, it will usually be the modified latest datatypes. - So that the response will be the same regardless of which version. - Here are some examples from how this will look concrete: - - [Move admin flag from person to local_user](https://github.com/LemmyNet/lemmy/pull/3403), pre 0.19 version APIs will map their datatype to the latest datatype by moving that field from person to local_user - - ... TODO: add more examples -- Enum entries keep an added/removed version. - Using get `getSupportedEntries` we can retrieve the supported entries for a given enum. - This is useful, for example, for sorting, where the sorting options can change between versions. - - -## AutoGenerated Code - -To minimize the maintenance burden, many aspects have been automated. - -This is done through kotlinscripts which are located in the `GeneratorScripts` submodule - -There is 3 main scripts: -- `GenTypes`: This script updates the datatypes for the set package version (ex: v0x19). -It does this by downloading the TS types from [lemmy-js-client](https://github.com/LemmyNet/lemmy-js-client). -And applying the transformations (see [here](./docs/types_transformations.md)) to the types. This script does require that you have downloaded [dukat](https://github.com/Kotlin/dukat) -- `GenRoutes`: This script generates templates for the routes, LemmyApiService and its implementation. It will output it to `temp/` and you can copy what you need. -It does this by extracting the routes from [lemmy_openapi_spec](https://github.com/MV-GH/lemmy_openapi_spec) -- `GenMapperRoutes`: This script is a bit more complex. To prevent having to manually write all the basic transformations between datatypes of different versions. -We can automatically generate them with [Konvert](https://github.com/mcarleio/konvert). -This is done by having a definition file, in this case it is just a Interface `MapperGenerator`. Uncomment the annotations and build the project. -The mappings will be generated in the build folder. Then you can copy them to the appropriate Transformer class. -Now to prevent having to manually write the definition file, we can generate it with `GenMapperRoutes`. This will output them to the `temp/` folder. -And these are generated by comparing the datatypes from the given source package version and the given target package version. -Datatypes, which exist in both, will have a mapping generated. - - [badge-android]: http://img.shields.io/badge/-android-6EDB8D.svg?style=flat [badge-android-native]: http://img.shields.io/badge/support-[AndroidNative]-6EDB8D.svg?style=flat From 428d2dc6e9fb5b1009f1dcd36342944e5cac2660 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Mon, 25 May 2026 00:10:45 +0200 Subject: [PATCH 092/110] Bump version --- gradle.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle.properties b/gradle.properties index 32a6a55d..9d96d5f8 100644 --- a/gradle.properties +++ b/gradle.properties @@ -21,5 +21,5 @@ POM_DEVELOPER_URL=https://github.com/MV-GH POM_ARTIFACT_ID=lemmy-api GROUP=it.vercruysse.lemmyapi -VERSION_NAME=0.4.1 +VERSION_NAME=0.5.0-alpha.1 From 94481f286eafc20bd2c8155b84244e4e8706e169 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Mon, 25 May 2026 00:27:54 +0200 Subject: [PATCH 093/110] Bump kotlinter + Android compile SDK --- app/build.gradle.kts | 14 +++++--------- .../kotlin/it/vercruysse/lemmyapi/LemmyApi.kt | 1 + .../it/vercruysse/lemmyapi/datatypes/AddAdmin.kt | 2 +- .../lemmyapi/datatypes/AddAdminResponse.kt | 3 +-- .../lemmyapi/datatypes/AddModToCommunity.kt | 3 +-- .../datatypes/AddModToCommunityResponse.kt | 3 +-- .../lemmyapi/datatypes/AdminAllowInstanceParams.kt | 2 +- .../lemmyapi/datatypes/AdminOAuthProvider.kt | 2 +- .../datatypes/ApproveCommunityPendingFollower.kt | 2 +- .../datatypes/ApproveRegistrationApplication.kt | 3 +-- .../lemmyapi/datatypes/AuthenticateWithOauth.kt | 2 +- .../lemmyapi/datatypes/BanFromCommunity.kt | 3 +-- .../it/vercruysse/lemmyapi/datatypes/BanPerson.kt | 3 +-- .../lemmyapi/datatypes/BlockCommunity.kt | 3 +-- .../vercruysse/lemmyapi/datatypes/BlockPerson.kt | 3 +-- .../lemmyapi/datatypes/CaptchaResponse.kt | 3 +-- .../lemmyapi/datatypes/ChangePassword.kt | 3 +-- .../lemmyapi/datatypes/ChangePasswordAfterReset.kt | 3 +-- .../it/vercruysse/lemmyapi/datatypes/Comment.kt | 5 ++--- .../lemmyapi/datatypes/CommentActions.kt | 2 +- .../vercruysse/lemmyapi/datatypes/CommentReport.kt | 3 +-- .../lemmyapi/datatypes/CommentReportResponse.kt | 3 +-- .../lemmyapi/datatypes/CommentReportView.kt | 5 ++--- .../lemmyapi/datatypes/CommentResponse.kt | 3 +-- .../lemmyapi/datatypes/CommentSlimView.kt | 2 +- .../vercruysse/lemmyapi/datatypes/CommentView.kt | 7 +++---- .../it/vercruysse/lemmyapi/datatypes/Community.kt | 3 +-- .../lemmyapi/datatypes/CommunityActions.kt | 2 +- .../lemmyapi/datatypes/CommunityFollowerView.kt | 3 +-- .../lemmyapi/datatypes/CommunityModeratorView.kt | 3 +-- .../lemmyapi/datatypes/CommunityReport.kt | 2 +- .../lemmyapi/datatypes/CommunityReportResponse.kt | 2 +- .../lemmyapi/datatypes/CommunityReportView.kt | 2 +- .../lemmyapi/datatypes/CommunityResponse.kt | 3 +-- .../vercruysse/lemmyapi/datatypes/CommunityTag.kt | 2 +- .../vercruysse/lemmyapi/datatypes/CommunityView.kt | 4 ++-- .../vercruysse/lemmyapi/datatypes/CreateComment.kt | 3 +-- .../lemmyapi/datatypes/CreateCommentLike.kt | 3 +-- .../lemmyapi/datatypes/CreateCommentReport.kt | 3 +-- .../lemmyapi/datatypes/CreateCommunity.kt | 3 +-- .../lemmyapi/datatypes/CreateCommunityReport.kt | 2 +- .../lemmyapi/datatypes/CreateCommunityTag.kt | 2 +- .../lemmyapi/datatypes/CreateCustomEmoji.kt | 3 +-- .../lemmyapi/datatypes/CreateOAuthProvider.kt | 2 +- .../it/vercruysse/lemmyapi/datatypes/CreatePost.kt | 3 +-- .../lemmyapi/datatypes/CreatePostLike.kt | 3 +-- .../lemmyapi/datatypes/CreatePostReport.kt | 3 +-- .../lemmyapi/datatypes/CreatePostWarning.kt | 1 - .../lemmyapi/datatypes/CreatePrivateMessage.kt | 3 +-- .../datatypes/CreatePrivateMessageReport.kt | 3 +-- .../it/vercruysse/lemmyapi/datatypes/CreateSite.kt | 9 ++++----- .../vercruysse/lemmyapi/datatypes/CreateTagline.kt | 2 +- .../vercruysse/lemmyapi/datatypes/CustomEmoji.kt | 3 +-- .../lemmyapi/datatypes/CustomEmojiKeyword.kt | 3 +-- .../lemmyapi/datatypes/CustomEmojiResponse.kt | 3 +-- .../lemmyapi/datatypes/CustomEmojiView.kt | 3 +-- .../vercruysse/lemmyapi/datatypes/DeleteAccount.kt | 3 +-- .../vercruysse/lemmyapi/datatypes/DeleteComment.kt | 3 +-- .../lemmyapi/datatypes/DeleteCommunity.kt | 3 +-- .../lemmyapi/datatypes/DeleteCommunityTag.kt | 2 +- .../lemmyapi/datatypes/DeleteCustomEmoji.kt | 3 +-- .../lemmyapi/datatypes/DeleteImageParams.kt | 2 +- .../lemmyapi/datatypes/DeleteOAuthProvider.kt | 2 +- .../it/vercruysse/lemmyapi/datatypes/DeletePost.kt | 3 +-- .../lemmyapi/datatypes/DeletePrivateMessage.kt | 3 +-- .../vercruysse/lemmyapi/datatypes/DeleteTagline.kt | 2 +- .../lemmyapi/datatypes/DistinguishComment.kt | 3 +-- .../vercruysse/lemmyapi/datatypes/EditComment.kt | 3 +-- .../vercruysse/lemmyapi/datatypes/EditCommunity.kt | 3 +-- .../lemmyapi/datatypes/EditCommunityTag.kt | 2 +- .../lemmyapi/datatypes/EditCustomEmoji.kt | 3 +-- .../lemmyapi/datatypes/EditOAuthProvider.kt | 2 +- .../it/vercruysse/lemmyapi/datatypes/EditPost.kt | 3 +-- .../lemmyapi/datatypes/EditPrivateMessage.kt | 3 +-- .../it/vercruysse/lemmyapi/datatypes/EditSite.kt | 9 ++++----- .../vercruysse/lemmyapi/datatypes/EditTagline.kt | 2 +- .../it/vercruysse/lemmyapi/datatypes/EditTotp.kt | 3 +-- .../lemmyapi/datatypes/EditTotpResponse.kt | 3 +-- .../vercruysse/lemmyapi/datatypes/FeaturePost.kt | 3 +-- .../lemmyapi/datatypes/FederationBlockList.kt | 2 +- .../lemmyapi/datatypes/FederationQueueState.kt | 3 +-- .../lemmyapi/datatypes/FollowCommunity.kt | 3 +-- .../datatypes/GenerateTotpSecretResponse.kt | 3 +-- .../lemmyapi/datatypes/GetCaptchaResponse.kt | 3 +-- .../it/vercruysse/lemmyapi/datatypes/GetComment.kt | 3 +-- .../vercruysse/lemmyapi/datatypes/GetComments.kt | 3 +-- .../vercruysse/lemmyapi/datatypes/GetCommunity.kt | 3 +-- .../lemmyapi/datatypes/GetCommunityResponse.kt | 3 +-- .../it/vercruysse/lemmyapi/datatypes/GetModlog.kt | 5 ++--- .../lemmyapi/datatypes/GetPersonDetails.kt | 3 +-- .../lemmyapi/datatypes/GetPersonDetailsResponse.kt | 3 +-- .../it/vercruysse/lemmyapi/datatypes/GetPost.kt | 3 +-- .../lemmyapi/datatypes/GetPostResponse.kt | 3 +-- .../it/vercruysse/lemmyapi/datatypes/GetPosts.kt | 13 ++++--------- .../lemmyapi/datatypes/GetRandomCommunity.kt | 2 +- .../datatypes/GetRegistrationApplication.kt | 1 - .../lemmyapi/datatypes/GetSiteMetadata.kt | 3 +-- .../lemmyapi/datatypes/GetSiteMetadataResponse.kt | 3 +-- .../lemmyapi/datatypes/GetSiteResponse.kt | 5 ++--- .../vercruysse/lemmyapi/datatypes/HideCommunity.kt | 3 +-- .../it/vercruysse/lemmyapi/datatypes/HidePost.kt | 3 +-- .../it/vercruysse/lemmyapi/datatypes/HidePosts.kt | 3 +-- .../lemmyapi/datatypes/ImageGetParams.kt | 2 +- .../lemmyapi/datatypes/ImageProxyParams.kt | 2 +- .../it/vercruysse/lemmyapi/datatypes/Instance.kt | 3 +-- .../lemmyapi/datatypes/InstanceActions.kt | 2 +- .../it/vercruysse/lemmyapi/datatypes/Language.kt | 3 +-- .../vercruysse/lemmyapi/datatypes/LinkMetadata.kt | 3 +-- .../lemmyapi/datatypes/ListCommentLikes.kt | 3 +-- .../lemmyapi/datatypes/ListCommunities.kt | 5 ++--- .../datatypes/ListCommunityPendingFollows.kt | 2 +- .../lemmyapi/datatypes/ListCustomEmojis.kt | 2 +- .../lemmyapi/datatypes/ListCustomEmojisResponse.kt | 2 +- .../it/vercruysse/lemmyapi/datatypes/ListMedia.kt | 3 +-- .../lemmyapi/datatypes/ListPersonContent.kt | 2 +- .../lemmyapi/datatypes/ListPersonSaved.kt | 2 +- .../vercruysse/lemmyapi/datatypes/ListPostLikes.kt | 3 +-- .../datatypes/ListRegistrationApplications.kt | 3 +-- .../vercruysse/lemmyapi/datatypes/ListReports.kt | 2 +- .../it/vercruysse/lemmyapi/datatypes/LocalImage.kt | 3 +-- .../lemmyapi/datatypes/LocalImageView.kt | 3 +-- .../it/vercruysse/lemmyapi/datatypes/LocalSite.kt | 13 ++++++------- .../lemmyapi/datatypes/LocalSiteRateLimit.kt | 3 +-- .../lemmyapi/datatypes/LocalSiteUrlBlocklist.kt | 3 +-- .../it/vercruysse/lemmyapi/datatypes/LocalUser.kt | 7 +++---- .../vercruysse/lemmyapi/datatypes/LocalUserView.kt | 3 +-- .../it/vercruysse/lemmyapi/datatypes/LockPost.kt | 3 +-- .../it/vercruysse/lemmyapi/datatypes/Login.kt | 3 +-- .../vercruysse/lemmyapi/datatypes/LoginResponse.kt | 3 +-- .../it/vercruysse/lemmyapi/datatypes/LoginToken.kt | 3 +-- .../lemmyapi/datatypes/MarkManyPostsAsRead.kt | 3 +-- .../lemmyapi/datatypes/MarkNotificationAsRead.kt | 2 +- .../it/vercruysse/lemmyapi/datatypes/MyUserInfo.kt | 3 +-- .../lemmyapi/datatypes/NotificationData.kt | 4 ---- .../vercruysse/lemmyapi/datatypes/OAuthAccount.kt | 2 +- .../vercruysse/lemmyapi/datatypes/PendingFollow.kt | 2 +- .../it/vercruysse/lemmyapi/datatypes/Person.kt | 3 +-- .../vercruysse/lemmyapi/datatypes/PersonActions.kt | 2 +- .../it/vercruysse/lemmyapi/datatypes/PersonView.kt | 5 ++--- .../lemmyapi/datatypes/PluginMetadata.kt | 2 +- .../it/vercruysse/lemmyapi/datatypes/Post.kt | 5 ++--- .../vercruysse/lemmyapi/datatypes/PostActions.kt | 2 +- .../it/vercruysse/lemmyapi/datatypes/PostReport.kt | 3 +-- .../lemmyapi/datatypes/PostReportResponse.kt | 3 +-- .../lemmyapi/datatypes/PostReportView.kt | 6 ++---- .../vercruysse/lemmyapi/datatypes/PostResponse.kt | 3 +-- .../it/vercruysse/lemmyapi/datatypes/PostView.kt | 7 +++---- .../lemmyapi/datatypes/PrivateMessage.kt | 5 ++--- .../lemmyapi/datatypes/PrivateMessageReport.kt | 3 +-- .../datatypes/PrivateMessageReportResponse.kt | 3 +-- .../lemmyapi/datatypes/PrivateMessageReportView.kt | 5 ++--- .../lemmyapi/datatypes/PrivateMessageResponse.kt | 3 +-- .../lemmyapi/datatypes/PrivateMessageView.kt | 5 ++--- .../vercruysse/lemmyapi/datatypes/PurgeComment.kt | 3 +-- .../lemmyapi/datatypes/PurgeCommunity.kt | 3 +-- .../vercruysse/lemmyapi/datatypes/PurgePerson.kt | 3 +-- .../it/vercruysse/lemmyapi/datatypes/PurgePost.kt | 3 +-- .../it/vercruysse/lemmyapi/datatypes/Register.kt | 3 +-- .../lemmyapi/datatypes/RegistrationApplication.kt | 3 +-- .../datatypes/RegistrationApplicationResponse.kt | 3 +-- .../datatypes/RegistrationApplicationView.kt | 3 +-- .../vercruysse/lemmyapi/datatypes/RemoveComment.kt | 3 +-- .../lemmyapi/datatypes/RemoveCommunity.kt | 3 +-- .../it/vercruysse/lemmyapi/datatypes/RemovePost.kt | 3 +-- .../lemmyapi/datatypes/ResendVerificationEmail.kt | 2 +- .../vercruysse/lemmyapi/datatypes/ResetPassword.kt | 3 +-- .../lemmyapi/datatypes/ResolveCommentReport.kt | 3 +-- .../vercruysse/lemmyapi/datatypes/ResolveObject.kt | 3 +-- .../lemmyapi/datatypes/ResolvePostReport.kt | 3 +-- .../datatypes/ResolvePrivateMessageReport.kt | 3 +-- .../vercruysse/lemmyapi/datatypes/SaveComment.kt | 3 +-- .../it/vercruysse/lemmyapi/datatypes/SavePost.kt | 3 +-- .../lemmyapi/datatypes/SaveUserSettings.kt | 7 +++---- .../it/vercruysse/lemmyapi/datatypes/Search.kt | 3 +-- .../lemmyapi/datatypes/SearchResponse.kt | 4 +--- .../it/vercruysse/lemmyapi/datatypes/Site.kt | 3 +-- .../vercruysse/lemmyapi/datatypes/SiteResponse.kt | 3 +-- .../it/vercruysse/lemmyapi/datatypes/SiteView.kt | 3 +-- .../it/vercruysse/lemmyapi/datatypes/Tagline.kt | 3 +-- .../lemmyapi/datatypes/TaglineResponse.kt | 2 +- .../lemmyapi/datatypes/TransferCommunity.kt | 3 +-- .../lemmyapi/datatypes/UploadImageResponse.kt | 2 +- .../UserBlockInstanceCommunitiesParams.kt | 3 +-- .../vercruysse/lemmyapi/datatypes/VerifyEmail.kt | 3 +-- .../it/vercruysse/lemmyapi/datatypes/VoteView.kt | 3 +-- .../v0/x17/x4/datatypes/GetSiteResponse.kt | 2 +- .../lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt | 1 + .../lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt | 1 + .../lemmyapi/v0/x19/x0/datatypes/CreateSite.kt | 2 +- .../lemmyapi/v0/x19/x0/datatypes/EditSite.kt | 2 +- .../lemmyapi/v0/x19/x0/datatypes/GetPosts.kt | 2 +- .../v0/x19/x0/datatypes/ListCommunities.kt | 2 +- .../lemmyapi/v0/x19/x0/datatypes/LocalSite.kt | 2 +- .../lemmyapi/v0/x19/x0/datatypes/LocalUser.kt | 2 +- .../v0/x19/x0/datatypes/SaveUserSettings.kt | 2 +- .../lemmyapi/v0/x19/x0/datatypes/Search.kt | 2 +- .../lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt | 1 + .../lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt | 1 + .../lemmyapi/v0/x19/x3/datatypes/CreateSite.kt | 2 +- .../lemmyapi/v0/x19/x3/datatypes/EditSite.kt | 2 +- .../lemmyapi/v0/x19/x3/datatypes/GetPosts.kt | 2 +- .../v0/x19/x3/datatypes/ListCommunities.kt | 2 +- .../lemmyapi/v0/x19/x3/datatypes/LocalSite.kt | 2 +- .../lemmyapi/v0/x19/x3/datatypes/LocalUser.kt | 2 +- .../v0/x19/x3/datatypes/SaveUserSettings.kt | 2 +- .../lemmyapi/v0/x19/x3/datatypes/Search.kt | 2 +- .../lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt | 1 + .../lemmyapi/v0/x19/x4/datatypes/CreateSite.kt | 2 +- .../lemmyapi/v0/x19/x4/datatypes/EditSite.kt | 2 +- .../lemmyapi/v0/x19/x4/datatypes/GetPosts.kt | 2 +- .../v0/x19/x4/datatypes/ListCommunities.kt | 2 +- .../lemmyapi/v0/x19/x4/datatypes/LocalSite.kt | 4 ++-- .../lemmyapi/v0/x19/x4/datatypes/LocalUser.kt | 2 +- .../v0/x19/x4/datatypes/SaveUserSettings.kt | 2 +- .../lemmyapi/v0/x19/x4/datatypes/Search.kt | 2 +- .../lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt | 1 + .../lemmyapi/v0/x19/x6/datatypes/CreateSite.kt | 2 +- .../lemmyapi/v0/x19/x6/datatypes/EditSite.kt | 2 +- .../lemmyapi/v0/x19/x6/datatypes/GetPosts.kt | 2 +- .../v0/x19/x6/datatypes/ListCommunities.kt | 2 +- .../lemmyapi/v0/x19/x6/datatypes/LocalSite.kt | 4 ++-- .../lemmyapi/v0/x19/x6/datatypes/LocalUser.kt | 2 +- .../v0/x19/x6/datatypes/SaveUserSettings.kt | 2 +- .../lemmyapi/v0/x19/x6/datatypes/Search.kt | 2 +- 224 files changed, 261 insertions(+), 406 deletions(-) diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 058cb274..06d059e1 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -5,7 +5,7 @@ import org.jmailen.gradle.kotlinter.tasks.LintTask plugins { kotlin("multiplatform") kotlin("plugin.serialization") version "2.3.21" - id("org.jmailen.kotlinter") version "5.0.1" + id("org.jmailen.kotlinter") version "5.5.0" id("com.google.devtools.ksp") version ("2.3.8") id("com.vanniktech.maven.publish") version "0.33.0" id("com.github.ben-manes.versions") version "0.54.0" @@ -32,7 +32,7 @@ kotlin { android { namespace = "it.vercruysse.lemmyapi" - compileSdk = 35 + compileSdk = 36 minSdk = 21 compilerOptions { freeCompilerArgs.addAll( @@ -93,7 +93,7 @@ kotlin { jvmTest.dependencies { implementation(kotlin("reflect")) - implementation("io.mockk:mockk:1.13.13") + implementation("io.mockk:mockk:1.14.9") implementation("org.wiremock:wiremock:3.13.2") implementation("com.marcinziolo:kotlin-wiremock:2.1.1") implementation("ch.qos.logback:logback-classic:1.5.32") @@ -149,15 +149,11 @@ publishing { tasks.withType { - val l = fileTree(".") - l.setIncludes(listOf("**/datatypes/**")) - this.source = this.source.minus(l).asFileTree + exclude("**/datatypes/**") } tasks.withType { - val l = fileTree(".") - l.setIncludes(listOf("**/datatypes/**")) - this.source = this.source.minus(l).asFileTree + exclude("**/datatypes/**") } enum class OS { diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApi.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApi.kt index b1180c1c..9cf4236c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApi.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApi.kt @@ -134,6 +134,7 @@ object LemmyApi { return when (semverV.major) { 0 -> when (semverV.minor) { 18 -> it.vercruysse.lemmyapi.v0.x18.x5.LemmyApiUniWrapper(client, semverV, baseUrlInstance, auth) + 19 -> when (semverV.patch) { 0, 1 -> it.vercruysse.lemmyapi.v0.x19.x0.LemmyApiUniWrapper(client, semverV, baseUrlInstance, auth) 2, 3 -> it.vercruysse.lemmyapi.v0.x19.x3.LemmyApiUniWrapper(client, semverV, baseUrlInstance, auth) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AddAdmin.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AddAdmin.kt index 9f17a115..6160e246 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AddAdmin.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AddAdmin.kt @@ -1,8 +1,8 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize @CommonParcelize @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AddAdminResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AddAdminResponse.kt index 58fa7cec..f97e321c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AddAdminResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AddAdminResponse.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class AddAdminResponse( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AddModToCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AddModToCommunity.kt index ff001b5b..b1c3280e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AddModToCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AddModToCommunity.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class AddModToCommunity( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AddModToCommunityResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AddModToCommunityResponse.kt index 4be7cc15..1f49c259 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AddModToCommunityResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AddModToCommunityResponse.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class AddModToCommunityResponse( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminAllowInstanceParams.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminAllowInstanceParams.kt index fc12c446..0dd3fb5f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminAllowInstanceParams.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminAllowInstanceParams.kt @@ -10,4 +10,4 @@ data class AdminAllowInstanceParams( val instance: String, val allow: Boolean, val reason: String, -): DatatypeRoot +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminOAuthProvider.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminOAuthProvider.kt index b3e9335c..4216ce5e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminOAuthProvider.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AdminOAuthProvider.kt @@ -22,4 +22,4 @@ data class AdminOAuthProvider( val published_at: String, val updated_at: String? = null, val use_pkce: Boolean, -): DatatypeRoot +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ApproveCommunityPendingFollower.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ApproveCommunityPendingFollower.kt index 6a8ea72a..1960a409 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ApproveCommunityPendingFollower.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ApproveCommunityPendingFollower.kt @@ -10,4 +10,4 @@ data class ApproveCommunityPendingFollower( val community_id: CommunityId, val follower_id: PersonId, val approve: Boolean, -): DatatypeRoot +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ApproveRegistrationApplication.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ApproveRegistrationApplication.kt index 94cc7d72..26dc7ef8 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ApproveRegistrationApplication.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ApproveRegistrationApplication.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class ApproveRegistrationApplication( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AuthenticateWithOauth.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AuthenticateWithOauth.kt index b6ea8c05..42e5b5a4 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AuthenticateWithOauth.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/AuthenticateWithOauth.kt @@ -15,4 +15,4 @@ data class AuthenticateWithOauth( val answer: String? = null, val pkce_code_verifier: String? = null, val stay_logged_in: Boolean? = null, -): DatatypeRoot +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BanFromCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BanFromCommunity.kt index 04a31d61..1508c260 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BanFromCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BanFromCommunity.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class BanFromCommunity( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BanPerson.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BanPerson.kt index d0664bfe..84f238f0 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BanPerson.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BanPerson.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class BanPerson( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BlockCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BlockCommunity.kt index 273f639a..2cd25c5a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BlockCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BlockCommunity.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class BlockCommunity( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BlockPerson.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BlockPerson.kt index 923955ba..35401a18 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BlockPerson.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/BlockPerson.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class BlockPerson( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CaptchaResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CaptchaResponse.kt index 028ade14..7c36b359 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CaptchaResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CaptchaResponse.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class CaptchaResponse( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ChangePassword.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ChangePassword.kt index bff3f123..c48c3b06 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ChangePassword.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ChangePassword.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class ChangePassword( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ChangePasswordAfterReset.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ChangePasswordAfterReset.kt index ca730ce6..c9fa9c7d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ChangePasswordAfterReset.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ChangePasswordAfterReset.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class ChangePasswordAfterReset( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Comment.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Comment.kt index 615792f0..17fa8203 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Comment.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Comment.kt @@ -1,11 +1,10 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import it.vercruysse.lemmyapi.Identity -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize import kotlinx.serialization.SerialName +import kotlinx.serialization.Serializable @CommonParcelize @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentActions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentActions.kt index b9c2b9d5..1280392f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentActions.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentActions.kt @@ -10,4 +10,4 @@ data class CommentActions( val like_score: Int = 0, val voted_at: String? = null, val saved_at: String? = null, -): DatatypeRoot +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReport.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReport.kt index d7feef39..c5123997 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReport.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReport.kt @@ -1,11 +1,10 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import it.vercruysse.lemmyapi.Identity import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class CommentReport( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReportResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReportResponse.kt index c51c4028..67d9338b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReportResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReportResponse.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class CommentReportResponse( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReportView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReportView.kt index cc8f73d8..764303a1 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReportView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReportView.kt @@ -1,11 +1,10 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import it.vercruysse.lemmyapi.Identity -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize import kotlinx.serialization.SerialName +import kotlinx.serialization.Serializable @CommonParcelize @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentResponse.kt index bd650034..fdeddcda 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentResponse.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class CommentResponse( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentSlimView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentSlimView.kt index 59201089..3e2f0246 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentSlimView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentSlimView.kt @@ -16,4 +16,4 @@ data class CommentSlimView( val creator_banned: Boolean, val creator_is_moderator: Boolean, val creator_banned_from_community: Boolean, -): DatatypeRoot +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentView.kt index 20b7523d..5b7392a0 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentView.kt @@ -1,11 +1,10 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import it.vercruysse.lemmyapi.Identity -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize import kotlinx.serialization.SerialName +import kotlinx.serialization.Serializable @CommonParcelize @Serializable @@ -27,7 +26,7 @@ data class CommentView( val creator_banned_from_community: Boolean, val creator_community_ban_expires_at: String? = null, - ) : DatatypeRoot, Identity, NotificationData, ResolveObjectView, PostCommentCombinedView { +) : DatatypeRoot, Identity, NotificationData, ResolveObjectView, PostCommentCombinedView { override val id: Long get() = comment.id } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Community.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Community.kt index 843271cc..6fa8114b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Community.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Community.kt @@ -1,12 +1,11 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import it.vercruysse.lemmyapi.Identity import it.vercruysse.lemmyapi.enums.CommunityVisibility import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class Community( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityActions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityActions.kt index 2d976856..c5d89b68 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityActions.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityActions.kt @@ -16,4 +16,4 @@ data class CommunityActions( val received_ban_at: String? = null, val ban_expires_at: String? = null, val notifications: CommunityNotificationsMode? /* "AllPostsAndComments" | "AllPosts" | "RepliesAndMentions" | "Mute" */ = null, -): DatatypeRoot +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityFollowerView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityFollowerView.kt index 30b3b3d4..7d136f18 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityFollowerView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityFollowerView.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class CommunityFollowerView( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityModeratorView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityModeratorView.kt index e7c47665..19c59b1a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityModeratorView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityModeratorView.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class CommunityModeratorView( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityReport.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityReport.kt index e90e4dc9..dd0922bd 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityReport.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityReport.kt @@ -22,4 +22,4 @@ data class CommunityReport( val resolver_id: PersonId? = null, val published_at: String, val updated_at: String? = null, -): DatatypeRoot, Identity +) : DatatypeRoot, Identity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityReportResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityReportResponse.kt index 696a09e3..f6952bd1 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityReportResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityReportResponse.kt @@ -8,4 +8,4 @@ import kotlinx.serialization.Serializable @Serializable data class CommunityReportResponse( val community_report_view: CommunityReportView, -): DatatypeRoot +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityReportView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityReportView.kt index 876290e8..d0a54746 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityReportView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityReportView.kt @@ -19,4 +19,4 @@ data class CommunityReportView( val creator_ban_expires_at: String? = null, val creator_banned_from_community: Boolean, val creator_community_ban_expires_at: String? = null, -): DatatypeRoot, ReportCombinedView +) : DatatypeRoot, ReportCombinedView diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityResponse.kt index 1670aab2..e3b072e3 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityResponse.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class CommunityResponse( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityTag.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityTag.kt index d68253cc..0c7b897b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityTag.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityTag.kt @@ -19,4 +19,4 @@ data class CommunityTag( val updated_at: String? = null, val deleted: Boolean, val color: String /* "color01" | "color02" | "color03" | "color04" | "color05" | "color06" | "color07" | "color08" | "color09" | "color10" */, -): DatatypeRoot +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityView.kt index 1630b3e3..57622d8e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityView.kt @@ -1,9 +1,9 @@ package it.vercruysse.lemmyapi.datatypes -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.SerialName +import kotlinx.serialization.Serializable @CommonParcelize @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateComment.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateComment.kt index dfa6bf5b..c638638f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateComment.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateComment.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class CreateComment( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommentLike.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommentLike.kt index 681bcbfc..684e7fef 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommentLike.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommentLike.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class CreateCommentLike( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommentReport.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommentReport.kt index 6cd2f3ab..8987c70a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommentReport.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommentReport.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class CreateCommentReport( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommunity.kt index c2307317..dfc36b79 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommunity.kt @@ -1,11 +1,10 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import it.vercruysse.lemmyapi.enums.CommunityVisibility import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class CreateCommunity( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommunityReport.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommunityReport.kt index c9447e32..7a85d6b3 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommunityReport.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommunityReport.kt @@ -9,4 +9,4 @@ import kotlinx.serialization.Serializable data class CreateCommunityReport( val community_id: CommunityId, val reason: String, -): DatatypeRoot +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommunityTag.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommunityTag.kt index e4f15903..c8935c67 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommunityTag.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommunityTag.kt @@ -12,4 +12,4 @@ data class CreateCommunityTag( val display_name: String? = null, val summary: String? = null, val color: String? /* "color01" | "color02" | "color03" | "color04" | "color05" | "color06" | "color07" | "color08" | "color09" | "color10" */ = null, - ): DatatypeRoot +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCustomEmoji.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCustomEmoji.kt index e5c6d905..6d5a8ae6 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCustomEmoji.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCustomEmoji.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class CreateCustomEmoji( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateOAuthProvider.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateOAuthProvider.kt index 8895aed0..b4f35b10 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateOAuthProvider.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateOAuthProvider.kt @@ -20,4 +20,4 @@ data class CreateOAuthProvider( val account_linking_enabled: Boolean? = null, val use_pkce: Boolean? = null, val enabled: Boolean? = null, -): DatatypeRoot +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreatePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreatePost.kt index a8d64703..57dbb620 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreatePost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreatePost.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class CreatePost( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreatePostLike.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreatePostLike.kt index 3eca5c34..5e09c5b9 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreatePostLike.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreatePostLike.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class CreatePostLike( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreatePostReport.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreatePostReport.kt index 0627e954..279dd129 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreatePostReport.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreatePostReport.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class CreatePostReport( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreatePostWarning.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreatePostWarning.kt index bd44dc52..65723c1a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreatePostWarning.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreatePostWarning.kt @@ -5,7 +5,6 @@ import it.vercruysse.lemmyapi.DatatypeRoot import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.PostId import kotlinx.serialization.Serializable - @CommonParcelize @Serializable data class CreatePostWarning( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreatePrivateMessage.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreatePrivateMessage.kt index 28579ccf..d26b9655 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreatePrivateMessage.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreatePrivateMessage.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class CreatePrivateMessage( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreatePrivateMessageReport.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreatePrivateMessageReport.kt index 9e9662b6..941a5bd7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreatePrivateMessageReport.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreatePrivateMessageReport.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class CreatePrivateMessageReport( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateSite.kt index fc87ca2a..9ae28765 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateSite.kt @@ -1,16 +1,15 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot +import it.vercruysse.lemmyapi.enums.FederationMode +import it.vercruysse.lemmyapi.enums.ImageMode +import it.vercruysse.lemmyapi.enums.ListingType import it.vercruysse.lemmyapi.enums.PostListingMode import it.vercruysse.lemmyapi.enums.RegistrationMode import it.vercruysse.lemmyapi.enums.SortType -import it.vercruysse.lemmyapi.enums.ListingType import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize -import it.vercruysse.lemmyapi.enums.FederationMode -import it.vercruysse.lemmyapi.enums.ImageMode - @CommonParcelize @Serializable data class CreateSite( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateTagline.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateTagline.kt index 285d8a97..09341854 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateTagline.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateTagline.kt @@ -8,4 +8,4 @@ import kotlinx.serialization.Serializable @Serializable data class CreateTagline( val content: String, -): DatatypeRoot +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CustomEmoji.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CustomEmoji.kt index c5268ac8..760cb934 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CustomEmoji.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CustomEmoji.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class CustomEmoji( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CustomEmojiKeyword.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CustomEmojiKeyword.kt index 7578fb3d..8dccad79 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CustomEmojiKeyword.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CustomEmojiKeyword.kt @@ -1,11 +1,10 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import it.vercruysse.lemmyapi.Identity import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class CustomEmojiKeyword( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CustomEmojiResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CustomEmojiResponse.kt index e91d76a1..54c43fbc 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CustomEmojiResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CustomEmojiResponse.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class CustomEmojiResponse( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CustomEmojiView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CustomEmojiView.kt index eb7bfc89..a08ceee5 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CustomEmojiView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CustomEmojiView.kt @@ -1,11 +1,10 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import it.vercruysse.lemmyapi.Identity import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class CustomEmojiView( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeleteAccount.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeleteAccount.kt index 64453c81..982646c3 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeleteAccount.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeleteAccount.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class DeleteAccount( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeleteComment.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeleteComment.kt index 5dd18572..a2f68b31 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeleteComment.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeleteComment.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class DeleteComment( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeleteCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeleteCommunity.kt index 6ebf2e27..01c4441f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeleteCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeleteCommunity.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class DeleteCommunity( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeleteCommunityTag.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeleteCommunityTag.kt index 003c21b1..3eda6d13 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeleteCommunityTag.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeleteCommunityTag.kt @@ -9,4 +9,4 @@ import kotlinx.serialization.Serializable data class DeleteCommunityTag( val tag_id: CommunityTagId, val delete: Boolean, -): DatatypeRoot +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeleteCustomEmoji.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeleteCustomEmoji.kt index f4bb994e..d40496f0 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeleteCustomEmoji.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeleteCustomEmoji.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class DeleteCustomEmoji( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeleteImageParams.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeleteImageParams.kt index b4bd2e82..2b5b42a7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeleteImageParams.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeleteImageParams.kt @@ -8,4 +8,4 @@ import kotlinx.serialization.Serializable @Serializable data class DeleteImageParams( val filename: String, -): DatatypeRoot +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeleteOAuthProvider.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeleteOAuthProvider.kt index 695b4451..9ce3dbaf 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeleteOAuthProvider.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeleteOAuthProvider.kt @@ -8,4 +8,4 @@ import kotlinx.serialization.Serializable @Serializable data class DeleteOAuthProvider( val id: OAuthProviderId, -): DatatypeRoot +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeletePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeletePost.kt index bdb63c2e..3da8d61b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeletePost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeletePost.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class DeletePost( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeletePrivateMessage.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeletePrivateMessage.kt index b14a6a9c..3f100a41 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeletePrivateMessage.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeletePrivateMessage.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class DeletePrivateMessage( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeleteTagline.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeleteTagline.kt index 2e89fe90..3d8f249d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeleteTagline.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DeleteTagline.kt @@ -8,4 +8,4 @@ import kotlinx.serialization.Serializable @Serializable data class DeleteTagline( val id: TaglineId, -): DatatypeRoot +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DistinguishComment.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DistinguishComment.kt index b7c09289..eff3a48d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DistinguishComment.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/DistinguishComment.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class DistinguishComment( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditComment.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditComment.kt index 69bd0a1c..e338f4a0 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditComment.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditComment.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class EditComment( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditCommunity.kt index 0f20d975..7e5bf28f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditCommunity.kt @@ -1,11 +1,10 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import it.vercruysse.lemmyapi.enums.CommunityVisibility import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class EditCommunity( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditCommunityTag.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditCommunityTag.kt index 7d651bbe..0110c2dd 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditCommunityTag.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditCommunityTag.kt @@ -11,4 +11,4 @@ data class EditCommunityTag( val display_name: String? = null, val summary: String? = null, val color: String? /* "color01" | "color02" | "color03" | "color04" | "color05" | "color06" | "color07" | "color08" | "color09" | "color10" */ = null, - ): DatatypeRoot +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditCustomEmoji.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditCustomEmoji.kt index e5a4fc1d..7c0c9c06 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditCustomEmoji.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditCustomEmoji.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class EditCustomEmoji( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditOAuthProvider.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditOAuthProvider.kt index 32993e98..ce541ea6 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditOAuthProvider.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditOAuthProvider.kt @@ -19,4 +19,4 @@ data class EditOAuthProvider( val account_linking_enabled: Boolean? = null, val use_pkce: Boolean? = null, val enabled: Boolean? = null, -): DatatypeRoot +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditPost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditPost.kt index bbd75164..50bdcf8f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditPost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditPost.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class EditPost( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditPrivateMessage.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditPrivateMessage.kt index 2f3f1b57..56738640 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditPrivateMessage.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditPrivateMessage.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class EditPrivateMessage( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt index 4f2de06c..c6bd4ce6 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt @@ -1,16 +1,15 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot +import it.vercruysse.lemmyapi.enums.FederationMode +import it.vercruysse.lemmyapi.enums.ImageMode +import it.vercruysse.lemmyapi.enums.ListingType import it.vercruysse.lemmyapi.enums.PostListingMode import it.vercruysse.lemmyapi.enums.RegistrationMode import it.vercruysse.lemmyapi.enums.SortType -import it.vercruysse.lemmyapi.enums.ListingType import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize -import it.vercruysse.lemmyapi.enums.FederationMode -import it.vercruysse.lemmyapi.enums.ImageMode - @CommonParcelize @Serializable data class EditSite( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditTagline.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditTagline.kt index b70471e0..8134edb4 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditTagline.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditTagline.kt @@ -9,4 +9,4 @@ import kotlinx.serialization.Serializable data class EditTagline( val id: TaglineId, val content: String, -): DatatypeRoot +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditTotp.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditTotp.kt index bd517af3..5799c29e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditTotp.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditTotp.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class EditTotp( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditTotpResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditTotpResponse.kt index 0fc63133..7be62a27 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditTotpResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditTotpResponse.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class EditTotpResponse( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/FeaturePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/FeaturePost.kt index 404c8342..53ad0036 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/FeaturePost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/FeaturePost.kt @@ -1,11 +1,10 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import it.vercruysse.lemmyapi.enums.PostFeatureType import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class FeaturePost( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/FederationBlockList.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/FederationBlockList.kt index fddb5b5f..97416113 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/FederationBlockList.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/FederationBlockList.kt @@ -10,4 +10,4 @@ data class FederationBlockList( val published_at: String, val updated_at: String? = null, val expires_at: String? = null, -): DatatypeRoot +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/FederationQueueState.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/FederationQueueState.kt index 3ddd8376..2ce8c1f8 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/FederationQueueState.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/FederationQueueState.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class FederationQueueState( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/FollowCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/FollowCommunity.kt index bf7a45dc..fe696a8c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/FollowCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/FollowCommunity.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class FollowCommunity( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GenerateTotpSecretResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GenerateTotpSecretResponse.kt index 2c166666..9cf1d96a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GenerateTotpSecretResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GenerateTotpSecretResponse.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class GenerateTotpSecretResponse( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetCaptchaResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetCaptchaResponse.kt index 5392625c..8f709bfd 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetCaptchaResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetCaptchaResponse.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class GetCaptchaResponse( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetComment.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetComment.kt index 5a648b04..72df4da3 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetComment.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetComment.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class GetComment( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetComments.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetComments.kt index a09cc862..07ba09de 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetComments.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetComments.kt @@ -1,12 +1,11 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import it.vercruysse.lemmyapi.enums.CommentSortType import it.vercruysse.lemmyapi.enums.ListingType import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class GetComments( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetCommunity.kt index ffb36ace..f367acb1 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetCommunity.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class GetCommunity( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetCommunityResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetCommunityResponse.kt index ef04e9ab..3c85d5a5 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetCommunityResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetCommunityResponse.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class GetCommunityResponse( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetModlog.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetModlog.kt index da50b24d..eba2f617 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetModlog.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetModlog.kt @@ -1,12 +1,11 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot +import it.vercruysse.lemmyapi.enums.ListingType import it.vercruysse.lemmyapi.enums.ModlogActionType import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize -import it.vercruysse.lemmyapi.enums.ListingType - @CommonParcelize @Serializable data class GetModlog( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPersonDetails.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPersonDetails.kt index 4fe220d2..90657fbf 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPersonDetails.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPersonDetails.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class GetPersonDetails( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPersonDetailsResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPersonDetailsResponse.kt index db68f41b..3441ba26 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPersonDetailsResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPersonDetailsResponse.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class GetPersonDetailsResponse( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPost.kt index 626563d4..789afcb5 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPost.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class GetPost( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPostResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPostResponse.kt index 169a1e5f..24d423eb 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPostResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPostResponse.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class GetPostResponse( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPosts.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPosts.kt index 55245cb7..480619f8 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPosts.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPosts.kt @@ -1,14 +1,12 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.dto.PAGE_CURSOR_GUARD import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.enums.SortType import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize -import it.vercruysse.lemmyapi.dto.PAGE_CURSOR_GUARD - - @CommonParcelize @Serializable data class GetPosts( @@ -50,9 +48,7 @@ data class GetPosts( val limit: Long? = null, ) : DatatypeRoot { - internal fun toPostsForm(): GetPosts { - return this.copy(page_cursor = null, page = this.page) - } + internal fun toPostsForm(): GetPosts = this.copy(page_cursor = null, page = this.page) internal fun toValidatedForm(): GetPosts { val pageCursorSet = this.page_cursor != PAGE_CURSOR_GUARD @@ -62,6 +58,5 @@ data class GetPosts( } else { this.copy(page_cursor = null, page = this.page) } - } } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetRandomCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetRandomCommunity.kt index da3abc53..a9fdbbab 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetRandomCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetRandomCommunity.kt @@ -10,4 +10,4 @@ import kotlinx.serialization.Serializable data class GetRandomCommunity( val type_: ListingType? /* "All" | "Local" | "Subscribed" | "ModeratorView" | "Suggested" */ = null, val show_nsfw: Boolean? = null, -): DatatypeRoot +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetRegistrationApplication.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetRegistrationApplication.kt index c9ed75d3..901bc6a0 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetRegistrationApplication.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetRegistrationApplication.kt @@ -9,4 +9,3 @@ import kotlinx.serialization.Serializable data class GetRegistrationApplication( val person_id: PersonId, ) : DatatypeRoot - diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetSiteMetadata.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetSiteMetadata.kt index e3bb6ac8..2fb0d841 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetSiteMetadata.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetSiteMetadata.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class GetSiteMetadata( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetSiteMetadataResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetSiteMetadataResponse.kt index 7daa7c37..f7059a1b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetSiteMetadataResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetSiteMetadataResponse.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class GetSiteMetadataResponse( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetSiteResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetSiteResponse.kt index 5dbfe178..16ad3ec3 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetSiteResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetSiteResponse.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class GetSiteResponse( @@ -24,4 +23,4 @@ data class GetSiteResponse( val last_application_duration_seconds: Long? = null, /** Added in 1.0.0 */ val captcha_enabled: Boolean, - ) : DatatypeRoot +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/HideCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/HideCommunity.kt index 88f8774b..ac6f4d7b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/HideCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/HideCommunity.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class HideCommunity( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/HidePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/HidePost.kt index 86d3590b..e240355e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/HidePost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/HidePost.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class HidePost( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/HidePosts.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/HidePosts.kt index 6cefbed2..6d8f65a5 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/HidePosts.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/HidePosts.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class HidePosts( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ImageGetParams.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ImageGetParams.kt index 4cced727..8361575c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ImageGetParams.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ImageGetParams.kt @@ -9,4 +9,4 @@ import kotlinx.serialization.Serializable data class ImageGetParams( val file_type: String? = null, val max_size: Long? = null, -): DatatypeRoot +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ImageProxyParams.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ImageProxyParams.kt index a6e7570f..f3697417 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ImageProxyParams.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ImageProxyParams.kt @@ -10,4 +10,4 @@ data class ImageProxyParams( val url: String, val file_type: String? = null, val max_size: Long? = null, -): DatatypeRoot +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Instance.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Instance.kt index 24a2a968..c2075bf2 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Instance.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Instance.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class Instance( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/InstanceActions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/InstanceActions.kt index 0598e537..6958bb98 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/InstanceActions.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/InstanceActions.kt @@ -11,4 +11,4 @@ data class InstanceActions( val received_ban_at: String? = null, val ban_expires_at: String? = null, val blocked_persons_at: String? = null, -): DatatypeRoot +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Language.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Language.kt index 92cb263b..334d5f97 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Language.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Language.kt @@ -1,11 +1,10 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import it.vercruysse.lemmyapi.Identity import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class Language( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LinkMetadata.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LinkMetadata.kt index a9a9ef01..a85a23bd 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LinkMetadata.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LinkMetadata.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class LinkMetadata( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommentLikes.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommentLikes.kt index 0b5873c7..2adf0a57 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommentLikes.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommentLikes.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class ListCommentLikes( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommunities.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommunities.kt index fb5b85e2..34a25dde 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommunities.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommunities.kt @@ -1,12 +1,11 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.enums.SortType import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.enums.SortType import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class ListCommunities( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommunityPendingFollows.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommunityPendingFollows.kt index ffac0072..ed17839b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommunityPendingFollows.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCommunityPendingFollows.kt @@ -11,4 +11,4 @@ data class ListCommunityPendingFollows( val all_communities: Boolean? = null, val page_cursor: PaginationCursor? = null, val limit: Long? = null, -): DatatypeRoot +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCustomEmojis.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCustomEmojis.kt index b21070d7..a02d845e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCustomEmojis.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCustomEmojis.kt @@ -8,4 +8,4 @@ import kotlinx.serialization.Serializable @Serializable data class ListCustomEmojis( val category: String? = null, -): DatatypeRoot +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCustomEmojisResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCustomEmojisResponse.kt index 415fef14..6ab33e58 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCustomEmojisResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListCustomEmojisResponse.kt @@ -8,4 +8,4 @@ import kotlinx.serialization.Serializable @Serializable data class ListCustomEmojisResponse( val custom_emojis: List, -): DatatypeRoot +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListMedia.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListMedia.kt index b0b76c91..d35bd27d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListMedia.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListMedia.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class ListMedia( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonContent.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonContent.kt index 35428ed2..e4a588e8 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonContent.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonContent.kt @@ -19,4 +19,4 @@ data class ListPersonContent( val limit: Long? = null, /** Removed in 1.0.0 */ val page: Long? = null, -): DatatypeRoot +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonSaved.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonSaved.kt index d20c025c..610e5817 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonSaved.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonSaved.kt @@ -11,4 +11,4 @@ data class ListPersonSaved( val type_: PersonContentType? /* "All" | "Comments" | "Posts" */ = null, val page_cursor: PaginationCursor? = null, val limit: Long? = null, -): DatatypeRoot +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPostLikes.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPostLikes.kt index 144529c9..f6d09f42 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPostLikes.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPostLikes.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class ListPostLikes( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListRegistrationApplications.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListRegistrationApplications.kt index a3e93bff..9f292271 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListRegistrationApplications.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListRegistrationApplications.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class ListRegistrationApplications( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListReports.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListReports.kt index d05eb920..5bbf7f5a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListReports.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListReports.kt @@ -21,4 +21,4 @@ data class ListReports( val show_community_rule_violations: Boolean? = null, /** Added in 1.0.0 */ val my_reports_only: Boolean? = null, -): DatatypeRoot +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalImage.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalImage.kt index 8c4aa345..2f9bc754 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalImage.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalImage.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class LocalImage( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalImageView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalImageView.kt index ad1f1199..045c1c40 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalImageView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalImageView.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class LocalImageView( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalSite.kt index 1f94ff89..ec7674fd 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalSite.kt @@ -1,17 +1,16 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import it.vercruysse.lemmyapi.Identity -import it.vercruysse.lemmyapi.enums.SortType +import it.vercruysse.lemmyapi.enums.FederationMode +import it.vercruysse.lemmyapi.enums.ImageMode +import it.vercruysse.lemmyapi.enums.ListingType import it.vercruysse.lemmyapi.enums.PostListingMode import it.vercruysse.lemmyapi.enums.RegistrationMode -import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.enums.SortType import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize -import it.vercruysse.lemmyapi.enums.FederationMode -import it.vercruysse.lemmyapi.enums.ImageMode - @CommonParcelize @Serializable data class LocalSite( @@ -63,4 +62,4 @@ data class LocalSite( val image_max_upload_size: Long, val image_allow_video_uploads: Boolean, val image_upload_disabled: Boolean, - ) : DatatypeRoot, Identity +) : DatatypeRoot, Identity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalSiteRateLimit.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalSiteRateLimit.kt index 803630f6..e32cc892 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalSiteRateLimit.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalSiteRateLimit.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class LocalSiteRateLimit( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalSiteUrlBlocklist.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalSiteUrlBlocklist.kt index 457dba69..009d110f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalSiteUrlBlocklist.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalSiteUrlBlocklist.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class LocalSiteUrlBlocklist( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUser.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUser.kt index 97de8250..aa8bc93d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUser.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUser.kt @@ -1,14 +1,13 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import it.vercruysse.lemmyapi.Identity -import it.vercruysse.lemmyapi.enums.PostListingMode import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.enums.PostListingMode import it.vercruysse.lemmyapi.enums.SortType -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.enums.VoteShow +import kotlinx.serialization.Serializable @CommonParcelize @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUserView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUserView.kt index c5e6b66d..b52c6c72 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUserView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUserView.kt @@ -1,11 +1,10 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import it.vercruysse.lemmyapi.Identity import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class LocalUserView( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LockPost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LockPost.kt index 445da7f6..d7c1f34e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LockPost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LockPost.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class LockPost( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Login.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Login.kt index b2f13ed9..82174366 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Login.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Login.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class Login( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LoginResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LoginResponse.kt index dd94e0be..c306103e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LoginResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LoginResponse.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class LoginResponse( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LoginToken.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LoginToken.kt index 2ce31f45..7f4bce06 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LoginToken.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LoginToken.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class LoginToken( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkManyPostsAsRead.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkManyPostsAsRead.kt index 1c451f18..ccf2b935 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkManyPostsAsRead.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkManyPostsAsRead.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class MarkManyPostsAsRead( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkNotificationAsRead.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkNotificationAsRead.kt index fcd65e69..a2bf530a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkNotificationAsRead.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MarkNotificationAsRead.kt @@ -11,5 +11,5 @@ data class MarkNotificationAsRead( val notification_id: NotificationId, val read: Boolean, /** Doesn't exist but needed for compatability with before 1.0.0 */ - val _kind: NotificationType? = null + val _kind: NotificationType? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MyUserInfo.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MyUserInfo.kt index fbe7caa5..a947c368 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MyUserInfo.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/MyUserInfo.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class MyUserInfo( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/NotificationData.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/NotificationData.kt index d7548d91..f59efcc7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/NotificationData.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/NotificationData.kt @@ -5,11 +5,7 @@ import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.ExperimentalSerializationApi import kotlinx.serialization.json.JsonClassDiscriminator - @CommonParcelize @OptIn(ExperimentalSerializationApi::class) @JsonClassDiscriminator("type_") sealed interface NotificationData : DatatypeRoot - - - diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/OAuthAccount.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/OAuthAccount.kt index 15f96475..51f04f89 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/OAuthAccount.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/OAuthAccount.kt @@ -12,4 +12,4 @@ data class OAuthAccount( val oauth_user_id: String, val published_at: String, val updated_at: String? = null, -): DatatypeRoot +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PendingFollow.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PendingFollow.kt index d1644b6f..0cd7171d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PendingFollow.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PendingFollow.kt @@ -12,4 +12,4 @@ data class PendingFollow( val community: Community, val is_new_instance: Boolean, val follow_state: CommunityFollowerState? /* "Accepted" | "Pending" | "ApprovalRequired" */ = null, -): DatatypeRoot +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Person.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Person.kt index 61f0e8b8..682c1734 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Person.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Person.kt @@ -1,11 +1,10 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import it.vercruysse.lemmyapi.Identity import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class Person( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonActions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonActions.kt index 9818b051..8fc30191 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonActions.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonActions.kt @@ -13,4 +13,4 @@ data class PersonActions( val voted_at: String? = null, val upvotes: Long? = null, val downvotes: Long? = null, -): DatatypeRoot +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonView.kt index b6742eed..c0fc6a9d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PersonView.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.SerialName +import kotlinx.serialization.Serializable @CommonParcelize @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PluginMetadata.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PluginMetadata.kt index f5f6516f..0cdd12e1 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PluginMetadata.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PluginMetadata.kt @@ -10,4 +10,4 @@ data class PluginMetadata( val name: String, val url: String? = null, val description: String? = null, -): DatatypeRoot +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Post.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Post.kt index ceb4451b..8d3f7e34 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Post.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Post.kt @@ -1,11 +1,10 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import it.vercruysse.lemmyapi.Identity -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize import kotlinx.serialization.SerialName +import kotlinx.serialization.Serializable @CommonParcelize @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostActions.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostActions.kt index 9bc64fe4..d101a31f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostActions.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostActions.kt @@ -16,4 +16,4 @@ data class PostActions( val like_score: Int = 0, val hidden_at: String? = null, val notifications: PostNotificationsMode? /* "AllComments" | "RepliesAndMentions" | "Mute" */ = null, -): DatatypeRoot +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostReport.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostReport.kt index c8f2f31b..f11765f0 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostReport.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostReport.kt @@ -1,11 +1,10 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import it.vercruysse.lemmyapi.Identity import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class PostReport( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostReportResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostReportResponse.kt index cff051ab..1abb0c68 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostReportResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostReportResponse.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class PostReportResponse( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostReportView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostReportView.kt index e7ea15da..fae82802 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostReportView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostReportView.kt @@ -1,11 +1,9 @@ package it.vercruysse.lemmyapi.datatypes -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.SerialName - +import kotlinx.serialization.Serializable @CommonParcelize @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostResponse.kt index 8bf070c3..9dae712b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostResponse.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class PostResponse( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostView.kt index 46a3f5c7..ef90ab03 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostView.kt @@ -1,11 +1,10 @@ package it.vercruysse.lemmyapi.datatypes -import it.vercruysse.lemmyapi.DatatypeRoot -import kotlinx.serialization.Serializable - import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot import it.vercruysse.lemmyapi.Identity import kotlinx.serialization.SerialName +import kotlinx.serialization.Serializable @CommonParcelize @Serializable @@ -28,7 +27,7 @@ data class PostView( val creator_is_moderator: Boolean, val creator_banned_from_community: Boolean, val creator_community_ban_expires_at: String? = null, - ) : DatatypeRoot, Identity, NotificationData, ResolveObjectView, PostCommentCombinedView { +) : DatatypeRoot, Identity, NotificationData, ResolveObjectView, PostCommentCombinedView { override val id: Long get() = post.id } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessage.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessage.kt index c8ed160e..1cc471de 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessage.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessage.kt @@ -1,11 +1,10 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import it.vercruysse.lemmyapi.Identity -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize import kotlinx.serialization.SerialName +import kotlinx.serialization.Serializable @CommonParcelize @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessageReport.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessageReport.kt index 69cf2bb1..9d97e7fe 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessageReport.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessageReport.kt @@ -1,11 +1,10 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import it.vercruysse.lemmyapi.Identity import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class PrivateMessageReport( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessageReportResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessageReportResponse.kt index 1a24da94..aea39836 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessageReportResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessageReportResponse.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class PrivateMessageReportResponse( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessageReportView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessageReportView.kt index c4d5895d..d63dd5fa 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessageReportView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessageReportView.kt @@ -1,11 +1,10 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import it.vercruysse.lemmyapi.Identity -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize import kotlinx.serialization.SerialName +import kotlinx.serialization.Serializable @CommonParcelize @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessageResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessageResponse.kt index 7327ed0b..5069f1e3 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessageResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessageResponse.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class PrivateMessageResponse( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessageView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessageView.kt index 24f2420c..317f6a4b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessageView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PrivateMessageView.kt @@ -1,11 +1,10 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import it.vercruysse.lemmyapi.Identity -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize import kotlinx.serialization.SerialName +import kotlinx.serialization.Serializable @CommonParcelize @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PurgeComment.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PurgeComment.kt index 4d0e81ba..15ebcc6d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PurgeComment.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PurgeComment.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class PurgeComment( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PurgeCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PurgeCommunity.kt index a048817a..6da21365 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PurgeCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PurgeCommunity.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class PurgeCommunity( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PurgePerson.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PurgePerson.kt index 841a464b..412e5af2 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PurgePerson.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PurgePerson.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class PurgePerson( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PurgePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PurgePost.kt index 3666d1d4..def55242 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PurgePost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PurgePost.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class PurgePost( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Register.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Register.kt index cff84cb3..8927d951 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Register.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Register.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class Register( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/RegistrationApplication.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/RegistrationApplication.kt index 2ea4cc0b..f0b0fb03 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/RegistrationApplication.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/RegistrationApplication.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class RegistrationApplication( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/RegistrationApplicationResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/RegistrationApplicationResponse.kt index ab2aadf7..c8c83ba5 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/RegistrationApplicationResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/RegistrationApplicationResponse.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class RegistrationApplicationResponse( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/RegistrationApplicationView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/RegistrationApplicationView.kt index f44109b5..0afc4a7b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/RegistrationApplicationView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/RegistrationApplicationView.kt @@ -1,11 +1,10 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import it.vercruysse.lemmyapi.Identity import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class RegistrationApplicationView( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/RemoveComment.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/RemoveComment.kt index 9af33c2b..12e737d3 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/RemoveComment.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/RemoveComment.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class RemoveComment( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/RemoveCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/RemoveCommunity.kt index 381228ba..245c0256 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/RemoveCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/RemoveCommunity.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class RemoveCommunity( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/RemovePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/RemovePost.kt index 5f5c14c6..75080a4a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/RemovePost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/RemovePost.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class RemovePost( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ResendVerificationEmail.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ResendVerificationEmail.kt index 6d1f7725..7c99a049 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ResendVerificationEmail.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ResendVerificationEmail.kt @@ -8,4 +8,4 @@ import kotlinx.serialization.Serializable @Serializable data class ResendVerificationEmail( val email: SensitiveString, -): DatatypeRoot +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ResetPassword.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ResetPassword.kt index efde2b95..f7898514 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ResetPassword.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ResetPassword.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class ResetPassword( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ResolveCommentReport.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ResolveCommentReport.kt index 56a3dbd1..c02d1008 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ResolveCommentReport.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ResolveCommentReport.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class ResolveCommentReport( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ResolveObject.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ResolveObject.kt index 96ed8465..7b886a48 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ResolveObject.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ResolveObject.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class ResolveObject( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ResolvePostReport.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ResolvePostReport.kt index 719859e1..75e4ae34 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ResolvePostReport.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ResolvePostReport.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class ResolvePostReport( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ResolvePrivateMessageReport.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ResolvePrivateMessageReport.kt index 48f9d684..2b0b2908 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ResolvePrivateMessageReport.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ResolvePrivateMessageReport.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class ResolvePrivateMessageReport( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SaveComment.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SaveComment.kt index 2bffb41d..d3b9763a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SaveComment.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SaveComment.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class SaveComment( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SavePost.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SavePost.kt index d9eee637..05e3552c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SavePost.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SavePost.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class SavePost( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SaveUserSettings.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SaveUserSettings.kt index e6ac06dc..3ba69b91 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SaveUserSettings.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SaveUserSettings.kt @@ -1,13 +1,12 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot -import it.vercruysse.lemmyapi.enums.PostListingMode import it.vercruysse.lemmyapi.enums.ListingType +import it.vercruysse.lemmyapi.enums.PostListingMode import it.vercruysse.lemmyapi.enums.SortType -import kotlinx.serialization.Serializable - -import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.enums.VoteShow +import kotlinx.serialization.Serializable @CommonParcelize @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Search.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Search.kt index 08708316..b824944e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Search.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Search.kt @@ -1,12 +1,11 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import it.vercruysse.lemmyapi.enums.ListingType import it.vercruysse.lemmyapi.enums.SearchType import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class Search( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SearchResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SearchResponse.kt index 42697c09..c280e238 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SearchResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SearchResponse.kt @@ -1,11 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - - @CommonParcelize @Serializable data class SearchResponse( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Site.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Site.kt index b80de4b7..1a91e9e2 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Site.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Site.kt @@ -1,11 +1,10 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import it.vercruysse.lemmyapi.Identity import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class Site( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SiteResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SiteResponse.kt index dc7cdd27..de6c0df2 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SiteResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SiteResponse.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class SiteResponse( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SiteView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SiteView.kt index 13d8de0d..d7e3692a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SiteView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SiteView.kt @@ -1,11 +1,10 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import it.vercruysse.lemmyapi.Identity import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class SiteView( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Tagline.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Tagline.kt index d3eeec66..a2a30d5a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Tagline.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Tagline.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class Tagline( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/TaglineResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/TaglineResponse.kt index b534f19c..8ca4de8d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/TaglineResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/TaglineResponse.kt @@ -8,4 +8,4 @@ import kotlinx.serialization.Serializable @Serializable data class TaglineResponse( val tagline: Tagline, -): DatatypeRoot +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/TransferCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/TransferCommunity.kt index d9241311..41d8c171 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/TransferCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/TransferCommunity.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class TransferCommunity( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UploadImageResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UploadImageResponse.kt index 7d3f5dc3..562c9935 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UploadImageResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UploadImageResponse.kt @@ -12,4 +12,4 @@ data class UploadImageResponse( /* Added for pre V1 compatability, deletion requires a combination of filename and secret. Pass this to delete endpoint */ val delete_filename: String = filename, -): DatatypeRoot +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UserBlockInstanceCommunitiesParams.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UserBlockInstanceCommunitiesParams.kt index a762a962..e1694ee6 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UserBlockInstanceCommunitiesParams.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/UserBlockInstanceCommunitiesParams.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class UserBlockInstanceCommunitiesParams( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/VerifyEmail.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/VerifyEmail.kt index 1dd36e0b..afb0da44 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/VerifyEmail.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/VerifyEmail.kt @@ -1,10 +1,9 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class VerifyEmail( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/VoteView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/VoteView.kt index dbd69737..7beb0371 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/VoteView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/VoteView.kt @@ -1,11 +1,10 @@ package it.vercruysse.lemmyapi.datatypes +import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import it.vercruysse.lemmyapi.Identity import kotlinx.serialization.Serializable -import it.vercruysse.lemmyapi.CommonParcelize - @CommonParcelize @Serializable data class VoteView( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x17/x4/datatypes/GetSiteResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x17/x4/datatypes/GetSiteResponse.kt index 09e4af6c..5df1e24c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x17/x4/datatypes/GetSiteResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x17/x4/datatypes/GetSiteResponse.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x17.x4.datatypes -import kotlinx.serialization.Serializable import it.vercruysse.lemmyapi.v0.x18.x5.datatypes.* +import kotlinx.serialization.Serializable @Serializable internal data class GetSiteResponse( diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt index 463a7d46..839753c4 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt @@ -401,6 +401,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba ): Result> = when (form.type_) { it.vercruysse.lemmyapi.enums.ReportType.Communities -> notSupported() + it.vercruysse.lemmyapi.enums.ReportType.Posts -> { api.listPostReports(transformer.fromUniP(form)).map { resp -> PagedResponse(resp.post_reports.map(transformer::toUni)) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt index ce9ac04d..408250ff 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt @@ -378,6 +378,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba ): Result> = when (form.type_) { it.vercruysse.lemmyapi.enums.ReportType.Communities -> notSupported() + it.vercruysse.lemmyapi.enums.ReportType.Posts -> { api.listPostReports(transformer.fromUniP(form)).map { resp -> PagedResponse(resp.post_reports.map(transformer::toUni)) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/CreateSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/CreateSite.kt index 4aee2aef..10240bba 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/CreateSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/CreateSite.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -import it.vercruysse.lemmyapi.v0.enums.RegistrationMode import it.vercruysse.lemmyapi.v0.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.RegistrationMode import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/EditSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/EditSite.kt index d050856f..34003b50 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/EditSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/EditSite.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -import it.vercruysse.lemmyapi.v0.enums.RegistrationMode import it.vercruysse.lemmyapi.v0.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.RegistrationMode import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/GetPosts.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/GetPosts.kt index e1d2d0cc..0c67c80c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/GetPosts.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/GetPosts.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -import it.vercruysse.lemmyapi.v0.enums.SortType import it.vercruysse.lemmyapi.v0.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/ListCommunities.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/ListCommunities.kt index 6427647b..4a0ab714 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/ListCommunities.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/ListCommunities.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -import it.vercruysse.lemmyapi.v0.enums.SortType import it.vercruysse.lemmyapi.v0.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/LocalSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/LocalSite.kt index 7ace4411..bec974f5 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/LocalSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/LocalSite.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -import it.vercruysse.lemmyapi.v0.enums.RegistrationMode import it.vercruysse.lemmyapi.v0.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.RegistrationMode import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/LocalUser.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/LocalUser.kt index b0a1b4ee..2867e503 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/LocalUser.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/LocalUser.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -import it.vercruysse.lemmyapi.v0.enums.PostListingMode import it.vercruysse.lemmyapi.v0.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.PostListingMode import it.vercruysse.lemmyapi.v0.enums.SortType import kotlinx.serialization.Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/SaveUserSettings.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/SaveUserSettings.kt index e6c0d961..d36726a0 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/SaveUserSettings.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/SaveUserSettings.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes -import it.vercruysse.lemmyapi.v0.enums.PostListingMode import it.vercruysse.lemmyapi.v0.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.PostListingMode import it.vercruysse.lemmyapi.v0.enums.SortType import kotlinx.serialization.Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/Search.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/Search.kt index 563d8818..a4859d68 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/Search.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/datatypes/Search.kt @@ -1,8 +1,8 @@ package it.vercruysse.lemmyapi.v0.x19.x0.datatypes import it.vercruysse.lemmyapi.v0.enums.ListingType -import it.vercruysse.lemmyapi.v0.enums.SortType import it.vercruysse.lemmyapi.v0.enums.SearchType +import it.vercruysse.lemmyapi.v0.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt index 18e0cfb1..ff898638 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt @@ -378,6 +378,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba ): Result> = when (form.type_) { it.vercruysse.lemmyapi.enums.ReportType.Communities -> notSupported() + it.vercruysse.lemmyapi.enums.ReportType.Posts -> { api.listPostReports(transformer.fromUniP(form)).map { resp -> PagedResponse(resp.post_reports.map(transformer::toUni)) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt index dd4fe8b9..cf6852e2 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt @@ -379,6 +379,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba ): Result> = when (form.type_) { it.vercruysse.lemmyapi.enums.ReportType.Communities -> notSupported() + it.vercruysse.lemmyapi.enums.ReportType.Posts -> { api.listPostReports(transformer.fromUniP(form)).map { resp -> PagedResponse(resp.post_reports.map(transformer::toUni)) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/CreateSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/CreateSite.kt index 1d43d6e4..c00fef70 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/CreateSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/CreateSite.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -import it.vercruysse.lemmyapi.v0.enums.RegistrationMode import it.vercruysse.lemmyapi.v0.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.RegistrationMode import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/EditSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/EditSite.kt index 395fa12a..dd870818 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/EditSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/EditSite.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -import it.vercruysse.lemmyapi.v0.enums.RegistrationMode import it.vercruysse.lemmyapi.v0.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.RegistrationMode import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/GetPosts.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/GetPosts.kt index fcbaf01e..8a169716 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/GetPosts.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/GetPosts.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -import it.vercruysse.lemmyapi.v0.enums.SortType import it.vercruysse.lemmyapi.v0.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/ListCommunities.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/ListCommunities.kt index 17425225..ec58c935 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/ListCommunities.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/ListCommunities.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -import it.vercruysse.lemmyapi.v0.enums.SortType import it.vercruysse.lemmyapi.v0.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/LocalSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/LocalSite.kt index 4535552e..2c1ba407 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/LocalSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/LocalSite.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -import it.vercruysse.lemmyapi.v0.enums.RegistrationMode import it.vercruysse.lemmyapi.v0.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.RegistrationMode import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/LocalUser.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/LocalUser.kt index a17590e9..1d948626 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/LocalUser.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/LocalUser.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -import it.vercruysse.lemmyapi.v0.enums.PostListingMode import it.vercruysse.lemmyapi.v0.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.PostListingMode import it.vercruysse.lemmyapi.v0.enums.SortType import kotlinx.serialization.Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/SaveUserSettings.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/SaveUserSettings.kt index 9bb86d34..71194fec 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/SaveUserSettings.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/SaveUserSettings.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes -import it.vercruysse.lemmyapi.v0.enums.PostListingMode import it.vercruysse.lemmyapi.v0.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.PostListingMode import it.vercruysse.lemmyapi.v0.enums.SortType import kotlinx.serialization.Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/Search.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/Search.kt index c91d7e42..989380d5 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/Search.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/datatypes/Search.kt @@ -1,8 +1,8 @@ package it.vercruysse.lemmyapi.v0.x19.x3.datatypes import it.vercruysse.lemmyapi.v0.enums.ListingType -import it.vercruysse.lemmyapi.v0.enums.SortType import it.vercruysse.lemmyapi.v0.enums.SearchType +import it.vercruysse.lemmyapi.v0.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt index e97ef4bb..6376319a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt @@ -378,6 +378,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba ): Result> = when (form.type_) { it.vercruysse.lemmyapi.enums.ReportType.Communities -> notSupported() + it.vercruysse.lemmyapi.enums.ReportType.Posts -> { api.listPostReports(transformer.fromUniP(form)).map { resp -> PagedResponse(resp.post_reports.map(transformer::toUni)) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CreateSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CreateSite.kt index d14f0db7..54e20f69 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CreateSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/CreateSite.kt @@ -1,9 +1,9 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes +import it.vercruysse.lemmyapi.v0.enums.ListingType import it.vercruysse.lemmyapi.v0.enums.PostListingMode import it.vercruysse.lemmyapi.v0.enums.RegistrationMode import it.vercruysse.lemmyapi.v0.enums.SortType -import it.vercruysse.lemmyapi.v0.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/EditSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/EditSite.kt index 27aebcba..ef1545d6 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/EditSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/EditSite.kt @@ -1,9 +1,9 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes +import it.vercruysse.lemmyapi.v0.enums.ListingType import it.vercruysse.lemmyapi.v0.enums.PostListingMode import it.vercruysse.lemmyapi.v0.enums.RegistrationMode import it.vercruysse.lemmyapi.v0.enums.SortType -import it.vercruysse.lemmyapi.v0.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/GetPosts.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/GetPosts.kt index ca9358d1..a20f2b97 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/GetPosts.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/GetPosts.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -import it.vercruysse.lemmyapi.v0.enums.SortType import it.vercruysse.lemmyapi.v0.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/ListCommunities.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/ListCommunities.kt index d33041e7..be7a40c9 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/ListCommunities.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/ListCommunities.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -import it.vercruysse.lemmyapi.v0.enums.SortType import it.vercruysse.lemmyapi.v0.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/LocalSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/LocalSite.kt index 8264d93e..17c7a911 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/LocalSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/LocalSite.kt @@ -1,9 +1,9 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -import it.vercruysse.lemmyapi.v0.enums.SortType +import it.vercruysse.lemmyapi.v0.enums.ListingType import it.vercruysse.lemmyapi.v0.enums.PostListingMode import it.vercruysse.lemmyapi.v0.enums.RegistrationMode -import it.vercruysse.lemmyapi.v0.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/LocalUser.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/LocalUser.kt index d8def300..2ee0389e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/LocalUser.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/LocalUser.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -import it.vercruysse.lemmyapi.v0.enums.PostListingMode import it.vercruysse.lemmyapi.v0.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.PostListingMode import it.vercruysse.lemmyapi.v0.enums.SortType import kotlinx.serialization.Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/SaveUserSettings.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/SaveUserSettings.kt index 47781547..af9826b4 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/SaveUserSettings.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/SaveUserSettings.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes -import it.vercruysse.lemmyapi.v0.enums.PostListingMode import it.vercruysse.lemmyapi.v0.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.PostListingMode import it.vercruysse.lemmyapi.v0.enums.SortType import kotlinx.serialization.Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/Search.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/Search.kt index 22455195..cd72d088 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/Search.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/datatypes/Search.kt @@ -1,8 +1,8 @@ package it.vercruysse.lemmyapi.v0.x19.x4.datatypes import it.vercruysse.lemmyapi.v0.enums.ListingType -import it.vercruysse.lemmyapi.v0.enums.SortType import it.vercruysse.lemmyapi.v0.enums.SearchType +import it.vercruysse.lemmyapi.v0.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt index a41525dc..9c5b2959 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt @@ -379,6 +379,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba ): Result> = when (form.type_) { it.vercruysse.lemmyapi.enums.ReportType.Communities -> notSupported() + it.vercruysse.lemmyapi.enums.ReportType.Posts -> { api.listPostReports(transformer.fromUniP(form)).map { resp -> PagedResponse(resp.post_reports.map(transformer::toUni)) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CreateSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CreateSite.kt index ace9ca5e..c1995789 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CreateSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/CreateSite.kt @@ -1,9 +1,9 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes +import it.vercruysse.lemmyapi.v0.enums.ListingType import it.vercruysse.lemmyapi.v0.enums.PostListingMode import it.vercruysse.lemmyapi.v0.enums.RegistrationMode import it.vercruysse.lemmyapi.v0.enums.SortType -import it.vercruysse.lemmyapi.v0.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/EditSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/EditSite.kt index 387203e9..f854579a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/EditSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/EditSite.kt @@ -1,9 +1,9 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes +import it.vercruysse.lemmyapi.v0.enums.ListingType import it.vercruysse.lemmyapi.v0.enums.PostListingMode import it.vercruysse.lemmyapi.v0.enums.RegistrationMode import it.vercruysse.lemmyapi.v0.enums.SortType -import it.vercruysse.lemmyapi.v0.enums.ListingType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/GetPosts.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/GetPosts.kt index f2273fe8..d8378eac 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/GetPosts.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/GetPosts.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -import it.vercruysse.lemmyapi.v0.enums.SortType import it.vercruysse.lemmyapi.v0.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/ListCommunities.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/ListCommunities.kt index 37eeadc8..a0c18347 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/ListCommunities.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/ListCommunities.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -import it.vercruysse.lemmyapi.v0.enums.SortType import it.vercruysse.lemmyapi.v0.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/LocalSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/LocalSite.kt index e0ef1ac7..dec38a56 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/LocalSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/LocalSite.kt @@ -1,9 +1,9 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -import it.vercruysse.lemmyapi.v0.enums.SortType +import it.vercruysse.lemmyapi.v0.enums.ListingType import it.vercruysse.lemmyapi.v0.enums.PostListingMode import it.vercruysse.lemmyapi.v0.enums.RegistrationMode -import it.vercruysse.lemmyapi.v0.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.SortType import kotlinx.serialization.Serializable @Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/LocalUser.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/LocalUser.kt index c824b56a..e3abb5e0 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/LocalUser.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/LocalUser.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -import it.vercruysse.lemmyapi.v0.enums.PostListingMode import it.vercruysse.lemmyapi.v0.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.PostListingMode import it.vercruysse.lemmyapi.v0.enums.SortType import kotlinx.serialization.Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/SaveUserSettings.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/SaveUserSettings.kt index 35607528..d496245d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/SaveUserSettings.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/SaveUserSettings.kt @@ -1,7 +1,7 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes -import it.vercruysse.lemmyapi.v0.enums.PostListingMode import it.vercruysse.lemmyapi.v0.enums.ListingType +import it.vercruysse.lemmyapi.v0.enums.PostListingMode import it.vercruysse.lemmyapi.v0.enums.SortType import kotlinx.serialization.Serializable diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/Search.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/Search.kt index cb84decc..8fbc7a84 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/Search.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/datatypes/Search.kt @@ -1,8 +1,8 @@ package it.vercruysse.lemmyapi.v0.x19.x6.datatypes import it.vercruysse.lemmyapi.v0.enums.ListingType -import it.vercruysse.lemmyapi.v0.enums.SortType import it.vercruysse.lemmyapi.v0.enums.SearchType +import it.vercruysse.lemmyapi.v0.enums.SortType import kotlinx.serialization.Serializable @Serializable From 3711b21a5f5736bf486a5f11ec24b9db4d037bcd Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Mon, 25 May 2026 00:29:57 +0200 Subject: [PATCH 094/110] Bump publish plugin --- app/build.gradle.kts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 06d059e1..2bf4dd33 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -7,7 +7,7 @@ plugins { kotlin("plugin.serialization") version "2.3.21" id("org.jmailen.kotlinter") version "5.5.0" id("com.google.devtools.ksp") version ("2.3.8") - id("com.vanniktech.maven.publish") version "0.33.0" + id("com.vanniktech.maven.publish") version "0.36.0" id("com.github.ben-manes.versions") version "0.54.0" id("com.android.kotlin.multiplatform.library") id("kotlin-parcelize") From ece7de151003fcac0d77a525b020ac98070627f9 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Mon, 25 May 2026 00:50:27 +0200 Subject: [PATCH 095/110] Change deployment flow to fix OOM for gradle --- .github/gradle.properties | 2 -- .github/workflows/ci.yml | 23 ++++++++++------------- .github/workflows/deploy.yml | 17 ++++++++++------- gradle.properties | 1 + 4 files changed, 21 insertions(+), 22 deletions(-) delete mode 100644 .github/gradle.properties diff --git a/.github/gradle.properties b/.github/gradle.properties deleted file mode 100644 index 738ad2a6..00000000 --- a/.github/gradle.properties +++ /dev/null @@ -1,2 +0,0 @@ -kotlin.daemon.jvmargs=-Xmx6G -org.gradle.jvmargs=-Xmx6G \ No newline at end of file diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 14172bcb..8758d257 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -18,18 +18,15 @@ jobs: os: [ macos-latest, ubuntu-latest, windows-latest ] steps: - - uses: actions/checkout@v4 - - uses: SimonMarquis/ci-gradle-properties-action@v1 - with: - path: .github/gradle.properties - - uses: actions/setup-java@v4 + - uses: actions/checkout@v6 + - uses: actions/setup-java@v5 with: distribution: 'temurin' java-version: '17' - name: Setup Gradle - uses: gradle/actions/setup-gradle@v3 + uses: gradle/actions/setup-gradle@v5 - name: Cache Konan dependencies - uses: actions/cache@v4 + uses: actions/cache@v5 with: path: ~/.konan key: ${{ runner.os }}-konan-${{ hashFiles('**/*.gradle.kts') }} @@ -40,10 +37,10 @@ jobs: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v6 - name: Setup Gradle - uses: gradle/actions/setup-gradle@v3 - - uses: actions/setup-java@v4 + uses: gradle/actions/setup-gradle@v5 + - uses: actions/setup-java@v5 with: distribution: 'temurin' java-version: '17' @@ -52,13 +49,13 @@ jobs: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v6 - uses: SimonMarquis/ci-gradle-properties-action@v1 with: path: .github/gradle.properties - name: Setup Gradle - uses: gradle/actions/setup-gradle@v3 - - uses: actions/setup-java@v4 + uses: gradle/actions/setup-gradle@v5 + - uses: actions/setup-java@v5 with: distribution: 'temurin' java-version: '17' diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 6987f880..bae8169a 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -3,10 +3,16 @@ name: Deployment on: push: tags: [ '[0-9]+.[0-9]+.[0-9]+*' ] + workflow_dispatch: jobs: publish: - if: github.repository == 'mv-gh/lemmybackwardscompatibleapi' && startsWith(github.ref, 'refs/tags') + if: > + github.repository == 'mv-gh/lemmybackwardscompatibleapi' && + ( + startsWith(github.ref, 'refs/tags/') || + (github.event_name == 'workflow_dispatch' && github.actor == 'mv-gh') + ) runs-on: ${{ matrix.os }} strategy: matrix: @@ -19,13 +25,10 @@ jobs: ORG_GRADLE_PROJECT_mavenCentralPassword: ${{ secrets.ORG_GRADLE_PROJECT_mavenCentralPassword }} ORG_GRADLE_PROJECT_signingInMemoryKeyId: ${{ secrets.ORG_GRADLE_PROJECT_signingInMemoryKeyId }} steps: - - uses: actions/checkout@v4 - - uses: SimonMarquis/ci-gradle-properties-action@v1 - with: - path: .github/gradle.properties + - uses: actions/checkout@v6 - name: Setup Gradle - uses: gradle/actions/setup-gradle@v3 - - uses: actions/setup-java@v4 + uses: gradle/actions/setup-gradle@v5 + - uses: actions/setup-java@v5 with: distribution: 'temurin' java-version: '17' diff --git a/gradle.properties b/gradle.properties index 9d96d5f8..a6a02a05 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,6 +1,7 @@ kotlin.code.style=official android.useAndroidX=true org.gradle.configuration-cache=true +org.gradle.jvmargs=-Xmx2GB "-XX:MaxMetaspaceSize=800m" POM_NAME=Lemmy Backwards Compatible API POM_DESCRIPTION=Kotlin multiplatform Backward compatible Lemmy API client From 0289a7aa1139ad8b2a3b1d80907ac033a9c2060b Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Mon, 25 May 2026 00:51:55 +0200 Subject: [PATCH 096/110] Fix unit --- gradle.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle.properties b/gradle.properties index a6a02a05..6977d847 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,7 +1,7 @@ kotlin.code.style=official android.useAndroidX=true org.gradle.configuration-cache=true -org.gradle.jvmargs=-Xmx2GB "-XX:MaxMetaspaceSize=800m" +org.gradle.jvmargs=-Xmx2G "-XX:MaxMetaspaceSize=800m" POM_NAME=Lemmy Backwards Compatible API POM_DESCRIPTION=Kotlin multiplatform Backward compatible Lemmy API client From 48ee68ecf3ce7b469efd703bb1e50136cf01c6b7 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Mon, 25 May 2026 00:54:36 +0200 Subject: [PATCH 097/110] Fix remnant --- .github/workflows/ci.yml | 3 --- 1 file changed, 3 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 8758d257..7768dd5a 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -50,9 +50,6 @@ jobs: steps: - uses: actions/checkout@v6 - - uses: SimonMarquis/ci-gradle-properties-action@v1 - with: - path: .github/gradle.properties - name: Setup Gradle uses: gradle/actions/setup-gradle@v5 - uses: actions/setup-java@v5 From 24f4ff4e8e29ced16cab3ac5e416aec44d9fd8c8 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Mon, 25 May 2026 01:00:22 +0200 Subject: [PATCH 098/110] Increase timeout to download wrapper --- gradle/wrapper/gradle-wrapper.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 2c8b2b12..7a055038 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -3,7 +3,7 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists distributionSha256Sum=bafc141b619ad6350fd975fc903156dd5c151998cc8b058e8c1044ab5f7b031f distributionUrl=https\://services.gradle.org/distributions/gradle-9.5.1-bin.zip -networkTimeout=10000 +networkTimeout=60000 validateDistributionUrl=true zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists From c1849f06d015db4516a3092edda67b756fda1af5 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Mon, 25 May 2026 01:23:53 +0200 Subject: [PATCH 099/110] Increase gradle mem --- gradle.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle.properties b/gradle.properties index 6977d847..5df854f3 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,7 +1,7 @@ kotlin.code.style=official android.useAndroidX=true org.gradle.configuration-cache=true -org.gradle.jvmargs=-Xmx2G "-XX:MaxMetaspaceSize=800m" +org.gradle.jvmargs=-Xmx4G -XX:MaxMetaspaceSize=1G POM_NAME=Lemmy Backwards Compatible API POM_DESCRIPTION=Kotlin multiplatform Backward compatible Lemmy API client From c4ccfbadbcca01e35251cab8e3f6d8e75be943f8 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Mon, 25 May 2026 02:24:39 +0200 Subject: [PATCH 100/110] Try fix duplicate deployment --- app/build.gradle.kts | 24 +++++++++++++++++++++--- gradle.properties | 2 +- 2 files changed, 22 insertions(+), 4 deletions(-) diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 2bf4dd33..85477a32 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -134,16 +134,34 @@ kotlin { } } -val publicationsFromMainHost = listOf("jvm", "js", "android", "kotlinMultiplatform") +val publicationsFromLinux = listOf("jvm", "js", "android", "kotlinMultiplatform", "linuxX64", "linuxArm64") +val publicationsFromWindows = listOf("mingwX64") +val publicationsFromMac = listOf( + "macosArm64", + "iosSimulatorArm64", "iosX64", "iosArm64", + "watchosSimulatorArm64", "watchosArm32", "watchosArm64", "watchosDeviceArm64", +) publishing { publications { - matching { it.name in publicationsFromMainHost }.all { + matching { it.name in publicationsFromLinux }.all { val targetPublication = this@all tasks.withType() .matching { it.publication == targetPublication } .configureEach { onlyIf { getHostOsName() == OS.LINUX } } } + matching { it.name in publicationsFromWindows }.all { + val targetPublication = this@all + tasks.withType() + .matching { it.publication == targetPublication } + .configureEach { onlyIf { getHostOsName() == OS.WINDOWS } } + } + matching { it.name in publicationsFromMac }.all { + val targetPublication = this@all + tasks.withType() + .matching { it.publication == targetPublication } + .configureEach { onlyIf { getHostOsName() == OS.MAC } } + } } } @@ -171,7 +189,7 @@ fun getHostOsName(): OS = } mavenPublishing { - publishToMavenCentral( true) + publishToMavenCentral(true) signAllPublications() } diff --git a/gradle.properties b/gradle.properties index 5df854f3..b45ffd49 100644 --- a/gradle.properties +++ b/gradle.properties @@ -22,5 +22,5 @@ POM_DEVELOPER_URL=https://github.com/MV-GH POM_ARTIFACT_ID=lemmy-api GROUP=it.vercruysse.lemmyapi -VERSION_NAME=0.5.0-alpha.1 +VERSION_NAME=0.5.0-alpha.2 From 677b6e69839de17a3114823243a991dcabb5b709 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Mon, 25 May 2026 02:38:42 +0200 Subject: [PATCH 101/110] Bump semver --- app/build.gradle.kts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 85477a32..58f6fee0 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -77,7 +77,7 @@ kotlin { implementation("io.ktor:ktor-client-content-negotiation:$ktorVersion") implementation("io.ktor:ktor-serialization-kotlinx-json:$ktorVersion") - api("io.github.z4kn4fein:semver:2.0.0") + api("io.github.z4kn4fein:semver:3.1.0") } commonTest.dependencies { From 5333a9cc7d36e9fdad0b4effb16b617f2f3dff92 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Mon, 25 May 2026 21:29:15 +0200 Subject: [PATCH 102/110] Try new deployment --- .github/workflows/deploy.yml | 1 + app/build.gradle.kts | 6 +++--- gradle.properties | 2 +- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index bae8169a..34b84201 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -15,6 +15,7 @@ jobs: ) runs-on: ${{ matrix.os }} strategy: + max-parallel: 1 matrix: os: [ macos-latest, ubuntu-latest, windows-latest ] environment: publish diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 58f6fee0..cfd55449 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -148,19 +148,19 @@ publishing { val targetPublication = this@all tasks.withType() .matching { it.publication == targetPublication } - .configureEach { onlyIf { getHostOsName() == OS.LINUX } } + .configureEach { isEnabled = getHostOsName() == OS.LINUX } } matching { it.name in publicationsFromWindows }.all { val targetPublication = this@all tasks.withType() .matching { it.publication == targetPublication } - .configureEach { onlyIf { getHostOsName() == OS.WINDOWS } } + .configureEach { isEnabled = getHostOsName() == OS.WINDOWS } } matching { it.name in publicationsFromMac }.all { val targetPublication = this@all tasks.withType() .matching { it.publication == targetPublication } - .configureEach { onlyIf { getHostOsName() == OS.MAC } } + .configureEach { isEnabled = getHostOsName() == OS.MAC } } } } diff --git a/gradle.properties b/gradle.properties index b45ffd49..48bf982f 100644 --- a/gradle.properties +++ b/gradle.properties @@ -22,5 +22,5 @@ POM_DEVELOPER_URL=https://github.com/MV-GH POM_ARTIFACT_ID=lemmy-api GROUP=it.vercruysse.lemmyapi -VERSION_NAME=0.5.0-alpha.2 +VERSION_NAME=0.5.0-alpha.3 From d82cbaf6396b2ea63d76c583080cb6c0bc1aa13f Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Mon, 25 May 2026 22:14:35 +0200 Subject: [PATCH 103/110] Try new deployment --- app/build.gradle.kts | 30 +++++++++++------------------- gradle.properties | 2 +- 2 files changed, 12 insertions(+), 20 deletions(-) diff --git a/app/build.gradle.kts b/app/build.gradle.kts index cfd55449..c426126d 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -142,25 +142,17 @@ val publicationsFromMac = listOf( "watchosSimulatorArm64", "watchosArm32", "watchosArm64", "watchosDeviceArm64", ) -publishing { - publications { - matching { it.name in publicationsFromLinux }.all { - val targetPublication = this@all - tasks.withType() - .matching { it.publication == targetPublication } - .configureEach { isEnabled = getHostOsName() == OS.LINUX } - } - matching { it.name in publicationsFromWindows }.all { - val targetPublication = this@all - tasks.withType() - .matching { it.publication == targetPublication } - .configureEach { isEnabled = getHostOsName() == OS.WINDOWS } - } - matching { it.name in publicationsFromMac }.all { - val targetPublication = this@all - tasks.withType() - .matching { it.publication == targetPublication } - .configureEach { isEnabled = getHostOsName() == OS.MAC } +afterEvaluate { + val publishable = when (getHostOsName()) { + OS.LINUX -> publicationsFromLinux.toSet() + OS.WINDOWS -> publicationsFromWindows.toSet() + OS.MAC -> publicationsFromMac.toSet() + } + + tasks.withType().configureEach { + val pubName = publication?.name ?: return@configureEach + if (pubName !in publishable) { + isEnabled = false } } } diff --git a/gradle.properties b/gradle.properties index 48bf982f..b9e9c0a5 100644 --- a/gradle.properties +++ b/gradle.properties @@ -22,5 +22,5 @@ POM_DEVELOPER_URL=https://github.com/MV-GH POM_ARTIFACT_ID=lemmy-api GROUP=it.vercruysse.lemmyapi -VERSION_NAME=0.5.0-alpha.3 +VERSION_NAME=0.5.0-alpha.4 From f061e508f35408a5e27325b4e2bfe8972161e9dd Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Mon, 25 May 2026 22:55:00 +0200 Subject: [PATCH 104/110] Try deployment on one machine --- .github/workflows/deploy.yml | 6 +----- app/build.gradle.kts | 37 ------------------------------------ gradle.properties | 2 +- 3 files changed, 2 insertions(+), 43 deletions(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 34b84201..26c8d3fb 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -13,11 +13,7 @@ jobs: startsWith(github.ref, 'refs/tags/') || (github.event_name == 'workflow_dispatch' && github.actor == 'mv-gh') ) - runs-on: ${{ matrix.os }} - strategy: - max-parallel: 1 - matrix: - os: [ macos-latest, ubuntu-latest, windows-latest ] + runs-on: macos-latest environment: publish env: ORG_GRADLE_PROJECT_signingInMemoryKey: ${{ secrets.ORG_GRADLE_PROJECT_signingInMemoryKey }} diff --git a/app/build.gradle.kts b/app/build.gradle.kts index c426126d..9b97a500 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -134,29 +134,6 @@ kotlin { } } -val publicationsFromLinux = listOf("jvm", "js", "android", "kotlinMultiplatform", "linuxX64", "linuxArm64") -val publicationsFromWindows = listOf("mingwX64") -val publicationsFromMac = listOf( - "macosArm64", - "iosSimulatorArm64", "iosX64", "iosArm64", - "watchosSimulatorArm64", "watchosArm32", "watchosArm64", "watchosDeviceArm64", -) - -afterEvaluate { - val publishable = when (getHostOsName()) { - OS.LINUX -> publicationsFromLinux.toSet() - OS.WINDOWS -> publicationsFromWindows.toSet() - OS.MAC -> publicationsFromMac.toSet() - } - - tasks.withType().configureEach { - val pubName = publication?.name ?: return@configureEach - if (pubName !in publishable) { - isEnabled = false - } - } -} - tasks.withType { exclude("**/datatypes/**") @@ -166,20 +143,6 @@ tasks.withType { exclude("**/datatypes/**") } -enum class OS { - LINUX, WINDOWS, MAC -} - -fun getHostOsName(): OS = - System.getProperty("os.name").let { osName -> - when { - osName == "Linux" -> OS.LINUX - osName.startsWith("Windows") -> OS.WINDOWS - osName.startsWith("Mac") -> OS.MAC - else -> throw GradleException("Unknown OS: $osName") - } - } - mavenPublishing { publishToMavenCentral(true) signAllPublications() diff --git a/gradle.properties b/gradle.properties index b9e9c0a5..e4685839 100644 --- a/gradle.properties +++ b/gradle.properties @@ -22,5 +22,5 @@ POM_DEVELOPER_URL=https://github.com/MV-GH POM_ARTIFACT_ID=lemmy-api GROUP=it.vercruysse.lemmyapi -VERSION_NAME=0.5.0-alpha.4 +VERSION_NAME=0.5.0-alpha.5 From eaa788042eff504dcd6bdfddc32917b3ca333b41 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Sun, 21 Jun 2026 20:32:03 +0200 Subject: [PATCH 105/110] Fix default_comment_sort_type --- GeneratorScripts/src/main/kotlin/autogenscripts/GenTypes.kt | 1 + .../kotlin/it/vercruysse/lemmyapi/datatypes/CreateSite.kt | 4 +++- .../kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt | 4 +++- .../kotlin/it/vercruysse/lemmyapi/datatypes/LocalSite.kt | 3 ++- .../kotlin/it/vercruysse/lemmyapi/datatypes/LocalUser.kt | 3 ++- .../it/vercruysse/lemmyapi/datatypes/SaveUserSettings.kt | 4 +++- .../kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt | 5 +++-- .../kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt | 5 +++-- .../kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt | 6 +++--- .../kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt | 5 +++-- .../kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt | 6 +++--- .../kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt | 6 +++--- .../it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateSite.kt | 3 ++- .../it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditSite.kt | 3 ++- .../it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSite.kt | 3 ++- .../it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUser.kt | 3 ++- .../lemmyapi/v1/x0/x0/datatypes/SaveUserSettings.kt | 3 ++- gradle.properties | 2 +- 18 files changed, 43 insertions(+), 26 deletions(-) diff --git a/GeneratorScripts/src/main/kotlin/autogenscripts/GenTypes.kt b/GeneratorScripts/src/main/kotlin/autogenscripts/GenTypes.kt index 3b796fb1..d1360783 100644 --- a/GeneratorScripts/src/main/kotlin/autogenscripts/GenTypes.kt +++ b/GeneratorScripts/src/main/kotlin/autogenscripts/GenTypes.kt @@ -29,6 +29,7 @@ val globalFieldEnums = mapOf( "subscribed" to "SubscribedType", "feature_type" to "PostFeatureType", "post_listing_mode" to "PostListingMode", + "default_comment_sort_type" to "CommentSortType", "sort_type" to "SortType", "visibility" to "CommunityVisibility", "follow_state" to "CommunityFollowerState", diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateSite.kt index 9ae28765..43bfc5eb 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateSite.kt @@ -2,6 +2,7 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot +import it.vercruysse.lemmyapi.enums.CommentSortType import it.vercruysse.lemmyapi.enums.FederationMode import it.vercruysse.lemmyapi.enums.ImageMode import it.vercruysse.lemmyapi.enums.ListingType @@ -27,7 +28,8 @@ data class CreateSite( val default_post_time_range_seconds: Long? = null, /** Added in 1.0.0 */ val default_items_per_page: Long? = null, - val default_comment_sort_type: SortType? /* "Hot" | "Top" | "New" | "Old" | "Controversial" */ = null, + /** Added in 1.0.0 */ + val default_comment_sort_type: CommentSortType? /* "Hot" | "Top" | "New" | "Old" | "Controversial" */ = null, val legal_information: String? = null, val application_email_admins: Boolean? = null, /** Added in 1.0.0 */ diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt index c6bd4ce6..8dd8ae10 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt @@ -2,6 +2,7 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot +import it.vercruysse.lemmyapi.enums.CommentSortType import it.vercruysse.lemmyapi.enums.FederationMode import it.vercruysse.lemmyapi.enums.ImageMode import it.vercruysse.lemmyapi.enums.ListingType @@ -28,7 +29,8 @@ data class EditSite( val default_post_sort_type: SortType? /* "Active" | "Hot" | "New" | "Old" | "TopDay" | "TopWeek" | "TopMonth" | "TopYear" | "TopAll" | "MostComments" | "NewComments" | "TopHour" | "TopSixHour" | "TopTwelveHour" | "TopThreeMonths" | "TopSixMonths" | "TopNineMonths" | "Controversial" | "Scaled" */ = null, val default_post_time_range_seconds: Long? = null, val default_items_per_page: Long? = null, - val default_comment_sort_type: SortType? /* "hot" | "top" | "new" | "old" | "controversial" */ = null, + /** Added in 1.0.0 */ + val default_comment_sort_type: CommentSortType? /* "hot" | "top" | "new" | "old" | "controversial" */ = null, val legal_information: String? = null, val application_email_admins: Boolean? = null, /** Added in 1.0.0 */ diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalSite.kt index ec7674fd..06fac289 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalSite.kt @@ -3,6 +3,7 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import it.vercruysse.lemmyapi.Identity +import it.vercruysse.lemmyapi.enums.CommentSortType import it.vercruysse.lemmyapi.enums.FederationMode import it.vercruysse.lemmyapi.enums.ImageMode import it.vercruysse.lemmyapi.enums.ListingType @@ -34,7 +35,7 @@ data class LocalSite( val federation_signed_fetch: Boolean, val default_post_listing_mode: PostListingMode /* "List" | "Card" | "SmallCard" */, val default_post_sort_type: SortType /* "Active" | "Hot" | "New" | "Old" | "TopDay" | "TopWeek" | "TopMonth" | "TopYear" | "TopAll" | "MostComments" | "NewComments" | "TopHour" | "TopSixHour" | "TopTwelveHour" | "TopThreeMonths" | "TopSixMonths" | "TopNineMonths" | "Controversial" | "Scaled" */, - val default_comment_sort_type: SortType /* "Hot" | "Top" | "New" | "Old" | "Controversial" */, + val default_comment_sort_type: CommentSortType /* "Hot" | "Top" | "New" | "Old" | "Controversial" */, val oauth_registration: Boolean, val post_upvotes: FederationMode /* "All" | "Local" | "Disable" */, val post_downvotes: FederationMode /* "All" | "Local" | "Disable" */, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUser.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUser.kt index aa8bc93d..98e54c1c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUser.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUser.kt @@ -3,6 +3,7 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot import it.vercruysse.lemmyapi.Identity +import it.vercruysse.lemmyapi.enums.CommentSortType import it.vercruysse.lemmyapi.enums.ListingType import it.vercruysse.lemmyapi.enums.PostListingMode import it.vercruysse.lemmyapi.enums.SortType @@ -37,7 +38,7 @@ data class LocalUser( val private_messages_enabled: Boolean, val collapse_bot_comments: Boolean, /** Added in 1.0.0 */ - val default_comment_sort_type: SortType, + val default_comment_sort_type: CommentSortType, /** Added in 1.0.0 */ val auto_mark_fetched_posts_as_read: Boolean, /** Added in 0.19.11 */ diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SaveUserSettings.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SaveUserSettings.kt index 3ba69b91..5e603680 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SaveUserSettings.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SaveUserSettings.kt @@ -2,6 +2,7 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot +import it.vercruysse.lemmyapi.enums.CommentSortType import it.vercruysse.lemmyapi.enums.ListingType import it.vercruysse.lemmyapi.enums.PostListingMode import it.vercruysse.lemmyapi.enums.SortType @@ -20,7 +21,8 @@ data class SaveUserSettings( val default_post_time_range_seconds: Long? = null, /** Added in 1.0.0 */ val default_items_per_page: Long? = null, - val default_comment_sort_type: SortType? /* "Hot" | "Top" | "New" | "Old" | "Controversial" */ = null, + /** Added in 1.0.0 */ + val default_comment_sort_type: CommentSortType? /* "Hot" | "Top" | "New" | "Old" | "Controversial" */ = null, val interface_language: String? = null, val display_name: String? = null, val email: String? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt index c6366a4d..e23d5a73 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt @@ -7,6 +7,7 @@ import it.vercruysse.lemmyapi.datatypes.Notification import it.vercruysse.lemmyapi.datatypes.NotificationView import it.vercruysse.lemmyapi.datatypes.PersonActions import it.vercruysse.lemmyapi.datatypes.PostActions +import it.vercruysse.lemmyapi.enums.CommentSortType import it.vercruysse.lemmyapi.enums.CommunityFollowerState import it.vercruysse.lemmyapi.enums.CommunityVisibility import it.vercruysse.lemmyapi.enums.FederationMode @@ -328,7 +329,7 @@ internal class Transformer(var auth: String) : MapperGenerator { show_upvote_percentage = d.show_scores, hide_media = false, private_messages_enabled = true, - default_comment_sort_type = SortType.Active, + default_comment_sort_type = CommentSortType.Hot, auto_mark_fetched_posts_as_read = false, default_post_time_range_seconds = 0, default_items_per_page = 20, @@ -483,7 +484,7 @@ internal class Transformer(var auth: String) : MapperGenerator { oauth_registration = false, email_notifications_disabled = false, suggested_multi_community_id = null, - default_comment_sort_type = SortType.Active, + default_comment_sort_type = CommentSortType.Hot, default_post_time_range_seconds = null, post_upvotes = FederationMode.All, post_downvotes = if (d.enable_downvotes) FederationMode.All else FederationMode.Disable, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt index 5b844ce5..114409a1 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt @@ -7,6 +7,7 @@ import it.vercruysse.lemmyapi.datatypes.Notification import it.vercruysse.lemmyapi.datatypes.NotificationView import it.vercruysse.lemmyapi.datatypes.PersonActions import it.vercruysse.lemmyapi.datatypes.PostActions +import it.vercruysse.lemmyapi.enums.CommentSortType import it.vercruysse.lemmyapi.enums.CommunityFollowerState import it.vercruysse.lemmyapi.enums.CommunityVisibility import it.vercruysse.lemmyapi.enums.FederationMode @@ -420,7 +421,7 @@ internal class Transformer : MapperGenerator { oauth_registration = false, email_notifications_disabled = false, suggested_multi_community_id = null, - default_comment_sort_type = SortType.Active, + default_comment_sort_type = CommentSortType.Hot, default_post_time_range_seconds = null, post_upvotes = FederationMode.All, post_downvotes = if (d.enable_downvotes) FederationMode.All else FederationMode.Disable, @@ -779,7 +780,7 @@ internal class Transformer : MapperGenerator { show_upvote_percentage = d.show_scores, show_downvotes = VoteShow.Show, hide_media = false, - default_comment_sort_type = SortType.Active, + default_comment_sort_type = CommentSortType.Hot, private_messages_enabled = true, auto_mark_fetched_posts_as_read = false, default_post_time_range_seconds = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt index 612b74bf..ae0afdde 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt @@ -7,12 +7,12 @@ import it.vercruysse.lemmyapi.datatypes.Notification import it.vercruysse.lemmyapi.datatypes.NotificationView import it.vercruysse.lemmyapi.datatypes.PersonActions import it.vercruysse.lemmyapi.datatypes.PostActions +import it.vercruysse.lemmyapi.enums.CommentSortType import it.vercruysse.lemmyapi.enums.CommunityFollowerState import it.vercruysse.lemmyapi.enums.CommunityVisibility import it.vercruysse.lemmyapi.enums.FederationMode import it.vercruysse.lemmyapi.enums.ImageMode import it.vercruysse.lemmyapi.enums.NotificationType -import it.vercruysse.lemmyapi.enums.SortType import it.vercruysse.lemmyapi.enums.VoteShow import it.vercruysse.lemmyapi.utils.toAt import it.vercruysse.lemmyapi.datatypes.AddAdmin as LemmyapiDatatypesAddAdmin @@ -727,7 +727,7 @@ internal class Transformer : MapperGenerator { oauth_registration = false, email_notifications_disabled = false, suggested_multi_community_id = null, - default_comment_sort_type = SortType.Active, + default_comment_sort_type = CommentSortType.Hot, default_post_time_range_seconds = null, post_upvotes = FederationMode.All, post_downvotes = if (d.enable_downvotes) FederationMode.All else FederationMode.Disable, @@ -811,7 +811,7 @@ internal class Transformer : MapperGenerator { show_upvote_percentage = e.upvote_percentage, show_downvotes = if (e.downvotes) VoteShow.Show else VoteShow.Hide, auto_mark_fetched_posts_as_read = false, - default_comment_sort_type = SortType.Active, + default_comment_sort_type = CommentSortType.Hot, private_messages_enabled = true, hide_media = false, default_post_time_range_seconds = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt index 200ecc6d..2087fe17 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt @@ -8,6 +8,7 @@ import it.vercruysse.lemmyapi.datatypes.Notification import it.vercruysse.lemmyapi.datatypes.NotificationView import it.vercruysse.lemmyapi.datatypes.PersonActions import it.vercruysse.lemmyapi.datatypes.PostActions +import it.vercruysse.lemmyapi.enums.CommentSortType import it.vercruysse.lemmyapi.enums.CommunityFollowerState import it.vercruysse.lemmyapi.enums.CommunityVisibility import it.vercruysse.lemmyapi.enums.FederationMode @@ -434,7 +435,7 @@ internal class Transformer : MapperGenerator { oauth_registration = false, email_notifications_disabled = false, suggested_multi_community_id = null, - default_comment_sort_type = SortType.Active, + default_comment_sort_type = CommentSortType.Hot, default_post_time_range_seconds = null, post_upvotes = FederationMode.All, post_downvotes = if (d.enable_downvotes) FederationMode.All else FederationMode.Disable, @@ -799,7 +800,7 @@ internal class Transformer : MapperGenerator { hide_media = false, show_downvotes = VoteShow.Show, private_messages_enabled = true, - default_comment_sort_type = SortType.Active, + default_comment_sort_type = CommentSortType.Hot, auto_mark_fetched_posts_as_read = false, default_post_time_range_seconds = null, default_items_per_page = 20, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt index f1bdcddb..bb30dc38 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt @@ -7,12 +7,12 @@ import it.vercruysse.lemmyapi.datatypes.Notification import it.vercruysse.lemmyapi.datatypes.NotificationView import it.vercruysse.lemmyapi.datatypes.PersonActions import it.vercruysse.lemmyapi.datatypes.PostActions +import it.vercruysse.lemmyapi.enums.CommentSortType import it.vercruysse.lemmyapi.enums.CommunityFollowerState import it.vercruysse.lemmyapi.enums.CommunityVisibility import it.vercruysse.lemmyapi.enums.FederationMode import it.vercruysse.lemmyapi.enums.ImageMode import it.vercruysse.lemmyapi.enums.NotificationType -import it.vercruysse.lemmyapi.enums.SortType import it.vercruysse.lemmyapi.enums.VoteShow import it.vercruysse.lemmyapi.utils.toAt import it.vercruysse.lemmyapi.datatypes.AddAdmin as LemmyapiDatatypesAddAdmin @@ -722,7 +722,7 @@ internal class Transformer : MapperGenerator { oauth_registration = false, email_notifications_disabled = false, suggested_multi_community_id = null, - default_comment_sort_type = SortType.Active, + default_comment_sort_type = CommentSortType.Hot, default_post_time_range_seconds = null, post_upvotes = FederationMode.All, post_downvotes = if (d.enable_downvotes) FederationMode.All else FederationMode.Disable, @@ -807,7 +807,7 @@ internal class Transformer : MapperGenerator { show_downvotes = if (e.downvotes) VoteShow.Show else VoteShow.Hide, hide_media = false, private_messages_enabled = true, - default_comment_sort_type = SortType.Active, + default_comment_sort_type = CommentSortType.Hot, auto_mark_fetched_posts_as_read = false, default_post_time_range_seconds = null, default_items_per_page = 20, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt index cae3b185..d4e8b713 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt @@ -7,12 +7,12 @@ import it.vercruysse.lemmyapi.datatypes.Notification import it.vercruysse.lemmyapi.datatypes.NotificationView import it.vercruysse.lemmyapi.datatypes.PersonActions import it.vercruysse.lemmyapi.datatypes.PostActions +import it.vercruysse.lemmyapi.enums.CommentSortType import it.vercruysse.lemmyapi.enums.CommunityFollowerState import it.vercruysse.lemmyapi.enums.CommunityVisibility import it.vercruysse.lemmyapi.enums.FederationMode import it.vercruysse.lemmyapi.enums.ImageMode import it.vercruysse.lemmyapi.enums.NotificationType -import it.vercruysse.lemmyapi.enums.SortType import it.vercruysse.lemmyapi.enums.VoteShow import it.vercruysse.lemmyapi.utils.toAt import it.vercruysse.lemmyapi.datatypes.AddAdmin as LemmyapiDatatypesAddAdmin @@ -726,7 +726,7 @@ internal class Transformer : MapperGenerator { oauth_registration = false, email_notifications_disabled = false, suggested_multi_community_id = null, - default_comment_sort_type = SortType.Active, + default_comment_sort_type = CommentSortType.Hot, default_post_time_range_seconds = null, post_upvotes = FederationMode.All, post_downvotes = if (d.enable_downvotes) FederationMode.All else FederationMode.Disable, @@ -811,7 +811,7 @@ internal class Transformer : MapperGenerator { show_downvotes = if (e.downvotes) VoteShow.Show else VoteShow.Hide, hide_media = false, private_messages_enabled = true, - default_comment_sort_type = SortType.Active, + default_comment_sort_type = CommentSortType.Hot, auto_mark_fetched_posts_as_read = false, default_post_time_range_seconds = null, default_items_per_page = 20, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateSite.kt index f8c37179..e7d0ba82 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateSite.kt @@ -1,5 +1,6 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes +import it.vercruysse.lemmyapi.enums.CommentSortType import it.vercruysse.lemmyapi.enums.FederationMode import it.vercruysse.lemmyapi.enums.ImageMode import it.vercruysse.lemmyapi.enums.ListingType @@ -23,7 +24,7 @@ internal data class CreateSite( val default_post_sort_type: SortType? /* "active" | "hot" | "new" | "old" | "top" | "most_comments" | "new_comments" | "controversial" | "scaled" */ = null, val default_post_time_range_seconds: Long? = null, val default_items_per_page: Long? = null, - val default_comment_sort_type: SortType? /* "hot" | "top" | "new" | "old" | "controversial" */ = null, + val default_comment_sort_type: CommentSortType? /* "hot" | "top" | "new" | "old" | "controversial" */ = null, val legal_information: String? = null, val application_email_admins: Boolean? = null, val discussion_languages: List? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditSite.kt index 4a3c6770..68de23ab 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditSite.kt @@ -1,5 +1,6 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes +import it.vercruysse.lemmyapi.enums.CommentSortType import it.vercruysse.lemmyapi.enums.FederationMode import it.vercruysse.lemmyapi.enums.ImageMode import it.vercruysse.lemmyapi.enums.ListingType @@ -23,7 +24,7 @@ internal data class EditSite( val default_post_sort_type: SortType? /* "active" | "hot" | "new" | "old" | "top" | "most_comments" | "new_comments" | "controversial" | "scaled" */ = null, val default_post_time_range_seconds: Long? = null, val default_items_per_page: Long? = null, - val default_comment_sort_type: SortType? /* "hot" | "top" | "new" | "old" | "controversial" */ = null, + val default_comment_sort_type: CommentSortType? /* "hot" | "top" | "new" | "old" | "controversial" */ = null, val legal_information: String? = null, val application_email_admins: Boolean? = null, val federation_signed_fetch: Boolean? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSite.kt index 680224a1..9d7e8aa6 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSite.kt @@ -1,5 +1,6 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes +import it.vercruysse.lemmyapi.enums.CommentSortType import it.vercruysse.lemmyapi.enums.FederationMode import it.vercruysse.lemmyapi.enums.ImageMode import it.vercruysse.lemmyapi.enums.ListingType @@ -30,7 +31,7 @@ internal data class LocalSite( val federation_signed_fetch: Boolean, val default_post_listing_mode: PostListingMode /* "list" | "card" | "small_card" */, val default_post_sort_type: SortType /* "active" | "hot" | "new" | "old" | "top" | "most_comments" | "new_comments" | "controversial" | "scaled" */, - val default_comment_sort_type: SortType /* "hot" | "top" | "new" | "old" | "controversial" */, + val default_comment_sort_type: CommentSortType /* "hot" | "top" | "new" | "old" | "controversial" */, val oauth_registration: Boolean, val post_upvotes: FederationMode /* "all" | "local" | "disable" */, val post_downvotes: FederationMode /* "all" | "local" | "disable" */, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUser.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUser.kt index 2bd68ada..57e2f888 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUser.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUser.kt @@ -1,5 +1,6 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes +import it.vercruysse.lemmyapi.enums.CommentSortType import it.vercruysse.lemmyapi.enums.ListingType import it.vercruysse.lemmyapi.enums.PostListingMode import it.vercruysse.lemmyapi.enums.SortType @@ -32,7 +33,7 @@ internal data class LocalUser( val collapse_bot_comments: Boolean, val last_donation_notification_at: String, val private_messages_enabled: Boolean, - val default_comment_sort_type: SortType /* "hot" | "top" | "new" | "old" | "controversial" */, + val default_comment_sort_type: CommentSortType /* "hot" | "top" | "new" | "old" | "controversial" */, val auto_mark_fetched_posts_as_read: Boolean, val hide_media: Boolean, val default_post_time_range_seconds: Long? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SaveUserSettings.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SaveUserSettings.kt index 8e9f0fbc..01dcabfd 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SaveUserSettings.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SaveUserSettings.kt @@ -1,5 +1,6 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes +import it.vercruysse.lemmyapi.enums.CommentSortType import it.vercruysse.lemmyapi.enums.ListingType import it.vercruysse.lemmyapi.enums.PostListingMode import it.vercruysse.lemmyapi.enums.SortType @@ -16,7 +17,7 @@ internal data class SaveUserSettings( val default_post_sort_type: SortType? /* "active" | "hot" | "new" | "old" | "top" | "most_comments" | "new_comments" | "controversial" | "scaled" */ = null, val default_post_time_range_seconds: Long? = null, val default_items_per_page: Long? = null, - val default_comment_sort_type: SortType? /* "hot" | "top" | "new" | "old" | "controversial" */ = null, + val default_comment_sort_type: CommentSortType? /* "hot" | "top" | "new" | "old" | "controversial" */ = null, val interface_language: String? = null, val display_name: String? = null, val email: SensitiveString? = null, diff --git a/gradle.properties b/gradle.properties index e4685839..ac269d77 100644 --- a/gradle.properties +++ b/gradle.properties @@ -22,5 +22,5 @@ POM_DEVELOPER_URL=https://github.com/MV-GH POM_ARTIFACT_ID=lemmy-api GROUP=it.vercruysse.lemmyapi -VERSION_NAME=0.5.0-alpha.5 +VERSION_NAME=0.5.0-alpha.6 From f54921121b9e6ba0def7f007f6a72a7b4b98a7dc Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Wed, 8 Jul 2026 22:12:38 +0200 Subject: [PATCH 106/110] Update types to 1.0.0-beta.1 --- .../main/kotlin/autogenscripts/GenTypes.kt | 6 ++--- .../lemmyapi/datatypes/CommentReportView.kt | 2 ++ .../lemmyapi/datatypes/Community.kt | 2 +- .../lemmyapi/datatypes/CommunityReport.kt | 2 +- .../lemmyapi/datatypes/CreateCommunity.kt | 3 +++ .../lemmyapi/datatypes/CreateSite.kt | 4 +++- .../vercruysse/lemmyapi/datatypes/EditSite.kt | 4 +++- .../lemmyapi/datatypes/GetPostResponse.kt | 1 - .../vercruysse/lemmyapi/datatypes/GetPosts.kt | 4 +++- .../lemmyapi/datatypes/ListPersonSaved.kt | 2 ++ .../lemmyapi/datatypes/ListReports.kt | 3 +++ .../lemmyapi/datatypes/LocalSite.kt | 4 +++- .../lemmyapi/datatypes/LocalUser.kt | 6 ++++- .../vercruysse/lemmyapi/datatypes/Modlog.kt | 2 ++ .../lemmyapi/datatypes/PostReportView.kt | 2 ++ .../vercruysse/lemmyapi/datatypes/Register.kt | 2 ++ .../lemmyapi/datatypes/SaveUserSettings.kt | 4 +++- .../lemmyapi/enums/RegistrationMode.kt | 4 ++++ .../lemmyapi/enums/ReportSortType.kt | 18 +++++++++++++++ .../lemmyapi/v0/enums/RegistrationMode.kt | 1 + .../lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt | 1 + .../lemmyapi/v0/x18/x5/Transformer.kt | 4 +++- .../lemmyapi/v0/x19/x0/Transformer.kt | 4 +++- .../lemmyapi/v0/x19/x11/Transformer.kt | 4 +++- .../lemmyapi/v0/x19/x3/Transformer.kt | 4 +++- .../lemmyapi/v0/x19/x4/Transformer.kt | 4 +++- .../lemmyapi/v0/x19/x6/Transformer.kt | 4 +++- .../lemmyapi/v1/x0/x0/Transformer.kt | 22 ++++++++++++++----- .../v1/x0/x0/datatypes/CommentReportView.kt | 1 + .../lemmyapi/v1/x0/x0/datatypes/Community.kt | 2 +- .../v1/x0/x0/datatypes/CommunityReport.kt | 2 +- .../v1/x0/x0/datatypes/CreateCommunity.kt | 4 +--- .../lemmyapi/v1/x0/x0/datatypes/CreateSite.kt | 3 ++- .../lemmyapi/v1/x0/x0/datatypes/EditSite.kt | 3 ++- .../v1/x0/x0/datatypes/GetPostResponse.kt | 1 + .../lemmyapi/v1/x0/x0/datatypes/GetPosts.kt | 3 ++- .../v1/x0/x0/datatypes/ListPersonSaved.kt | 1 + .../v1/x0/x0/datatypes/ListReports.kt | 2 ++ .../lemmyapi/v1/x0/x0/datatypes/LocalSite.kt | 3 ++- .../lemmyapi/v1/x0/x0/datatypes/LocalUser.kt | 4 +++- .../lemmyapi/v1/x0/x0/datatypes/Modlog.kt | 1 + .../v1/x0/x0/datatypes/PostReportView.kt | 1 + .../lemmyapi/v1/x0/x0/datatypes/Register.kt | 1 + .../v1/x0/x0/datatypes/SaveUserSettings.kt | 3 ++- 44 files changed, 124 insertions(+), 34 deletions(-) create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/ReportSortType.kt diff --git a/GeneratorScripts/src/main/kotlin/autogenscripts/GenTypes.kt b/GeneratorScripts/src/main/kotlin/autogenscripts/GenTypes.kt index d1360783..031662c9 100644 --- a/GeneratorScripts/src/main/kotlin/autogenscripts/GenTypes.kt +++ b/GeneratorScripts/src/main/kotlin/autogenscripts/GenTypes.kt @@ -56,7 +56,7 @@ val fileFieldEnumOverrides = mapOf( "ListPersonSaved" to mapOf("type_" to "PersonContentType"), "ListPersonLiked" to mapOf("type_" to "PersonContentType"), "ListNotifications" to mapOf("type_" to "NotificationDataType"), - "ListReports" to mapOf("type_" to "ReportType"), + "ListReports" to mapOf("type_" to "ReportType", "sort" to "ReportSortType"), "Search" to mapOf("type_" to "SearchType"), "SearchResponse" to mapOf("type_" to "SearchType"), "GetModlog" to mapOf("type_" to "ModlogActionType"), @@ -331,7 +331,7 @@ fun downloadTypes( } fun main() { - // Future version 1.0.0-beta.0 - downloadTypes("1.0.0-beta.0", "v1/x0/x0") + // Future version 1.0.0-beta.1 + downloadTypes("1.0.0-beta.1", "v1/x0/x0") exitProcess(0) } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReportView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReportView.kt index 764303a1..875220ab 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReportView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommentReportView.kt @@ -26,6 +26,8 @@ data class CommentReportView( val creator_ban_expires_at: String? = null, val creator_banned_from_community: Boolean, val creator_community_ban_expires_at: String? = null, + /** Added in 1.0.0 */ + val tags: CommunityTagsView = emptyList(), ) : DatatypeRoot, Identity, ReportCombinedView { override val id: Long get() = comment_report.id diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Community.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Community.kt index 6fa8114b..129edeed 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Community.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Community.kt @@ -11,7 +11,7 @@ import kotlinx.serialization.Serializable data class Community( override val id: CommunityId, val name: String, - val title: String, + val title: String? = null, val sidebar: String? = null, val removed: Boolean, val published_at: String, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityReport.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityReport.kt index dd0922bd..f2fad25d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityReport.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CommunityReport.kt @@ -12,7 +12,7 @@ data class CommunityReport( val creator_id: PersonId, val community_id: CommunityId, val original_community_name: String, - val original_community_title: String, + val original_community_title: String? = null, val original_community_summary: String? = null, val original_community_sidebar: String? = null, val original_community_icon: String? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommunity.kt index dfc36b79..9bb287ed 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommunity.kt @@ -7,12 +7,15 @@ import kotlinx.serialization.Serializable @CommonParcelize @Serializable +// TODO: remove icon & banner data class CreateCommunity( val name: String, val title: String, val sidebar: String? = null, val summary: String? = null, + /** Removed in 1.0.0 */ val icon: String? = null, + /** Removed in 1.0.0 */ val banner: String? = null, val nsfw: Boolean? = null, val posting_restricted_to_mods: Boolean? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateSite.kt index 43bfc5eb..a2151452 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateSite.kt @@ -63,7 +63,7 @@ data class CreateSite( val blocked_instances: List? = null, /** Removed in 1.0.0 */ val taglines: List? = null, - val registration_mode: RegistrationMode? /* "Closed" | "RequireApplication" | "Open" */ = null, + val registration_mode: RegistrationMode? /* "Closed" | "RequireApplication" | "RequireInvitation" | "Open" */ = null, /** Added in 1.0.0 */ val oauth_registration: Boolean? = null, val content_warning: String? = null, @@ -94,4 +94,6 @@ data class CreateSite( val image_allow_video_uploads: Boolean? = null, /** Added in 1.0.0 */ val image_upload_disabled: Boolean? = null, + /** Added in 1.0.0 */ + val max_invites_per_user_allowed: Long? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt index 8dd8ae10..2940f8ea 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/EditSite.kt @@ -68,7 +68,7 @@ data class EditSite( val blocked_urls: List? = null, /** Removed in 1.0.0 */ val taglines: List? = null, - val registration_mode: RegistrationMode? /* "Closed" | "RequireApplication" | "Open" */ = null, + val registration_mode: RegistrationMode? /* "Closed" | "RequireApplication" | "RequireInvitation" | "Open" */ = null, val reports_email_admins: Boolean? = null, val content_warning: String? = null, /** Added in 1.0.0 */ @@ -105,4 +105,6 @@ data class EditSite( val image_allow_video_uploads: Boolean? = null, /** Added in 1.0.0 */ val image_upload_disabled: Boolean? = null, + /** Added in 1.0.0 */ + val max_invites_per_user_allowed: Long? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPostResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPostResponse.kt index 24d423eb..713cf183 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPostResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPostResponse.kt @@ -9,7 +9,6 @@ import kotlinx.serialization.Serializable data class GetPostResponse( val post_view: PostView, val community_view: CommunityView, - /** Removed in Lemmy 1.0.0 */ val moderators: List = emptyList(), val cross_posts: List, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPosts.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPosts.kt index 480619f8..fded51f3 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPosts.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/GetPosts.kt @@ -30,7 +30,7 @@ data class GetPosts( /** Added in 0.19.6 */ val show_nsfw: Boolean? = null, /** Added in 1.0.0 */ - val hide_media: Boolean? = null, + val hide_posts_with_media: Boolean? = null, /** Added in 1.0.0 */ val mark_as_read: Boolean? = null, /** Added in 1.0.0 */ @@ -41,6 +41,8 @@ data class GetPosts( val search_title_only: Boolean? = null, /** Added in 1.0.0 */ val search_url_only: Boolean? = null, + /** Added in 1.0.0 */ + val tag_id: CommunityTagId? = null, /** The page cursor to the next list, null is valid and considered first list */ val page_cursor: PaginationCursor? = PAGE_CURSOR_GUARD, // Guard is used to detect when null is set /** starts from 1, null is considered not set, deprecated 0.19+, set to support 0.18, removed in 1.0.0 */ diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonSaved.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonSaved.kt index 610e5817..f9ab9a44 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonSaved.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListPersonSaved.kt @@ -9,6 +9,8 @@ import kotlinx.serialization.Serializable @Serializable data class ListPersonSaved( val type_: PersonContentType? /* "All" | "Comments" | "Posts" */ = null, + /** Added in 1.0.0 */ + val search_term: String? = null, val page_cursor: PaginationCursor? = null, val limit: Long? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListReports.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListReports.kt index 5bbf7f5a..56635832 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListReports.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListReports.kt @@ -2,6 +2,7 @@ package it.vercruysse.lemmyapi.datatypes import it.vercruysse.lemmyapi.CommonParcelize import it.vercruysse.lemmyapi.DatatypeRoot +import it.vercruysse.lemmyapi.enums.ReportSortType import it.vercruysse.lemmyapi.enums.ReportType import kotlinx.serialization.Serializable @@ -18,6 +19,8 @@ data class ListReports( val page_cursor: PaginationCursor? = null, val limit: Long? = null, /** Added in 1.0.0 */ + val sort: ReportSortType? = null, + /** Added in 1.0.0 */ val show_community_rule_violations: Boolean? = null, /** Added in 1.0.0 */ val my_reports_only: Boolean? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalSite.kt index 06fac289..a57e3b8e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalSite.kt @@ -30,7 +30,7 @@ data class LocalSite( val federation_enabled: Boolean, val published_at: String, val updated_at: String? = null, - val registration_mode: RegistrationMode /* "Closed" | "RequireApplication" | "Open" */, + val registration_mode: RegistrationMode /* "Closed" | "RequireApplication" | "RequireInvitation" | "Open" */, val reports_email_admins: Boolean, val federation_signed_fetch: Boolean, val default_post_listing_mode: PostListingMode /* "List" | "Card" | "SmallCard" */, @@ -63,4 +63,6 @@ data class LocalSite( val image_max_upload_size: Long, val image_allow_video_uploads: Boolean, val image_upload_disabled: Boolean, + /** Added in 1.0.0 */ + val max_invites_per_user_allowed: Long, ) : DatatypeRoot, Identity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUser.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUser.kt index 98e54c1c..c8d1ca04 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUser.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUser.kt @@ -44,7 +44,7 @@ data class LocalUser( /** Added in 0.19.11 */ val last_donation_notification_at: String, /** Added in 1.0.0 */ - val hide_media: Boolean, + val hide_posts_with_media: Boolean? = null, /** Added in 1.0.0 */ val default_post_time_range_seconds: Long? = null, val show_score: Boolean, @@ -55,4 +55,8 @@ data class LocalUser( val show_person_votes: Boolean, /** Added in 1.0.0 */ val default_items_per_page: Long, + /** Added in 1.0.0 */ + val invited_by_local_user_id: LocalUserId? = null, + /** Added in 1.0.0 */ + val show_media: Boolean, ) : DatatypeRoot, Identity diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Modlog.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Modlog.kt index b1b74131..bd5779f8 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Modlog.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Modlog.kt @@ -15,4 +15,6 @@ data class Modlog( val expires_at: String? = null, val published_at: String, val bulk_action_parent_id: ModlogId? = null, + /** Added in 1.0.0 */ + val child_count: Long? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostReportView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostReportView.kt index fae82802..ec84e2c3 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostReportView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/PostReportView.kt @@ -24,4 +24,6 @@ data class PostReportView( val creator_ban_expires_at: String? = null, val creator_banned_from_community: Boolean, val creator_community_ban_expires_at: String? = null, + /** Added in 1.0.0 */ + val tags: CommunityTagsView = emptyList(), ) : DatatypeRoot, ReportCombinedView diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Register.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Register.kt index 8927d951..bc077533 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Register.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/Register.kt @@ -18,4 +18,6 @@ data class Register( val answer: String? = null, /** Added in 1.0.0 */ val stay_logged_in: Boolean? = null, + /** Added in 1.0.0 */ + val token: String? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SaveUserSettings.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SaveUserSettings.kt index 5e603680..faee9e4f 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SaveUserSettings.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/SaveUserSettings.kt @@ -29,6 +29,8 @@ data class SaveUserSettings( val bio: String? = null, val matrix_user_id: String? = null, val show_avatars: Boolean? = null, + /** Added in 1.0.0 */ + val show_media: Boolean? = null, val send_notifications_to_email: Boolean? = null, val bot_account: Boolean? = null, val show_bot_accounts: Boolean? = null, @@ -48,7 +50,7 @@ data class SaveUserSettings( /** Added in 1.0.0 */ val auto_mark_fetched_posts_as_read: Boolean? = null, /** Added in 1.0.0 */ - val hide_media: Boolean? = null, + val hide_posts_with_media: Boolean? = null, /** Added in 1.0.0 */ val show_person_votes: Boolean? = null, ) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/RegistrationMode.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/RegistrationMode.kt index e8b430f7..cb8faa5a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/RegistrationMode.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/RegistrationMode.kt @@ -2,6 +2,7 @@ package it.vercruysse.lemmyapi.enums import io.github.z4kn4fein.semver.Version import it.vercruysse.lemmyapi.MINIMUM_API_VERSION +import it.vercruysse.lemmyapi.V1_0_0 import kotlinx.serialization.SerialName import kotlinx.serialization.Serializable @@ -14,6 +15,9 @@ enum class RegistrationMode(override val minimumVersion: Version = MINIMUM_API_V @SerialName("require_application") RequireApplication, + @SerialName("require_invitation") + RequireInvitation(V1_0_0), + @SerialName("open") Open, } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/ReportSortType.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/ReportSortType.kt new file mode 100644 index 00000000..7f4354bc --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/enums/ReportSortType.kt @@ -0,0 +1,18 @@ +package it.vercruysse.lemmyapi.enums + +import io.github.z4kn4fein.semver.Version +import it.vercruysse.lemmyapi.V1_0_0 +import kotlinx.serialization.SerialName +import kotlinx.serialization.Serializable + +@Serializable +enum class ReportSortType(override val minimumVersion: Version = V1_0_0, override val maximumVersion: Version? = null) : VersionTracker { + @SerialName("default") + Default, + + @SerialName("new") + New, + + @SerialName("old") + Old, +} diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/RegistrationMode.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/RegistrationMode.kt index 247e1b19..f5c84220 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/RegistrationMode.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/RegistrationMode.kt @@ -23,6 +23,7 @@ internal enum class RegistrationMode { null -> null UniRegistrationMode.Closed -> Closed UniRegistrationMode.RequireApplication -> RequireApplication + UniRegistrationMode.RequireInvitation -> null // Not supported before 1.0.0 UniRegistrationMode.Open -> Open } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt index 839753c4..969ceace 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt @@ -38,6 +38,7 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba pictrsApi.auth = value } + // TODO to super private suspend fun uploadAndApplyImage( image: ByteArray, applyImage: suspend (String) -> Result, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt index e23d5a73..6f5d8e64 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt @@ -327,7 +327,8 @@ internal class Transformer(var auth: String) : MapperGenerator { show_downvotes = VoteShow.Show, show_person_votes = d.show_scores, show_upvote_percentage = d.show_scores, - hide_media = false, + hide_posts_with_media = false, + show_media = true, private_messages_enabled = true, default_comment_sort_type = CommentSortType.Hot, auto_mark_fetched_posts_as_read = false, @@ -507,6 +508,7 @@ internal class Transformer(var auth: String) : MapperGenerator { image_max_upload_size = 0, image_allow_video_uploads = false, image_upload_disabled = false, + max_invites_per_user_allowed = 0, ) override fun toUni(d: X5DatatypesPersonView, is_admin: Boolean): LemmyapiDatatypesPersonView = diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt index 114409a1..580f9954 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt @@ -444,6 +444,7 @@ internal class Transformer : MapperGenerator { image_max_upload_size = 0, image_allow_video_uploads = false, image_upload_disabled = false, + max_invites_per_user_allowed = 0, ) override fun toUni(d: X0DatatypesPostReportView): LemmyapiDatatypesPostReportView = @@ -779,7 +780,8 @@ internal class Transformer : MapperGenerator { show_person_votes = d.show_scores, show_upvote_percentage = d.show_scores, show_downvotes = VoteShow.Show, - hide_media = false, + hide_posts_with_media = false, + show_media = true, default_comment_sort_type = CommentSortType.Hot, private_messages_enabled = true, auto_mark_fetched_posts_as_read = false, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt index ae0afdde..039f09cd 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt @@ -750,6 +750,7 @@ internal class Transformer : MapperGenerator { image_max_upload_size = 0, image_allow_video_uploads = false, image_upload_disabled = false, + max_invites_per_user_allowed = 0, ) override fun toUni(d: X11DatatypesLocalSiteRateLimit): LemmyapiDatatypesLocalSiteRateLimit = @@ -813,7 +814,8 @@ internal class Transformer : MapperGenerator { auto_mark_fetched_posts_as_read = false, default_comment_sort_type = CommentSortType.Hot, private_messages_enabled = true, - hide_media = false, + hide_posts_with_media = false, + show_media = true, default_post_time_range_seconds = null, default_items_per_page = 20, totp_2fa_enabled = d.totp_2fa_enabled, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt index 2087fe17..da9daed6 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt @@ -458,6 +458,7 @@ internal class Transformer : MapperGenerator { image_max_upload_size = 0, image_allow_video_uploads = false, image_upload_disabled = false, + max_invites_per_user_allowed = 0, ) override fun toUni(d: X3DatatypesPostReportView): LemmyapiDatatypesPostReportView = @@ -797,7 +798,8 @@ internal class Transformer : MapperGenerator { show_upvotes = d.show_scores, show_person_votes = d.show_scores, show_upvote_percentage = d.show_scores, - hide_media = false, + hide_posts_with_media = false, + show_media = true, show_downvotes = VoteShow.Show, private_messages_enabled = true, default_comment_sort_type = CommentSortType.Hot, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt index bb30dc38..6e791363 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt @@ -745,6 +745,7 @@ internal class Transformer : MapperGenerator { image_max_upload_size = 0, image_allow_video_uploads = false, image_upload_disabled = false, + max_invites_per_user_allowed = 0, ) override fun toUni(d: X4DatatypesLocalSiteRateLimit): LemmyapiDatatypesLocalSiteRateLimit = @@ -805,7 +806,8 @@ internal class Transformer : MapperGenerator { show_person_votes = e.score, show_upvote_percentage = e.upvote_percentage, show_downvotes = if (e.downvotes) VoteShow.Show else VoteShow.Hide, - hide_media = false, + hide_posts_with_media = false, + show_media = true, private_messages_enabled = true, default_comment_sort_type = CommentSortType.Hot, auto_mark_fetched_posts_as_read = false, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt index d4e8b713..0c13084a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt @@ -749,6 +749,7 @@ internal class Transformer : MapperGenerator { image_max_upload_size = 0, image_allow_video_uploads = false, image_upload_disabled = false, + max_invites_per_user_allowed = 0, ) override fun toUni(d: X6DatatypesLocalSiteRateLimit): LemmyapiDatatypesLocalSiteRateLimit = @@ -809,7 +810,8 @@ internal class Transformer : MapperGenerator { show_person_votes = e.score, show_upvote_percentage = e.upvote_percentage, show_downvotes = if (e.downvotes) VoteShow.Show else VoteShow.Hide, - hide_media = false, + hide_posts_with_media = false, + show_media = true, private_messages_enabled = true, default_comment_sort_type = CommentSortType.Hot, auto_mark_fetched_posts_as_read = false, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/Transformer.kt index a2399b42..af25c9d5 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/Transformer.kt @@ -610,6 +610,7 @@ internal class Transformer : MapperGenerator { creator_ban_expires_at = d.creator_ban_expires_at, creator_banned_from_community = d.creator_banned_from_community, creator_community_ban_expires_at = d.creator_community_ban_expires_at, + tags = d.tags.map { this.toUni(d = it) }, ) override fun toUni(d: X0DatatypesCommentResponse): LemmyapiDatatypesCommentResponse = LemmyapiDatatypesCommentResponse( @@ -855,6 +856,7 @@ internal class Transformer : MapperGenerator { override fun toUni(d: X0DatatypesGetPostResponse): LemmyapiDatatypesGetPostResponse = LemmyapiDatatypesGetPostResponse( post_view = this.toUni(d = d.post_view), community_view = this.toUni(d = d.community_view), + moderators = d.moderators.map { this.toUni(d = it) }, cross_posts = d.cross_posts.map { this.toUni(d = it) }, ) @@ -1000,6 +1002,7 @@ internal class Transformer : MapperGenerator { image_max_upload_size = d.image_max_upload_size, image_allow_video_uploads = d.image_allow_video_uploads, image_upload_disabled = d.image_upload_disabled, + max_invites_per_user_allowed = d.max_invites_per_user_allowed, ) override fun toUni(d: X0DatatypesLocalSiteRateLimit): LemmyapiDatatypesLocalSiteRateLimit = LemmyapiDatatypesLocalSiteRateLimit( @@ -1056,7 +1059,7 @@ internal class Transformer : MapperGenerator { default_comment_sort_type = d.default_comment_sort_type, auto_mark_fetched_posts_as_read = d.auto_mark_fetched_posts_as_read, last_donation_notification_at = d.last_donation_notification_at, - hide_media = d.hide_media, + hide_posts_with_media = d.hide_posts_with_media, default_post_time_range_seconds = d.default_post_time_range_seconds, show_score = d.show_score, show_upvotes = d.show_upvotes, @@ -1064,6 +1067,8 @@ internal class Transformer : MapperGenerator { show_upvote_percentage = d.show_upvote_percentage, show_person_votes = d.show_person_votes, default_items_per_page = d.default_items_per_page, + invited_by_local_user_id = d.invited_by_local_user_id, + show_media = d.show_media, ) override fun toUni(d: X0DatatypesLocalUserView): LemmyapiDatatypesLocalUserView = LemmyapiDatatypesLocalUserView( @@ -1100,6 +1105,7 @@ internal class Transformer : MapperGenerator { expires_at = d.expires_at, published_at = d.published_at, bulk_action_parent_id = d.bulk_action_parent_id, + child_count = d.child_count, ) override fun toUni(d: X0DatatypesModlogView): LemmyapiDatatypesModlogView = LemmyapiDatatypesModlogView( @@ -1346,6 +1352,7 @@ internal class Transformer : MapperGenerator { creator_ban_expires_at = d.creator_ban_expires_at, creator_banned_from_community = d.creator_banned_from_community, creator_community_ban_expires_at = d.creator_community_ban_expires_at, + tags = d.tags.map { this.toUni(d = it) }, ) override fun toUni(d: X0DatatypesPostResponse): LemmyapiDatatypesPostResponse = LemmyapiDatatypesPostResponse( @@ -1676,8 +1683,6 @@ internal class Transformer : MapperGenerator { title = d.title, sidebar = d.sidebar, summary = d.summary, - icon = d.icon, - banner = d.banner, nsfw = d.nsfw, posting_restricted_to_mods = d.posting_restricted_to_mods, discussion_languages = d.discussion_languages, @@ -1828,6 +1833,7 @@ internal class Transformer : MapperGenerator { image_max_upload_size = d.image_max_upload_size, image_allow_video_uploads = d.image_allow_video_uploads, image_upload_disabled = d.image_upload_disabled, + max_invites_per_user_allowed = d.max_invites_per_user_allowed, ) override fun fromUni(d: LemmyapiDatatypesCreateTagline): X0DatatypesCreateTagline = X0DatatypesCreateTagline( @@ -2025,6 +2031,7 @@ internal class Transformer : MapperGenerator { image_max_upload_size = d.image_max_upload_size, image_allow_video_uploads = d.image_allow_video_uploads, image_upload_disabled = d.image_upload_disabled, + max_invites_per_user_allowed = d.max_invites_per_user_allowed, ) override fun fromUni(d: LemmyapiDatatypesEditTagline): X0DatatypesEditTagline = X0DatatypesEditTagline( @@ -2127,12 +2134,13 @@ internal class Transformer : MapperGenerator { show_hidden = d.show_hidden, show_read = d.show_read, show_nsfw = d.show_nsfw, - hide_media = d.hide_media, + hide_posts_with_media = d.hide_posts_with_media, mark_as_read = d.mark_as_read, no_comments_only = d.no_comments_only, search_term = d.search_term, search_title_only = d.search_title_only, search_url_only = d.search_url_only, + tag_id = d.tag_id, page_cursor = d.page_cursor, limit = d.limit, ) @@ -2252,6 +2260,7 @@ internal class Transformer : MapperGenerator { override fun fromUni(d: LemmyapiDatatypesListPersonSaved): X0DatatypesListPersonSaved = X0DatatypesListPersonSaved( type_ = d.type_, + search_term = d.search_term, page_cursor = d.page_cursor, limit = d.limit, ) @@ -2273,6 +2282,7 @@ internal class Transformer : MapperGenerator { type_ = d.type_, post_id = d.post_id, community_id = d.community_id, + sort = d.sort, page_cursor = d.page_cursor, limit = d.limit, show_community_rule_violations = d.show_community_rule_violations, @@ -2370,6 +2380,7 @@ internal class Transformer : MapperGenerator { honeypot = d.honeypot, answer = d.answer, stay_logged_in = d.stay_logged_in, + token = d.token, ) override fun fromUni(d: LemmyapiDatatypesRemoveComment): X0DatatypesRemoveComment = X0DatatypesRemoveComment( @@ -2446,6 +2457,7 @@ internal class Transformer : MapperGenerator { bio = d.bio, matrix_user_id = d.matrix_user_id, show_avatars = d.show_avatars, + show_media = d.show_media, send_notifications_to_email = d.send_notifications_to_email, bot_account = d.bot_account, show_bot_accounts = d.show_bot_accounts, @@ -2462,7 +2474,7 @@ internal class Transformer : MapperGenerator { show_downvotes = d.show_downvotes, show_upvote_percentage = d.show_upvote_percentage, auto_mark_fetched_posts_as_read = d.auto_mark_fetched_posts_as_read, - hide_media = d.hide_media, + hide_posts_with_media = d.hide_posts_with_media, show_person_votes = d.show_person_votes, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReportView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReportView.kt index c0e3a1ef..6ce93a45 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReportView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommentReportView.kt @@ -22,4 +22,5 @@ internal data class CommentReportView( val creator_ban_expires_at: String? = null, val creator_banned_from_community: Boolean, val creator_community_ban_expires_at: String? = null, + val tags: CommunityTagsView, ) : ReportCombinedView diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Community.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Community.kt index 36ddfcdb..0a84f432 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Community.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Community.kt @@ -7,7 +7,7 @@ import kotlinx.serialization.Serializable internal data class Community( val id: CommunityId, val name: String, - val title: String, + val title: String? = null, val sidebar: String? = null, val removed: Boolean, val published_at: String, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityReport.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityReport.kt index 4f46e928..7217e2ab 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityReport.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CommunityReport.kt @@ -8,7 +8,7 @@ internal data class CommunityReport( val creator_id: PersonId, val community_id: CommunityId, val original_community_name: String, - val original_community_title: String, + val original_community_title: String? = null, val original_community_summary: String? = null, val original_community_sidebar: String? = null, val original_community_icon: String? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCommunity.kt index e78370c5..bff17aa7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateCommunity.kt @@ -6,11 +6,9 @@ import kotlinx.serialization.Serializable @Serializable internal data class CreateCommunity( val name: String, - val title: String, + val title: String? = null, val sidebar: String? = null, val summary: String? = null, - val icon: String? = null, - val banner: String? = null, val nsfw: Boolean? = null, val posting_restricted_to_mods: Boolean? = null, val discussion_languages: List? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateSite.kt index e7d0ba82..b996d9bd 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateSite.kt @@ -44,7 +44,7 @@ internal data class CreateSite( val rate_limit_import_user_settings_max_requests: Long? = null, val rate_limit_import_user_settings_interval_seconds: Long? = null, val federation_enabled: Boolean? = null, - val registration_mode: RegistrationMode? /* "closed" | "require_application" | "open" */ = null, + val registration_mode: RegistrationMode? /* "closed" | "require_application" | "require_invitation" | "open" */ = null, val oauth_registration: Boolean? = null, val content_warning: String? = null, val reports_email_admins: Boolean? = null, @@ -65,4 +65,5 @@ internal data class CreateSite( val image_max_upload_size: Long? = null, val image_allow_video_uploads: Boolean? = null, val image_upload_disabled: Boolean? = null, + val max_invites_per_user_allowed: Long? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditSite.kt index 68de23ab..f5fcb414 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/EditSite.kt @@ -46,7 +46,7 @@ internal data class EditSite( val rate_limit_import_user_settings_interval_seconds: Long? = null, val federation_enabled: Boolean? = null, val blocked_urls: List? = null, - val registration_mode: RegistrationMode? /* "closed" | "require_application" | "open" */ = null, + val registration_mode: RegistrationMode? /* "closed" | "require_application" | "require_invitation" | "open" */ = null, val reports_email_admins: Boolean? = null, val content_warning: String? = null, val oauth_registration: Boolean? = null, @@ -66,4 +66,5 @@ internal data class EditSite( val image_max_upload_size: Long? = null, val image_allow_video_uploads: Boolean? = null, val image_upload_disabled: Boolean? = null, + val max_invites_per_user_allowed: Long? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetPostResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetPostResponse.kt index 07f153bf..7411701a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetPostResponse.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetPostResponse.kt @@ -7,4 +7,5 @@ internal data class GetPostResponse( val post_view: PostView, val community_view: CommunityView, val cross_posts: List, + val moderators: List, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetPosts.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetPosts.kt index f8c7f2bd..fa609dbd 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetPosts.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/GetPosts.kt @@ -18,12 +18,13 @@ internal data class GetPosts( val show_hidden: Boolean? = null, val show_read: Boolean? = null, val show_nsfw: Boolean? = null, - val hide_media: Boolean? = null, + val hide_posts_with_media: Boolean? = null, val mark_as_read: Boolean? = null, val no_comments_only: Boolean? = null, val search_term: String? = null, val search_title_only: Boolean? = null, val search_url_only: Boolean? = null, + val tag_id: CommunityTagId? = null, val page_cursor: PaginationCursor? = null, val limit: Long? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonSaved.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonSaved.kt index 81df1018..bcbaff03 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonSaved.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListPersonSaved.kt @@ -6,6 +6,7 @@ import kotlinx.serialization.Serializable @Serializable internal data class ListPersonSaved( val type_: PersonContentType? /* "all" | "comments" | "posts" */ = null, + val search_term: String? = null, val page_cursor: PaginationCursor? = null, val limit: Long? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListReports.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListReports.kt index 30ae94db..8160bcac 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListReports.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListReports.kt @@ -1,5 +1,6 @@ package it.vercruysse.lemmyapi.v1.x0.x0.datatypes +import it.vercruysse.lemmyapi.enums.ReportSortType import it.vercruysse.lemmyapi.enums.ReportType import kotlinx.serialization.Serializable @@ -9,6 +10,7 @@ internal data class ListReports( val type_: ReportType? /* "all" | "posts" | "comments" | "private_messages" | "communities" */ = null, val post_id: PostId? = null, val community_id: CommunityId? = null, + val sort: ReportSortType? /* "default" | "new" | "old" */ = null, val page_cursor: PaginationCursor? = null, val limit: Long? = null, val show_community_rule_violations: Boolean? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSite.kt index 9d7e8aa6..c78f7c76 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSite.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalSite.kt @@ -26,7 +26,7 @@ internal data class LocalSite( val federation_enabled: Boolean, val published_at: String, val updated_at: String? = null, - val registration_mode: RegistrationMode /* "closed" | "require_application" | "open" */, + val registration_mode: RegistrationMode /* "closed" | "require_application" | "require_invitation" | "open" */, val reports_email_admins: Boolean, val federation_signed_fetch: Boolean, val default_post_listing_mode: PostListingMode /* "list" | "card" | "small_card" */, @@ -59,4 +59,5 @@ internal data class LocalSite( val image_max_upload_size: Long, val image_allow_video_uploads: Boolean, val image_upload_disabled: Boolean, + val max_invites_per_user_allowed: Long, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUser.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUser.kt index 57e2f888..2c5db4e1 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUser.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUser.kt @@ -35,7 +35,7 @@ internal data class LocalUser( val private_messages_enabled: Boolean, val default_comment_sort_type: CommentSortType /* "hot" | "top" | "new" | "old" | "controversial" */, val auto_mark_fetched_posts_as_read: Boolean, - val hide_media: Boolean, + val hide_posts_with_media: Boolean, val default_post_time_range_seconds: Long? = null, val show_score: Boolean, val show_upvotes: Boolean, @@ -43,4 +43,6 @@ internal data class LocalUser( val show_upvote_percentage: Boolean, val show_person_votes: Boolean, val default_items_per_page: Long, + val invited_by_local_user_id: LocalUserId? = null, + val show_media: Boolean, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Modlog.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Modlog.kt index 383d3755..6fea6c98 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Modlog.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Modlog.kt @@ -12,4 +12,5 @@ internal data class Modlog( val expires_at: String? = null, val published_at: String, val bulk_action_parent_id: ModlogId? = null, + val child_count: Long, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostReportView.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostReportView.kt index f29279e1..d46d5f58 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostReportView.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/PostReportView.kt @@ -21,4 +21,5 @@ internal data class PostReportView( val creator_ban_expires_at: String? = null, val creator_banned_from_community: Boolean, val creator_community_ban_expires_at: String? = null, + val tags: CommunityTagsView, ) : ReportCombinedView diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Register.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Register.kt index 4accdc6e..601d9e14 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Register.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/Register.kt @@ -14,4 +14,5 @@ internal data class Register( val honeypot: String? = null, val answer: String? = null, val stay_logged_in: Boolean? = null, + val token: String? = null, ) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SaveUserSettings.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SaveUserSettings.kt index 01dcabfd..bc9fcf13 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SaveUserSettings.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/SaveUserSettings.kt @@ -24,6 +24,7 @@ internal data class SaveUserSettings( val bio: String? = null, val matrix_user_id: String? = null, val show_avatars: Boolean? = null, + val show_media: Boolean? = null, val send_notifications_to_email: Boolean? = null, val bot_account: Boolean? = null, val show_bot_accounts: Boolean? = null, @@ -40,6 +41,6 @@ internal data class SaveUserSettings( val show_downvotes: VoteShow? /* "show" | "show_for_others" | "hide" */ = null, val show_upvote_percentage: Boolean? = null, val auto_mark_fetched_posts_as_read: Boolean? = null, - val hide_media: Boolean? = null, + val hide_posts_with_media: Boolean? = null, val show_person_votes: Boolean? = null, ) From 694a3478b645041e9df3fad46e00406a8bcffa42 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Wed, 8 Jul 2026 22:18:10 +0200 Subject: [PATCH 107/110] Move uploadAndApplyImage to super --- .../vercruysse/lemmyapi/LemmyApiBaseController.kt | 15 +++++++++++++++ .../lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt | 15 --------------- .../lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt | 14 -------------- .../lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt | 14 -------------- .../lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt | 14 -------------- .../lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt | 14 -------------- .../lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt | 14 -------------- 7 files changed, 15 insertions(+), 85 deletions(-) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt index f6afcfdf..3a289357 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt @@ -14,6 +14,21 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version auth, ), OldRoutes { + + suspend fun uploadAndApplyImage( + image: ByteArray, + applyImage: suspend (String) -> Result, + ): Result = runCatching { + val uploadResponse = uploadImage(image).getOrThrow() + try { + applyImage(uploadResponse.image_url).getOrThrow() + uploadResponse + } catch (e: Throwable) { + deleteMedia(DeleteImageParams(uploadResponse.delete_filename)).getOrNull() + throw e + } + } + /** * Gets the site, and your user data. * diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt index 969ceace..32e7b76d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt @@ -38,21 +38,6 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba pictrsApi.auth = value } - // TODO to super - private suspend fun uploadAndApplyImage( - image: ByteArray, - applyImage: suspend (String) -> Result, - ): Result = runCatching { - val uploadResponse = uploadImage(image).getOrThrow() - try { - applyImage(uploadResponse.image_url).getOrThrow() - uploadResponse - } catch (e: Throwable) { - deleteMedia(it.vercruysse.lemmyapi.datatypes.DeleteImageParams(uploadResponse.delete_filename)).getOrNull() - throw e - } - } - // START /** diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt index 408250ff..9c299e89 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt @@ -32,20 +32,6 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba pictrsApi.auth = value } - private suspend fun uploadAndApplyImage( - image: ByteArray, - applyImage: suspend (String) -> Result, - ): Result = runCatching { - val uploadResponse = uploadImage(image).getOrThrow() - try { - applyImage(uploadResponse.image_url).getOrThrow() - uploadResponse - } catch (e: Throwable) { - deleteMedia(it.vercruysse.lemmyapi.datatypes.DeleteImageParams(uploadResponse.delete_filename)).getOrNull() - throw e - } - } - /** * Gets the site, and your user data. * diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt index ff898638..86a6066a 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt @@ -32,20 +32,6 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba pictrsApi.auth = value } - private suspend fun uploadAndApplyImage( - image: ByteArray, - applyImage: suspend (String) -> Result, - ): Result = runCatching { - val uploadResponse = uploadImage(image).getOrThrow() - try { - applyImage(uploadResponse.image_url).getOrThrow() - uploadResponse - } catch (e: Throwable) { - deleteMedia(it.vercruysse.lemmyapi.datatypes.DeleteImageParams(uploadResponse.delete_filename)).getOrNull() - throw e - } - } - /** * Gets the site, and your user data. * diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt index cf6852e2..87bca36e 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt @@ -33,20 +33,6 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba pictrsApi.auth = value } - private suspend fun uploadAndApplyImage( - image: ByteArray, - applyImage: suspend (String) -> Result, - ): Result = runCatching { - val uploadResponse = uploadImage(image).getOrThrow() - try { - applyImage(uploadResponse.image_url).getOrThrow() - uploadResponse - } catch (e: Throwable) { - deleteMedia(it.vercruysse.lemmyapi.datatypes.DeleteImageParams(uploadResponse.delete_filename)).getOrNull() - throw e - } - } - /** * Gets the site, and your user data. * diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt index 6376319a..d74fc3e7 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt @@ -32,20 +32,6 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba pictrsApi.auth = value } - private suspend fun uploadAndApplyImage( - image: ByteArray, - applyImage: suspend (String) -> Result, - ): Result = runCatching { - val uploadResponse = uploadImage(image).getOrThrow() - try { - applyImage(uploadResponse.image_url).getOrThrow() - uploadResponse - } catch (e: Throwable) { - deleteMedia(it.vercruysse.lemmyapi.datatypes.DeleteImageParams(uploadResponse.delete_filename)).getOrNull() - throw e - } - } - /** * Gets the site, and your user data. * diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt index 9c5b2959..f12d44c2 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt @@ -33,20 +33,6 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba pictrsApi.auth = value } - private suspend fun uploadAndApplyImage( - image: ByteArray, - applyImage: suspend (String) -> Result, - ): Result = runCatching { - val uploadResponse = uploadImage(image).getOrThrow() - try { - applyImage(uploadResponse.image_url).getOrThrow() - uploadResponse - } catch (e: Throwable) { - deleteMedia(it.vercruysse.lemmyapi.datatypes.DeleteImageParams(uploadResponse.delete_filename)).getOrNull() - throw e - } - } - /** * Gets the site, and your user data. * From 2cfd69f41912c48833ad0eba18697ebed1a716eb Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Wed, 8 Jul 2026 22:23:46 +0200 Subject: [PATCH 108/110] Remove icon & banner from CreateCommunity.kt --- .../it/vercruysse/lemmyapi/datatypes/CreateCommunity.kt | 4 ---- .../kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt | 2 -- .../kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt | 2 -- .../kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt | 2 -- .../kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt | 2 -- .../kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt | 2 -- .../kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt | 2 -- 7 files changed, 16 deletions(-) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommunity.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommunity.kt index 9bb287ed..2b2c3a12 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommunity.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateCommunity.kt @@ -7,15 +7,11 @@ import kotlinx.serialization.Serializable @CommonParcelize @Serializable -// TODO: remove icon & banner data class CreateCommunity( val name: String, val title: String, val sidebar: String? = null, val summary: String? = null, - /** Removed in 1.0.0 */ - val icon: String? = null, - /** Removed in 1.0.0 */ val banner: String? = null, val nsfw: Boolean? = null, val posting_restricted_to_mods: Boolean? = null, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt index 6f5d8e64..4cf0043c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/Transformer.kt @@ -1111,8 +1111,6 @@ internal class Transformer(var auth: String) : MapperGenerator { name = d.name, title = d.title, description = d.summary, - icon = d.icon, - banner = d.banner, nsfw = d.nsfw, posting_restricted_to_mods = d.posting_restricted_to_mods, discussion_languages = d.discussion_languages, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt index 580f9954..fe84c4f2 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/Transformer.kt @@ -1150,8 +1150,6 @@ internal class Transformer : MapperGenerator { name = d.name, title = d.title, description = d.summary, - icon = d.icon, - banner = d.banner, nsfw = d.nsfw, posting_restricted_to_mods = d.posting_restricted_to_mods, discussion_languages = d.discussion_languages, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt index 039f09cd..279ece15 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/Transformer.kt @@ -1229,8 +1229,6 @@ internal class Transformer : MapperGenerator { name = d.name, title = d.title, description = d.summary, - icon = d.icon, - banner = d.banner, nsfw = d.nsfw, posting_restricted_to_mods = d.posting_restricted_to_mods, discussion_languages = d.discussion_languages, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt index da9daed6..5322644d 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/Transformer.kt @@ -1168,8 +1168,6 @@ internal class Transformer : MapperGenerator { name = d.name, title = d.title, description = d.summary, - icon = d.icon, - banner = d.banner, nsfw = d.nsfw, posting_restricted_to_mods = d.posting_restricted_to_mods, discussion_languages = d.discussion_languages, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt index 6e791363..d0a412fb 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/Transformer.kt @@ -1219,8 +1219,6 @@ internal class Transformer : MapperGenerator { name = d.name, title = d.title, description = d.summary, - icon = d.icon, - banner = d.banner, nsfw = d.nsfw, posting_restricted_to_mods = d.posting_restricted_to_mods, discussion_languages = d.discussion_languages, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt index 0c13084a..65f83af9 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/Transformer.kt @@ -1223,8 +1223,6 @@ internal class Transformer : MapperGenerator { name = d.name, title = d.title, description = d.summary, - icon = d.icon, - banner = d.banner, nsfw = d.nsfw, posting_restricted_to_mods = d.posting_restricted_to_mods, discussion_languages = d.discussion_languages, From 348affde2d6fd082dfb77a41b09e2c01f7ad389a Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Wed, 8 Jul 2026 22:51:52 +0200 Subject: [PATCH 109/110] Add new Invitation endpoints --- .../lemmyapi/LemmyApiBaseController.kt | 21 ++++++++++ .../lemmyapi/datatypes/CreateInvitation.kt | 12 ++++++ .../datatypes/CreateInvitationResponse.kt | 11 ++++++ .../lemmyapi/datatypes/InvitationId.kt | 3 ++ .../lemmyapi/datatypes/ListInvitations.kt | 12 ++++++ .../lemmyapi/datatypes/LocalUserInvite.kt | 17 +++++++++ .../lemmyapi/datatypes/RevokeInvitation.kt | 11 ++++++ .../lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt | 6 +++ .../lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt | 6 +++ .../lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt | 6 +++ .../lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt | 6 +++ .../lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt | 6 +++ .../lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt | 6 +++ .../lemmyapi/v1/x0/x0/LemmyApiController.kt | 12 ++++++ .../lemmyapi/v1/x0/x0/LemmyApiRouter.kt | 9 +++++ .../lemmyapi/v1/x0/x0/LemmyApiUniWrapper.kt | 11 ++++++ .../lemmyapi/v1/x0/x0/MapperGenerator.kt | 5 +++ .../lemmyapi/v1/x0/x0/Transformer.kt | 38 +++++++++++++++++++ .../v1/x0/x0/datatypes/CreateInvitation.kt | 9 +++++ .../x0/datatypes/CreateInvitationResponse.kt | 8 ++++ .../v1/x0/x0/datatypes/InvitationId.kt | 3 ++ .../v1/x0/x0/datatypes/ListInvitations.kt | 9 +++++ .../v1/x0/x0/datatypes/LocalUserInvite.kt | 14 +++++++ .../v1/x0/x0/datatypes/RevokeInvitation.kt | 8 ++++ 24 files changed, 249 insertions(+) create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateInvitation.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateInvitationResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/InvitationId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListInvitations.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUserInvite.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/RevokeInvitation.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateInvitation.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateInvitationResponse.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/InvitationId.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListInvitations.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUserInvite.kt create mode 100644 app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RevokeInvitation.kt diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt index 3a289357..ad46ad5c 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt @@ -529,6 +529,27 @@ abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version */ abstract suspend fun addAdmin(form: AddAdmin): Result + /** + * Create a new registration invitation. + * + * @POST("account/invite") + */ + abstract suspend fun createRegistrationInvitation(form: CreateInvitation): Result + + /** + * Revoke a previously created registration invitation. + * + * @DELETE("account/invite") + */ + abstract suspend fun revokeRegistrationInvitation(form: RevokeInvitation): Result + + /** + * List previously created registration invitations. + * + * @GET("account/invite") + */ + abstract suspend fun listRegistrationInvitations(form: ListInvitations): Result> + /** * List the registration applications. * diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateInvitation.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateInvitation.kt new file mode 100644 index 00000000..fc67574a --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateInvitation.kt @@ -0,0 +1,12 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class CreateInvitation( + val max_uses: Long? = null, + val expires_at: String? = null, +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateInvitationResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateInvitationResponse.kt new file mode 100644 index 00000000..4055b251 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/CreateInvitationResponse.kt @@ -0,0 +1,11 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class CreateInvitationResponse( + val invite: LocalUserInvite, +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/InvitationId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/InvitationId.kt new file mode 100644 index 00000000..8dfde063 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/InvitationId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.datatypes + +typealias InvitationId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListInvitations.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListInvitations.kt new file mode 100644 index 00000000..141cda6c --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/ListInvitations.kt @@ -0,0 +1,12 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class ListInvitations( + val page_cursor: PaginationCursor? = null, + val limit: Long? = null, +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUserInvite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUserInvite.kt new file mode 100644 index 00000000..4ae59677 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/LocalUserInvite.kt @@ -0,0 +1,17 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class LocalUserInvite( + val id: InvitationId, + val token: String, + val local_user_id: LocalUserId, + val max_uses: Long? = null, + val uses_count: Long, + val expires_at: String? = null, + val published_at: String, +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/RevokeInvitation.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/RevokeInvitation.kt new file mode 100644 index 00000000..3e67ec55 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/datatypes/RevokeInvitation.kt @@ -0,0 +1,11 @@ +package it.vercruysse.lemmyapi.datatypes + +import it.vercruysse.lemmyapi.CommonParcelize +import it.vercruysse.lemmyapi.DatatypeRoot +import kotlinx.serialization.Serializable + +@CommonParcelize +@Serializable +data class RevokeInvitation( + val token: String, +) : DatatypeRoot diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt index 32e7b76d..e6ed9631 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x18/x5/LemmyApiUniWrapper.kt @@ -1276,4 +1276,10 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun imageHealth(): Result = notSupported() override suspend fun listPersons(form: it.vercruysse.lemmyapi.datatypes.ListPersons): Result> = notSupported() + + override suspend fun createRegistrationInvitation(form: it.vercruysse.lemmyapi.datatypes.CreateInvitation): Result = notSupported() + + override suspend fun revokeRegistrationInvitation(form: it.vercruysse.lemmyapi.datatypes.RevokeInvitation): Result = notSupported() + + override suspend fun listRegistrationInvitations(form: it.vercruysse.lemmyapi.datatypes.ListInvitations): Result> = notSupported() } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt index 9c299e89..e39139bf 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x0/LemmyApiUniWrapper.kt @@ -1227,4 +1227,10 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun imageHealth(): Result = notSupported() override suspend fun listPersons(form: it.vercruysse.lemmyapi.datatypes.ListPersons): Result> = notSupported() + + override suspend fun createRegistrationInvitation(form: it.vercruysse.lemmyapi.datatypes.CreateInvitation): Result = notSupported() + + override suspend fun revokeRegistrationInvitation(form: it.vercruysse.lemmyapi.datatypes.RevokeInvitation): Result = notSupported() + + override suspend fun listRegistrationInvitations(form: it.vercruysse.lemmyapi.datatypes.ListInvitations): Result> = notSupported() } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt index 86a6066a..4f6f8e48 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiUniWrapper.kt @@ -1236,4 +1236,10 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun imageHealth(): Result = notSupported() override suspend fun listPersons(form: it.vercruysse.lemmyapi.datatypes.ListPersons): Result> = notSupported() + + override suspend fun createRegistrationInvitation(form: it.vercruysse.lemmyapi.datatypes.CreateInvitation): Result = notSupported() + + override suspend fun revokeRegistrationInvitation(form: it.vercruysse.lemmyapi.datatypes.RevokeInvitation): Result = notSupported() + + override suspend fun listRegistrationInvitations(form: it.vercruysse.lemmyapi.datatypes.ListInvitations): Result> = notSupported() } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt index 87bca36e..e1565e10 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x3/LemmyApiUniWrapper.kt @@ -1226,4 +1226,10 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun imageHealth(): Result = notSupported() override suspend fun listPersons(form: it.vercruysse.lemmyapi.datatypes.ListPersons): Result> = notSupported() + + override suspend fun createRegistrationInvitation(form: it.vercruysse.lemmyapi.datatypes.CreateInvitation): Result = notSupported() + + override suspend fun revokeRegistrationInvitation(form: it.vercruysse.lemmyapi.datatypes.RevokeInvitation): Result = notSupported() + + override suspend fun listRegistrationInvitations(form: it.vercruysse.lemmyapi.datatypes.ListInvitations): Result> = notSupported() } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt index d74fc3e7..801c4e73 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x4/LemmyApiUniWrapper.kt @@ -1234,4 +1234,10 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun imageHealth(): Result = notSupported() override suspend fun listPersons(form: it.vercruysse.lemmyapi.datatypes.ListPersons): Result> = notSupported() + + override suspend fun createRegistrationInvitation(form: it.vercruysse.lemmyapi.datatypes.CreateInvitation): Result = notSupported() + + override suspend fun revokeRegistrationInvitation(form: it.vercruysse.lemmyapi.datatypes.RevokeInvitation): Result = notSupported() + + override suspend fun listRegistrationInvitations(form: it.vercruysse.lemmyapi.datatypes.ListInvitations): Result> = notSupported() } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt index f12d44c2..e5f2761b 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x6/LemmyApiUniWrapper.kt @@ -1229,4 +1229,10 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba override suspend fun imageHealth(): Result = notSupported() override suspend fun listPersons(form: it.vercruysse.lemmyapi.datatypes.ListPersons): Result> = notSupported() + + override suspend fun createRegistrationInvitation(form: it.vercruysse.lemmyapi.datatypes.CreateInvitation): Result = notSupported() + + override suspend fun revokeRegistrationInvitation(form: it.vercruysse.lemmyapi.datatypes.RevokeInvitation): Result = notSupported() + + override suspend fun listRegistrationInvitations(form: it.vercruysse.lemmyapi.datatypes.ListInvitations): Result> = notSupported() } diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiController.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiController.kt index e17ba9b7..44b77449 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiController.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiController.kt @@ -441,6 +441,18 @@ internal class LemmyApiController(client: HttpClient, auth: String?) : override suspend fun listPersonLiked(form: ListPersonLiked): Result> = client.getResult("account/liked", form) + /** @POST("account/invite") */ + override suspend fun createRegistrationInvitation(form: CreateInvitation): Result = + client.postResult("account/invite", form) + + /** @DELETE("account/invite") */ + override suspend fun revokeRegistrationInvitation(form: RevokeInvitation): Result = + client.deleteResult("account/invite", form) + + /** @GET("account/invite") */ + override suspend fun listRegistrationInvitations(form: ListInvitations): Result> = + client.getResult("account/invite", form) + /** @GET("account/media/list") */ override suspend fun listMedia(form: ListMedia): Result> = client.getResult("account/media/list", form) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiRouter.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiRouter.kt index d0ef66ac..8acbeabb 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiRouter.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiRouter.kt @@ -314,6 +314,15 @@ internal abstract class LemmyApiRouter(client: HttpClient, auth: String?) : Auth /** @GET("account/liked") */ abstract suspend fun listPersonLiked(form: ListPersonLiked): Result> + /** @POST("account/invite") */ + abstract suspend fun createRegistrationInvitation(form: CreateInvitation): Result + + /** @DELETE("account/invite") */ + abstract suspend fun revokeRegistrationInvitation(form: RevokeInvitation): Result + + /** @GET("account/invite") */ + abstract suspend fun listRegistrationInvitations(form: ListInvitations): Result> + /** @GET("account/media/list") */ abstract suspend fun listMedia(form: ListMedia): Result> diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiUniWrapper.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiUniWrapper.kt index 0df4d361..070bf0b4 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiUniWrapper.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/LemmyApiUniWrapper.kt @@ -327,6 +327,17 @@ internal class LemmyApiUniWrapper(client: HttpClient, actualVersion: Version, ba PagedResponse(resp.items.map(transformer::toUni)) } + override suspend fun createRegistrationInvitation(form: it.vercruysse.lemmyapi.datatypes.CreateInvitation): Result = + api.createRegistrationInvitation(transformer.fromUni(form)).map(transformer::toUni) + + override suspend fun revokeRegistrationInvitation(form: it.vercruysse.lemmyapi.datatypes.RevokeInvitation): Result = + api.revokeRegistrationInvitation(transformer.fromUni(form)) + + override suspend fun listRegistrationInvitations(form: it.vercruysse.lemmyapi.datatypes.ListInvitations): Result> = + api.listRegistrationInvitations(transformer.fromUni(form)).map { resp -> + PagedResponse(resp.items.map(transformer::toUni)) + } + override suspend fun listMedia(form: it.vercruysse.lemmyapi.datatypes.ListMedia): Result> = api.listMedia(transformer.fromUni(form)).map { resp -> PagedResponse(resp.items.map(transformer::toUni)) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/MapperGenerator.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/MapperGenerator.kt index 707ceb9d..2552b8d3 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/MapperGenerator.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/MapperGenerator.kt @@ -13,6 +13,7 @@ internal interface MapperGenerator { fun toUni(d: AuthenticateWithOauth): it.vercruysse.lemmyapi.datatypes.AuthenticateWithOauth fun toUni(d: CaptchaResponse): it.vercruysse.lemmyapi.datatypes.CaptchaResponse fun toUni(d: Comment): it.vercruysse.lemmyapi.datatypes.Comment + fun toUni(d: CreateInvitationResponse): it.vercruysse.lemmyapi.datatypes.CreateInvitationResponse fun toUni(d: CommentActions): it.vercruysse.lemmyapi.datatypes.CommentActions fun toUni(d: CommentReport): it.vercruysse.lemmyapi.datatypes.CommentReport fun toUni(d: CommentReportResponse): it.vercruysse.lemmyapi.datatypes.CommentReportResponse @@ -67,6 +68,7 @@ internal interface MapperGenerator { fun toUni(d: LocalSiteRateLimit): it.vercruysse.lemmyapi.datatypes.LocalSiteRateLimit fun toUni(d: LocalSiteUrlBlocklist): it.vercruysse.lemmyapi.datatypes.LocalSiteUrlBlocklist fun toUni(d: LocalUser): it.vercruysse.lemmyapi.datatypes.LocalUser + fun toUni(d: LocalUserInvite): it.vercruysse.lemmyapi.datatypes.LocalUserInvite fun toUni(d: LocalUserView): it.vercruysse.lemmyapi.datatypes.LocalUserView fun toUni(d: LoginResponse): it.vercruysse.lemmyapi.datatypes.LoginResponse fun toUni(d: LoginToken): it.vercruysse.lemmyapi.datatypes.LoginToken @@ -180,6 +182,7 @@ internal interface MapperGenerator { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.CreateCommunityReport): CreateCommunityReport fun fromUni(d: it.vercruysse.lemmyapi.datatypes.CreateCommunityTag): CreateCommunityTag fun fromUni(d: it.vercruysse.lemmyapi.datatypes.CreateCustomEmoji): CreateCustomEmoji + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.CreateInvitation): CreateInvitation fun fromUni(d: it.vercruysse.lemmyapi.datatypes.CreateMultiCommunity): CreateMultiCommunity fun fromUni(d: it.vercruysse.lemmyapi.datatypes.CreateOAuthProvider): CreateOAuthProvider fun fromUni(d: it.vercruysse.lemmyapi.datatypes.CreateOrDeleteMultiCommunityEntry): CreateOrDeleteMultiCommunityEntry @@ -236,6 +239,7 @@ internal interface MapperGenerator { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListCommunities): ListCommunities fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListCommunityPendingFollows): ListCommunityPendingFollows fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListCustomEmojis): ListCustomEmojis + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListInvitations): ListInvitations fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListMedia): ListMedia fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListMultiCommunities): ListMultiCommunities fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ListNotifications): ListNotifications @@ -273,6 +277,7 @@ internal interface MapperGenerator { fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ResolveObject): ResolveObject fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ResolvePostReport): ResolvePostReport fun fromUni(d: it.vercruysse.lemmyapi.datatypes.ResolvePrivateMessageReport): ResolvePrivateMessageReport + fun fromUni(d: it.vercruysse.lemmyapi.datatypes.RevokeInvitation): RevokeInvitation fun fromUni(d: it.vercruysse.lemmyapi.datatypes.SaveComment): SaveComment fun fromUni(d: it.vercruysse.lemmyapi.datatypes.SavePost): SavePost fun fromUni(d: it.vercruysse.lemmyapi.datatypes.SaveUserSettings): SaveUserSettings diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/Transformer.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/Transformer.kt index af25c9d5..cdb51cb1 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/Transformer.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/Transformer.kt @@ -45,6 +45,8 @@ import it.vercruysse.lemmyapi.datatypes.CreateCommunity as LemmyapiDatatypesCrea import it.vercruysse.lemmyapi.datatypes.CreateCommunityReport as LemmyapiDatatypesCreateCommunityReport import it.vercruysse.lemmyapi.datatypes.CreateCommunityTag as LemmyapiDatatypesCreateCommunityTag import it.vercruysse.lemmyapi.datatypes.CreateCustomEmoji as LemmyapiDatatypesCreateCustomEmoji +import it.vercruysse.lemmyapi.datatypes.CreateInvitation as LemmyapiDatatypesCreateInvitation +import it.vercruysse.lemmyapi.datatypes.CreateInvitationResponse as LemmyapiDatatypesCreateInvitationResponse import it.vercruysse.lemmyapi.datatypes.CreateMultiCommunity as LemmyapiDatatypesCreateMultiCommunity import it.vercruysse.lemmyapi.datatypes.CreateOAuthProvider as LemmyapiDatatypesCreateOAuthProvider import it.vercruysse.lemmyapi.datatypes.CreateOrDeleteMultiCommunityEntry as LemmyapiDatatypesCreateOrDeleteMultiCommunityEntry @@ -127,6 +129,7 @@ import it.vercruysse.lemmyapi.datatypes.ListCommunities as LemmyapiDatatypesList import it.vercruysse.lemmyapi.datatypes.ListCommunityPendingFollows as LemmyapiDatatypesListCommunityPendingFollows import it.vercruysse.lemmyapi.datatypes.ListCustomEmojis as LemmyapiDatatypesListCustomEmojis import it.vercruysse.lemmyapi.datatypes.ListCustomEmojisResponse as LemmyapiDatatypesListCustomEmojisResponse +import it.vercruysse.lemmyapi.datatypes.ListInvitations as LemmyapiDatatypesListInvitations import it.vercruysse.lemmyapi.datatypes.ListLoginsResponse as LemmyapiDatatypesListLoginsResponse import it.vercruysse.lemmyapi.datatypes.ListMedia as LemmyapiDatatypesListMedia import it.vercruysse.lemmyapi.datatypes.ListMultiCommunities as LemmyapiDatatypesListMultiCommunities @@ -147,6 +150,7 @@ import it.vercruysse.lemmyapi.datatypes.LocalSite as LemmyapiDatatypesLocalSite import it.vercruysse.lemmyapi.datatypes.LocalSiteRateLimit as LemmyapiDatatypesLocalSiteRateLimit import it.vercruysse.lemmyapi.datatypes.LocalSiteUrlBlocklist as LemmyapiDatatypesLocalSiteUrlBlocklist import it.vercruysse.lemmyapi.datatypes.LocalUser as LemmyapiDatatypesLocalUser +import it.vercruysse.lemmyapi.datatypes.LocalUserInvite as LemmyapiDatatypesLocalUserInvite import it.vercruysse.lemmyapi.datatypes.LocalUserView as LemmyapiDatatypesLocalUserView import it.vercruysse.lemmyapi.datatypes.LockComment as LemmyapiDatatypesLockComment import it.vercruysse.lemmyapi.datatypes.LockPost as LemmyapiDatatypesLockPost @@ -213,6 +217,7 @@ import it.vercruysse.lemmyapi.datatypes.ResolveObject as LemmyapiDatatypesResolv import it.vercruysse.lemmyapi.datatypes.ResolveObjectView as LemmyapiDatatypesResolveObjectView import it.vercruysse.lemmyapi.datatypes.ResolvePostReport as LemmyapiDatatypesResolvePostReport import it.vercruysse.lemmyapi.datatypes.ResolvePrivateMessageReport as LemmyapiDatatypesResolvePrivateMessageReport +import it.vercruysse.lemmyapi.datatypes.RevokeInvitation as LemmyapiDatatypesRevokeInvitation import it.vercruysse.lemmyapi.datatypes.SaveComment as LemmyapiDatatypesSaveComment import it.vercruysse.lemmyapi.datatypes.SavePost as LemmyapiDatatypesSavePost import it.vercruysse.lemmyapi.datatypes.SaveUserSettings as LemmyapiDatatypesSaveUserSettings @@ -276,6 +281,8 @@ import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CreateCommunity as X0DatatypesC import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CreateCommunityReport as X0DatatypesCreateCommunityReport import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CreateCommunityTag as X0DatatypesCreateCommunityTag import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CreateCustomEmoji as X0DatatypesCreateCustomEmoji +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CreateInvitation as X0DatatypesCreateInvitation +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CreateInvitationResponse as X0DatatypesCreateInvitationResponse import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CreateMultiCommunity as X0DatatypesCreateMultiCommunity import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CreateOAuthProvider as X0DatatypesCreateOAuthProvider import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.CreateOrDeleteMultiCommunityEntry as X0DatatypesCreateOrDeleteMultiCommunityEntry @@ -358,6 +365,7 @@ import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ListCommunities as X0DatatypesL import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ListCommunityPendingFollows as X0DatatypesListCommunityPendingFollows import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ListCustomEmojis as X0DatatypesListCustomEmojis import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ListCustomEmojisResponse as X0DatatypesListCustomEmojisResponse +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ListInvitations as X0DatatypesListInvitations import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ListLoginsResponse as X0DatatypesListLoginsResponse import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ListMedia as X0DatatypesListMedia import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ListMultiCommunities as X0DatatypesListMultiCommunities @@ -378,6 +386,7 @@ import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.LocalSite as X0DatatypesLocalSi import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.LocalSiteRateLimit as X0DatatypesLocalSiteRateLimit import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.LocalSiteUrlBlocklist as X0DatatypesLocalSiteUrlBlocklist import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.LocalUser as X0DatatypesLocalUser +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.LocalUserInvite as X0DatatypesLocalUserInvite import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.LocalUserView as X0DatatypesLocalUserView import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.LockComment as X0DatatypesLockComment import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.LockPost as X0DatatypesLockPost @@ -444,6 +453,7 @@ import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ResolveObject as X0DatatypesRes import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ResolveObjectView as X0DatatypesResolveObjectView import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ResolvePostReport as X0DatatypesResolvePostReport import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.ResolvePrivateMessageReport as X0DatatypesResolvePrivateMessageReport +import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.RevokeInvitation as X0DatatypesRevokeInvitation import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.SaveComment as X0DatatypesSaveComment import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.SavePost as X0DatatypesSavePost import it.vercruysse.lemmyapi.v1.x0.x0.datatypes.SaveUserSettings as X0DatatypesSaveUserSettings @@ -546,6 +556,10 @@ internal class Transformer : MapperGenerator { uuid = d.uuid, ) + override fun toUni(d: X0DatatypesCreateInvitationResponse): LemmyapiDatatypesCreateInvitationResponse = LemmyapiDatatypesCreateInvitationResponse( + invite = this.toUni(d = d.invite), + ) + override fun toUni(d: X0DatatypesComment): LemmyapiDatatypesComment = LemmyapiDatatypesComment( id = d.id, creator_id = d.creator_id, @@ -1078,6 +1092,16 @@ internal class Transformer : MapperGenerator { ban_expires_at = d.ban_expires_at, ) + override fun toUni(d: X0DatatypesLocalUserInvite): LemmyapiDatatypesLocalUserInvite = LemmyapiDatatypesLocalUserInvite( + id = d.id, + token = d.token, + local_user_id = d.local_user_id, + max_uses = d.max_uses, + uses_count = d.uses_count, + expires_at = d.expires_at, + published_at = d.published_at, + ) + override fun toUni(d: X0DatatypesLoginResponse): LemmyapiDatatypesLoginResponse = LemmyapiDatatypesLoginResponse( jwt = d.jwt, registration_created = d.registration_created, @@ -1710,6 +1734,11 @@ internal class Transformer : MapperGenerator { keywords = d.keywords, ) + override fun fromUni(d: LemmyapiDatatypesCreateInvitation): X0DatatypesCreateInvitation = X0DatatypesCreateInvitation( + max_uses = d.max_uses, + expires_at = d.expires_at, + ) + override fun fromUni(d: LemmyapiDatatypesCreateMultiCommunity): X0DatatypesCreateMultiCommunity = X0DatatypesCreateMultiCommunity( name = d.name, title = d.title, @@ -2198,6 +2227,11 @@ internal class Transformer : MapperGenerator { category = d.category, ) + override fun fromUni(d: LemmyapiDatatypesListInvitations): X0DatatypesListInvitations = X0DatatypesListInvitations( + page_cursor = d.page_cursor, + limit = d.limit, + ) + override fun fromUni(d: LemmyapiDatatypesListMedia): X0DatatypesListMedia = X0DatatypesListMedia( page_cursor = d.page_cursor, limit = d.limit, @@ -2431,6 +2465,10 @@ internal class Transformer : MapperGenerator { resolved = d.resolved, ) + override fun fromUni(d: LemmyapiDatatypesRevokeInvitation): X0DatatypesRevokeInvitation = X0DatatypesRevokeInvitation( + token = d.token, + ) + override fun fromUni(d: LemmyapiDatatypesSaveComment): X0DatatypesSaveComment = X0DatatypesSaveComment( comment_id = d.comment_id, save = d.save, diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateInvitation.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateInvitation.kt new file mode 100644 index 00000000..85896fcf --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateInvitation.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class CreateInvitation( + val max_uses: Long? = null, + val expires_at: String? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateInvitationResponse.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateInvitationResponse.kt new file mode 100644 index 00000000..8115aa0a --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/CreateInvitationResponse.kt @@ -0,0 +1,8 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class CreateInvitationResponse( + val invite: LocalUserInvite, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/InvitationId.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/InvitationId.kt new file mode 100644 index 00000000..334b39aa --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/InvitationId.kt @@ -0,0 +1,3 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +internal typealias InvitationId = Long diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListInvitations.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListInvitations.kt new file mode 100644 index 00000000..4b87ef87 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/ListInvitations.kt @@ -0,0 +1,9 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class ListInvitations( + val page_cursor: PaginationCursor? = null, + val limit: Long? = null, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUserInvite.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUserInvite.kt new file mode 100644 index 00000000..1b8ed2cf --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/LocalUserInvite.kt @@ -0,0 +1,14 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class LocalUserInvite( + val id: InvitationId, + val token: String, + val local_user_id: LocalUserId, + val max_uses: Long? = null, + val uses_count: Long, + val expires_at: String? = null, + val published_at: String, +) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RevokeInvitation.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RevokeInvitation.kt new file mode 100644 index 00000000..10968de0 --- /dev/null +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v1/x0/x0/datatypes/RevokeInvitation.kt @@ -0,0 +1,8 @@ +package it.vercruysse.lemmyapi.v1.x0.x0.datatypes + +import kotlinx.serialization.Serializable + +@Serializable +internal data class RevokeInvitation( + val token: String, +) From 85a0dbab90642cd2dee2b7625e7af1c0cdc1bf45 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Wed, 8 Jul 2026 22:55:55 +0200 Subject: [PATCH 110/110] Deploy new version --- .../it/vercruysse/lemmyapi/v0/enums/RegistrationMode.kt | 7 ++++++- gradle.properties | 2 +- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/RegistrationMode.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/RegistrationMode.kt index f5c84220..81b46296 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/RegistrationMode.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/enums/RegistrationMode.kt @@ -21,9 +21,14 @@ internal enum class RegistrationMode { fun fromUniNullable(uni: UniRegistrationMode?): RegistrationMode? = when (uni) { null -> null + UniRegistrationMode.Closed -> Closed + UniRegistrationMode.RequireApplication -> RequireApplication - UniRegistrationMode.RequireInvitation -> null // Not supported before 1.0.0 + + UniRegistrationMode.RequireInvitation -> null + + // Not supported before 1.0.0 UniRegistrationMode.Open -> Open } diff --git a/gradle.properties b/gradle.properties index ac269d77..89da0067 100644 --- a/gradle.properties +++ b/gradle.properties @@ -22,5 +22,5 @@ POM_DEVELOPER_URL=https://github.com/MV-GH POM_ARTIFACT_ID=lemmy-api GROUP=it.vercruysse.lemmyapi -VERSION_NAME=0.5.0-alpha.6 +VERSION_NAME=0.5.0-alpha.7