Browse Source

Flip if statement for wrapped ActionRow components in modals

pull/10278/head
Rapptz 5 days ago
parent
commit
6d5013030b
  1. 10
      discord/ui/modal.py

10
discord/ui/modal.py

@ -34,8 +34,8 @@ from ..utils import MISSING, find
from .._types import ClientT from .._types import ClientT
from .item import Item from .item import Item
from .view import View from .view import View
from .label import Label from .select import BaseSelect
from .text_display import TextDisplay from .text_input import TextInput
if TYPE_CHECKING: if TYPE_CHECKING:
from typing_extensions import Self from typing_extensions import Self
@ -205,9 +205,7 @@ class Modal(View):
children = sorted(self._children, key=key) children = sorted(self._children, key=key)
components: List[Dict[str, Any]] = [] components: List[Dict[str, Any]] = []
for child in children: for child in children:
if isinstance(child, (Label, TextDisplay)): if isinstance(child, (BaseSelect, TextInput)):
components.append(child.to_component_dict()) # type: ignore
else:
# Every implicit child wrapped in an ActionRow in a modal # Every implicit child wrapped in an ActionRow in a modal
# has a single child of width 5 # has a single child of width 5
# It's also deprecated to use ActionRow in modals # It's also deprecated to use ActionRow in modals
@ -217,6 +215,8 @@ class Modal(View):
'components': [child.to_component_dict()], 'components': [child.to_component_dict()],
} }
) )
else:
components.append(child.to_component_dict())
return components return components

Loading…
Cancel
Save