import { InlineKeyboardButton } from "grammy/types";

export function buildPlacementKeyboard(
  placements: { type: string; label: string }[],
): InlineKeyboardButton[][] {
  return placements.map((p) => [
    {
      text: p.label,
      callback_data: p.type,
    },
  ]);
}

export function buildActionsKeyboard(
  actions: { action: string; label: string }[],
): InlineKeyboardButton[][] {
  // Для простоты пусть выбирать только один вариант. Можно усложнить по необходимости.
  return actions.map((a) => [
    {
      text: a.label,
      callback_data: a.action,
    },
  ]);
}

export function buildManageKeyboard(
  qrCodes: { uri: string; name: string }[],
): InlineKeyboardButton[][] {
  return qrCodes.map((qr) => [
    {
      text: qr.name,
      callback_data: `manage:${qr.uri}`,
    },
  ]);
}
