Menu Manager
- class navmenu.menu_manager.MenuManager(menus, state_handler)[source]
A class that manages menus and transitions between them.
- Parameters
menus (
Dict[str,BaseMenu]) – A dictionary mapping menu names to menus.state_handler (
StateHandler) – The menu state manager to store users’ states.
- get_message(user_id=None, payload=None)[source]
Get a message representing the current menu.
- Parameters
user_id (
Optional[int]) – A value used to identify the user.payload (
Optional[dict]) – An incoming message payload.
- Return type
- Returns
A message representing the current menu.
- select(action, user_id=None, payload=None)[source]
Select an item in the current menu based on action and payload.
This method handles current menu changes.
- Parameters
action (
str) – A string indicating selected menu button.user_id (
Optional[int]) – A value used to identify the user.payload (
Optional[dict]) – An incoming message payload.
- Return type
Sequence[Message]- Returns
A list of messages.
- Raises
ValueError – An invalid action was provided.