Skip to content

Commit

Permalink
fix type hint.
Browse files Browse the repository at this point in the history
  • Loading branch information
hawk-tomy committed Feb 25, 2024
1 parent baab63b commit 196ae36
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 7 deletions.
10 changes: 5 additions & 5 deletions discord/ext/flow/pages.py
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ class Paginator(Generic[T]):
You should use `paginator` decorator and return this class instance.
Args:
message_builder (MaybeAwaitableFunc[[Sequence[T], int, int], Message]):
message_builder (MaybeAwaitableFunc[[tuple[T, ...], int, int], Message]):
generate message from separated values.
Arguments are Separated values, current page number and max page number.
values (Sequence[T]): values to paginate.
Expand All @@ -41,22 +41,22 @@ class Paginator(Generic[T]):
row (int, optional): row number of control buttons. Defaults to 4.
"""

message_builder: MaybeAwaitableFunc[[Sequence[T], int, int], Message]
values: Sequence[T]
message_builder: MaybeAwaitableFunc[[tuple[T, ...], int, int], Message]
values: tuple[T, ...]
per_page: int
max_page: int
current_page: int = 0

def __init__( # noqa: PLR0913 (allow too many arguments) I think, it's okay.
self,
message_builder: MaybeAwaitableFunc[[Sequence[T], int, int], Message],
message_builder: MaybeAwaitableFunc[[tuple[T, ...], int, int], Message],
values: Sequence[T],
per_page: int = 10,
start_page: int = 0,
row: int = 4,
) -> None:
self.message_builder = message_builder
self.values = values
self.values = tuple(values)
self.current_page = start_page
self.per_page = per_page
div, mod = divmod(len(values), per_page)
Expand Down
4 changes: 2 additions & 2 deletions example/pagination.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
from discord.ext.flow import Button, Controller, Message, ModelBase, Paginator, paginator

if TYPE_CHECKING:
from collections.abc import Awaitable, Callable, Sequence
from collections.abc import Awaitable, Callable


class Pagination(ModelBase):
Expand All @@ -22,7 +22,7 @@ def __init__(self, count: int) -> None:
def message(self) -> Paginator[int]:
return Paginator(self.message_builder, values=tuple(range(1, self.count + 1)))

def message_builder(self, msgs: Sequence[int], current: int, max_page: int) -> Message:
def message_builder(self, msgs: tuple[int, ...], current: int, max_page: int) -> Message:
return Message(
embeds=[Embed(title=f'{current}/{max_page}', description='\n'.join(str(i) for i in msgs))],
items=tuple(Button(label=f'{i}', callback=self.button_callback(i)) for i in msgs),
Expand Down

0 comments on commit 196ae36

Please sign in to comment.