Rapptz
f0c76a13d3
Fix guild documentation not showing up for some methods
2021-06-11 05:25:06 -04:00
Rapptz
04573c3c06
Make View timeout parameter keyword-only
2021-06-10 09:06:04 -04:00
Rapptz
f6ea03230e
Make parameters passed to Reaction.user keyword-only
2021-06-10 08:58:25 -04:00
Rapptz
c251c51cb1
Typehint Reaction
2021-06-10 08:58:10 -04:00
Rapptz
9181bf046b
Rename Reaction.custom_emoji to Reaction.is_custom_emoji
...
This legacy attribute was apparently never changed to be consistent
with the rest of the library
2021-06-10 08:50:50 -04:00
Rapptz
fc66c5b92d
Fix some webhook related type checker errors
2021-06-10 07:57:41 -04:00
Rapptz
0dd4c4c08c
Don't use class attribute syntax for Guild typings
2021-06-10 07:50:35 -04:00
Rapptz
11e23c534a
Close ClientSession after closing websocket connections
2021-06-10 07:32:05 -04:00
Rapptz
7dccbace78
Refactor Guild to support type hints
...
This patch also does the following:
* Sets some parameters to be positional only
* Changes Guild.edit to use the MISSING sentinel
* Changes the various create_channel methods to be type safe
* Changes many parameters from Optional[T] to use MISSING
* Changes Guild.create_role to use MISSING sentinel
This refactor is mostly partial but lays a decent foundation
2021-06-08 10:56:26 -04:00
Rapptz
2247fbb23a
[types] Use proper type for Guild.threads
2021-06-08 09:28:29 -04:00
Rapptz
c693945a46
[types] Split PartialVoiceState for proper gateway type
2021-06-08 09:27:55 -04:00
Rapptz
746da7d54c
Add Thread.permissions_for helper function
2021-06-08 07:29:17 -04:00
Rapptz
1152f67efc
Allow pins events to work with threads
2021-06-08 07:29:17 -04:00
Rapptz
5ae7940ec8
Add message purging functions to Thread
2021-06-08 07:29:17 -04:00
Rapptz
e13cbf4644
Don't dispatch thread_join on extraneous THREAD_CREATE dispatches
2021-06-08 07:29:17 -04:00
Rapptz
bd369c76ea
Parse remaining thread events.
2021-06-08 07:29:17 -04:00
Rapptz
9adf94e6b1
Add ThreadMember.thread
2021-06-08 07:29:17 -04:00
Rapptz
92ee2cd598
Add support for thread parameter in Webhook.send
2021-06-08 07:29:15 -04:00
Rapptz
4b51e3e253
Add TextChannel.active_threads
2021-06-08 07:26:22 -04:00
Rapptz
d0d2d7ea62
Clarify actions that require manage_threads permission
2021-06-08 07:26:22 -04:00
Rapptz
5a72391b72
Add thread related permissions
2021-06-08 07:26:22 -04:00
Rapptz
3a421a3eb9
Add TextChannel.get_thread shortcut helper
2021-06-08 07:26:22 -04:00
Rapptz
b2176dc0ef
Change how threads are created
...
Instead of start_public_thread and start_private_thread they'll now be
one method.
I might revert this if starting a public thread without a message never
ends up happening.
2021-06-08 07:26:22 -04:00
Rapptz
40127eb7b5
Fix import error with threads archived iterator
2021-06-08 07:26:22 -04:00
Rapptz
b9d8d3872e
Add __repr__ for the thread classes
2021-06-08 07:26:22 -04:00
Rapptz
429c5933d9
Add minor parsing for THREAD_LIST_SYNC and THREAD_MEMBER_UPDATE
...
There's no dispatch for these yet
2021-06-08 07:26:22 -04:00
Rapptz
a16f54afdb
Replace Ellipsis with utils.MISSING
2021-06-08 07:26:22 -04:00
Rapptz
a09f89cedf
Fix partial thread members
2021-06-08 07:26:22 -04:00
Rapptz
c6d09a8bfa
Add Thread.is_news()
2021-06-08 07:26:22 -04:00
Rapptz
72c66a1706
Bump gateway API to v9
2021-06-08 07:26:22 -04:00
Rapptz
4a4e73ec14
Update thread typings and payloads to match documentation
2021-06-08 07:26:18 -04:00
Rapptz
ac95b8b85b
Allow Message.channel to be a thread
2021-06-08 07:25:40 -04:00
Rapptz
51cc7622a6
TextChannel.archived_threads is not a coroutine
2021-06-08 07:25:40 -04:00
Rapptz
cb9a506686
Fix typo with archived_threads iterator leading to AttributeError
2021-06-08 07:25:40 -04:00
Rapptz
7c6724fdd7
Fix typo in start_private_thread
...
This also renames archive_threads to archived_threads
2021-06-08 07:25:40 -04:00
Rapptz
9d3962aa7a
[types] Fix some minor ordering mishap on MessageType
2021-06-08 07:25:40 -04:00
Rapptz
c1ce3b949f
Implement remaining HTTP endpoints on threads
...
I'm not sure if I missed any -- but this is the entire documented set
so far.
2021-06-08 07:25:30 -04:00
Rapptz
68c7c538f5
First pass at preliminary thread support
...
This is missing a lot of functionality right now, such as two gateway
events and all the HTTP CRUD endpoints.
2021-06-08 07:23:40 -04:00
Rapptz
6c79714b42
[types] Add support thread API typings
2021-06-08 07:13:19 -04:00
Rapptz
5c2945bcd4
Fix AttributeError in is_nsfw() methods
2021-06-08 05:37:10 -04:00
Rapptz
81e9d70b7b
Add pre-conditions to avoid on_timeout being called after stop()
...
Apparently the cancellation request for a TimerHandle doesn't
necessarily have to be honoured despite large periods of time passing
2021-06-06 07:05:17 -04:00
Rapptz
876b1e0f3e
Add View.on_error callback for swallowed exceptions
2021-06-05 08:22:44 -04:00
Rapptz
27556ea0a2
Fix DM channel permissions not having read_messages
2021-06-05 02:53:30 -04:00
Rapptz
dbd9ed2c41
Add View.is_dispatching to detect whether a view has been added
2021-06-04 04:30:19 -04:00
Rapptz
4b1059579e
Fix NameError in missing _EmojiTag import
2021-06-02 06:00:39 -04:00
Rapptz
47f2d04940
Allow passing Emoji in components
2021-06-02 05:30:42 -04:00
Rapptz
be5f4ae4ab
Properly type hint attributes in Emoji
2021-06-02 05:30:42 -04:00
Rapptz
bac6c2fc7b
[commands] Unwrap functions to get their module and globalns
...
Fixes #7002
2021-06-01 08:51:35 -04:00
Rapptz
78275023cc
Add Client.persistent_views to get all persistent views
2021-05-31 23:15:12 -04:00
Rapptz
7c40e83d10
Ensure views added to Client.add_view are persistent views
2021-05-31 23:08:08 -04:00
Rapptz
c811932ca7
Don't mark URL buttons as dispatchable
2021-05-31 22:57:44 -04:00
Rapptz
09f0ed1fba
Mention that rows are explicitly 0 indexed.
2021-05-31 20:19:08 -04:00
Rapptz
89d24cb0bc
Add interaction enums to __all__
2021-05-31 05:56:50 -04:00
Rapptz
d0097c4281
Remove view syncing before editing in views
...
This prevents a potential race condition when a MESSAGE_UPDATE is
received syncing and refreshing the view components causing a desync.
2021-05-31 05:50:40 -04:00
Rapptz
4a3491cc0a
Check for view finished state before resuming listening on edit
2021-05-31 00:18:06 -04:00
Rapptz
8dafe4f544
Add support for editing in views in PartialMessage
2021-05-31 00:17:35 -04:00
Rapptz
2ed3e049e1
Add View.is_finished() to query listening state
2021-05-31 00:12:08 -04:00
Rapptz
61a189c217
Sync views in InteractionResponse.edit_message
2021-05-31 00:09:15 -04:00
Rapptz
90a28d48d5
Fix potential KeyError when removing views
2021-05-30 12:29:46 -04:00
Rapptz
7b1c57ed60
Add support for interaction followups
2021-05-30 11:25:15 -04:00
Rapptz
2ebd5315f9
Add support for sending and editing views in Webhook
2021-05-30 11:25:00 -04:00
Rapptz
c9cdb47338
Add __repr__ for View
2021-05-30 11:24:23 -04:00
Rapptz
db58e628ba
Allow Webhook.send to send ephemeral messages
...
This is only available for application webhooks
2021-05-30 10:29:29 -04:00
Rapptz
267fad9180
Add WebhookType.application
2021-05-30 10:02:58 -04:00
Rapptz
c6f3ed1af4
Allow sending View with Interaction.response.send_message
...
This also allows for ephemeral views and listening to said views
2021-05-30 06:10:58 -04:00
Rapptz
1b15772671
Allow assigning Select.options to refresh the select menu
2021-05-30 03:20:29 -04:00
Rapptz
02c317d9a4
Fix Message.edit typings to take View parameters
2021-05-30 00:00:24 -04:00
Rapptz
7bd1211b36
Rework item grouping behaviour to take into consideration weights
...
This also renames `group` into `row`
2021-05-29 23:58:37 -04:00
Rapptz
695662416a
Fix Messageable.send overload to take view parameters
2021-05-29 08:01:37 -04:00
Rapptz
c21d12be5e
Check future state before setting result in View
2021-05-29 05:52:05 -04:00
Rapptz
d78e5d979d
Refactor and type hint invites
2021-05-29 05:49:19 -04:00
Rapptz
5a68d3a561
Typehint AllowedMentions
2021-05-29 04:26:21 -04:00
Rapptz
5a9cbc967b
Typehint mixins
2021-05-29 02:44:31 -04:00
Rapptz
794327cdb4
Fix type errors with required keys in the integration types
2021-05-29 01:09:07 -04:00
Rapptz
1ae40a11b7
Fix some type errors in StreamIntegration.edit
2021-05-29 00:54:31 -04:00
Rapptz
06743dd434
Make StreamIntegration.role a property rather than a strong reference
2021-05-29 00:50:56 -04:00
Rapptz
732c5384fd
Allow registering a View for persistent long term dispatching
2021-05-29 00:44:08 -04:00
Rapptz
7e1f8bf1b4
Typehint Sticker
2021-05-29 00:19:11 -04:00
Rapptz
f321efd4de
Default SelectOption.value to the label if not given
2021-05-28 09:43:15 -04:00
Rapptz
b84c199c70
Allow constructing SelectOption.emoji from a string as well
2021-05-28 09:40:49 -04:00
Rapptz
c475218112
Typehint Role and RoleTags
2021-05-28 08:54:45 -04:00
Rapptz
35bef7af38
Fix Role.is_assignable() computing Guild.me twice
2021-05-28 08:41:45 -04:00
Rapptz
f4fe247813
Remove __slots__ from View
2021-05-28 08:39:34 -04:00
Rapptz
ef9f61a933
Add support for select components
2021-05-28 05:34:21 -04:00
Rapptz
6874aa73c4
Add PartialEmoji.from_str helper
2021-05-28 05:34:21 -04:00
Rapptz
ff36aedf7b
Add support for reading SelectMenu components from messages
2021-05-28 05:34:21 -04:00
Rapptz
8bd17ede47
Move ActionRow to its own separate type split from Component
2021-05-28 02:11:10 -04:00
Rapptz
aeb2cfb573
Add private get_slots utility to get slots through MRO
2021-05-28 01:56:48 -04:00
Rapptz
263f45d05b
Fix View.wait not returning when it times out
...
This also makes it so it returns the reason why the wait finished.
2021-05-28 00:53:28 -04:00
Rapptz
3f60997630
Add a timeout callback for detecting when a View times out
2021-05-28 00:53:28 -04:00
Rapptz
97f308d219
Add View.remove_item and View.clear_items
2021-05-28 00:53:28 -04:00
Rapptz
3453992ce6
Add View.interaction_check for interaction pre-conditions
2021-05-28 00:53:28 -04:00
Rapptz
65db814d4a
Add a way to wait for a view to finish its interactions
2021-05-27 23:31:48 -04:00
Rapptz
1954861668
Add warning for comparing with role positioning
2021-05-27 21:11:17 -04:00
Rapptz
fc64ffdabd
Allow passing multiple embeds in InteractionResponse.edit_message
2021-05-27 21:07:28 -04:00
Rapptz
fbafe20e51
Allow View to be instantiated without subclassing
2021-05-27 01:41:18 -04:00
Rapptz
c89882441c
Fix typings for resolved channels in slash commands
2021-05-27 00:53:14 -04:00
Rapptz
7584834dd4
Only automatically defer if no response was given in callback
2021-05-27 00:53:14 -04:00
Rapptz
3b83f60b35
Add support for setting interaction responses
2021-05-27 00:53:14 -04:00
Rapptz
85758a75b3
Add interaction related endpoints to async webhook
2021-05-27 00:53:14 -04:00