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
Rapptz
d42c63e186
Fix some type hints in interactions
2021-05-27 00:53:14 -04:00
Rapptz
5e96ad9261
Force button style to link if a URL is passed
2021-05-27 00:53:14 -04:00
Rapptz
80fd222ca0
Add aliases for button style colours
2021-05-27 00:53:14 -04:00
Rapptz
eda6680377
Rename enums to use official API naming
2021-05-27 00:53:14 -04:00
Rapptz
cc800796a2
Properly guard for DMs in interaction creation
...
Fix #6794
2021-05-27 00:53:14 -04:00
Rapptz
ed9badcddf
Make Item and Button generic over the underlying view
2021-05-27 00:53:14 -04:00
Rapptz
4c0ebc9221
Change the way callbacks are defined to allow deriving
...
This should hopefully make these work more consistently as other
functions do.
2021-05-27 00:53:14 -04:00
Rapptz
cc56f31bcd
Fix emoji not showing up in button component
2021-05-27 00:53:13 -04:00
Rapptz
98570793e4
Add initial support for buttons and components
2021-05-27 00:53:13 -04:00
Rapptz
f56543df15
[commands] Remove function call indirection when checking author
2021-05-25 20:53:44 -04:00
Rapptz
3c90f16bf0
Fix cached_slot_property typings again
2021-05-23 21:30:44 -04:00
Rapptz
81b259ab36
Fix sending arrays with nulls in them when changing presences
2021-05-16 07:15:53 -04:00
Rapptz
de965c2bf5
Simplify SnowflakeList type hints
2021-05-06 08:23:18 -04:00
Rapptz
2e12f6de9c
Typehint File
2021-05-06 08:15:51 -04:00
Rapptz
1bf7aadf94
Typehint emoji classes
2021-05-05 23:48:36 -04:00
Rapptz
7bad27d215
Fix SnowflakeList typings
2021-05-05 23:33:11 -04:00
Rapptz
ca92f37f18
Fix typings in message.py
2021-05-05 23:05:15 -04:00
Rapptz
81004369dc
Add Guild.fetch_channel
2021-05-05 14:26:33 -04:00
Rapptz
598057ee79
Add Permissions.manage_events
2021-05-05 14:16:39 -04:00
Rapptz
c31946f29f
Type hint GuildChannel and don't make it a Protocol
...
This reverts GuildChannel back into a base class mixin.
2021-05-05 11:14:58 -04:00