Commit Graph

584 Commits

Author SHA1 Message Date
kozabrada123 94ec90b924 Implement display for UserStatus 2023-06-10 16:56:50 +02:00
kozabrada123 330a4347d3 turns out UpdatePresence and PresenceUpdate are different events 2023-06-10 16:32:42 +02:00
kozabrada123 57d2d93420 Change observer update ref to &mut from & 2023-06-10 15:37:02 +02:00
Flori Weber d5e38d954f
Implement GuildMember::get() 2023-06-10 15:16:45 +02:00
kozabrada123 a148cf576e Refactor, better deserialization error handling 2023-06-10 12:43:07 +02:00
kozabrada123 0b06f914e3 Merge branch 'main' into perpetual/gateway-dev 2023-06-10 10:30:54 +02:00
bitfl0wer a18eab1884
Change UserMeta: User instead of Option<User>
I do not know why I have made it optional in the first place. hm
2023-06-10 00:35:51 +02:00
bitfl0wer 30db9e9553
implement GuildMember::remove_role() 2023-06-10 00:10:12 +02:00
bitfl0wer 3d98b45413
Implement GuildMember::add_role() 2023-06-10 00:03:31 +02:00
bitfl0wer daf30ddde6
create member.rs 2023-06-09 23:41:40 +02:00
bitfl0wer 7aa948647a
Add from_vec()
Calculates a PermissionFlags Stirng from a Vec<PermissionFlags>.
2023-06-09 21:34:54 +02:00
bitfl0wer 7a0a9baa45
Remove unused import 2023-06-09 20:49:02 +02:00
bitfl0wer 486e210062
Move role schemas to own file 2023-06-09 20:47:45 +02:00
kozabrada123 5231656c68 Docs + unneeded &mut 2023-06-09 20:22:59 +02:00
kozabrada123 28877f8355 Discord.com sends premissions as an integer 2023-06-09 18:38:36 +02:00
kozabrada123 182cd45a15 Rebase 2023-06-09 18:14:20 +02:00
bitfl0wer d475584fea
Implement RoleObject::position_update() 2023-06-09 16:50:03 +02:00
bitfl0wer 9bf968c7e0
Change Role to have String over PermissionFlags
PermissionFlags implementation needs to be figured out a bit better before we can use it here.
2023-06-09 12:04:49 +02:00
bitfl0wer fc66036674
Add documentation 2023-06-08 22:39:06 +02:00
bitfl0wer 30cfb3b744
Implement RoleObject::create() 2023-06-08 22:26:24 +02:00
bitfl0wer 1c5be5693e
Add FormCreationError 2023-06-08 22:26:08 +02:00
bitfl0wer 9f21c06492
Change InstanceServerError to ChorusLibError
The name InstanceServerError was chosen without thinking about it too much, very early in development. The new name suits this custom Error type way better, in my opinion.
2023-06-08 22:16:23 +02:00
bitfl0wer bac097fb2e
Add RolePositionUpdateSchema 2023-06-08 20:45:56 +02:00
bitfl0wer 4993b7bac8
Change struct name
This schema is being used as a RoleModifySchema AND as a RoleCreationSchema.
2023-06-08 20:43:29 +02:00
bitfl0wer a1a4532b57
Add misssing attribute 2023-06-08 20:42:40 +02:00
bitfl0wer c31d2aa76d
Add RoleCreateSchema 2023-06-08 20:40:36 +02:00
kozabrada123 e6af81d694 Basic tests 2023-06-08 19:51:32 +02:00
kozabrada123 cae038af8f Refactor 2023-06-08 18:24:11 +02:00
kozabrada123 0f4eef2fb9 Merge branch 'main' into perpetual/gateway-dev 2023-06-08 17:35:17 +02:00
kozabrada123 f4f17f7454 Gateway basic error handling 2023-06-08 17:34:52 +02:00
bitfl0wer 429db9332b
cargo fix 2023-06-07 23:06:52 +02:00
bitfl0wer 0097809049
Remove unnecessary imports 2023-06-07 23:03:37 +02:00
bitfl0wer 32503078d7
Implement RoleObject::get_all() 2023-06-07 23:03:24 +02:00
bitfl0wer afe9663ded
Create roles.rs 2023-06-07 23:03:07 +02:00
bitfl0wer 97ca0c17eb
Try making permissions to PermissionFlags 2023-06-07 22:44:16 +02:00
bitfl0wer 6c0d21867c
Sort fields on Guild alphabetically 2023-06-07 22:40:48 +02:00
bitfl0wer 5b7bfa4a5d
Make enum into bitflags struct 2023-06-07 10:39:05 +02:00
bitfl0wer 7a1021031e
Fix enum, add has_permission() for RoleObject 2023-06-06 21:38:28 +02:00
bitfl0wer e2c80fc1f8
Make enum pub 2023-06-06 20:10:50 +02:00
bitfl0wer 6d2db3d808
Add PermissionFlags 2023-06-06 20:05:34 +02:00
bitfl0wer 7a3f485580
Add reference to docs 2023-06-04 14:41:24 +02:00
bitfl0wer 471abc88a6
Add method to remove own reaction 2023-06-04 14:39:22 +02:00
bitfl0wer fd2b9e670f
improve existing documentation 2023-06-04 14:32:57 +02:00
bitfl0wer 213220c8e0
Add delete_user method 2023-06-04 14:29:43 +02:00
bitfl0wer 47d1c52014
Change file structure 2023-06-04 14:20:06 +02:00
kozabrada123 7d17a1c976 Implement Clone for all events 2023-06-04 13:49:35 +02:00
kozabrada123 ca9f7f6c11 Merge branch 'main' into perpetual/gateway-dev 2023-06-04 10:18:16 +02:00
bitfl0wer 6b8d458eb4
Move some pieces of documentation to where they make the most sense 2023-06-03 22:34:03 +02:00
bitfl0wer f2de0f8813
Make reference links clickable in cargo doc 2023-06-03 22:15:03 +02:00
bitfl0wer 5967858e81
Add references 2023-06-03 22:08:56 +02:00
bitfl0wer 3722536de2
Add create reaction with documentation 2023-06-03 22:07:37 +02:00
bitfl0wer 5b579c551a
Add delete_emoji method with documentation 2023-06-03 20:17:21 +02:00
bitfl0wer 02db71055c
Add documentation 2023-06-03 18:59:13 +02:00
bitfl0wer 4f91f26a28
Add reactions: get 2023-06-03 18:53:53 +02:00
bitfl0wer fab9bc1c62
Implement reactions: delete all 2023-06-03 18:46:36 +02:00
bitfl0wer addfb01075
Add ReactionMeta struct 2023-06-03 15:21:49 +02:00
kozabrada123 63ae7feb8a Features is not always sent 2023-06-02 11:00:34 +02:00
kozabrada123 a49bdd8456 Merge branch 'perpetual/gateway-dev' of https://github.com/polyphony-chat/chorus into perpetual/gateway-dev 2023-06-02 10:58:22 +02:00
kozabrada123 e846b2b423 fmt 2023-06-02 10:58:04 +02:00
kozabrada123 611ee800ba Handle Heartbeat ACKs 2023-06-02 10:57:47 +02:00
kozabrada123 28a92212b6 Handle Heartbeat requests 2023-06-02 10:42:19 +02:00
bitfl0wer e4a185dce5
Create reactions.rs 2023-06-01 21:14:11 +02:00
bitfl0wer 4bdecb0a6c
Remove mod 2023-06-01 21:14:02 +02:00
Flori b87ac84f61
Merge pull request #83 from polyphony-chat/refactor/less-boilerplate
Refactor/less boilerplate
2023-05-30 23:11:47 +02:00
bitfl0wer dc40c69ebe
Refactored users() as much as possible 2023-05-30 23:04:22 +02:00
Zertex 5a9a156846 make the tests pass 2023-05-30 10:57:34 -04:00
Zert3x 25a0544822
Merge branch 'main' into refactor/rename-apierror 2023-05-29 22:25:02 -04:00
bitfl0wer b1dbc53049
Refactor channels() 2023-05-29 23:59:13 +02:00
bitfl0wer 3cebafecf6
Refactor create 2023-05-29 23:57:23 +02:00
bitfl0wer d8d3bf5be6
Refactor delete() 2023-05-29 23:51:12 +02:00
bitfl0wer 96ace34137
Refactor create() and get() 2023-05-29 23:46:43 +02:00
bitfl0wer e03c51658d
Remove unnecessary lifetime 2023-05-29 23:46:17 +02:00
bitfl0wer eaf45274a6
Refactor Guild create 2023-05-29 23:16:43 +02:00
bitfl0wer 1e79a1a7ab
Refactor message::send() 2023-05-29 23:15:05 +02:00
bitfl0wer a12573fe1c
Refactor modify() to take less boilerplate args 2023-05-29 23:11:12 +02:00
bitfl0wer 808224d4fb
Refactor delete() to take less boilerplate args 2023-05-29 23:08:52 +02:00
bitfl0wer 001dc9f80c
Refactor get() to take less boilerplate args 2023-05-29 23:01:17 +02:00
bitfl0wer f18d3d7707
Add clone, default derives 2023-05-29 18:50:19 +02:00
bitfl0wer a7fd29c7f1
Make all attributes pub 2023-05-29 18:34:08 +02:00
bitfl0wer 05bc4a4647
Add modify() 2023-05-29 18:27:30 +02:00
bitfl0wer 0048e548f5
Add ChannelModifySchema 2023-05-29 18:27:15 +02:00
Flori 9c258067e8
Merge pull request #81 from polyphony-chat/feature/channel/delete
Feature/channel/delete
2023-05-29 17:56:13 +02:00
bitfl0wer 5a40da1cd6
Implement User methods on User instead of UserMeta 2023-05-29 17:25:34 +02:00
kozabrada123 b83dd916e8 Fix typo 2023-05-29 17:18:52 +02:00
kozabrada123 90ebc823ba Fix some errors caused by the observer return fix 2023-05-29 17:11:08 +02:00
bitfl0wer 7f8abceab5
Made Guild::create return Guild instead of String.
This makes way more sense, I think.
2023-05-29 16:50:10 +02:00
bitfl0wer fee0aa966a
Changed some apparently incorrect attributes
Some attributes are not necessarily returned by the GET route for a guild. Also, some integers were too small. One example is max_video_channel_users, which was a u8, but could theoretically be a value much higher than u8::MAX.
2023-05-29 16:49:36 +02:00
bitfl0wer b2b5930db0
Remove print statement 2023-05-28 23:08:13 +02:00
bitfl0wer 135782da9f
Remove print statement 2023-05-28 23:08:05 +02:00
bitfl0wer 7b7dbb9b5e
Create channels() for Guild
This method retrieves all channels from a guild
2023-05-28 23:04:35 +02:00
bitfl0wer 897c269e98
Make delete use self 2023-05-28 23:04:13 +02:00
bitfl0wer 5db5a2562f
Add InvalidResponseError 2023-05-28 23:04:02 +02:00
bitfl0wer 2ba1e1ac84
Add documentation 2023-05-28 22:40:37 +02:00
bitfl0wer 69b6efe200
Make channel delete take ownership of a Channel 2023-05-28 22:39:38 +02:00
bitfl0wer 268da9525c
Add channel delete method 2023-05-28 22:39:25 +02:00
kozabrada123 c4a6b85e1e Fix weird observer subscribe return 2023-05-28 17:37:05 +02:00
kozabrada123 982e85af9e u16 is too small for flags apparently 2023-05-28 17:36:30 +02:00
kozabrada123 61a54678cb Members is optional 2023-05-28 17:36:12 +02:00
kozabrada123 a1a0c94e2d agjbg??! 2023-05-28 14:52:48 +02:00
kozabrada123 dfa047a9c5 71 conflicts due to fmt?!?!?!?! 2023-05-28 14:52:08 +02:00
kozabrada123 b6061b7bf5 Gateway opcode constants and small refactor 2023-05-28 14:39:41 +02:00
kozabrada123 304ff014e3 More stability 2023-05-28 08:43:22 +02:00
Zertex de10ccbed7 Hijack this to make User::flags pub 2023-05-28 02:42:35 -04:00
Zertex bab1f0ed52 Add custom implementation to allow simple-array behaviour for GuildFeatures 2023-05-28 02:42:09 -04:00
Zertex 73790fbf2a Change integer datatypes to be 'i32' as required by sqlx 2023-05-28 02:39:24 -04:00
kozabrada123 504d74a715 Stability, new event 2023-05-28 08:18:50 +02:00
Zertex c300f1918c merge main 2023-05-27 19:54:43 -04:00
bitfl0wer 77ae3f10b6
run cargo fmt && cargo fix 2023-05-28 00:50:52 +02:00
bitfl0wer 503edf2fac
Move test to tests-dir 2023-05-27 22:51:43 +02:00
bitfl0wer 1e844445fc
Remove empty test 2023-05-27 22:47:46 +02:00
bitfl0wer 8ea0cc3f3f
Make password optional 2023-05-27 22:46:43 +02:00
bitfl0wer 927109e9b6
Move tests to tests/-dir 2023-05-27 22:46:27 +02:00
bitfl0wer a7d092fc3a
Fix build 2023-05-27 20:54:43 +02:00
bitfl0wer 0504f0a9d2
Merge branch 'refactor/application-default' 2023-05-27 20:46:19 +02:00
kozabrada123 f54e750f74 Add options with empty string for identify props 2023-05-27 19:55:57 +02:00
Zertex 80e60901d8 uncomment, oops 2023-05-27 13:50:55 -04:00
Zertex 665a3b3667 rename APIError in ErrorField vec as well 2023-05-27 13:50:28 -04:00
Zertex 7189294d4b Hijack this to clean up ApplicationCommandOptionType with serde_repr 2023-05-27 13:46:37 -04:00
Zertex 250035fe9e Add custom Default impl to Application 2023-05-27 13:45:56 -04:00
Zertex 6d747bc504 Rename APIError -> APIErrorPayload to solve conflicting name 2023-05-27 13:41:23 -04:00
bitfl0wer da9232da0b
Fix typos 2023-05-27 19:36:07 +02:00
kozabrada123 a26ded8ab2
Merge branch 'main' into feature/full-gateway-coverage 2023-05-27 19:23:27 +02:00
Zertex 7a487c657c remove message field 2023-05-27 11:40:20 -04:00
kozabrada123 f8c02fee6a Remove dumping gateway events into stdout 2023-05-27 17:33:19 +02:00
kozabrada123 4a7fea8366 Better unrecognised messages 2023-05-27 17:31:55 +02:00
kozabrada123 be73bf19eb Add Application Command Permissions & Update event 2023-05-27 17:29:30 +02:00
kozabrada123 15ffdcecaa Add InteractionCreate 2023-05-27 17:11:47 +02:00
kozabrada123 5b04370d46 Add Stage Instance & events 2023-05-27 17:05:25 +02:00
kozabrada123 8d0083e11d Add Auto Moderation types & events 2023-05-27 16:50:38 +02:00
kozabrada123 ab902c5ef2 Add Relationship & related events 2023-05-27 16:03:23 +02:00
kozabrada123 7367475d99 Add "Discord Client" option 2023-05-27 13:16:40 +02:00
kozabrada123 b11743d35c Document more gateway props options 2023-05-27 13:05:59 +02:00
kozabrada123 224b3159a6 Fix some deserialization errors 2023-05-27 13:05:36 +02:00
kozabrada123 21c4d53b28 Fix a types mismatch 2023-05-27 09:58:10 +02:00
kozabrada123 b102f3d2cc Fix stack overflow due to infinite recursion
I am dumb
2023-05-27 09:57:46 +02:00
kozabrada123 5b08ddfcfb Add a sensible defaults for Identify and its props 2023-05-27 09:21:26 +02:00
Zertex 5e000f3617 Revert "Add back settings and extended_settings fields to User"
This reverts commit 3018c0ddd1.
2023-05-27 00:24:37 -04:00
Zertex 9974d90416 Revert "fix imports"
This reverts commit 13c2e4aed9.
2023-05-27 00:24:32 -04:00
Zertex 13c2e4aed9 fix imports 2023-05-27 00:12:05 -04:00
Zertex 3018c0ddd1 Add back settings and extended_settings fields to User 2023-05-27 00:07:07 -04:00
Zertex b8e5b627de Add PartialEq, Clone, Copy to Component 2023-05-26 22:44:43 -04:00
Zertex 342354a06b Add forgotten derives to UnvailableGuild/GuildCreateResponse 2023-05-26 22:38:39 -04:00
Zertex 185480b0be Add forgotten feature lock to UserTheme 2023-05-26 22:38:16 -04:00
Zertex 0bdae8f7e3 Add forgotten derives to Emoji 2023-05-26 22:37:20 -04:00
Zertex bbefab926c Extract private fields to symfonia, type lock fields 2023-05-26 22:29:20 -04:00
Zertex 1420ba1696 serde(skip) ids where full objects are returned 2023-05-26 16:24:42 -04:00
Zertex 86dcfb2c3b serde(skip) ids where full objects are returned 2023-05-26 16:23:33 -04:00
Zertex 8fcd64f87d Flesh out and properly feature lock fields on Attachment 2023-05-26 16:00:15 -04:00
Zertex b885e13922 Flesh out and properly feature lock fields on Application 2023-05-26 15:25:40 -04:00
Zertex 297ef50b36 Add feature locks to Emoji 2023-05-26 14:09:03 -04:00