Commit Graph

1309 Commits

Author SHA1 Message Date
bitfl0wer fd3a3ee836 Add message: get 2023-08-22 21:27:31 +02:00
Flori 6f7c49a187 Get pinned, pin, unpin Message (#404)
Implements the above mentioned features, including a basic test
Closes #268, #269, #270
2023-08-22 20:15:30 +02:00
bitfl0wer 7b5426519d Closes #269, #268, #270 2023-08-22 20:09:44 +02:00
Flori 9f78fbe6e7 Bitfl0wer/issue258 (#403) 2023-08-22 19:32:51 +02:00
bitfl0wer 36a0730d0b Correctify search_message
Fixes Search Messages #258
2023-08-22 19:23:27 +02:00
bitfl0wer 71dc645210 Add search_messages Test 2023-08-22 19:23:05 +02:00
bitfl0wer c8378083cf Add json feature to reqwest 2023-08-22 19:22:30 +02:00
bitfl0wer 6e40568b23 Move search_messages to Channel impl 2023-08-22 17:56:13 +02:00
bitfl0wer d913b2d97f Implement Default for MessageSearchQuery 2023-08-22 17:55:53 +02:00
bitfl0wer 9ac5925bf9 Make channel_type in ChannelCreateSchema of type enum "ChannelType" 2023-08-22 17:55:29 +02:00
bitfl0wer 500ab0e3d0 Add some missing derives 2023-08-22 14:01:17 +02:00
bitfl0wer 1984f8c5da Add MessageSearchEndpoint Enum and MessageSearchQuery schema struct 2023-08-22 14:01:03 +02:00
bitfl0wer a13f766758 Add search() and search_messages() 2023-08-22 14:00:39 +02:00
Flori 257b1e1246 Modify Guild Channel Positions (#402)
Fixes #229
2023-08-22 01:17:22 +02:00
bitfl0wer cfbcb29a95 Modify Guild Channel Positions
Fixes #229
2023-08-22 01:11:22 +02:00
Flori 391dcb6bf4 Bitfl0wer/issue289 (#400)
Closes #289
2023-08-20 23:30:00 +02:00
bitfl0wer 5f532eff01 Fix deserialize error 2023-08-20 23:24:30 +02:00
bitfl0wer 29d5fe947c Add modify_guild test 2023-08-20 23:24:06 +02:00
bitfl0wer 7eee08459b Add Guild::modify(); 2023-08-20 23:13:34 +02:00
bitfl0wer 24891b3fd5 Complete GuildModifySchema 2023-08-20 22:52:06 +02:00
bitfl0wer 09a83f1a1f Add GuildModifySchema 2023-08-20 22:46:58 +02:00
bitfl0wer dd04b760a4 Add Types 2023-08-20 22:46:44 +02:00
Flori 13e7562c9d Make ban test a little more meaningful (#399)
By checking for an error on trying to ban the same person again, we can
kind of gauge if the ban functionality actually works.
2023-08-20 19:26:57 +02:00
bitfl0wer 99fed46225 Make ban test a little more meaningful 2023-08-20 19:26:00 +02:00
Flori eeaddeefb3 Create Guild Ban (#398)
- Closes #299
- Add derives for `GuildCreateSchema`
- Add `GuildBanCreateSchema`
- Add `Guild::create_ban`
2023-08-20 19:01:39 +02:00
bitfl0wer 1f6b221413 Add "lazy" test for guild_create_ban 2023-08-20 18:55:47 +02:00
bitfl0wer cb216c462d Add create_ban
Closes "Create Guild Ban #299"
2023-08-20 18:49:10 +02:00
bitfl0wer b53afe855d Create GuildBanCreateSchema, clean up GuildCreateSchema 2023-08-20 18:48:07 +02:00
Flori 3e9ca3f9ba Update README.md 2023-08-20 17:28:11 +02:00
Flori 19159b0196 Enhancement/updatemessage (#190)
Implements UpdateMessage for some more Gateway Events.
2023-08-20 16:10:28 +02:00
bitfl0wer 6cb28dda92 Start implementing some UpdateMessages 2023-08-19 01:13:07 +02:00
bitfl0wer 0b840372e2 Handle id().is_none() cases 2023-08-18 23:40:01 +02:00
bitfl0wer d64004b308 Make id(&self) return Option<Snowflake> 2023-08-18 23:34:00 +02:00
bitfl0wer 82d2151f1b Fix typo 2023-08-18 21:29:34 +02:00
bitfl0wer e1615a4cd3 Remove prints 2023-08-18 20:20:58 +02:00
bitfl0wer 5f0a04c345 Add Arc<RwLock<T>> 2023-08-18 20:20:53 +02:00
bitfl0wer cafa84d41e Add Todo to every event which needs UpdateMessage 2023-08-18 20:20:25 +02:00
kozabrada123 ad58b550fb Minor gateway updates (#188)
* Fix TYPING_START not existing

* Fix spacebar READY deserialization error
2023-08-18 14:27:39 +02:00
Flori a9bbd51c2d Add content type specification (#187)
This pr adds specifying the Content-Type header for requests with a body

Should be all requests but lmk if I missed any
2023-08-18 11:59:14 +02:00
kozabrada123 905b7af618 Add content type specification 2023-08-18 11:41:06 +02:00
Flori 38a7475938 Change type of Channel::last_pin_timestamp (#186)
Closes #160
2023-08-17 22:56:33 +02:00
bitfl0wer c2c1ad93b6 Change type of Channel::last_pin_timestamp 2023-08-17 22:45:42 +02:00
Flori d2ff34608d Change bearer_auth to header("Authorization" (#185)
Closes #181
2023-08-17 22:42:12 +02:00
bitfl0wer 0396e318d3 Change bearer_auth to header("Authorization" 2023-08-17 22:26:07 +02:00
Flori ecdab68677 Improved auto updating structs (#184)
This PR does the following things:
- Give `UserMeta` a `GatewayHandle`
- Change struct-fields which are supposed to be "shared" to
`Arc<RwLock<T>>`. "shared" struct-fields are things like a `Channel`
object, which may exist both on their own, and inside a `Guild`s struct
fields. Due to sharing this field, we only need to update a single
object to propagate the changes everywhere.
- Some light refactorings across the project. Example: change
`UserMeta::get()` to `UserMeta::get_user()`
- Add `Composite` trait and proc macro. `Composites` are `Updateable`
(uniquely identifiable) objects, which contain at least one other shared
(`Arc<RwLock<T>>`) field. This trait/macro provides functionality to not
only watch an object, but also all observable struct fields in that
object.
- Gets rid of tokio::channel in favor of Arc<RwLock<T>>

To-do before merging:

- [x] Properly test `Composite` functionality to ensure it works as
intended

I'd love a second pair of eyes over this, especially in case I forgot
something major ^^'
2023-08-17 19:40:47 +02:00
bitfl0wer 4424e3f07a Remove comment 2023-08-17 18:26:34 +02:00
bitfl0wer d69a459025 Remove prints 2023-08-17 18:26:14 +02:00
bitfl0wer 711580f270 Call watch_whole either way 2023-08-17 18:26:06 +02:00
bitfl0wer adf3d4ef31 Update test a little 2023-08-17 18:23:57 +02:00
bitfl0wer 4210bd6d73 Remove debug prints 2023-08-16 22:04:43 +02:00