From ff75b689d6ce6249b8606c92ae50a5a35ce13937 Mon Sep 17 00:00:00 2001 From: dolfies Date: Sun, 23 Oct 2022 19:57:10 -0400 Subject: [PATCH] Tighten component typehint on Message and Modal --- discord/message.py | 6 +++--- discord/modal.py | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/discord/message.py b/discord/message.py index aec37b1fd..e8911c416 100644 --- a/discord/message.py +++ b/discord/message.py @@ -93,7 +93,7 @@ if TYPE_CHECKING: from .types.gateway import MessageReactionRemoveEvent, MessageUpdateEvent from .abc import Snowflake from .abc import GuildChannel, MessageableChannel - from .components import Component + from .components import ActionRow from .state import ConnectionState from .channel import TextChannel from .mentions import AllowedMentions @@ -1323,7 +1323,7 @@ class Message(PartialMessage, Hashable): self.content: str = data['content'] self.nonce: Optional[Union[int, str]] = data.get('nonce') self.stickers: List[StickerItem] = [StickerItem(data=d, state=state) for d in data.get('sticker_items', [])] - self.components: List[Component] = [_component_factory(d, self) for d in data.get('components', [])] + self.components: List[ActionRow] = [_component_factory(d, self) for d in data.get('components', [])] # type: ignore # Will always be rows here self.call: Optional[CallMessage] = None try: @@ -1558,7 +1558,7 @@ class Message(PartialMessage, Hashable): self.call = CallMessage(message=self, **call) def _handle_components(self, components: List[ComponentPayload]): - self.components = [_component_factory(d, self) for d in components] + self.components: List[ActionRow] = [_component_factory(d, self) for d in components] # type: ignore # Will always be rows here def _handle_interaction(self, data: MessageInteractionPayload): self.interaction = Interaction._from_message(self, **data) diff --git a/discord/modal.py b/discord/modal.py index 5899fb5c4..a60e0cf76 100644 --- a/discord/modal.py +++ b/discord/modal.py @@ -33,7 +33,7 @@ from .utils import _generate_nonce if TYPE_CHECKING: from .appinfo import InteractionApplication - from .components import Component + from .components import ActionRow from .interactions import Interaction # fmt: off @@ -91,7 +91,7 @@ class Modal(Hashable): self.nonce: Optional[Union[int, str]] = data.get('nonce') self.title: str = data.get('title', '') self.custom_id: str = data.get('custom_id', '') - self.components: List[Component] = [_component_factory(d) for d in data.get('components', [])] + self.components: List[ActionRow] = [_component_factory(d) for d in data.get('components', [])] # type: ignore # Will always be rows here self.application: InteractionApplication = interaction._state.create_interaction_application(data['application']) def __str__(self) -> str: