UNPKG

umbot

Version:

Мультиплатформенный фреймворк для создания голосовых навыков и чат-ботов с единой бизнес-логикой. Встроенная поддержка ВКонтакте, Telegram, Viber, MAX, Яндекс Алисы, Маруси и Сбера SmartApp. Архитектура на адаптерах позволяет подключать любые другие платф

55 lines (54 loc) 1.69 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.buttonProcessing = buttonProcessing; const utils_1 = require("../Base/utils"); /** * Получение кнопок в формате Telegram * @param buttons Кнопки, которые необходимо отобразить */ function buttonProcessing(buttons) { let object = {}; const inlines = []; const reply = []; (0, utils_1.getCorrectButtons)(buttons, 40).forEach((button) => { if (button.url) { const inline = { text: button.title, url: button.url, }; if (button.payload) { inline.callback_data = button.payload; } inlines.push(inline); } else if (button.payload) { inlines.push({ text: button.title, callback_data: button.payload, }); } else { const replyBtn = { text: button.title || '' }; if (button.options?.request_contact) replyBtn.request_contact = true; if (button.options?.request_location) replyBtn.request_location = true; reply.push(replyBtn); } }); const rCount = reply.length; const rInline = inlines.length; if (rCount || rInline) { if (rInline) { object.inline_keyboard = inlines; } if (rCount) { object.keyboard = reply; } } else { // Удаляем клавиатуру из-за ненадобности object = { remove_keyboard: true }; } return object; }