Browse Source

Move to the dumbest emoji payload I've ever seen

pull/9260/head
Josh 2 years ago
parent
commit
001dc93701
  1. 13
      discord/onboarding.py
  2. 8
      discord/state.py

13
discord/onboarding.py

@ -101,16 +101,23 @@ class PartialOnboardingPromptOption:
self.role_ids: Set[int] = set(role_ids or [])
def to_dict(self, *, id: int = MISSING) -> PromptOptionPayload:
from .state import ConnectionState # circular import
if isinstance(self.emoji, str):
emoji_payload = {"emoji_name": self.emoji}
else:
emoji_payload = {
"emoji_id": self.emoji.id,
"emoji_name": self.emoji.name,
"emoji_animated": self.emoji.animated,
}
return {
'id': id or os.urandom(16).hex(),
'title': self.title,
'description': self.description,
'emoji': ConnectionState.emoji_to_partial_payload(self.emoji),
'channel_ids': list(self.channel_ids),
'role_ids': list(self.role_ids),
}
**emoji_payload,
} # type: ignore
class OnboardingPromptOption(PartialOnboardingPromptOption, Hashable):

8
discord/state.py

@ -1616,14 +1616,6 @@ class ConnectionState(Generic[ClientT]):
self, animated=data.get('animated', False), id=emoji_id, name=data['name'] # type: ignore
)
@staticmethod
def emoji_to_partial_payload(emoji: Union[Emoji, PartialEmoji, str]) -> PartialEmojiPayload:
if isinstance(emoji, str):
return {'name': emoji} # type: ignore
elif isinstance(emoji, Emoji):
emoji = emoji._to_partial()
return emoji.to_dict()
def _upgrade_partial_emoji(self, emoji: PartialEmoji) -> Union[Emoji, PartialEmoji, str]:
emoji_id = emoji.id
if not emoji_id:

Loading…
Cancel
Save