Skip to content

views

View components for Discord UI interactions.

This module contains reusable view components for complex Discord interactions.

Modules:

  • config

    Tux Configuration UI Package.

  • confirmation

    Discord Confirmation Views for Tux Bot.

  • tldr

    TLDR Paginator View.

Classes:

Classes

BaseConfirmationView

Python
BaseConfirmationView(user: int)

Bases: View

Base confirmation view with confirm and cancel buttons.

Initialize the base confirmation view.

Parameters:

  • user (int) –

    The user ID that can interact with this view.

Methods:

Functions

confirm async
Python
confirm(interaction: Interaction, button: Button[View]) -> None

Handle the confirm button press.

Parameters:

  • interaction (Interaction) –

    The interaction that triggered this action.

  • button (Button[View]) –

    The button that was pressed.

cancel async
Python
cancel(interaction: Interaction, button: Button[View]) -> None

Handle the cancel button press.

Parameters:

  • interaction (Interaction) –

    The interaction that triggered this action.

  • button (Button[View]) –

    The button that was pressed.

update_button_styles
Python
update_button_styles() -> None

Update button styles for the confirmation view.

ConfirmationDanger

Python
ConfirmationDanger(user: int)

Bases: BaseConfirmationView

Confirmation view with a danger button.

Initialize the danger confirmation view.

Parameters:

  • user (int) –

    The user ID that can interact with this view.

Methods:

Functions

confirm async
Python
confirm(interaction: Interaction, button: Button[View]) -> None

Handle the confirm button press.

Parameters:

  • interaction (Interaction) –

    The interaction that triggered this action.

  • button (Button[View]) –

    The button that was pressed.

cancel async
Python
cancel(interaction: Interaction, button: Button[View]) -> None

Handle the cancel button press.

Parameters:

  • interaction (Interaction) –

    The interaction that triggered this action.

  • button (Button[View]) –

    The button that was pressed.

update_button_styles
Python
update_button_styles() -> None

Update button styles for the confirmation view.

ConfirmationNormal

Python
ConfirmationNormal(user: int)

Bases: BaseConfirmationView

Confirmation view with a normal button.

Initialize the normal confirmation view.

Parameters:

  • user (int) –

    The user ID that can interact with this view.

Methods:

Functions

confirm async
Python
confirm(interaction: Interaction, button: Button[View]) -> None

Handle the confirm button press.

Parameters:

  • interaction (Interaction) –

    The interaction that triggered this action.

  • button (Button[View]) –

    The button that was pressed.

cancel async
Python
cancel(interaction: Interaction, button: Button[View]) -> None

Handle the cancel button press.

Parameters:

  • interaction (Interaction) –

    The interaction that triggered this action.

  • button (Button[View]) –

    The button that was pressed.

update_button_styles
Python
update_button_styles() -> None

Update button styles for the confirmation view.

TldrPaginatorView

Python
TldrPaginatorView(pages: list[str], title: str, user: User, bot: Tux)

Bases: View

Paginator view for navigating through long TLDR pages.

Initialize the TLDR paginator view.

Parameters:

  • pages (list[str]) –

    List of page content strings to paginate through.

  • title (str) –

    Title for the paginated content.

  • user (User) –

    User who can interact with this view.

  • bot (Tux) –

    Bot instance for embed creation.

Methods:

  • interaction_check

    Check if the interaction user is allowed to interact with this view.

  • on_timeout

    Handle view timeout by removing the view from the message.

  • prev

    Navigate to the previous page.

  • next

    Navigate to the next page.

  • update_message

    Update the message with the current page content.

Functions

interaction_check async
Python
interaction_check(interaction: Interaction) -> bool

Check if the interaction user is allowed to interact with this view.

Parameters:

  • interaction (Interaction) –

    The interaction to check.

Returns:

  • bool

    True if the user is allowed to interact.

on_timeout async
Python
on_timeout() -> None

Handle view timeout by removing the view from the message.

prev async
Python
prev(interaction: Interaction, button: Button[View])

Navigate to the previous page.

Parameters:

  • interaction (Interaction) –

    The interaction that triggered this action.

  • button (Button[View]) –

    The button that was pressed.

next async
Python
next(interaction: Interaction, button: Button[View])

Navigate to the next page.

Parameters:

  • interaction (Interaction) –

    The interaction that triggered this action.

  • button (Button[View]) –

    The button that was pressed.

update_message async
Python
update_message(interaction: Interaction) -> None

Update the message with the current page content.

Parameters:

  • interaction (Interaction) –

    The interaction to update the message for.