mirror of
https://github.com/Rapptz/discord.py.git
synced 2025-07-12 12:55:31 +00:00
Change and add params in AppInfo and PartialAppInfo
This commit is contained in:
parent
2ddb9d22ba
commit
4828355f9e
@ -166,7 +166,7 @@ class AppInfo:
|
|||||||
self.name: str = data['name']
|
self.name: str = data['name']
|
||||||
self.description: str = data['description']
|
self.description: str = data['description']
|
||||||
self._icon: Optional[str] = data['icon']
|
self._icon: Optional[str] = data['icon']
|
||||||
self.rpc_origins: List[str] = data['rpc_origins']
|
self.rpc_origins: Optional[List[str]] = data.get('rpc_origins')
|
||||||
self.bot_public: bool = data['bot_public']
|
self.bot_public: bool = data['bot_public']
|
||||||
self.bot_require_code_grant: bool = data['bot_require_code_grant']
|
self.bot_require_code_grant: bool = data['bot_require_code_grant']
|
||||||
self.owner: User = state.create_user(data['owner'])
|
self.owner: User = state.create_user(data['owner'])
|
||||||
@ -255,6 +255,24 @@ class PartialAppInfo:
|
|||||||
The application's terms of service URL, if set.
|
The application's terms of service URL, if set.
|
||||||
privacy_policy_url: Optional[:class:`str`]
|
privacy_policy_url: Optional[:class:`str`]
|
||||||
The application's privacy policy URL, if set.
|
The application's privacy policy URL, if set.
|
||||||
|
approximate_guild_count: :class:`int`
|
||||||
|
The approximate count of the guilds the bot was added to.
|
||||||
|
|
||||||
|
.. versionadded:: 2.3
|
||||||
|
redirect_uris: List[:class:`str`]
|
||||||
|
A list of authentication redirect URIs.
|
||||||
|
|
||||||
|
.. versionadded:: 2.3
|
||||||
|
interactions_endpoint_url: Optional[:class:`str`]
|
||||||
|
The interactions endpoint url of the application to receive interactions over this endpoint rather than
|
||||||
|
over the gateway, if configured.
|
||||||
|
|
||||||
|
.. versionadded:: 2.3
|
||||||
|
role_connections_verification_url: Optional[:class:`str`]
|
||||||
|
The application's connection verification URL which will render the application as
|
||||||
|
a verification method in the guild's role verification configuration.
|
||||||
|
|
||||||
|
.. versionadded:: 2.3
|
||||||
"""
|
"""
|
||||||
|
|
||||||
__slots__ = (
|
__slots__ = (
|
||||||
@ -268,6 +286,11 @@ class PartialAppInfo:
|
|||||||
'privacy_policy_url',
|
'privacy_policy_url',
|
||||||
'_icon',
|
'_icon',
|
||||||
'_flags',
|
'_flags',
|
||||||
|
'_cover_image',
|
||||||
|
'approximate_guild_count',
|
||||||
|
'redirect_uris',
|
||||||
|
'interactions_endpoint_url',
|
||||||
|
'role_connections_verification_url',
|
||||||
)
|
)
|
||||||
|
|
||||||
def __init__(self, *, state: ConnectionState, data: PartialAppInfoPayload):
|
def __init__(self, *, state: ConnectionState, data: PartialAppInfoPayload):
|
||||||
@ -276,11 +299,16 @@ class PartialAppInfo:
|
|||||||
self.name: str = data['name']
|
self.name: str = data['name']
|
||||||
self._icon: Optional[str] = data.get('icon')
|
self._icon: Optional[str] = data.get('icon')
|
||||||
self._flags: int = data.get('flags', 0)
|
self._flags: int = data.get('flags', 0)
|
||||||
|
self._cover_image: Optional[str] = data.get('cover_image')
|
||||||
self.description: str = data['description']
|
self.description: str = data['description']
|
||||||
self.rpc_origins: Optional[List[str]] = data.get('rpc_origins')
|
self.rpc_origins: Optional[List[str]] = data.get('rpc_origins')
|
||||||
self.verify_key: str = data['verify_key']
|
self.verify_key: str = data['verify_key']
|
||||||
self.terms_of_service_url: Optional[str] = data.get('terms_of_service_url')
|
self.terms_of_service_url: Optional[str] = data.get('terms_of_service_url')
|
||||||
self.privacy_policy_url: Optional[str] = data.get('privacy_policy_url')
|
self.privacy_policy_url: Optional[str] = data.get('privacy_policy_url')
|
||||||
|
self.approximate_guild_count: int = data.get('approximate_guild_count', 0)
|
||||||
|
self.redirect_uris: List[str] = data.get('redirect_uris', [])
|
||||||
|
self.interactions_endpoint_url: Optional[str] = data.get('interactions_endpoint_url')
|
||||||
|
self.role_connections_verification_url: Optional[str] = data.get('role_connections_verification_url')
|
||||||
|
|
||||||
def __repr__(self) -> str:
|
def __repr__(self) -> str:
|
||||||
return f'<{self.__class__.__name__} id={self.id} name={self.name!r} description={self.description!r}>'
|
return f'<{self.__class__.__name__} id={self.id} name={self.name!r} description={self.description!r}>'
|
||||||
@ -292,6 +320,18 @@ class PartialAppInfo:
|
|||||||
return None
|
return None
|
||||||
return Asset._from_icon(self._state, self.id, self._icon, path='app')
|
return Asset._from_icon(self._state, self.id, self._icon, path='app')
|
||||||
|
|
||||||
|
@property
|
||||||
|
def cover_image(self) -> Optional[Asset]:
|
||||||
|
"""Optional[:class:`.Asset`]: Retrieves the cover image of the application's default rich presence.
|
||||||
|
|
||||||
|
This is only available if the application is a game sold on Discord.
|
||||||
|
|
||||||
|
.. versionadded:: 2.3
|
||||||
|
"""
|
||||||
|
if self._cover_image is None:
|
||||||
|
return None
|
||||||
|
return Asset._from_cover_image(self._state, self.id, self._cover_image)
|
||||||
|
|
||||||
@property
|
@property
|
||||||
def flags(self) -> ApplicationFlags:
|
def flags(self) -> ApplicationFlags:
|
||||||
""":class:`ApplicationFlags`: The application's flags.
|
""":class:`ApplicationFlags`: The application's flags.
|
||||||
|
@ -2486,8 +2486,6 @@ class Client:
|
|||||||
The bot's application information.
|
The bot's application information.
|
||||||
"""
|
"""
|
||||||
data = await self.http.application_info()
|
data = await self.http.application_info()
|
||||||
if 'rpc_origins' not in data:
|
|
||||||
data['rpc_origins'] = None
|
|
||||||
return AppInfo(self._connection, data)
|
return AppInfo(self._connection, data)
|
||||||
|
|
||||||
async def fetch_user(self, user_id: int, /) -> User:
|
async def fetch_user(self, user_id: int, /) -> User:
|
||||||
|
@ -44,10 +44,14 @@ class BaseAppInfo(TypedDict):
|
|||||||
icon: Optional[str]
|
icon: Optional[str]
|
||||||
summary: str
|
summary: str
|
||||||
description: str
|
description: str
|
||||||
|
flags: int
|
||||||
|
cover_image: NotRequired[str]
|
||||||
|
terms_of_service_url: NotRequired[str]
|
||||||
|
privacy_policy_url: NotRequired[str]
|
||||||
|
rpc_origins: NotRequired[List[str]]
|
||||||
|
|
||||||
|
|
||||||
class AppInfo(BaseAppInfo):
|
class AppInfo(BaseAppInfo):
|
||||||
rpc_origins: List[str]
|
|
||||||
owner: User
|
owner: User
|
||||||
bot_public: bool
|
bot_public: bool
|
||||||
bot_require_code_grant: bool
|
bot_require_code_grant: bool
|
||||||
@ -55,8 +59,6 @@ class AppInfo(BaseAppInfo):
|
|||||||
guild_id: NotRequired[Snowflake]
|
guild_id: NotRequired[Snowflake]
|
||||||
primary_sku_id: NotRequired[Snowflake]
|
primary_sku_id: NotRequired[Snowflake]
|
||||||
slug: NotRequired[str]
|
slug: NotRequired[str]
|
||||||
terms_of_service_url: NotRequired[str]
|
|
||||||
privacy_policy_url: NotRequired[str]
|
|
||||||
hook: NotRequired[bool]
|
hook: NotRequired[bool]
|
||||||
max_participants: NotRequired[int]
|
max_participants: NotRequired[int]
|
||||||
tags: NotRequired[List[str]]
|
tags: NotRequired[List[str]]
|
||||||
@ -66,13 +68,12 @@ class AppInfo(BaseAppInfo):
|
|||||||
|
|
||||||
|
|
||||||
class PartialAppInfo(BaseAppInfo, total=False):
|
class PartialAppInfo(BaseAppInfo, total=False):
|
||||||
rpc_origins: List[str]
|
|
||||||
cover_image: str
|
|
||||||
hook: bool
|
hook: bool
|
||||||
terms_of_service_url: str
|
|
||||||
privacy_policy_url: str
|
|
||||||
max_participants: int
|
max_participants: int
|
||||||
flags: int
|
approximate_guild_count: int
|
||||||
|
redirect_uris: List[str]
|
||||||
|
interactions_endpoint_url: Optional[str]
|
||||||
|
role_connections_verification_url: Optional[str]
|
||||||
|
|
||||||
|
|
||||||
class GatewayAppInfo(TypedDict):
|
class GatewayAppInfo(TypedDict):
|
||||||
|
Loading…
x
Reference in New Issue
Block a user