|
|
@ -44,7 +44,6 @@ if TYPE_CHECKING: |
|
|
|
) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class OnboardingPromptOption(Hashable): |
|
|
|
"""Represents a guild's onboarding prompt's option. |
|
|
|
|
|
|
@ -79,6 +78,7 @@ class OnboardingPromptOption(Hashable): |
|
|
|
emoji: :class:`PartialEmoji` |
|
|
|
The emoji of the option. |
|
|
|
""" |
|
|
|
|
|
|
|
__slots__ = ('id', 'title', 'description', 'emoji', '_channels', '_roles', '_onboarding') |
|
|
|
|
|
|
|
def __init__(self, *, onboarding: Onboarding, data: OnboardingPromptOptionPayload) -> None: |
|
|
@ -114,7 +114,6 @@ class OnboardingPromptOption(Hashable): |
|
|
|
def __repr__(self) -> str: |
|
|
|
return f'<OnboardingPromptOption id={self.id} title={self.title!r} description={self.description!r} emoji={self.emoji!r}>' |
|
|
|
|
|
|
|
|
|
|
|
@property |
|
|
|
def channels(self) -> SequenceProxy[Union[GuildChannel, Thread, PartialMessageable, Object]]: |
|
|
|
"""List[:class:`Union[GuildChannel, Thread, PartialMessageable, Object]`]: A list of channels that are opted into when this option is selected.""" |
|
|
@ -163,7 +162,9 @@ class OnboardingPrompt(Hashable): |
|
|
|
in_onboarding: :class:`bool` |
|
|
|
Whether the prompt is in the onboarding flow. |
|
|
|
""" |
|
|
|
|
|
|
|
__slots__ = ('id', 'title', 'single_select', 'required', 'in_onboarding', '_oboarding', '_options', '_type') |
|
|
|
|
|
|
|
def __init__(self, *, onboarding: Onboarding, data: OnboardingPromptPayload) -> None: |
|
|
|
self._oboarding: Onboarding = onboarding |
|
|
|
self._from_data(data) |
|
|
@ -238,9 +239,7 @@ class Onboarding: |
|
|
|
self._guild_id: int = int(data['guild_id']) |
|
|
|
|
|
|
|
prompts = data.get('prompts', []) |
|
|
|
self._prompts: List[OnboardingPrompt] = [ |
|
|
|
OnboardingPrompt(onboarding=self, data=prompt) for prompt in prompts |
|
|
|
] |
|
|
|
self._prompts: List[OnboardingPrompt] = [OnboardingPrompt(onboarding=self, data=prompt) for prompt in prompts] |
|
|
|
default_channel_ids = data.get('default_channel_ids', []) |
|
|
|
for channel_id in default_channel_ids: |
|
|
|
channel = guild.get_channel_or_thread(int(channel_id)) or state.get_channel(int(channel_id)) |
|
|
|