mirror of
https://github.com/Rapptz/discord.py.git
synced 2025-05-13 09:19:48 +00:00
Add Guild.nsfw_level
This commit is contained in:
parent
dd727fb6f4
commit
a7ae2eb1bb
@ -53,6 +53,7 @@ __all__ = (
|
|||||||
'StagePrivacyLevel',
|
'StagePrivacyLevel',
|
||||||
'InteractionType',
|
'InteractionType',
|
||||||
'InteractionResponseType',
|
'InteractionResponseType',
|
||||||
|
'NSFWLevel',
|
||||||
)
|
)
|
||||||
|
|
||||||
def _create_value_cls(name):
|
def _create_value_cls(name):
|
||||||
@ -488,6 +489,12 @@ class StagePrivacyLevel(Enum):
|
|||||||
closed = 2
|
closed = 2
|
||||||
guild_only = 2
|
guild_only = 2
|
||||||
|
|
||||||
|
class NSFWLevel(Enum):
|
||||||
|
default = 0
|
||||||
|
explicit = 1
|
||||||
|
safe = 2
|
||||||
|
age_restricted = 3
|
||||||
|
|
||||||
T = TypeVar('T')
|
T = TypeVar('T')
|
||||||
|
|
||||||
def create_unknown_value(cls: Type[T], val: Any) -> T:
|
def create_unknown_value(cls: Type[T], val: Any) -> T:
|
||||||
|
@ -37,7 +37,7 @@ from .permissions import PermissionOverwrite
|
|||||||
from .colour import Colour
|
from .colour import Colour
|
||||||
from .errors import InvalidArgument, ClientException
|
from .errors import InvalidArgument, ClientException
|
||||||
from .channel import *
|
from .channel import *
|
||||||
from .enums import AuditLogAction, VideoQualityMode, VoiceRegion, ChannelType, try_enum, VerificationLevel, ContentFilter, NotificationLevel
|
from .enums import AuditLogAction, VideoQualityMode, VoiceRegion, ChannelType, try_enum, VerificationLevel, ContentFilter, NotificationLevel, NSFWLevel
|
||||||
from .mixins import Hashable
|
from .mixins import Hashable
|
||||||
from .user import User
|
from .user import User
|
||||||
from .invite import Invite
|
from .invite import Invite
|
||||||
@ -167,9 +167,8 @@ class Guild(Hashable):
|
|||||||
preferred_locale: Optional[:class:`str`]
|
preferred_locale: Optional[:class:`str`]
|
||||||
The preferred locale for the guild. Used when filtering Server Discovery
|
The preferred locale for the guild. Used when filtering Server Discovery
|
||||||
results to a specific language.
|
results to a specific language.
|
||||||
|
nsfw_level: :class:`NSFWLevel`
|
||||||
nsfw: :class:`bool`
|
The guild's NSFW level.
|
||||||
If the guild is marked as "not safe for work".
|
|
||||||
|
|
||||||
.. versionadded:: 2.0
|
.. versionadded:: 2.0
|
||||||
"""
|
"""
|
||||||
@ -183,7 +182,7 @@ class Guild(Hashable):
|
|||||||
'description', 'max_presences', 'max_members', 'max_video_channel_users',
|
'description', 'max_presences', 'max_members', 'max_video_channel_users',
|
||||||
'premium_tier', 'premium_subscription_count', '_system_channel_flags',
|
'premium_tier', 'premium_subscription_count', '_system_channel_flags',
|
||||||
'preferred_locale', '_discovery_splash', '_rules_channel_id',
|
'preferred_locale', '_discovery_splash', '_rules_channel_id',
|
||||||
'_public_updates_channel_id', '_stage_instances', 'nsfw')
|
'_public_updates_channel_id', '_stage_instances', 'nsfw_level')
|
||||||
|
|
||||||
_PREMIUM_GUILD_LIMITS = {
|
_PREMIUM_GUILD_LIMITS = {
|
||||||
None: _GuildLimit(emoji=50, bitrate=96e3, filesize=8388608),
|
None: _GuildLimit(emoji=50, bitrate=96e3, filesize=8388608),
|
||||||
@ -318,7 +317,7 @@ class Guild(Hashable):
|
|||||||
self._discovery_splash = guild.get('discovery_splash')
|
self._discovery_splash = guild.get('discovery_splash')
|
||||||
self._rules_channel_id = utils._get_as_snowflake(guild, 'rules_channel_id')
|
self._rules_channel_id = utils._get_as_snowflake(guild, 'rules_channel_id')
|
||||||
self._public_updates_channel_id = utils._get_as_snowflake(guild, 'public_updates_channel_id')
|
self._public_updates_channel_id = utils._get_as_snowflake(guild, 'public_updates_channel_id')
|
||||||
self.nsfw = guild.get('nsfw', False)
|
self.nsfw_level = try_enum(NSFWLevel, guild.get('nsfw_level', 0))
|
||||||
|
|
||||||
self._stage_instances = {}
|
self._stage_instances = {}
|
||||||
for s in guild.get('stage_instances', []):
|
for s in guild.get('stage_instances', []):
|
||||||
|
@ -70,6 +70,7 @@ DefaultMessageNotificationLevel = Literal[0, 1]
|
|||||||
ExplicitContentFilterLevel = Literal[0, 1, 2]
|
ExplicitContentFilterLevel = Literal[0, 1, 2]
|
||||||
MFALevel = Literal[0, 1]
|
MFALevel = Literal[0, 1]
|
||||||
VerificationLevel = Literal[0, 1, 2, 3, 4]
|
VerificationLevel = Literal[0, 1, 2, 3, 4]
|
||||||
|
NSFWLevel = Literal[0, 1, 2, 3]
|
||||||
PremiumTier = Literal[0, 1, 2, 3]
|
PremiumTier = Literal[0, 1, 2, 3]
|
||||||
GuildFeature = Literal[
|
GuildFeature = Literal[
|
||||||
'INVITE_SPLASH',
|
'INVITE_SPLASH',
|
||||||
@ -119,7 +120,7 @@ class Guild(_BaseGuildPreview, _GuildOptional):
|
|||||||
explicit_content_filter: ExplicitContentFilterLevel
|
explicit_content_filter: ExplicitContentFilterLevel
|
||||||
roles: List[Role]
|
roles: List[Role]
|
||||||
mfa_level: MFALevel
|
mfa_level: MFALevel
|
||||||
nsfw: bool
|
nsfw_level: NSFWLevel
|
||||||
application_id: Optional[Snowflake]
|
application_id: Optional[Snowflake]
|
||||||
system_channel_id: Optional[Snowflake]
|
system_channel_id: Optional[Snowflake]
|
||||||
system_channel_flags: int
|
system_channel_flags: int
|
||||||
|
22
docs/api.rst
22
docs/api.rst
@ -2197,6 +2197,28 @@ of :class:`enum.Enum`.
|
|||||||
|
|
||||||
Alias for :attr:`.closed`
|
Alias for :attr:`.closed`
|
||||||
|
|
||||||
|
.. class:: NSFWLevel
|
||||||
|
|
||||||
|
Represents the NSFW level of a guild.
|
||||||
|
|
||||||
|
.. versionadded:: 2.0
|
||||||
|
|
||||||
|
.. attribute:: default
|
||||||
|
|
||||||
|
The guild has not been categorised yet.
|
||||||
|
|
||||||
|
.. attribute:: explicit
|
||||||
|
|
||||||
|
The guild contains NSFW content.
|
||||||
|
|
||||||
|
.. attribute:: safe
|
||||||
|
|
||||||
|
The guild does not contain any NSFW content.
|
||||||
|
|
||||||
|
.. attribute:: age_restricted
|
||||||
|
|
||||||
|
The guild may contain NSFW content.
|
||||||
|
|
||||||
Async Iterator
|
Async Iterator
|
||||||
----------------
|
----------------
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user