channel-block-tg/keyboards/inline/consts.py
2020-04-06 00:12:41 +03:00

22 lines
642 B
Python

from typing import List, Tuple, Dict
from aiogram.types import InlineKeyboardMarkup, InlineKeyboardButton
from aiogram.utils.callback_data import CallbackData
from . import utils
class InlineConstructor:
@staticmethod
def _create_kb(actions: List[Tuple[str, Dict[str, str], CallbackData]], schema: List[int]) -> InlineKeyboardMarkup:
btns = []
for a, b, c in actions:
btns.append(
InlineKeyboardButton(
text=a,
callback_data=c.new(**b)
)
)
kb = utils.misc.arrange_inline_schema(btns, schema)
return kb