mirror of
https://github.com/Rapptz/discord.py.git
synced 2026-03-05 03:02:49 +00:00
Add bypass slowmode permissions
This commit is contained in:
@@ -95,6 +95,7 @@ if TYPE_CHECKING:
|
||||
create_polls: BoolOrNoneT
|
||||
use_external_apps: BoolOrNoneT
|
||||
pin_messages: BoolOrNoneT
|
||||
bypass_slowmode: BoolOrNoneT
|
||||
|
||||
class _PermissionsKwargs(_BasePermissionsKwargs[bool]): ...
|
||||
|
||||
@@ -253,7 +254,7 @@ class Permissions(BaseFlags):
|
||||
permissions set to ``True``.
|
||||
"""
|
||||
# Some of these are 0 because we don't want to set unnecessary bits
|
||||
return cls(0b0000_0000_0000_1111_0111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111)
|
||||
return cls(0b0000_0000_0001_1111_0111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111)
|
||||
|
||||
@classmethod
|
||||
def _timeout_mask(cls) -> int:
|
||||
@@ -273,6 +274,7 @@ class Permissions(BaseFlags):
|
||||
base.create_public_threads = False
|
||||
base.manage_threads = False
|
||||
base.send_messages_in_threads = False
|
||||
base.bypass_slowmode = False
|
||||
return base
|
||||
|
||||
@classmethod
|
||||
@@ -326,8 +328,11 @@ class Permissions(BaseFlags):
|
||||
.. versionchanged:: 2.4
|
||||
Added :attr:`send_polls`, :attr:`send_voice_messages`, attr:`use_external_sounds`,
|
||||
:attr:`use_embedded_activities`, and :attr:`use_external_apps` permissions.
|
||||
|
||||
.. versionchanged:: 2.7
|
||||
Added :attr:`pin_messages` and :attr:`bypass_slowmode` permissions.
|
||||
"""
|
||||
return cls(0b0000_0000_0000_1110_0110_0100_1111_1101_1011_0011_1111_0111_1111_1111_0101_0001)
|
||||
return cls(0b0000_0000_0001_1110_0110_0100_1111_1101_1011_0011_1111_0111_1111_1111_0101_0001)
|
||||
|
||||
@classmethod
|
||||
def general(cls) -> Self:
|
||||
@@ -377,9 +382,9 @@ class Permissions(BaseFlags):
|
||||
Added :attr:`send_polls` and :attr:`use_external_apps` permissions.
|
||||
|
||||
.. versionchanged:: 2.7
|
||||
Added :attr:`pin_messages` permission.
|
||||
Added :attr:`pin_messages` and :attr:`bypass_slowmode` permissions.
|
||||
"""
|
||||
return cls(0b0000_0000_0000_1110_0100_0000_0111_1100_1000_0000_0000_0111_1111_1000_0100_0000)
|
||||
return cls(0b0000_0000_0001_1110_0100_0000_0111_1100_1000_0000_0000_0111_1111_1000_0100_0000)
|
||||
|
||||
@classmethod
|
||||
def voice(cls) -> Self:
|
||||
@@ -577,7 +582,7 @@ class Permissions(BaseFlags):
|
||||
|
||||
@flag_value
|
||||
def manage_messages(self) -> int:
|
||||
""":class:`bool`: Returns ``True`` if a user can delete messages or bypass slowmode in a text channel.
|
||||
""":class:`bool`: Returns ``True`` if a user can delete messages in a text channel.
|
||||
|
||||
.. note::
|
||||
|
||||
@@ -884,6 +889,14 @@ class Permissions(BaseFlags):
|
||||
"""
|
||||
return 1 << 51
|
||||
|
||||
@flag_value
|
||||
def bypass_slowmode(self) -> int:
|
||||
""":class:`bool`: Returns ``True`` if a user can bypass slowmode.
|
||||
|
||||
.. versionadded:: 2.7
|
||||
"""
|
||||
return 1 << 52
|
||||
|
||||
|
||||
def _augment_from_permissions(cls):
|
||||
cls.VALID_NAMES = set(Permissions.VALID_FLAGS)
|
||||
@@ -1009,6 +1022,7 @@ class PermissionOverwrite:
|
||||
create_polls: Optional[bool]
|
||||
use_external_apps: Optional[bool]
|
||||
pin_messages: Optional[bool]
|
||||
bypass_slowmode: Optional[bool]
|
||||
|
||||
def __init__(self, **kwargs: Unpack[_PermissionOverwriteKwargs]) -> None:
|
||||
self._values: Dict[str, Optional[bool]] = {}
|
||||
|
||||
Reference in New Issue
Block a user