Commit Graph

402 Commits

Author SHA1 Message Date
Flori Weber 2652ae68e0 Add RoleObject::update() 2023-06-10 18:42:37 +02:00
Flori Weber 6070ad8e0a Implement GuildMember::get() 2023-06-10 15:16:45 +02:00
bitfl0wer 972100af65 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 9fb6c8c6f9 implement GuildMember::remove_role() 2023-06-10 00:10:12 +02:00
bitfl0wer e4fb36d914 Implement GuildMember::add_role() 2023-06-10 00:03:31 +02:00
bitfl0wer ce59beab3a create member.rs 2023-06-09 23:41:40 +02:00
bitfl0wer 6ed9eaf2fc Implement RoleObject::position_update() 2023-06-09 16:50:03 +02:00
bitfl0wer 47f8b131a3 Add documentation 2023-06-08 22:39:06 +02:00
bitfl0wer f41312d430 Implement RoleObject::create() 2023-06-08 22:26:24 +02:00
bitfl0wer b0a19faa48 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 15a122d719 cargo fix 2023-06-07 23:06:52 +02:00
bitfl0wer acbbc88e84 Implement RoleObject::get_all() 2023-06-07 23:03:24 +02:00
bitfl0wer 990f9eb4e2 Create roles.rs 2023-06-07 23:03:07 +02:00
bitfl0wer 3692f15f0f Add reference to docs 2023-06-04 14:41:24 +02:00
bitfl0wer 0a106d2e1d Add method to remove own reaction 2023-06-04 14:39:22 +02:00
bitfl0wer 7a811e1792 improve existing documentation 2023-06-04 14:32:57 +02:00
bitfl0wer 359bfc7b8b Add delete_user method 2023-06-04 14:29:43 +02:00
bitfl0wer 92e768d5a6 Change file structure 2023-06-04 14:20:06 +02:00
bitfl0wer 5dd9d095cf Move some pieces of documentation to where they make the most sense 2023-06-03 22:34:03 +02:00
bitfl0wer 9918b9a71d Make reference links clickable in cargo doc 2023-06-03 22:15:03 +02:00
bitfl0wer b5de178a91 Add references 2023-06-03 22:08:56 +02:00
bitfl0wer 065bb28c96 Add create reaction with documentation 2023-06-03 22:07:37 +02:00
bitfl0wer 33e0f75772 Add delete_emoji method with documentation 2023-06-03 20:17:21 +02:00
bitfl0wer 4d6ad1cd7b Add documentation 2023-06-03 18:59:13 +02:00
bitfl0wer be512504c5 Add reactions: get 2023-06-03 18:53:53 +02:00
bitfl0wer da0726c538 Implement reactions: delete all 2023-06-03 18:46:36 +02:00
bitfl0wer df6fcbd5ee Add ReactionMeta struct 2023-06-03 15:21:49 +02:00
bitfl0wer e9d5384f02 Create reactions.rs 2023-06-01 21:14:11 +02:00
bitfl0wer e61546e442 Remove mod 2023-06-01 21:14:02 +02:00
bitfl0wer 9943fcc55f Refactored users() as much as possible 2023-05-30 23:04:22 +02:00
bitfl0wer 315c5a00cf Refactor channels() 2023-05-29 23:59:13 +02:00
bitfl0wer 671c5d6191 Refactor create 2023-05-29 23:57:23 +02:00
bitfl0wer 03e5a83d84 Refactor delete() 2023-05-29 23:51:12 +02:00
bitfl0wer b501aca5b2 Refactor create() and get() 2023-05-29 23:46:43 +02:00
bitfl0wer f986b33878 Remove unnecessary lifetime 2023-05-29 23:46:17 +02:00
bitfl0wer 69993820f9 Refactor Guild create 2023-05-29 23:16:43 +02:00
bitfl0wer c43e861586 Refactor message::send() 2023-05-29 23:15:05 +02:00
bitfl0wer 072d99e879 Refactor modify() to take less boilerplate args 2023-05-29 23:11:12 +02:00
bitfl0wer ebeaf31343 Refactor delete() to take less boilerplate args 2023-05-29 23:08:52 +02:00
bitfl0wer 3e4840d7a6 Refactor get() to take less boilerplate args 2023-05-29 23:01:17 +02:00
bitfl0wer 6cb400b3d0 Add modify() 2023-05-29 18:27:30 +02:00
bitfl0wer 4bac730e14 Implement User methods on User instead of UserMeta 2023-05-29 17:25:34 +02:00
bitfl0wer 1f739ebfb7 Made Guild::create return Guild instead of String.
This makes way more sense, I think.
2023-05-29 16:50:10 +02:00
bitfl0wer 3fe3e2a461 Remove print statement 2023-05-28 23:08:13 +02:00
bitfl0wer fdc1da9af7 Remove print statement 2023-05-28 23:08:05 +02:00
bitfl0wer 1fb3ef6766 Create channels() for Guild
This method retrieves all channels from a guild
2023-05-28 23:04:35 +02:00
bitfl0wer 84505829c4 Make delete use self 2023-05-28 23:04:13 +02:00
bitfl0wer f2824f3a81 Add documentation 2023-05-28 22:40:37 +02:00
bitfl0wer a189d2baaa Make channel delete take ownership of a Channel 2023-05-28 22:39:38 +02:00
bitfl0wer ed330859bd Add channel delete method 2023-05-28 22:39:25 +02:00
bitfl0wer 0a99e1637b run cargo fmt && cargo fix 2023-05-28 00:50:52 +02:00
bitfl0wer b83f90f8dc Move test to tests-dir 2023-05-27 22:51:43 +02:00
bitfl0wer b1760af9d2 Remove empty test 2023-05-27 22:47:46 +02:00
bitfl0wer a3c800c3d9 Move tests to tests/-dir 2023-05-27 22:46:27 +02:00
bitfl0wer 3353a2f461 Prettify imports, remove outdated types/schemas 2023-05-26 12:59:32 +02:00
bitfl0wer ba93db0be8 Run cargo fix 2023-05-26 12:53:57 +02:00
bitfl0wer 5b324db391 Finish refactor 2023-05-26 12:50:16 +02:00
bitfl0wer f74b9c4c0d start porting over new types folder 2023-05-25 23:09:18 +02:00
bitfl0wer 7493597f4f Move Channels::get() to channels.rs 2023-05-23 16:28:25 +02:00
bitfl0wer 44f9f2cae5 Create channels.rs 2023-05-23 16:28:09 +02:00
bitfl0wer 8136bfa9a5 Fix: Used wrong rout to retrieve singular channel 2023-05-23 16:25:08 +02:00
bitfl0wer 368152e092 Make Channel type derive Eq, PartialEq recursively 2023-05-23 15:25:32 +02:00
bitfl0wer f4f01a00cc Revert "Add ChannelType enum"
This reverts commit b293f5ed96.
2023-05-23 15:17:04 +02:00
bitfl0wer 420f3798f4 try flattening the enum to fix CI 2023-05-23 15:10:56 +02:00
bitfl0wer 64693c8770 Add todo 2023-05-23 14:51:28 +02:00
bitfl0wer b293f5ed96 Add ChannelType enum 2023-05-23 14:50:48 +02:00
bitfl0wer 912d8043d0 Replace URL in errors with full route URL 2023-05-23 14:38:03 +02:00
bitfl0wer 9a6a08bb67 Implement get() for channel 2023-05-23 14:37:34 +02:00
bitfl0wer fd0442dcc9 Start working on get() channel route 2023-05-23 14:31:21 +02:00
bitfl0wer 81885cffc0 Change create channel method to return Channel
Previously returned a Response object.
2023-05-23 13:50:39 +02:00
bitfl0wer fc55a53ed5 Implement create channel methods 2023-05-23 13:06:09 +02:00
bitfl0wer 69425f18ac start working on channel create 2023-05-22 23:22:34 +02:00
bitfl0wer 5af2216882 move integration test from guild to integration.rs 2023-05-21 16:02:54 +02:00
bitfl0wer 5e5be4a9b4 Add delete() to User 2023-05-21 15:05:02 +02:00
bitfl0wer 8aa4dea9c4 Fix 'already borrowed: BorrowMutError' 2023-05-20 23:21:24 +02:00
bitfl0wer 8a1c1f0a41 Replace &mut Instance with Rc<RefCell<Instance>>
Replace &mut Instance with Rc<RefCell<Instance>> on the User struct to represent the 1:n relation of Instance:User
2023-05-20 23:10:25 +02:00
bitfl0wer 376ae83f58 Implement modify(), untested as of now 2023-05-16 15:59:23 +02:00
bitfl0wer 29318e9085 Add UserModifySchema 2023-05-16 15:59:06 +02:00
bitfl0wer fbd9170806 Start working on User::modify(). 2023-05-15 23:20:23 +02:00
bitfl0wer aaa16ef532 remove accidental doctests 2023-05-14 22:47:34 +02:00
bitfl0wer e552bdb352 make fields on GuildCreateSchema pub 2023-05-14 22:45:55 +02:00
bitfl0wer b4cc8fd64b add type guildcreateresponse 2023-05-14 22:45:42 +02:00
bitfl0wer fbfd0e627f Remove unused import 2023-05-14 22:45:31 +02:00
bitfl0wer 120cdfd14f Change function signatures, add tests 2023-05-14 22:45:18 +02:00
bitfl0wer 833c3733d7 Add guild delete route 2023-05-14 14:16:21 +02:00
bitfl0wer 4b4adbe1cc impl ToString for LimitType 2023-05-14 13:11:50 +02:00
bitfl0wer d5103ea03f Merge branch 'feature/rest-of-discord-types' into feature/guild-creation-deletion 2023-05-14 12:55:39 +02:00
bitfl0wer 9b1a7f9bd8 Remove duplicate VoiceState 2023-05-14 12:55:19 +02:00
bitfl0wer bb546cdc82 Merge branch 'feature/rest-of-discord-types' into feature/guild-creation-deletion 2023-05-14 12:52:25 +02:00
bitfl0wer 2072ae11a5 Add full Guild type 2023-05-14 12:40:31 +02:00
bitfl0wer 51ecf888b8 remove get() 2023-05-13 23:45:49 +02:00
bitfl0wer 3fca30db35 start implementing get() 2023-05-13 23:15:28 +02:00
bitfl0wer ea454228ac Add documentation 2023-05-13 22:55:17 +02:00
bitfl0wer 1934622e4c Implement Guild::create() 2023-05-13 22:14:53 +02:00
bitfl0wer e0a45edb3c Add GuildCreateSchema as per Spacebar Docs 2023-05-13 22:11:06 +02:00
kozabrada123 a93962b667 Add Stage Instance and Voice State 2023-05-13 22:01:04 +02:00
kozabrada123 4e51d1251b Add integrations 2023-05-13 21:50:36 +02:00
bitfl0wer ca8f94c18e create src/api/guilds/guilds.rs 2023-05-13 21:42:43 +02:00
kozabrada123 0c3e99057f Add channel and thread types, start guild 2023-05-13 21:27:44 +02:00
kozabrada123 e3a5a532c3 Merge branch 'polyphony-chat:main' into main 2023-05-13 14:49:53 +00:00
kozabrada123 a3969e8cb6 Small changes for merging 2023-05-13 16:43:29 +02:00
bitfl0wer 3c6a549db7 Fix tests 2023-05-13 16:42:24 +02:00
bitfl0wer 092eed6957 update file to one that always exists, fix test 2023-05-13 16:40:34 +02:00
bitfl0wer c74e40e5f9 comment out view_nsfw_guilds to fix tests 2023-05-13 16:36:28 +02:00
kozabrada123 41b75be2fb Add a few more gateway events 2023-05-13 16:24:34 +02:00
kozabrada123 11d371eee2 Add rest of send events 2023-05-13 15:59:46 +02:00
kozabrada123 cef8fe9fdb Deserialization error.. 2023-05-13 09:05:20 +02:00
kozabrada123 28e956e969 Merge branch 'polyphony-chat:main' into main 2023-05-13 06:11:07 +00:00
bitfl0wer 4abe3d87ec Change visibility of attachments 2023-05-12 19:18:51 +02:00
bitfl0wer ec37e89cc4 add set_id() to FileAttachment
This is so that the id of the Attachment to be sent can just be overwritten by the send() method.
2023-05-12 19:18:40 +02:00
bitfl0wer 1d2ebdd3cd Make attachment sending work! 2023-05-12 19:18:00 +02:00
kozabrada123 94fabbffb0 Merge branch 'polyphony-chat:main' into main 2023-05-12 11:41:53 +00:00
bitfl0wer 32f337015a cargo fix 2023-05-12 12:35:06 +02:00
bitfl0wer 56be2c9a17 Change send to no longer take static refs 2023-05-12 12:34:27 +02:00
bitfl0wer 9fd3f733f7 Mark unused var as unused 2023-05-12 12:34:00 +02:00
bitfl0wer 6732640f96 impl PartialDiscordFileAttachment
Now contains move_$ methods, which can move individual values out of the PartialDiscordFileAttachment while preserving the rest of the object.
2023-05-12 12:33:39 +02:00
bitfl0wer c544bd409d work on implementing message attachment sending 2023-05-11 23:35:36 +02:00
kozabrada123 6dfaa6e91f Attempted reimpl 2023-05-11 22:47:31 +02:00
bitfl0wer ce46452a2f change message send impl 2023-05-11 22:36:35 +02:00
bitfl0wer a2819c13f0 add a todo so i dont forget to not eat all ram 2023-05-11 00:07:45 +02:00
bitfl0wer fe63d11055 cool i have written a memory hog 2023-05-11 00:06:13 +02:00
bitfl0wer 7387053998 Change imports 2023-05-10 18:44:17 +02:00
bitfl0wer 5a7d5e0a4c Change register test 2023-05-10 18:44:10 +02:00
kozabrada123 6ce7396275 Merge branch 'feature/gateway-observer' into main 2023-05-09 18:35:53 +00:00
bitfl0wer 3011b1164f Change test_registration 2023-05-09 19:30:52 +02:00
bitfl0wer 1bc8081655 Make register and login return UserObject 2023-05-09 17:19:41 +02:00
bitfl0wer e6291bf384 Extend UserObject to match with Spacebars' User 2023-05-09 17:19:23 +02:00
bitfl0wer aaf454ffa7 remove println 2023-05-09 17:19:04 +02:00
bitfl0wer a7514a28c6 impl get_settings() 2023-05-09 14:05:36 +02:00
bitfl0wer f06b43a8fe Make register and login return User 2023-05-09 14:05:03 +02:00
bitfl0wer f59f705ec0 make token pub 2023-05-09 13:10:07 +02:00
bitfl0wer 40b7064541 Remove logged_in from User 2023-05-07 12:42:52 +02:00
bitfl0wer 31407c1bf1 Run clippy 2023-05-07 12:41:14 +02:00
bitfl0wer 6a94d34bb5 Remove unneccessary imports 2023-05-07 12:39:56 +02:00
bitfl0wer 240882ffdf Remove lifetime from Instance (see below)
Originally, it was planned, that the Instance object would store Users. I have identified, that this was not needed, as it goes beyond the scope of a library; Users of this library are expected to keep track of users themselves. The removal of this user storage also prevented further overcomplications.
2023-05-07 12:39:04 +02:00
kozabrada123 e67acfab49 Was still a merge conflict there 2023-05-07 12:05:58 +02:00
kozabrada123 0fd7be51a8 Fix merge conflict 2023-05-07 12:04:46 +02:00
bitfl0wer 7904b3d9f8 add docs, add instance.get_user() 2023-05-07 11:54:49 +02:00
kozabrada123 fc93762cf7 Fix deserialization error 2023-05-07 11:47:12 +02:00
bitfl0wer 3cd19ed15e Remove display impl, add default trait 2023-05-07 11:32:25 +02:00
bitfl0wer fafc864dfe Impl user::get() function 2023-05-07 11:32:11 +02:00
bitfl0wer df850b33d5 add test fn 2023-05-07 00:18:21 +02:00
bitfl0wer 3e6e8b7812 add users to mod.rs 2023-05-07 00:18:14 +02:00
bitfl0wer 45d5505e2c remove nesting layer 2023-05-07 00:18:06 +02:00
bitfl0wer 70a426c754 Add users to mod.rs 2023-05-07 00:17:54 +02:00
bitfl0wer 7211ff5eb3 add pronouns 2023-05-06 22:47:31 +02:00
bitfl0wer aa89168928 add mod.rs 2023-05-06 22:47:26 +02:00
bitfl0wer 7920dc62e6 Implement message sending (without attachments) 2023-05-06 22:24:23 +02:00
bitfl0wer 9855465fe4 change visibilities 2023-05-06 22:23:48 +02:00
bitfl0wer 4aaaee3e1e impl SendMessageSchema 2023-05-06 22:23:34 +02:00
bitfl0wer f943f57f03 rename user rate_limits to limits for consistency 2023-05-06 18:52:24 +02:00
bitfl0wer 0efdc8bfc2 Construct new message send method basics 2023-05-06 18:52:09 +02:00
bitfl0wer 63ece12636 change message to messagesendschema 2023-05-06 18:34:38 +02:00
kozabrada123 6fdff97722 Update types to fix deserialization errors 2023-05-06 10:39:16 +02:00
kozabrada123 a4fdf18106 Fixed instance lifetime parameter 2023-05-05 22:46:00 +02:00
kozabrada123 22bfe1be07 Readd gateway to instance 2023-05-05 22:04:57 +02:00
bitfl0wer 00aa998ad0 remove redundant code 2023-05-05 22:00:37 +02:00
bitfl0wer e41563b101 start re-doing send() 2023-05-05 21:53:23 +02:00
bitfl0wer 9b5caf6392 Add DiscordFileAttachment, change visibilities 2023-05-05 21:53:00 +02:00
bitfl0wer abd555dfac Add MessageSendSchema 2023-05-05 21:52:27 +02:00
kozabrada123 7ac4da8482 Fix encoding wrong 2023-05-05 20:58:00 +02:00
kozabrada123 23472d01d9 Update integers on some types 2023-05-05 18:37:52 +02:00
kozabrada123 ec2030794d Add gateway Ready event 2023-05-05 16:08:12 +02:00
bitfl0wer a706341e36 handle attachment-messages seperately 2023-05-05 14:38:37 +02:00
bitfl0wer e4be9d49c2 change name type from String to i16 2023-05-05 14:38:22 +02:00
bitfl0wer 65480d51e6 Fix counter not being incremented 2023-05-05 14:19:38 +02:00
bitfl0wer 12c6efc72e Change HashMap to Map
Filenames can be non-unique, which could not be accurately represented using a HashMap.
2023-05-05 14:18:59 +02:00
bitfl0wer c90e8b62e8 Add new() DiscordFileAttachment 2023-05-05 14:16:09 +02:00
bitfl0wer d1f44aace3 Rename File to DiscordFileAttachment, work on that 2023-05-04 23:00:48 +02:00
bitfl0wer 28778f578f Add bearer auth for message sending 2023-05-03 23:13:12 +02:00
bitfl0wer 8903f494ac Add start of attachments implementation 2023-05-03 23:04:32 +02:00
bitfl0wer 7369bdd59f Merge remote-tracking branch 'origin/feature/sending-messages' 2023-05-03 17:39:57 +02:00
bitfl0wer c4b15b5bf0 change reference to be mutable 2023-05-03 17:29:32 +02:00
bitfl0wer 7560361bf5 add send_message to user 2023-05-03 17:29:20 +02:00
bitfl0wer 5d545d7fc9 Add get_as_mut to Limits 2023-05-03 17:12:32 +02:00
bitfl0wer a0df444f87 Remove blank line 2023-05-03 17:12:23 +02:00
bitfl0wer fc9032c038 change visibilities to pub 2023-05-03 17:11:48 +02:00
bitfl0wer efb68a607a cargo clippy --fix 2023-05-03 16:38:42 +02:00
bitfl0wer 5edc92524c Add lifetime to Instance 2023-05-03 16:37:10 +02:00
bitfl0wer 6858b1eb0d Add Message send() 2023-05-03 16:27:04 +02:00
bitfl0wer 7938addf67 Start working on message send body 2023-05-03 15:55:01 +02:00
bitfl0wer 514ae0e441 Add message.rs 2023-05-03 15:45:07 +02:00
Flori b6789420a2 Merge pull request #25 from polyphony-chat/feature/sending-messages
Bring main up to date
2023-05-02 22:51:49 +02:00
bitfl0wer 18e4803089 Add messages.rs to implement messages features 2023-05-02 22:46:41 +02:00
bitfl0wer a8e3ad0950 add GatewayPayload 2023-04-30 21:54:15 +02:00
bitfl0wer 9f76679a35 Add types for Heartbeat and Hello (Gateway) 2023-04-30 11:48:53 +02:00
bitfl0wer 909e8d39ed Make GatewatIdentifyPayload pub 2023-04-28 20:30:03 +02:00
bitfl0wer 728ff0b551 Add Default derives to types 2023-04-28 18:18:32 +02:00
bitfl0wer 3099a0165b Implement Observer for WebSocketEvents 2023-04-28 12:31:59 +02:00
bitfl0wer 2569fafbbb add GatewayResume 2023-04-25 23:06:16 +02:00
bitfl0wer 67eb1e087d add more types 2023-04-25 22:34:43 +02:00
bitfl0wer bea7efd8a9 add typing start event 2023-04-25 22:08:09 +02:00
bitfl0wer f465ad7cc3 Add more Types 2023-04-25 22:03:25 +02:00
bitfl0wer b976eadd70 metric ton of types for message deserialization 2023-04-25 21:42:46 +02:00
bitfl0wer 0f66081b4d Fix error due to deletion of impl::Display 2023-04-25 21:42:11 +02:00
bitfl0wer 3b8891b2dd Improve readability 2023-04-25 17:41:14 +02:00
bitfl0wer c67c23f6b4 Improve readability 2023-04-25 17:33:35 +02:00
bitfl0wer 6f2dac6695 Split up schemas.rs 2023-04-25 17:32:30 +02:00
bitfl0wer a5943197d4 separate User and Instance limits. 2023-04-24 20:58:45 +02:00
bitfl0wer aba42a6869 Give each user their own rate limits 2023-04-24 19:51:35 +02:00