Merge branch 'main' into thumbnail_sizes

This commit is contained in:
Dessalines 2024-09-23 15:37:29 -04:00 committed by GitHub
commit 00281fe278
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
54 changed files with 1572 additions and 710 deletions

511
CHANGELOG.md Normal file
View file

@ -0,0 +1,511 @@
## What's Changed
- Updating.
- Adding git cliff, a RELEASES.md file, and a generate_changelog file.
## What's Changed in v0.19.4
- 0.19.4 by @dessalines
- Updating changes from main before a 0.19.4 release. by @dessalines in [#275](https://github.com/LemmyNet/lemmy-js-client/pull/275)
- Better readme example. by @dessalines in [#261](https://github.com/LemmyNet/lemmy-js-client/pull/261)
- Remove pointless integer annotations. #190 by @dessalines in [#260](https://github.com/LemmyNet/lemmy-js-client/pull/260)
- Adding LocalImageView. by @dessalines in [#258](https://github.com/LemmyNet/lemmy-js-client/pull/258)
- Allow falsey get parameter values by @matc-pub in [#257](https://github.com/LemmyNet/lemmy-js-client/pull/257)
- Add missing docs for logout endpoint by @Nothing4You in [#256](https://github.com/LemmyNet/lemmy-js-client/pull/256)
## New Contributors
- @matc-pub made their first contribution in [#257](https://github.com/LemmyNet/lemmy-js-client/pull/257)
- @Nothing4You made their first contribution in [#256](https://github.com/LemmyNet/lemmy-js-client/pull/256)
## What's Changed in v0.19.0
- v0.19.0 by @dessalines
- Adding an error type. by @dessalines in [#220](https://github.com/LemmyNet/lemmy-js-client/pull/220)
- v0.19.0-rc.19 by @dessalines
- Fixing cross-fetch again. by @dessalines
- v0.19.0-rc.18 by @dessalines
- v0.19.0-rc.17 by @dessalines
- Revert "Upgrading deps, removing cross_fetch." by @dessalines in [#217](https://github.com/LemmyNet/lemmy-js-client/pull/217)
- v0.19.0-rc.16 by @dessalines
- Upgrading deps, removing cross_fetch. by @dessalines in [#216](https://github.com/LemmyNet/lemmy-js-client/pull/216)
- v0.19.0-rc.15 by @dessalines
- Adding `creator_is_admin` to various views. by @dessalines in [#215](https://github.com/LemmyNet/lemmy-js-client/pull/215)
**Full Changelog**: https://github.com/LemmyNet/lemmy-js-client/compare/v0.18.1...v0.19.0
## What's Changed in v0.18.1
- v0.18.1 by @dessalines
- v0.18.1-rc.3 by @dessalines
- Add open links in new tab. by @dessalines in [#160](https://github.com/LemmyNet/lemmy-js-client/pull/160)
- Handle 413 response on image uploads by @sunaurus in [#154](https://github.com/LemmyNet/lemmy-js-client/pull/154)
- Add show_nsfw community sort. by @SleeplessOne1917 in [#156](https://github.com/LemmyNet/lemmy-js-client/pull/156)
- Add show_nsfw community sort. by @dessalines
- v0.18.1-rc.2 by @dessalines
- Make fetch function optional by @SleeplessOne1917 in [#148](https://github.com/LemmyNet/lemmy-js-client/pull/148)
- v0.18.1-rc.1 by @dessalines
- Adding additional post sorts. by @dessalines in [#153](https://github.com/LemmyNet/lemmy-js-client/pull/153)
- Add default value to client functions that have optional form data or query params by @SleeplessOne1917 in [#147](https://github.com/LemmyNet/lemmy-js-client/pull/147)
- Add default object to client functions where the form data or query is optional by @cavanaugh-richards
- Run prettier by @cavanaugh-richards
- Add default value to encodeGetParams body type param. by @cavanaugh-richards
## New Contributors
- @sunaurus made their first contribution in [#154](https://github.com/LemmyNet/lemmy-js-client/pull/154)
- @cavanaugh-richards made their first contribution
## What's Changed in v0.18.0
- v0.18.0 by @dessalines
- v0.18.0-rc.2 by @dessalines
- Removing websocket. by @dessalines in [#145](https://github.com/LemmyNet/lemmy-js-client/pull/145)
- Add Hour Sort types by @SleeplessOne1917 in [#143](https://github.com/LemmyNet/lemmy-js-client/pull/143)
- add ending empty line by @L3v3L
- Merge branch 'main' into hour-sort-types by @L3v3L
- add support for a custom fetch function (closing #132) by @SleeplessOne1917 in [#134](https://github.com/LemmyNet/lemmy-js-client/pull/134)
- Merge branch 'main' into custom-fetchinator by @SleeplessOne1917
- Merge branch 'main' into custom-fetchinator by @SleeplessOne1917
- DERP, forgot to actually set #fetchFunction by @ExperiBass
- add support for a custom fetch function by @ExperiBass
- Add Hour Sort types by @L3v3L
- v0.18.0-rc.1 by @dessalines
- Adding some 0.18.0 changes. by @dessalines in [#138](https://github.com/LemmyNet/lemmy-js-client/pull/138)
- remove trailing slashes from instance url by @SleeplessOne1917 in [#135](https://github.com/LemmyNet/lemmy-js-client/pull/135)
- remove trailing slashes from instance url by @ExperiBass
- Add taglines to site res by @SleeplessOne1917 in [#130](https://github.com/LemmyNet/lemmy-js-client/pull/130)
- v0.17.2-rc.24 by @dessalines
- Add taglines to site response. by @dessalines
- Dont export websocket. by @dessalines
- Update copy_types script. by @dessalines
- Adjust version by @SleeplessOne1917 in [#129](https://github.com/LemmyNet/lemmy-js-client/pull/129)
- Make private class properties actually private by @SleeplessOne1917 in [#128](https://github.com/LemmyNet/lemmy-js-client/pull/128)
- Remove BigInt by @SleeplessOne1917 in [#127](https://github.com/LemmyNet/lemmy-js-client/pull/127)
- Remove BigInt by @makotech222
- Better error wrapping. by @dessalines in [#126](https://github.com/LemmyNet/lemmy-js-client/pull/126)
- v0.17.2-rc.20 by @dessalines
- v0.17.2-rc.19 by @dessalines
- v0.17.2-rc.18 by @dessalines
- MarkCommentReplyAsRead response was wrong. by @dessalines in [#125](https://github.com/LemmyNet/lemmy-js-client/pull/125)
- Add missing response types in http client. by @dessalines in [#124](https://github.com/LemmyNet/lemmy-js-client/pull/124)
- Making the http `{"error": "..."}` json into a string exception. by @SleeplessOne1917 in [#122](https://github.com/LemmyNet/lemmy-js-client/pull/122)
- Merge branch 'main' into add_error_message_as_exception by @dessalines
- Adding new distinguish comment. by @SleeplessOne1917 in [#123](https://github.com/LemmyNet/lemmy-js-client/pull/123)
- Adding new distinguish comment. by @dessalines
- Switching to const. by @dessalines
- Making the error json into an exception. by @dessalines
- v0.17.2-rc.17 by @dessalines
- Remove bigints by @dessalines in [#121](https://github.com/LemmyNet/lemmy-js-client/pull/121)
- Adding sleeplessone1917 to codeowners by @dessalines
- v0.17.2-rc.16 by @dessalines
- Fixing bigint serialization. by @dessalines in [#120](https://github.com/LemmyNet/lemmy-js-client/pull/120)
- v0.17.2-rc.15 by @dessalines
- Fix body not serializing because of bigint by @SleeplessOne1917 in [#119](https://github.com/LemmyNet/lemmy-js-client/pull/119)
- v0.17.2-rc.14 by @dessalines
- Make script for adding types to index by @SleeplessOne1917 in [#118](https://github.com/LemmyNet/lemmy-js-client/pull/118)
- v0.17.2-rc.13 by @dessalines
- Upgrading deps by @dessalines in [#117](https://github.com/LemmyNet/lemmy-js-client/pull/117)
- Adding support for federated instances. Fixes #115 by @dessalines in [#116](https://github.com/LemmyNet/lemmy-js-client/pull/116)
- Adding bindings from rust. Fixes #113 by @dessalines in [#114](https://github.com/LemmyNet/lemmy-js-client/pull/114)
- Adding diesel SortType and ListingType enums. by @dessalines in [#112](https://github.com/LemmyNet/lemmy-js-client/pull/112)
- Add getComment to client by @SleeplessOne1917 in [#111](https://github.com/LemmyNet/lemmy-js-client/pull/111)
- v0.17.2-rc.5 by @dessalines
- Merge branch 'makotech222-custom-emojis' by @dessalines
- Add woodpecker by @dessalines
- feat: add image upload method to http client by @SleeplessOne1917
- docs: Fix incorrect code sample in README by @SleeplessOne1917
- Totp by @dessalines
- Add Custom Emojis Support by @makotech222 in [#97](https://github.com/LemmyNet/lemmy-js-client/pull/97)
- Fixes for monads by @makotech222
- Add custom emojis by @makotech222
- Add woodpecker by @dessalines in [#110](https://github.com/LemmyNet/lemmy-js-client/pull/110)
- feat: add image upload method to http client by @SleeplessOne1917 in [#108](https://github.com/LemmyNet/lemmy-js-client/pull/108)
- docs: Fix incorrect code sample in README by @SleeplessOne1917 in [#109](https://github.com/LemmyNet/lemmy-js-client/pull/109)
- Totp by @dessalines in [#106](https://github.com/LemmyNet/lemmy-js-client/pull/106)
- Adding email admins for new reports. by @dessalines in [#105](https://github.com/LemmyNet/lemmy-js-client/pull/105)
- v0.17.0-rc.62 by @dessalines
- Fixing requireapplication string. by @dessalines in [#104](https://github.com/LemmyNet/lemmy-js-client/pull/104)
- Adding development instructions. Fixes #101 by @dessalines in [#102](https://github.com/LemmyNet/lemmy-js-client/pull/102)
- v0.17.0-rc.61 by @dessalines
- Removing monads. Fixes #98 by @dessalines in [#99](https://github.com/LemmyNet/lemmy-js-client/pull/99)
- v0.17.0-rc.59 by @dessalines
- Udate CreateSite/EditSite structs for registration mode by @Nutomic in [#100](https://github.com/LemmyNet/lemmy-js-client/pull/100)
- v0.17.0-rc.58 by @dessalines
- Fixing yarn.lock by @dessalines
- Add LocalSite.registration_mode by @Nutomic in [#96](https://github.com/LemmyNet/lemmy-js-client/pull/96)
- Add community language by @dessalines in [#85](https://github.com/LemmyNet/lemmy-js-client/pull/85)
- v0.17.0-rc.56 by @dessalines
- Add class instantiation in readme. by @dessalines in [#95](https://github.com/LemmyNet/lemmy-js-client/pull/95)
- Add FeaturePost support by @makotech222 in [#88](https://github.com/LemmyNet/lemmy-js-client/pull/88)
- fix: Move required dependencies to prod dependencies instead of devependencies by @SleeplessOne1917 in [#91](https://github.com/LemmyNet/lemmy-js-client/pull/91)
- Fixed links to Documentation by @hbroer in [#84](https://github.com/LemmyNet/lemmy-js-client/pull/84)
- v0.17.0-rc.54 by @dessalines
- Remove federation strict_allowlist and retry_count. Fixes #82 by @dessalines in [#83](https://github.com/LemmyNet/lemmy-js-client/pull/83)
- v0.17.0-rc.53 by @dessalines
- Update Taglines pt 2 by @makotech222 in [#81](https://github.com/LemmyNet/lemmy-js-client/pull/81)
- v0.17.0-rc.52 by @dessalines
- Add Tagline structs by @makotech222 in [#80](https://github.com/LemmyNet/lemmy-js-client/pull/80)
- Move settings to database by @dessalines in [#79](https://github.com/LemmyNet/lemmy-js-client/pull/79)
- Private message report by @dessalines in [#78](https://github.com/LemmyNet/lemmy-js-client/pull/78)
- v0.17.0-rc.45 by @dessalines
- Add email_admins for new applications API setting. by @dessalines in [#72](https://github.com/LemmyNet/lemmy-js-client/pull/72)
- Person post unread comments by @dessalines in [#74](https://github.com/LemmyNet/lemmy-js-client/pull/74)
- Add language by @dessalines in [#77](https://github.com/LemmyNet/lemmy-js-client/pull/77)
- Rename post.embed_html field to embed_video_url by @Nutomic in [#75](https://github.com/LemmyNet/lemmy-js-client/pull/75)
- v0.17.0-rc.43 by @dessalines
- Add Modlog Filters by @makotech222 in [#65](https://github.com/LemmyNet/lemmy-js-client/pull/65)
- Distinguish by @dessalines in [#73](https://github.com/LemmyNet/lemmy-js-client/pull/73)
- v0.17.0-rc.39 by @dessalines
- Upgrade deps by @dessalines in [#71](https://github.com/LemmyNet/lemmy-js-client/pull/71)
- Starting to add comment tree paging by @dessalines in [#70](https://github.com/LemmyNet/lemmy-js-client/pull/70)
- Admin purge by @dessalines in [#35](https://github.com/LemmyNet/lemmy-js-client/pull/35)
- Remove save and get SiteConfig. Fixes #68 by @dessalines in [#69](https://github.com/LemmyNet/lemmy-js-client/pull/69)
- v0.17.0-rc.31 by @dessalines
- Removing CommunityFollowerResponse, using SubscribedType. by @dessalines in [#62](https://github.com/LemmyNet/lemmy-js-client/pull/62)
- Add option types by @dessalines in [#67](https://github.com/LemmyNet/lemmy-js-client/pull/67)
- v0.16.4-rc.3 by @dessalines
- Revert "Add follow pending." by @dessalines in [#63](https://github.com/LemmyNet/lemmy-js-client/pull/63)
- v0.17.0-rc.10 by @dessalines
- Add legal information by @Nutomic in [#61](https://github.com/LemmyNet/lemmy-js-client/pull/61)
- Add default_post_listing_type by @dessalines in [#53](https://github.com/LemmyNet/lemmy-js-client/pull/53)
- Adding mark post as read. Fixes #36 by @dessalines in [#57](https://github.com/LemmyNet/lemmy-js-client/pull/57)
- Upgrading deps. by @dessalines in [#58](https://github.com/LemmyNet/lemmy-js-client/pull/58)
- Adding endpoint comments. Fixes #50 by @dessalines in [#56](https://github.com/LemmyNet/lemmy-js-client/pull/56)
- Add follow pending. by @dessalines in [#52](https://github.com/LemmyNet/lemmy-js-client/pull/52)
- Use enum types by @Nutomic in [#55](https://github.com/LemmyNet/lemmy-js-client/pull/55)
- v0.17.0-rc.9 by @dessalines
- Use enum types in API. Fixes #51 by @dessalines
- Remove creator from SiteView by @shilangyu in [#49](https://github.com/LemmyNet/lemmy-js-client/pull/49)
- v0.16.4-rc.2 by @dessalines
- Adding posting_restricted_to_mods by @dessalines in [#48](https://github.com/LemmyNet/lemmy-js-client/pull/48)
- v0.16.4-rc.1 by @dessalines
- Add site to GetCommunityResponse by @Nutomic in [#47](https://github.com/LemmyNet/lemmy-js-client/pull/47)
- v0.16.0-rc.1 by @dessalines
- v0.15.4-rc.3 by @dessalines
- Removing site_creator, adding LeaveAdmin. by @dessalines in [#42](https://github.com/LemmyNet/lemmy-js-client/pull/42)
- v0.15.4-rc.2 by @dessalines
- Add field Site.default_theme in missing places by @Nutomic in [#46](https://github.com/LemmyNet/lemmy-js-client/pull/46)
- v0.15.4-rc.1 by @dessalines
- Add field Site.default_theme by @Nutomic in [#45](https://github.com/LemmyNet/lemmy-js-client/pull/45)
- Upgrading deps. by @dessalines in [#43](https://github.com/LemmyNet/lemmy-js-client/pull/43)
## New Contributors
- @L3v3L made their first contribution
- @ExperiBass made their first contribution
- @makotech222 made their first contribution
- @hbroer made their first contribution in [#84](https://github.com/LemmyNet/lemmy-js-client/pull/84)
**Full Changelog**: https://github.com/LemmyNet/lemmy-js-client/compare/v0.15.0...v0.18.0
## What's Changed in v0.15.0
- v0.15.0 by @dessalines
- v0.15.0-rc.34 by @dessalines
- Adding ban_expires to person by @dessalines in [#40](https://github.com/LemmyNet/lemmy-js-client/pull/40)
- v0.15.0-rc.33 by @dessalines
- Trying to publish with npm token 24 by @dessalines
- v0.15.0-rc.32 by @dessalines
- Trying to publish with npm token 23 by @dessalines
- v0.15.0-rc.31 by @dessalines
- Trying to publish with npm token 22 by @dessalines
- v0.15.0-rc.30 by @dessalines
- Trying to publish with npm token 21 by @dessalines
- v0.15.0-rc.29 by @dessalines
- v0.15.0-rc.28 by @dessalines
- Trying to publish with npm token 19 by @dessalines
- v0.15.0-rc.27 by @dessalines
- Trying to publish with npm token 18 by @dessalines
- v0.15.0-rc.26 by @dessalines
- Trying to publish with npm token 17 by @dessalines
- v0.15.0-rc.25 by @dessalines
- Trying to publish with npm token 16 by @dessalines
- v0.15.0-rc.24 by @dessalines
- Trying to publish with npm token 15 by @dessalines
- v0.15.0-rc.23 by @dessalines
- v0.15.0-rc.22 by @dessalines
- v0.15.0-rc.21 by @dessalines
- Trying to publish with npm token 13 by @dessalines
- v0.15.0-rc.20 by @dessalines
- Trying to publish with npm token 12 by @dessalines
- v0.15.0-rc.19 by @dessalines
- Trying to publish with npm token 11 by @dessalines
- v0.15.0-rc.18 by @dessalines
- Trying to publish with npm token 10 by @dessalines
- v0.15.0-rc.17 by @dessalines
- Trying to publish with npm token 9 by @dessalines
- v0.15.0-rc.16 by @dessalines
- Trying to publish with npm token 8 by @dessalines
- v0.15.0-rc.15 by @dessalines
- Trying to publish with npm token 7 by @dessalines
- v0.15.0-rc.14 by @dessalines
- Trying to publish with npm token 6 by @dessalines
- v0.15.0-rc.13 by @dessalines
- Trying to publish with npm token 5 by @dessalines
- v0.15.0-rc.12 by @dessalines
- Trying to publish with npm token 4 by @dessalines
- v0.15.0-rc.11 by @dessalines
- Trying to publish with npm token 3 by @dessalines
- v0.15.0-rc.10 by @dessalines
- Trying to publish with npm token 2 by @dessalines
- v0.15.0-rc.9 by @dessalines
- Trying to publish with npm token by @dessalines
- v0.15.0-rc.8 by @dessalines
- Adding bannedpersons endpoint. by @dessalines in [#41](https://github.com/LemmyNet/lemmy-js-client/pull/41)
- Adding private instance related endpoints. by @dessalines in [#38](https://github.com/LemmyNet/lemmy-js-client/pull/38)
- Upgrade deps 2 by @dessalines in [#39](https://github.com/LemmyNet/lemmy-js-client/pull/39)
- v0.14.0-rc.1 by @dessalines
- Get unread count by @dessalines in [#34](https://github.com/LemmyNet/lemmy-js-client/pull/34)
- Adding husky hook by @dessalines
- v0.13.1-rc.1 by @dessalines in [#33](https://github.com/LemmyNet/lemmy-js-client/pull/33)
- Downgrading typedocs by @dessalines
**Full Changelog**: https://github.com/LemmyNet/lemmy-js-client/compare/v0.13.0...v0.15.0
## What's Changed in v0.13.0
- v0.13.0 by @dessalines
- upgrade deps. by @dessalines
- v0.13.0-rc.2 by @dessalines
- Upgrade deps by @dessalines
- Updating reporting API. by @dessalines in [#32](https://github.com/LemmyNet/lemmy-js-client/pull/32)
**Full Changelog**: https://github.com/LemmyNet/lemmy-js-client/compare/v0.12.0...v0.13.0
## What's Changed in v0.12.0
- v0.12.0 by @dessalines
- Fix defined in links via docker. by @dessalines in [#31](https://github.com/LemmyNet/lemmy-js-client/pull/31)
- v0.12.0-rc.1 by @dessalines
- v0.11.4-rc.16 by @dessalines
- Resolve endpoint by @dessalines in [#28](https://github.com/LemmyNet/lemmy-js-client/pull/28)
- Fix link to websocketresponse. by @dessalines
- Remove support / donate section. by @dessalines
- Adding typedoc, and code comments. Fixes #29 by @dessalines in [#30](https://github.com/LemmyNet/lemmy-js-client/pull/30)
- Adding block person and block community actions by @dessalines in [#22](https://github.com/LemmyNet/lemmy-js-client/pull/22)
- v0.11.4-rc.12 by @dessalines
- Adding GetSiteMetadata by @dessalines in [#26](https://github.com/LemmyNet/lemmy-js-client/pull/26)
- Mod transfer community by @dessalines in [#25](https://github.com/LemmyNet/lemmy-js-client/pull/25)
- v0.11.3-rc.4 by @dessalines
- Removing husky postinstall by @dessalines
- v0.11.3-rc.3 by @dessalines
- Feature/show post notifs by @dessalines in [#24](https://github.com/LemmyNet/lemmy-js-client/pull/24)
- Upgrade deps by @dessalines in [#23](https://github.com/LemmyNet/lemmy-js-client/pull/23)
**Full Changelog**: https://github.com/LemmyNet/lemmy-js-client/compare/v0.11.0...v0.12.0
## What's Changed in v0.11.0
- v0.11.0 by @dessalines
- Feature/mark post as read by @dessalines in [#21](https://github.com/LemmyNet/lemmy-js-client/pull/21)
- Add admin community_creation_admin_only. by @dessalines in [#20](https://github.com/LemmyNet/lemmy-js-client/pull/20)
- v0.11.0-rc.11 by @dessalines
- Adding bot accounts by @dessalines
- v0.11.0-rc.10 by @dessalines
- Change long desc to sidebar, add short site description by @dessalines
- Feature/optional fields by @dessalines in [#19](https://github.com/LemmyNet/lemmy-js-client/pull/19)
- v0.11.0-rc.8 by @dessalines
- Adding listing_type to search. by @dessalines in [#18](https://github.com/LemmyNet/lemmy-js-client/pull/18)
- Adding listing_type to search. by @dessalines
- v0.11.0-rc.7 by @dessalines
- Add creator_id to search. by @dessalines in [#17](https://github.com/LemmyNet/lemmy-js-client/pull/17)
- Add creator_id to search. by @dessalines
- v0.11.0-rc.6 by @dessalines
- v0.11.0-rc.5 by @dessalines
- Adding show scores to LocalUserSettings and SaveUserSettings by @dessalines in [#16](https://github.com/LemmyNet/lemmy-js-client/pull/16)
- Adding show scores to LocalUserSettings and SaveUserSettings by @dessalines
- v0.11.0-rc.4 by @dessalines
- Change password by @dessalines in [#14](https://github.com/LemmyNet/lemmy-js-client/pull/14)
- v0.11.0-rc.3 by @dessalines
- Remove community creator. by @dessalines
- Merge branch 'main' into change_password by @dessalines
- Display name by @dessalines in [#15](https://github.com/LemmyNet/lemmy-js-client/pull/15)
- Merge branch 'main' into display_name by @dessalines
- v0.11.0-rc.1 by @dessalines
- Merge branch 'main' into change_password by @dessalines
- Fix instances by @dessalines in [#12](https://github.com/LemmyNet/lemmy-js-client/pull/12)
**Full Changelog**: https://github.com/LemmyNet/lemmy-js-client/compare/v0.10.3...v0.11.0
## What's Changed in v0.10.3
- v0.10.3 by @dessalines
- Fixing allowed and blocked by @dessalines
**Full Changelog**: https://github.com/LemmyNet/lemmy-js-client/compare/v0.10.0...v0.10.3
## What's Changed in v0.10.0
- v0.10.0 by @dessalines
- v0.11.0-rc.2 by @dessalines
- Adding change password endpoint. by @dessalines
- Api v3 by @dessalines in [#11](https://github.com/LemmyNet/lemmy-js-client/pull/11)
- Including API version in HTTP constructor. by @dessalines
- v0.10.0-rc.12 by @dessalines
- Split user table 2 by @dessalines in [#9](https://github.com/LemmyNet/lemmy-js-client/pull/9)
- v0.10.0-rc.10 by @dessalines
- Adding saved_only to GetComments and GetPosts by @dessalines
- v0.10.0-rc.9 by @dessalines
- Moving matrix_user_id and admin to Person table. by @dessalines
- Merge branch 'main' into split_user_table_2 by @dessalines
- Fix markAllAsRead response type by @dessalines in [#10](https://github.com/LemmyNet/lemmy-js-client/pull/10)
- Fix markAllAsRead response type by @shilangyu
- v0.10.0-rc.5 by @dessalines
- Fixing AddAdmin. by @dessalines
- v0.10.0-rc.4 by @dessalines
- Fixing saveusersettings by @dessalines
- v0.10.0-rc.3 by @dessalines
- v0.10.0-rc.2 by @dessalines
- Update API to deal with new person table. Fixes #7 by @dessalines
- v0.10.0-rc.1 by @dessalines
- Remove categories by @Nutomic in [#6](https://github.com/LemmyNet/lemmy-js-client/pull/6)
**Full Changelog**: https://github.com/LemmyNet/lemmy-js-client/compare/v0.9.9...v0.10.0
## What's Changed in v0.9.9
- v0.9.9 by @dessalines
**Full Changelog**: https://github.com/LemmyNet/lemmy-js-client/compare/v0.9.8...v0.9.9
## What's Changed in v0.9.8
- v0.9.8 by @dessalines
- New comment sort by @dessalines in [#5](https://github.com/LemmyNet/lemmy-js-client/pull/5)
**Full Changelog**: https://github.com/LemmyNet/lemmy-js-client/compare/v0.9.4...v0.9.8
## What's Changed in v0.9.4
- v0.9.4 by @dessalines
- v0.9.4-rc.1 by @dessalines
- Adding MostComments sort, and FederatedInstances by @dessalines
**Full Changelog**: https://github.com/LemmyNet/lemmy-js-client/compare/v0.9.1...v0.9.4
## What's Changed in v0.9.1
- v0.9.1 by @dessalines
- Add active aggregates by @dessalines in [#3](https://github.com/LemmyNet/lemmy-js-client/pull/3)
- Add listing type to list communities by @dessalines in [#2](https://github.com/LemmyNet/lemmy-js-client/pull/2)
- v0.9.1-rc.1 by @dessalines
- Adding listing_type to ListCommunities. by @dessalines
**Full Changelog**: https://github.com/LemmyNet/lemmy-js-client/compare/v0.9.0...v0.9.1
## What's Changed in v0.9.0
- v0.9.0 by @dessalines
- v0.9.0-rc.18 by @dessalines
- Adding some comments. by @dessalines
- Revert "Trying to add string dates to javascript Date." by @dessalines
- v0.9.0-rc.17 by @dessalines
- Trying to add string dates to javascript Date. by @dessalines
- v0.9.0-rc.16 by @dessalines
- Adding new version to deploy. by @dessalines
- v0.9.0-rc.13 by @dessalines
- Adding email. by @dessalines
- Fixing drone. by @dessalines
- Trying to add an npm deploy. by @dessalines
- Adding a drone.yml. by @dessalines
- V2 api by @dessalines in [#1](https://github.com/LemmyNet/lemmy-js-client/pull/1)
- v0.9.0-rc.12 by @dessalines
- Making a few API v2 changes. by @dessalines
- v0.9.0-rc.11 by @dessalines
- Adding some API comments. by @dessalines
**Full Changelog**: https://github.com/LemmyNet/lemmy-js-client/compare/v1.0.16...v0.9.0
## What's Changed in v1.0.16
- v1.0.16 by @dessalines
- Updating postformparams. by @dessalines
## What's Changed in v1.0.15
- v1.0.15 by @dessalines
- Adding optional headers to the http client. by @dessalines
- Upgrade deps. by @dessalines
**Full Changelog**: https://github.com/LemmyNet/lemmy-js-client/compare/v1.0.14...v1.0.15
## What's Changed in v1.0.14
- v1.0.14 by @dessalines
- Adding community_name for search. by @dessalines
**Full Changelog**: https://github.com/LemmyNet/lemmy-js-client/compare/v1.0.13...v1.0.14
## What's Changed in v1.0.13
- v1.0.13 by @dessalines
- Removing auth from post and community join. by @dessalines
**Full Changelog**: https://github.com/LemmyNet/lemmy-js-client/compare/v1.0.12...v1.0.13
## What's Changed in v1.0.12
- v1.0.12 by @dessalines
- Adding post and community join. by @dessalines
**Full Changelog**: https://github.com/LemmyNet/lemmy-js-client/compare/v1.0.11...v1.0.12
## What's Changed in v1.0.11
- v1.0.11 by @dessalines
- Adding community_name for getposts and getcomments. by @dessalines
**Full Changelog**: https://github.com/LemmyNet/lemmy-js-client/compare/v1.0.10...v1.0.11
## What's Changed in v1.0.10
- v1.0.10 by @dessalines
- Adding local. by @dessalines
**Full Changelog**: https://github.com/LemmyNet/lemmy-js-client/compare/v1.0.8...v1.0.10
## What's Changed in v1.0.8
- v1.0.8 by @dessalines
- Fixing url. by @dessalines
**Full Changelog**: https://github.com/LemmyNet/lemmy-js-client/compare/v1.0.7...v1.0.8
## What's Changed in v1.0.7
- v1.0.7 by @dessalines
**Full Changelog**: https://github.com/LemmyNet/lemmy-js-client/compare/v1.0.6...v1.0.7
## What's Changed in v1.0.6
- v1.0.6 by @dessalines
**Full Changelog**: https://github.com/LemmyNet/lemmy-js-client/compare/v1.0.5...v1.0.6
## What's Changed in v1.0.5
- v1.0.5 by @dessalines
**Full Changelog**: https://github.com/LemmyNet/lemmy-js-client/compare/v1.0.4...v1.0.5
## What's Changed in v1.0.4
- v1.0.4 by @dessalines
- Adding an HTTP client. Cleaning up Websocket client. by @dessalines
**Full Changelog**: https://github.com/LemmyNet/lemmy-js-client/compare/v1.0.2...v1.0.4
## What's Changed in v1.0.2
- v1.0.2 by @dessalines
- Initial commit. by @dessalines
**Full Changelog**: https://github.com/LemmyNet/lemmy-js-client/compare/v1.0.1...v1.0.2
## What's Changed in v1.0.1
- v1.0.1 by @dessalines
<!-- generated by git-cliff -->

91
cliff.toml Normal file
View file

@ -0,0 +1,91 @@
# git-cliff ~ configuration file
# https://git-cliff.org/docs/configuration
[remote.github]
owner = "LemmyNet"
repo = "lemmy-js-client"
# token = ""
[changelog]
# template for the changelog body
# https://keats.github.io/tera/docs/#introduction
body = """
## What's Changed
{%- if version %} in {{ version }}{%- endif -%}
{% for commit in commits %}
{% if commit.github.pr_title -%}
{%- set commit_message = commit.github.pr_title -%}
{%- else -%}
{%- set commit_message = commit.message -%}
{%- endif -%}
* {{ commit_message | split(pat="\n") | first | trim }}\
{% if commit.github.username %} by @{{ commit.github.username }}{%- endif -%}
{% if commit.github.pr_number %} in \
[#{{ commit.github.pr_number }}]({{ self::remote_url() }}/pull/{{ commit.github.pr_number }}) \
{%- endif %}
{%- endfor -%}
{%- if github -%}
{% if github.contributors | filter(attribute="is_first_time", value=true) | length != 0 %}
{% raw %}\n{% endraw -%}
## New Contributors
{%- endif %}\
{% for contributor in github.contributors | filter(attribute="is_first_time", value=true) %}
* @{{ contributor.username }} made their first contribution
{%- if contributor.pr_number %} in \
[#{{ contributor.pr_number }}]({{ self::remote_url() }}/pull/{{ contributor.pr_number }}) \
{%- endif %}
{%- endfor -%}
{%- endif -%}
{% if version %}
{% if previous.version %}
**Full Changelog**: {{ self::remote_url() }}/compare/{{ previous.version }}...{{ version }}
{% endif %}
{% else -%}
{% raw %}\n{% endraw %}
{% endif %}
{%- macro remote_url() -%}
https://github.com/{{ remote.github.owner }}/{{ remote.github.repo }}
{%- endmacro -%}
"""
# remove the leading and trailing whitespace from the template
trim = true
# changelog footer
footer = """
<!-- generated by git-cliff -->
"""
# postprocessors
postprocessors = []
[git]
# parse the commits based on https://www.conventionalcommits.org
conventional_commits = false
# filter out the commits that are not conventional
filter_unconventional = true
# process each line of a commit as an individual commit
split_commits = false
# regex for preprocessing the commit messages
commit_preprocessors = [
# remove issue numbers from commits
{ pattern = '\((\w+\s)?#([0-9]+)\)', replace = "" },
]
commit_parsers = [
{ field = "author.name", pattern = "renovate", skip = true },
]
# protect breaking changes from being skipped due to matching a skipping commit_parser
protect_breaking_commits = false
# filter out the commits that are not matched by commit parsers
filter_commits = false
# regex for matching git tags
tag_pattern = "[0-9].*"
# regex for skipping tags
skip_tags = "beta|alpha"
# regex for ignoring tags
ignore_tags = "rc"
# sort the tags topologically
topo_order = false
# sort the commits inside sections by oldest/newest order
sort_commits = "newest"

View file

@ -30,6 +30,9 @@ rm src/types/Sensitive.ts
# Change all the bigints to numbers # Change all the bigints to numbers
find src/types -type f -name '*.ts' -exec sed -i 's/bigint/number/g' {} + find src/types -type f -name '*.ts' -exec sed -i 's/bigint/number/g' {} +
# on MacOS:
# find src/types -type f -name '*.ts' -exec sed -i '' -e 's/bigint/number/g' {} \;
node putTypesInIndex.js node putTypesInIndex.js
prettier -w src prettier -w src

6
generate_changelog.sh Executable file
View file

@ -0,0 +1,6 @@
#!/bin/sh
set -e
# Adding to CHANGELOG.md
git cliff --output CHANGELOG.md
prettier -w CHANGELOG.md

View file

@ -1,7 +1,7 @@
{ {
"name": "lemmy-js-client", "name": "lemmy-js-client",
"description": "A javascript / typescript client for Lemmy", "description": "A javascript / typescript client for Lemmy",
"version": "0.19.5-alpha.1", "version": "0.20.0-alpha.10",
"author": "Dessalines <tyhou13@gmx.com>", "author": "Dessalines <tyhou13@gmx.com>",
"license": "AGPL-3.0", "license": "AGPL-3.0",
"main": "./dist/index.js", "main": "./dist/index.js",
@ -19,23 +19,23 @@
"url": "git+https://github.com/LemmyNet/lemmy-js-client.git" "url": "git+https://github.com/LemmyNet/lemmy-js-client.git"
}, },
"devDependencies": { "devDependencies": {
"@types/node": "^20.11.19", "@types/node": "^22.1.0",
"@typescript-eslint/eslint-plugin": "^7.0.1", "@typescript-eslint/eslint-plugin": "^8.0.0",
"@typescript-eslint/parser": "^7.0.1", "@typescript-eslint/parser": "^8.0.0",
"eslint": "^9.0.0", "eslint": "^9.8.0",
"eslint-plugin-prettier": "^5.1.3", "eslint-plugin-prettier": "^5.2.1",
"husky": "^9.0.11", "husky": "^9.1.4",
"lint-staged": "^15.2.2", "lint-staged": "^15.2.7",
"prettier": "^3.2.5", "prettier": "^3.3.3",
"prettier-plugin-import-sort": "^0.0.7", "prettier-plugin-import-sort": "^0.0.7",
"prettier-plugin-organize-imports": "^3.2.4", "prettier-plugin-organize-imports": "^4.0.0",
"prettier-plugin-packagejson": "^2.4.11", "prettier-plugin-packagejson": "^2.5.1",
"sortpack": "^2.4.0", "sortpack": "^2.4.0",
"typedoc": "^0.25.8", "typedoc": "^0.26.5",
"typescript": "^5.3.3", "typescript": "^5.5.4",
"typescript-eslint": "^7.9.0" "typescript-eslint": "^8.0.0"
}, },
"packageManager": "pnpm@9.1.4", "packageManager": "pnpm@9.11.0",
"types": "./dist/index.d.ts", "types": "./dist/index.d.ts",
"lint-staged": { "lint-staged": {
"*.{ts,tsx,js}": [ "*.{ts,tsx,js}": [

File diff suppressed because it is too large Load diff

View file

@ -1,5 +1,6 @@
{ {
"$schema": "https://docs.renovatebot.com/renovate-schema.json", "$schema": "https://docs.renovatebot.com/renovate-schema.json",
"extends": ["config:recommended"], "extends": ["config:recommended"],
"schedule": ["before 4am on the first day of the month"] "schedule": ["before 4am on Monday"],
"automerge": true
} }

View file

@ -22,6 +22,7 @@ import { CreateCommentLike } from "./types/CreateCommentLike";
import { CreateCommentReport } from "./types/CreateCommentReport"; import { CreateCommentReport } from "./types/CreateCommentReport";
import { CreateCommunity } from "./types/CreateCommunity"; import { CreateCommunity } from "./types/CreateCommunity";
import { CreateCustomEmoji } from "./types/CreateCustomEmoji"; import { CreateCustomEmoji } from "./types/CreateCustomEmoji";
import { CreateOAuthProvider } from "./types/CreateOAuthProvider";
import { CreatePost } from "./types/CreatePost"; import { CreatePost } from "./types/CreatePost";
import { CreatePostLike } from "./types/CreatePostLike"; import { CreatePostLike } from "./types/CreatePostLike";
import { CreatePostReport } from "./types/CreatePostReport"; import { CreatePostReport } from "./types/CreatePostReport";
@ -33,15 +34,18 @@ import { DeleteAccount } from "./types/DeleteAccount";
import { DeleteComment } from "./types/DeleteComment"; import { DeleteComment } from "./types/DeleteComment";
import { DeleteCommunity } from "./types/DeleteCommunity"; import { DeleteCommunity } from "./types/DeleteCommunity";
import { DeleteCustomEmoji } from "./types/DeleteCustomEmoji"; import { DeleteCustomEmoji } from "./types/DeleteCustomEmoji";
import { DeleteOAuthProvider } from "./types/DeleteOAuthProvider";
import { DeletePost } from "./types/DeletePost"; import { DeletePost } from "./types/DeletePost";
import { DeletePrivateMessage } from "./types/DeletePrivateMessage"; import { DeletePrivateMessage } from "./types/DeletePrivateMessage";
import { DistinguishComment } from "./types/DistinguishComment"; import { DistinguishComment } from "./types/DistinguishComment";
import { EditComment } from "./types/EditComment"; import { EditComment } from "./types/EditComment";
import { EditCommunity } from "./types/EditCommunity"; import { EditCommunity } from "./types/EditCommunity";
import { EditCustomEmoji } from "./types/EditCustomEmoji"; import { EditCustomEmoji } from "./types/EditCustomEmoji";
import { EditOAuthProvider } from "./types/EditOAuthProvider";
import { EditPost } from "./types/EditPost"; import { EditPost } from "./types/EditPost";
import { EditPrivateMessage } from "./types/EditPrivateMessage"; import { EditPrivateMessage } from "./types/EditPrivateMessage";
import { EditSite } from "./types/EditSite"; import { EditSite } from "./types/EditSite";
import { OAuthProvider } from "./types/OAuthProvider";
import { FeaturePost } from "./types/FeaturePost"; import { FeaturePost } from "./types/FeaturePost";
import { FollowCommunity } from "./types/FollowCommunity"; import { FollowCommunity } from "./types/FollowCommunity";
import { GetCaptchaResponse } from "./types/GetCaptchaResponse"; import { GetCaptchaResponse } from "./types/GetCaptchaResponse";
@ -139,6 +143,8 @@ import { ListCommentLikesResponse } from "./types/ListCommentLikesResponse";
import { HidePost } from "./types/HidePost"; import { HidePost } from "./types/HidePost";
import { ListMedia } from "./types/ListMedia"; import { ListMedia } from "./types/ListMedia";
import { ListMediaResponse } from "./types/ListMediaResponse"; import { ListMediaResponse } from "./types/ListMediaResponse";
import { AuthenticateWithOauth } from "./types/AuthenticateWithOauth";
import { GetRegistrationApplication } from "./types/GetRegistrationApplication";
enum HttpType { enum HttpType {
Get = "GET", Get = "GET",
@ -1330,6 +1336,18 @@ export class LemmyHttp {
>(HttpType.Put, "/admin/registration_application/approve", form); >(HttpType.Put, "/admin/registration_application/approve", form);
} }
/**
* Get the application a user submitted when they first registered their account
*
* `HTTP.GET /admin/registration_application`
*/
getRegistrationApplication(form: GetRegistrationApplication) {
return this.#wrapper<
GetRegistrationApplication,
RegistrationApplicationResponse
>(HttpType.Get, "/admin/registration_application", form);
}
/** /**
* Purge / Delete a person from the database. * Purge / Delete a person from the database.
* *
@ -1421,6 +1439,58 @@ export class LemmyHttp {
); );
} }
/**
* Create a new oauth provider method
*
* `HTTP.POST /oauth_provider`
*/
createOAuthProvider(form: CreateOAuthProvider) {
return this.#wrapper<CreateOAuthProvider, OAuthProvider>(
HttpType.Post,
"/oauth_provider",
form,
);
}
/**
* Edit an existing oauth provider method
*
* `HTTP.PUT /oauth_provider`
*/
editOAuthProvider(form: EditOAuthProvider) {
return this.#wrapper<EditOAuthProvider, OAuthProvider>(
HttpType.Put,
"/oauth_provider",
form,
);
}
/**
* Delete an oauth provider method
*
* `HTTP.Post /oauth_provider/delete`
*/
deleteOAuthProvider(form: DeleteOAuthProvider) {
return this.#wrapper<DeleteOAuthProvider, SuccessResponse>(
HttpType.Post,
"/oauth_provider/delete",
form,
);
}
/**
* Authenticate with OAuth
*
* `HTTP.Post /oauth/authenticate`
*/
authenticateWithOAuth(form: AuthenticateWithOauth) {
return this.#wrapper<AuthenticateWithOauth, LoginResponse>(
HttpType.Post,
"/oauth/authenticate",
form,
);
}
/** /**
* Fetch federated instances. * Fetch federated instances.
* *
@ -1526,7 +1596,7 @@ export class LemmyHttp {
try { try {
json = await response.json(); json = await response.json();
} catch (error) { } catch {
throw new Error(response.statusText); throw new Error(response.statusText);
} }

View file

@ -13,6 +13,7 @@ export { AdminPurgePersonView } from "./types/AdminPurgePersonView";
export { AdminPurgePost } from "./types/AdminPurgePost"; export { AdminPurgePost } from "./types/AdminPurgePost";
export { AdminPurgePostView } from "./types/AdminPurgePostView"; export { AdminPurgePostView } from "./types/AdminPurgePostView";
export { ApproveRegistrationApplication } from "./types/ApproveRegistrationApplication"; export { ApproveRegistrationApplication } from "./types/ApproveRegistrationApplication";
export { AuthenticateWithOauth } from "./types/AuthenticateWithOauth";
export { BanFromCommunity } from "./types/BanFromCommunity"; export { BanFromCommunity } from "./types/BanFromCommunity";
export { BanFromCommunityResponse } from "./types/BanFromCommunityResponse"; export { BanFromCommunityResponse } from "./types/BanFromCommunityResponse";
export { BanPerson } from "./types/BanPerson"; export { BanPerson } from "./types/BanPerson";
@ -42,7 +43,6 @@ export { CommentSortType } from "./types/CommentSortType";
export { CommentView } from "./types/CommentView"; export { CommentView } from "./types/CommentView";
export { Community } from "./types/Community"; export { Community } from "./types/Community";
export { CommunityAggregates } from "./types/CommunityAggregates"; export { CommunityAggregates } from "./types/CommunityAggregates";
export { CommunityBlockView } from "./types/CommunityBlockView";
export { CommunityFollowerView } from "./types/CommunityFollowerView"; export { CommunityFollowerView } from "./types/CommunityFollowerView";
export { CommunityId } from "./types/CommunityId"; export { CommunityId } from "./types/CommunityId";
export { CommunityModeratorView } from "./types/CommunityModeratorView"; export { CommunityModeratorView } from "./types/CommunityModeratorView";
@ -54,12 +54,14 @@ export { CreateCommentLike } from "./types/CreateCommentLike";
export { CreateCommentReport } from "./types/CreateCommentReport"; export { CreateCommentReport } from "./types/CreateCommentReport";
export { CreateCommunity } from "./types/CreateCommunity"; export { CreateCommunity } from "./types/CreateCommunity";
export { CreateCustomEmoji } from "./types/CreateCustomEmoji"; export { CreateCustomEmoji } from "./types/CreateCustomEmoji";
export { CreateOAuthProvider } from "./types/CreateOAuthProvider";
export { CreatePost } from "./types/CreatePost"; export { CreatePost } from "./types/CreatePost";
export { CreatePostLike } from "./types/CreatePostLike"; export { CreatePostLike } from "./types/CreatePostLike";
export { CreatePostReport } from "./types/CreatePostReport"; export { CreatePostReport } from "./types/CreatePostReport";
export { CreatePrivateMessage } from "./types/CreatePrivateMessage"; export { CreatePrivateMessage } from "./types/CreatePrivateMessage";
export { CreatePrivateMessageReport } from "./types/CreatePrivateMessageReport"; export { CreatePrivateMessageReport } from "./types/CreatePrivateMessageReport";
export { CreateSite } from "./types/CreateSite"; export { CreateSite } from "./types/CreateSite";
export { CreateTagline } from "./types/CreateTagline";
export { CustomEmoji } from "./types/CustomEmoji"; export { CustomEmoji } from "./types/CustomEmoji";
export { CustomEmojiId } from "./types/CustomEmojiId"; export { CustomEmojiId } from "./types/CustomEmojiId";
export { CustomEmojiKeyword } from "./types/CustomEmojiKeyword"; export { CustomEmojiKeyword } from "./types/CustomEmojiKeyword";
@ -69,12 +71,15 @@ export { DeleteAccount } from "./types/DeleteAccount";
export { DeleteComment } from "./types/DeleteComment"; export { DeleteComment } from "./types/DeleteComment";
export { DeleteCommunity } from "./types/DeleteCommunity"; export { DeleteCommunity } from "./types/DeleteCommunity";
export { DeleteCustomEmoji } from "./types/DeleteCustomEmoji"; export { DeleteCustomEmoji } from "./types/DeleteCustomEmoji";
export { DeleteOAuthProvider } from "./types/DeleteOAuthProvider";
export { DeletePost } from "./types/DeletePost"; export { DeletePost } from "./types/DeletePost";
export { DeletePrivateMessage } from "./types/DeletePrivateMessage"; export { DeletePrivateMessage } from "./types/DeletePrivateMessage";
export { DeleteTagline } from "./types/DeleteTagline";
export { DistinguishComment } from "./types/DistinguishComment"; export { DistinguishComment } from "./types/DistinguishComment";
export { EditComment } from "./types/EditComment"; export { EditComment } from "./types/EditComment";
export { EditCommunity } from "./types/EditCommunity"; export { EditCommunity } from "./types/EditCommunity";
export { EditCustomEmoji } from "./types/EditCustomEmoji"; export { EditCustomEmoji } from "./types/EditCustomEmoji";
export { EditOAuthProvider } from "./types/EditOAuthProvider";
export { EditPost } from "./types/EditPost"; export { EditPost } from "./types/EditPost";
export { EditPrivateMessage } from "./types/EditPrivateMessage"; export { EditPrivateMessage } from "./types/EditPrivateMessage";
export { EditSite } from "./types/EditSite"; export { EditSite } from "./types/EditSite";
@ -100,6 +105,7 @@ export { GetPostResponse } from "./types/GetPostResponse";
export { GetPosts } from "./types/GetPosts"; export { GetPosts } from "./types/GetPosts";
export { GetPostsResponse } from "./types/GetPostsResponse"; export { GetPostsResponse } from "./types/GetPostsResponse";
export { GetPrivateMessages } from "./types/GetPrivateMessages"; export { GetPrivateMessages } from "./types/GetPrivateMessages";
export { GetRegistrationApplication } from "./types/GetRegistrationApplication";
export { GetReplies } from "./types/GetReplies"; export { GetReplies } from "./types/GetReplies";
export { GetRepliesResponse } from "./types/GetRepliesResponse"; export { GetRepliesResponse } from "./types/GetRepliesResponse";
export { GetReportCount } from "./types/GetReportCount"; export { GetReportCount } from "./types/GetReportCount";
@ -113,7 +119,6 @@ export { HideCommunity } from "./types/HideCommunity";
export { HidePost } from "./types/HidePost"; export { HidePost } from "./types/HidePost";
export { ImageDetails } from "./types/ImageDetails"; export { ImageDetails } from "./types/ImageDetails";
export { Instance } from "./types/Instance"; export { Instance } from "./types/Instance";
export { InstanceBlockView } from "./types/InstanceBlockView";
export { InstanceId } from "./types/InstanceId"; export { InstanceId } from "./types/InstanceId";
export { InstanceWithFederationState } from "./types/InstanceWithFederationState"; export { InstanceWithFederationState } from "./types/InstanceWithFederationState";
export { Language } from "./types/Language"; export { Language } from "./types/Language";
@ -126,6 +131,9 @@ export { ListCommentReports } from "./types/ListCommentReports";
export { ListCommentReportsResponse } from "./types/ListCommentReportsResponse"; export { ListCommentReportsResponse } from "./types/ListCommentReportsResponse";
export { ListCommunities } from "./types/ListCommunities"; export { ListCommunities } from "./types/ListCommunities";
export { ListCommunitiesResponse } from "./types/ListCommunitiesResponse"; export { ListCommunitiesResponse } from "./types/ListCommunitiesResponse";
export { ListCustomEmojis } from "./types/ListCustomEmojis";
export { ListCustomEmojisResponse } from "./types/ListCustomEmojisResponse";
export { ListLoginsResponse } from "./types/ListLoginsResponse";
export { ListMedia } from "./types/ListMedia"; export { ListMedia } from "./types/ListMedia";
export { ListMediaResponse } from "./types/ListMediaResponse"; export { ListMediaResponse } from "./types/ListMediaResponse";
export { ListPostLikes } from "./types/ListPostLikes"; export { ListPostLikes } from "./types/ListPostLikes";
@ -136,6 +144,8 @@ export { ListPrivateMessageReports } from "./types/ListPrivateMessageReports";
export { ListPrivateMessageReportsResponse } from "./types/ListPrivateMessageReportsResponse"; export { ListPrivateMessageReportsResponse } from "./types/ListPrivateMessageReportsResponse";
export { ListRegistrationApplications } from "./types/ListRegistrationApplications"; export { ListRegistrationApplications } from "./types/ListRegistrationApplications";
export { ListRegistrationApplicationsResponse } from "./types/ListRegistrationApplicationsResponse"; export { ListRegistrationApplicationsResponse } from "./types/ListRegistrationApplicationsResponse";
export { ListTaglines } from "./types/ListTaglines";
export { ListTaglinesResponse } from "./types/ListTaglinesResponse";
export { ListingType } from "./types/ListingType"; export { ListingType } from "./types/ListingType";
export { LocalImage } from "./types/LocalImage"; export { LocalImage } from "./types/LocalImage";
export { LocalImageView } from "./types/LocalImageView"; export { LocalImageView } from "./types/LocalImageView";
@ -180,14 +190,17 @@ export { ModTransferCommunityView } from "./types/ModTransferCommunityView";
export { ModlogActionType } from "./types/ModlogActionType"; export { ModlogActionType } from "./types/ModlogActionType";
export { ModlogListParams } from "./types/ModlogListParams"; export { ModlogListParams } from "./types/ModlogListParams";
export { MyUserInfo } from "./types/MyUserInfo"; export { MyUserInfo } from "./types/MyUserInfo";
export { OAuthAccount } from "./types/OAuthAccount";
export { OAuthProvider } from "./types/OAuthProvider";
export { OAuthProviderId } from "./types/OAuthProviderId";
export { OAuthProviderInsertForm } from "./types/OAuthProviderInsertForm";
export { OAuthProviderUpdateForm } from "./types/OAuthProviderUpdateForm";
export { OpenGraphData } from "./types/OpenGraphData"; export { OpenGraphData } from "./types/OpenGraphData";
export { PaginationCursor } from "./types/PaginationCursor"; export { PaginationCursor } from "./types/PaginationCursor";
export { PasswordChangeAfterReset } from "./types/PasswordChangeAfterReset"; export { PasswordChangeAfterReset } from "./types/PasswordChangeAfterReset";
export { PasswordReset } from "./types/PasswordReset"; export { PasswordReset } from "./types/PasswordReset";
export { Person } from "./types/Person"; export { Person } from "./types/Person";
export { PersonAggregates } from "./types/PersonAggregates"; export { PersonAggregates } from "./types/PersonAggregates";
export { PersonBlockId } from "./types/PersonBlockId";
export { PersonBlockView } from "./types/PersonBlockView";
export { PersonId } from "./types/PersonId"; export { PersonId } from "./types/PersonId";
export { PersonMention } from "./types/PersonMention"; export { PersonMention } from "./types/PersonMention";
export { PersonMentionId } from "./types/PersonMentionId"; export { PersonMentionId } from "./types/PersonMentionId";
@ -204,6 +217,7 @@ export { PostReportId } from "./types/PostReportId";
export { PostReportResponse } from "./types/PostReportResponse"; export { PostReportResponse } from "./types/PostReportResponse";
export { PostReportView } from "./types/PostReportView"; export { PostReportView } from "./types/PostReportView";
export { PostResponse } from "./types/PostResponse"; export { PostResponse } from "./types/PostResponse";
export { PostSortType } from "./types/PostSortType";
export { PostView } from "./types/PostView"; export { PostView } from "./types/PostView";
export { PrivateMessage } from "./types/PrivateMessage"; export { PrivateMessage } from "./types/PrivateMessage";
export { PrivateMessageId } from "./types/PrivateMessageId"; export { PrivateMessageId } from "./types/PrivateMessageId";
@ -214,6 +228,7 @@ export { PrivateMessageReportView } from "./types/PrivateMessageReportView";
export { PrivateMessageResponse } from "./types/PrivateMessageResponse"; export { PrivateMessageResponse } from "./types/PrivateMessageResponse";
export { PrivateMessageView } from "./types/PrivateMessageView"; export { PrivateMessageView } from "./types/PrivateMessageView";
export { PrivateMessagesResponse } from "./types/PrivateMessagesResponse"; export { PrivateMessagesResponse } from "./types/PrivateMessagesResponse";
export { PublicOAuthProvider } from "./types/PublicOAuthProvider";
export { PurgeComment } from "./types/PurgeComment"; export { PurgeComment } from "./types/PurgeComment";
export { PurgeCommunity } from "./types/PurgeCommunity"; export { PurgeCommunity } from "./types/PurgeCommunity";
export { PurgePerson } from "./types/PurgePerson"; export { PurgePerson } from "./types/PurgePerson";
@ -221,6 +236,7 @@ export { PurgePost } from "./types/PurgePost";
export { ReadableFederationState } from "./types/ReadableFederationState"; export { ReadableFederationState } from "./types/ReadableFederationState";
export { Register } from "./types/Register"; export { Register } from "./types/Register";
export { RegistrationApplication } from "./types/RegistrationApplication"; export { RegistrationApplication } from "./types/RegistrationApplication";
export { RegistrationApplicationId } from "./types/RegistrationApplicationId";
export { RegistrationApplicationResponse } from "./types/RegistrationApplicationResponse"; export { RegistrationApplicationResponse } from "./types/RegistrationApplicationResponse";
export { RegistrationApplicationView } from "./types/RegistrationApplicationView"; export { RegistrationApplicationView } from "./types/RegistrationApplicationView";
export { RegistrationMode } from "./types/RegistrationMode"; export { RegistrationMode } from "./types/RegistrationMode";
@ -243,11 +259,13 @@ export { SiteAggregates } from "./types/SiteAggregates";
export { SiteId } from "./types/SiteId"; export { SiteId } from "./types/SiteId";
export { SiteResponse } from "./types/SiteResponse"; export { SiteResponse } from "./types/SiteResponse";
export { SiteView } from "./types/SiteView"; export { SiteView } from "./types/SiteView";
export { SortType } from "./types/SortType";
export { SubscribedType } from "./types/SubscribedType"; export { SubscribedType } from "./types/SubscribedType";
export { SuccessResponse } from "./types/SuccessResponse"; export { SuccessResponse } from "./types/SuccessResponse";
export { Tagline } from "./types/Tagline"; export { Tagline } from "./types/Tagline";
export { TaglineId } from "./types/TaglineId";
export { TaglineResponse } from "./types/TaglineResponse";
export { TransferCommunity } from "./types/TransferCommunity"; export { TransferCommunity } from "./types/TransferCommunity";
export { UpdateTagline } from "./types/UpdateTagline";
export { UpdateTotp } from "./types/UpdateTotp"; export { UpdateTotp } from "./types/UpdateTotp";
export { UpdateTotpResponse } from "./types/UpdateTotpResponse"; export { UpdateTotpResponse } from "./types/UpdateTotpResponse";
export { VerifyEmail } from "./types/VerifyEmail"; export { VerifyEmail } from "./types/VerifyEmail";

View file

@ -1,7 +1,8 @@
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually. // This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { RegistrationApplicationId } from "./RegistrationApplicationId";
export interface ApproveRegistrationApplication { export interface ApproveRegistrationApplication {
id: number; id: RegistrationApplicationId;
approve: boolean; approve: boolean;
deny_reason?: string; deny_reason?: string;
} }

View file

@ -0,0 +1,10 @@
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
export interface AuthenticateWithOauth {
code: string;
oauth_provider_id: string;
redirect_uri: string;
show_nsfw?: boolean;
username?: string;
answer?: string;
}

View file

@ -6,7 +6,7 @@ export interface BanFromCommunity {
community_id: CommunityId; community_id: CommunityId;
person_id: PersonId; person_id: PersonId;
ban: boolean; ban: boolean;
remove_data?: boolean; remove_or_restore_data?: boolean;
reason?: string; reason?: string;
expires?: number; expires?: number;
} }

View file

@ -4,7 +4,7 @@ import type { PersonId } from "./PersonId";
export interface BanPerson { export interface BanPerson {
person_id: PersonId; person_id: PersonId;
ban: boolean; ban: boolean;
remove_data?: boolean; remove_or_restore_data?: boolean;
reason?: string; reason?: string;
expires?: number; expires?: number;
} }

View file

@ -1,8 +0,0 @@
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { Community } from "./Community";
import type { Person } from "./Person";
export interface CommunityBlockView {
person: Person;
community: Community;
}

View file

@ -0,0 +1,16 @@
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
export interface CreateOAuthProvider {
display_name: string;
issuer: string;
authorization_endpoint: string;
token_endpoint: string;
userinfo_endpoint: string;
id_claim: string;
client_id: string;
client_secret: string;
scopes: string;
auto_verify_email: boolean;
account_linking_enabled: boolean;
enabled: boolean;
}

View file

@ -1,9 +1,10 @@
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually. // This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { CommentSortType } from "./CommentSortType";
import type { LanguageId } from "./LanguageId"; import type { LanguageId } from "./LanguageId";
import type { ListingType } from "./ListingType"; import type { ListingType } from "./ListingType";
import type { PostListingMode } from "./PostListingMode"; import type { PostListingMode } from "./PostListingMode";
import type { PostSortType } from "./PostSortType";
import type { RegistrationMode } from "./RegistrationMode"; import type { RegistrationMode } from "./RegistrationMode";
import type { SortType } from "./SortType";
export interface CreateSite { export interface CreateSite {
name: string; name: string;
@ -19,7 +20,9 @@ export interface CreateSite {
private_instance?: boolean; private_instance?: boolean;
default_theme?: string; default_theme?: string;
default_post_listing_type?: ListingType; default_post_listing_type?: ListingType;
default_sort_type?: SortType; default_post_listing_mode?: PostListingMode;
default_post_sort_type?: PostSortType;
default_comment_sort_type?: CommentSortType;
legal_information?: string; legal_information?: string;
application_email_admins?: boolean; application_email_admins?: boolean;
hide_modlog_mod_names?: boolean; hide_modlog_mod_names?: boolean;
@ -44,8 +47,7 @@ export interface CreateSite {
captcha_difficulty?: string; captcha_difficulty?: string;
allowed_instances?: Array<string>; allowed_instances?: Array<string>;
blocked_instances?: Array<string>; blocked_instances?: Array<string>;
taglines?: Array<string>;
registration_mode?: RegistrationMode; registration_mode?: RegistrationMode;
oauth_registration?: boolean;
content_warning?: string; content_warning?: string;
default_post_listing_mode?: PostListingMode;
} }

View file

@ -1,7 +1,5 @@
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually. // This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { Person } from "./Person";
export interface PersonBlockView { export interface CreateTagline {
person: Person; content: string;
target: Person;
} }

View file

@ -1,10 +1,8 @@
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually. // This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { CustomEmojiId } from "./CustomEmojiId"; import type { CustomEmojiId } from "./CustomEmojiId";
import type { LocalSiteId } from "./LocalSiteId";
export interface CustomEmoji { export interface CustomEmoji {
id: CustomEmojiId; id: CustomEmojiId;
local_site_id: LocalSiteId;
shortcode: string; shortcode: string;
image_url: string; image_url: string;
alt_text: string; alt_text: string;

View file

@ -0,0 +1,6 @@
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { OAuthProviderId } from "./OAuthProviderId";
export interface DeleteOAuthProvider {
id: OAuthProviderId;
}

View file

@ -0,0 +1,6 @@
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { TaglineId } from "./TaglineId";
export interface DeleteTagline {
id: TaglineId;
}

View file

@ -0,0 +1,16 @@
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { OAuthProviderId } from "./OAuthProviderId";
export interface EditOAuthProvider {
id: OAuthProviderId;
display_name: string | null;
authorization_endpoint: string | null;
token_endpoint: string | null;
userinfo_endpoint: string | null;
id_claim: string | null;
client_secret: string | null;
scopes: string | null;
auto_verify_email: boolean | null;
account_linking_enabled: boolean | null;
enabled: boolean | null;
}

View file

@ -1,9 +1,10 @@
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually. // This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { CommentSortType } from "./CommentSortType";
import type { LanguageId } from "./LanguageId"; import type { LanguageId } from "./LanguageId";
import type { ListingType } from "./ListingType"; import type { ListingType } from "./ListingType";
import type { PostListingMode } from "./PostListingMode"; import type { PostListingMode } from "./PostListingMode";
import type { PostSortType } from "./PostSortType";
import type { RegistrationMode } from "./RegistrationMode"; import type { RegistrationMode } from "./RegistrationMode";
import type { SortType } from "./SortType";
export interface EditSite { export interface EditSite {
name?: string; name?: string;
@ -19,7 +20,9 @@ export interface EditSite {
private_instance?: boolean; private_instance?: boolean;
default_theme?: string; default_theme?: string;
default_post_listing_type?: ListingType; default_post_listing_type?: ListingType;
default_sort_type?: SortType; default_post_listing_mode?: PostListingMode;
default_post_sort_type?: PostSortType;
default_comment_sort_type?: CommentSortType;
legal_information?: string; legal_information?: string;
application_email_admins?: boolean; application_email_admins?: boolean;
hide_modlog_mod_names?: boolean; hide_modlog_mod_names?: boolean;
@ -45,9 +48,8 @@ export interface EditSite {
allowed_instances?: Array<string>; allowed_instances?: Array<string>;
blocked_instances?: Array<string>; blocked_instances?: Array<string>;
blocked_urls?: Array<string>; blocked_urls?: Array<string>;
taglines?: Array<string>;
registration_mode?: RegistrationMode; registration_mode?: RegistrationMode;
oauth_registration?: boolean;
reports_email_admins?: boolean; reports_email_admins?: boolean;
content_warning?: string; content_warning?: string;
default_post_listing_mode?: PostListingMode;
} }

View file

@ -1,12 +1,12 @@
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually. // This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { CommunityId } from "./CommunityId"; import type { CommunityId } from "./CommunityId";
import type { PersonId } from "./PersonId"; import type { PersonId } from "./PersonId";
import type { SortType } from "./SortType"; import type { PostSortType } from "./PostSortType";
export interface GetPersonDetails { export interface GetPersonDetails {
person_id?: PersonId; person_id?: PersonId;
username?: string; username?: string;
sort?: SortType; sort?: PostSortType;
page?: number; page?: number;
limit?: number; limit?: number;
community_id?: CommunityId; community_id?: CommunityId;

View file

@ -2,11 +2,11 @@
import type { CommunityId } from "./CommunityId"; import type { CommunityId } from "./CommunityId";
import type { ListingType } from "./ListingType"; import type { ListingType } from "./ListingType";
import type { PaginationCursor } from "./PaginationCursor"; import type { PaginationCursor } from "./PaginationCursor";
import type { SortType } from "./SortType"; import type { PostSortType } from "./PostSortType";
export interface GetPosts { export interface GetPosts {
type_?: ListingType; type_?: ListingType;
sort?: SortType; sort?: PostSortType;
page?: number; page?: number;
limit?: number; limit?: number;
community_id?: CommunityId; community_id?: CommunityId;
@ -15,5 +15,7 @@ export interface GetPosts {
liked_only?: boolean; liked_only?: boolean;
disliked_only?: boolean; disliked_only?: boolean;
show_hidden?: boolean; show_hidden?: boolean;
show_read?: boolean;
show_nsfw?: boolean;
page_cursor?: PaginationCursor; page_cursor?: PaginationCursor;
} }

View file

@ -0,0 +1,6 @@
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { PersonId } from "./PersonId";
export interface GetRegistrationApplication {
person_id: PersonId;
}

View file

@ -1,10 +1,11 @@
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually. // This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { CustomEmojiView } from "./CustomEmojiView";
import type { Language } from "./Language"; import type { Language } from "./Language";
import type { LanguageId } from "./LanguageId"; import type { LanguageId } from "./LanguageId";
import type { LocalSiteUrlBlocklist } from "./LocalSiteUrlBlocklist"; import type { LocalSiteUrlBlocklist } from "./LocalSiteUrlBlocklist";
import type { MyUserInfo } from "./MyUserInfo"; import type { MyUserInfo } from "./MyUserInfo";
import type { OAuthProvider } from "./OAuthProvider";
import type { PersonView } from "./PersonView"; import type { PersonView } from "./PersonView";
import type { PublicOAuthProvider } from "./PublicOAuthProvider";
import type { SiteView } from "./SiteView"; import type { SiteView } from "./SiteView";
import type { Tagline } from "./Tagline"; import type { Tagline } from "./Tagline";
@ -15,7 +16,8 @@ export interface GetSiteResponse {
my_user?: MyUserInfo; my_user?: MyUserInfo;
all_languages: Array<Language>; all_languages: Array<Language>;
discussion_languages: Array<LanguageId>; discussion_languages: Array<LanguageId>;
taglines: Array<Tagline>; tagline?: Tagline;
custom_emojis: Array<CustomEmojiView>; oauth_providers?: Array<PublicOAuthProvider>;
admin_oauth_providers?: Array<OAuthProvider>;
blocked_urls: Array<LocalSiteUrlBlocklist>; blocked_urls: Array<LocalSiteUrlBlocklist>;
} }

View file

@ -1,10 +0,0 @@
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { Instance } from "./Instance";
import type { Person } from "./Person";
import type { Site } from "./Site";
export interface InstanceBlockView {
person: Person;
instance: Instance;
site?: Site;
}

View file

@ -29,21 +29,11 @@ export type LemmyErrorType =
| { error: "not_top_admin" } | { error: "not_top_admin" }
| { error: "not_top_mod" } | { error: "not_top_mod" }
| { error: "not_logged_in" } | { error: "not_logged_in" }
| { error: "not_higher_mod" }
| { error: "not_higher_admin" }
| { error: "site_ban" } | { error: "site_ban" }
| { error: "deleted" } | { error: "deleted" }
| { error: "banned_from_community" } | { error: "banned_from_community" }
| { error: "couldnt_find_community" }
| { error: "couldnt_find_person" }
| { error: "couldnt_find_comment" }
| { error: "couldnt_find_comment_report" }
| { error: "couldnt_find_post_report" }
| { error: "couldnt_find_private_message_report" }
| { error: "couldnt_find_local_user" }
| { error: "couldnt_find_person_mention" }
| { error: "couldnt_find_registration_application" }
| { error: "couldnt_find_comment_reply" }
| { error: "couldnt_find_private_message" }
| { error: "couldnt_find_activity" }
| { error: "person_is_blocked" } | { error: "person_is_blocked" }
| { error: "community_is_blocked" } | { error: "community_is_blocked" }
| { error: "instance_is_blocked" } | { error: "instance_is_blocked" }
@ -64,14 +54,15 @@ export type LemmyErrorType =
| { error: "only_mods_can_post_in_community" } | { error: "only_mods_can_post_in_community" }
| { error: "couldnt_update_post" } | { error: "couldnt_update_post" }
| { error: "no_post_edit_allowed" } | { error: "no_post_edit_allowed" }
| { error: "couldnt_find_post" }
| { error: "edit_private_message_not_allowed" } | { error: "edit_private_message_not_allowed" }
| { error: "site_already_exists" } | { error: "site_already_exists" }
| { error: "application_question_required" } | { error: "application_question_required" }
| { error: "invalid_default_post_listing_type" } | { error: "invalid_default_post_listing_type" }
| { error: "registration_closed" } | { error: "registration_closed" }
| { error: "registration_application_answer_required" } | { error: "registration_application_answer_required" }
| { error: "registration_username_required" }
| { error: "email_already_exists" } | { error: "email_already_exists" }
| { error: "username_already_exists" }
| { error: "federation_forbidden_by_strict_allow_list" } | { error: "federation_forbidden_by_strict_allow_list" }
| { error: "person_is_banned_from_community" } | { error: "person_is_banned_from_community" }
| { error: "object_is_not_public" } | { error: "object_is_not_public" }
@ -118,7 +109,6 @@ export type LemmyErrorType =
| { error: "couldnt_update_community_hidden_status" } | { error: "couldnt_update_community_hidden_status" }
| { error: "person_block_already_exists" } | { error: "person_block_already_exists" }
| { error: "user_already_exists" } | { error: "user_already_exists" }
| { error: "token_not_found" }
| { error: "couldnt_like_post" } | { error: "couldnt_like_post" }
| { error: "couldnt_save_post" } | { error: "couldnt_save_post" }
| { error: "couldnt_mark_post_as_read" } | { error: "couldnt_mark_post_as_read" }
@ -140,7 +130,6 @@ export type LemmyErrorType =
| { error: "invalid_url" } | { error: "invalid_url" }
| { error: "email_send_failed" } | { error: "email_send_failed" }
| { error: "slurs" } | { error: "slurs" }
| { error: "couldnt_find_object" }
| { error: "registration_denied"; message: string | null } | { error: "registration_denied"; message: string | null }
| { error: "federation_disabled" } | { error: "federation_disabled" }
| { error: "domain_blocked"; message: string } | { error: "domain_blocked"; message: string }
@ -164,4 +153,11 @@ export type LemmyErrorType =
| { error: "cant_block_local_instance" } | { error: "cant_block_local_instance" }
| { error: "url_without_domain" } | { error: "url_without_domain" }
| { error: "inbox_timeout" } | { error: "inbox_timeout" }
| { error: "unknown"; message: string }; | { error: "oauth_authorization_invalid" }
| { error: "oauth_login_failed" }
| { error: "oauth_registration_closed" }
| { error: "couldnt_delete_oauth_provider" }
| { error: "unknown"; message: string }
| { error: "cant_delete_site" }
| { error: "url_length_overflow" }
| { error: "not_found" };

View file

@ -1,10 +1,10 @@
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually. // This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { ListingType } from "./ListingType"; import type { ListingType } from "./ListingType";
import type { SortType } from "./SortType"; import type { PostSortType } from "./PostSortType";
export interface ListCommunities { export interface ListCommunities {
type_?: ListingType; type_?: ListingType;
sort?: SortType; sort?: PostSortType;
show_nsfw?: boolean; show_nsfw?: boolean;
page?: number; page?: number;
limit?: number; limit?: number;

View file

@ -0,0 +1,8 @@
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
export interface ListCustomEmojis {
page?: number;
limit?: number;
category?: string;
ignore_page_limits?: boolean;
}

View file

@ -0,0 +1,6 @@
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { CustomEmojiView } from "./CustomEmojiView";
export interface ListCustomEmojisResponse {
custom_emojis: Array<CustomEmojiView>;
}

View file

@ -0,0 +1,6 @@
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { LoginToken } from "./LoginToken";
export interface ListLoginsResponse {
logins: Array<LoginToken>;
}

View file

@ -0,0 +1,6 @@
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
export interface ListTaglines {
page?: number;
limit?: number;
}

View file

@ -0,0 +1,6 @@
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { Tagline } from "./Tagline";
export interface ListTaglinesResponse {
taglines: Array<Tagline>;
}

View file

@ -1,17 +1,17 @@
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually. // This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { CommentSortType } from "./CommentSortType";
import type { ListingType } from "./ListingType"; import type { ListingType } from "./ListingType";
import type { LocalSiteId } from "./LocalSiteId"; import type { LocalSiteId } from "./LocalSiteId";
import type { PostListingMode } from "./PostListingMode"; import type { PostListingMode } from "./PostListingMode";
import type { PostSortType } from "./PostSortType";
import type { RegistrationMode } from "./RegistrationMode"; import type { RegistrationMode } from "./RegistrationMode";
import type { SiteId } from "./SiteId"; import type { SiteId } from "./SiteId";
import type { SortType } from "./SortType";
export interface LocalSite { export interface LocalSite {
id: LocalSiteId; id: LocalSiteId;
site_id: SiteId; site_id: SiteId;
site_setup: boolean; site_setup: boolean;
enable_downvotes: boolean; enable_downvotes: boolean;
enable_nsfw: boolean;
community_creation_admin_only: boolean; community_creation_admin_only: boolean;
require_email_verification: boolean; require_email_verification: boolean;
application_question?: string; application_question?: string;
@ -32,5 +32,7 @@ export interface LocalSite {
reports_email_admins: boolean; reports_email_admins: boolean;
federation_signed_fetch: boolean; federation_signed_fetch: boolean;
default_post_listing_mode: PostListingMode; default_post_listing_mode: PostListingMode;
default_sort_type: SortType; default_post_sort_type: PostSortType;
default_comment_sort_type: CommentSortType;
oauth_registration: boolean;
} }

View file

@ -1,9 +1,10 @@
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually. // This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { CommentSortType } from "./CommentSortType";
import type { ListingType } from "./ListingType"; import type { ListingType } from "./ListingType";
import type { LocalUserId } from "./LocalUserId"; import type { LocalUserId } from "./LocalUserId";
import type { PersonId } from "./PersonId"; import type { PersonId } from "./PersonId";
import type { PostListingMode } from "./PostListingMode"; import type { PostListingMode } from "./PostListingMode";
import type { SortType } from "./SortType"; import type { PostSortType } from "./PostSortType";
export interface LocalUser { export interface LocalUser {
id: LocalUserId; id: LocalUserId;
@ -11,12 +12,11 @@ export interface LocalUser {
email?: string; email?: string;
show_nsfw: boolean; show_nsfw: boolean;
theme: string; theme: string;
default_sort_type: SortType; default_post_sort_type: PostSortType;
default_listing_type: ListingType; default_listing_type: ListingType;
interface_language: string; interface_language: string;
show_avatars: boolean; show_avatars: boolean;
send_notifications_to_email: boolean; send_notifications_to_email: boolean;
show_scores: boolean;
show_bot_accounts: boolean; show_bot_accounts: boolean;
show_read_posts: boolean; show_read_posts: boolean;
email_verified: boolean; email_verified: boolean;
@ -31,4 +31,5 @@ export interface LocalUser {
enable_keyboard_navigation: boolean; enable_keyboard_navigation: boolean;
enable_animated_images: boolean; enable_animated_images: boolean;
collapse_bot_comments: boolean; collapse_bot_comments: boolean;
default_comment_sort_type: CommentSortType;
} }

View file

@ -1,8 +1,6 @@
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually. // This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { LocalUserId } from "./LocalUserId";
export interface LocalUserVoteDisplayMode { export interface LocalUserVoteDisplayMode {
local_user_id: LocalUserId;
score: boolean; score: boolean;
upvotes: boolean; upvotes: boolean;
downvotes: boolean; downvotes: boolean;

View file

@ -1,18 +1,18 @@
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually. // This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { CommunityBlockView } from "./CommunityBlockView"; import type { Community } from "./Community";
import type { CommunityFollowerView } from "./CommunityFollowerView"; import type { CommunityFollowerView } from "./CommunityFollowerView";
import type { CommunityModeratorView } from "./CommunityModeratorView"; import type { CommunityModeratorView } from "./CommunityModeratorView";
import type { InstanceBlockView } from "./InstanceBlockView"; import type { Instance } from "./Instance";
import type { LanguageId } from "./LanguageId"; import type { LanguageId } from "./LanguageId";
import type { LocalUserView } from "./LocalUserView"; import type { LocalUserView } from "./LocalUserView";
import type { PersonBlockView } from "./PersonBlockView"; import type { Person } from "./Person";
export interface MyUserInfo { export interface MyUserInfo {
local_user_view: LocalUserView; local_user_view: LocalUserView;
follows: Array<CommunityFollowerView>; follows: Array<CommunityFollowerView>;
moderates: Array<CommunityModeratorView>; moderates: Array<CommunityModeratorView>;
community_blocks: Array<CommunityBlockView>; community_blocks: Array<Community>;
instance_blocks: Array<InstanceBlockView>; instance_blocks: Array<Instance>;
person_blocks: Array<PersonBlockView>; person_blocks: Array<Person>;
discussion_languages: Array<LanguageId>; discussion_languages: Array<LanguageId>;
} }

11
src/types/OAuthAccount.ts Normal file
View file

@ -0,0 +1,11 @@
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { LocalUserId } from "./LocalUserId";
import type { OAuthProviderId } from "./OAuthProviderId";
export interface OAuthAccount {
local_user_id: LocalUserId;
oauth_provider_id: OAuthProviderId;
oauth_user_id: string;
published: string;
updated?: string;
}

View file

@ -0,0 +1,19 @@
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { OAuthProviderId } from "./OAuthProviderId";
export interface OAuthProvider {
id: OAuthProviderId;
display_name: string;
issuer: string;
authorization_endpoint: string;
token_endpoint: string;
userinfo_endpoint: string;
id_claim: string;
client_id: string;
scopes: string;
auto_verify_email: boolean;
account_linking_enabled: boolean;
enabled: boolean;
published: string;
updated?: string;
}

View file

@ -0,0 +1,3 @@
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
export type OAuthProviderId = number;

View file

@ -0,0 +1,16 @@
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
export interface OAuthProviderInsertForm {
display_name: string;
issuer: string;
authorization_endpoint: string;
token_endpoint: string;
userinfo_endpoint: string;
id_claim: string;
client_id: string;
client_secret: string;
scopes: string;
auto_verify_email: boolean;
account_linking_enabled: boolean;
enabled: boolean;
}

View file

@ -0,0 +1,15 @@
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
export interface OAuthProviderUpdateForm {
display_name: string | null;
authorization_endpoint: string;
token_endpoint: string;
userinfo_endpoint: string;
id_claim: string | null;
client_secret: string | null;
scopes: string | null;
auto_verify_email: boolean | null;
account_linking_enabled: boolean | null;
enabled: boolean | null;
updated: string | null | null;
}

View file

@ -1,6 +1,6 @@
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually. // This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
export type SortType = export type PostSortType =
| "Active" | "Active"
| "Hot" | "Hot"
| "New" | "New"

View file

@ -0,0 +1,4 @@
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { OAuthProvider } from "./OAuthProvider";
export type PublicOAuthProvider = OAuthProvider;

View file

@ -1,9 +1,10 @@
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually. // This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { LocalUserId } from "./LocalUserId"; import type { LocalUserId } from "./LocalUserId";
import type { PersonId } from "./PersonId"; import type { PersonId } from "./PersonId";
import type { RegistrationApplicationId } from "./RegistrationApplicationId";
export interface RegistrationApplication { export interface RegistrationApplication {
id: number; id: RegistrationApplicationId;
local_user_id: LocalUserId; local_user_id: LocalUserId;
answer: string; answer: string;
admin_id?: PersonId; admin_id?: PersonId;

View file

@ -0,0 +1,3 @@
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
export type RegistrationApplicationId = number;

View file

@ -1,16 +1,19 @@
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually. // This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { CommentSortType } from "./CommentSortType";
import type { LanguageId } from "./LanguageId"; import type { LanguageId } from "./LanguageId";
import type { ListingType } from "./ListingType"; import type { ListingType } from "./ListingType";
import type { PostListingMode } from "./PostListingMode"; import type { PostListingMode } from "./PostListingMode";
import type { SortType } from "./SortType"; import type { PostSortType } from "./PostSortType";
export interface SaveUserSettings { export interface SaveUserSettings {
show_nsfw?: boolean; show_nsfw?: boolean;
blur_nsfw?: boolean; blur_nsfw?: boolean;
auto_expand?: boolean; auto_expand?: boolean;
theme?: string; theme?: string;
default_sort_type?: SortType;
default_listing_type?: ListingType; default_listing_type?: ListingType;
post_listing_mode?: PostListingMode;
default_post_sort_type?: PostSortType;
default_comment_sort_type?: CommentSortType;
interface_language?: string; interface_language?: string;
avatar?: string; avatar?: string;
banner?: string; banner?: string;
@ -26,7 +29,6 @@ export interface SaveUserSettings {
discussion_languages?: Array<LanguageId>; discussion_languages?: Array<LanguageId>;
open_links_in_new_tab?: boolean; open_links_in_new_tab?: boolean;
infinite_scroll_enabled?: boolean; infinite_scroll_enabled?: boolean;
post_listing_mode?: PostListingMode;
enable_keyboard_navigation?: boolean; enable_keyboard_navigation?: boolean;
enable_animated_images?: boolean; enable_animated_images?: boolean;
collapse_bot_comments?: boolean; collapse_bot_comments?: boolean;

View file

@ -2,8 +2,8 @@
import type { CommunityId } from "./CommunityId"; import type { CommunityId } from "./CommunityId";
import type { ListingType } from "./ListingType"; import type { ListingType } from "./ListingType";
import type { PersonId } from "./PersonId"; import type { PersonId } from "./PersonId";
import type { PostSortType } from "./PostSortType";
import type { SearchType } from "./SearchType"; import type { SearchType } from "./SearchType";
import type { SortType } from "./SortType";
export interface Search { export interface Search {
q: string; q: string;
@ -11,8 +11,9 @@ export interface Search {
community_name?: string; community_name?: string;
creator_id?: PersonId; creator_id?: PersonId;
type_?: SearchType; type_?: SearchType;
sort?: SortType; sort?: PostSortType;
listing_type?: ListingType; listing_type?: ListingType;
page?: number; page?: number;
limit?: number; limit?: number;
post_title_only?: boolean;
} }

View file

@ -1,8 +1,6 @@
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually. // This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { SiteView } from "./SiteView"; import type { SiteView } from "./SiteView";
import type { Tagline } from "./Tagline";
export interface SiteResponse { export interface SiteResponse {
site_view: SiteView; site_view: SiteView;
taglines: Array<Tagline>;
} }

View file

@ -1,9 +1,7 @@
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually. // This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { LocalSiteId } from "./LocalSiteId";
export interface Tagline { export interface Tagline {
id: number; id: number;
local_site_id: LocalSiteId;
content: string; content: string;
published: string; published: string;
updated?: string; updated?: string;

View file

@ -1,3 +1,3 @@
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually. // This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
export type PersonBlockId = number; export type TaglineId = number;

View file

@ -0,0 +1,6 @@
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { Tagline } from "./Tagline";
export interface TaglineResponse {
tagline: Tagline;
}

View file

@ -0,0 +1,7 @@
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { TaglineId } from "./TaglineId";
export interface UpdateTagline {
id: TaglineId;
content: string;
}