UNPKG

umbot

Version:

Universal bot(vk, telegram, viber) or skills for Yandex.Alisa, Маруся and sber

68 lines (67 loc) 2.85 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.VkCard = void 0; const TemplateCardTypes_1 = require("./TemplateCardTypes"); const ImageTokens_1 = require("../../../models/ImageTokens"); const button_1 = require("../../button"); class VkCard extends TemplateCardTypes_1.TemplateCardTypes { async getCard(isOne) { const object = []; const countImage = this.images.length; if (countImage) { if (countImage === 1 || isOne) { if (!this.images[0].imageToken) { if (this.images[0].imageDir) { const mImage = new ImageTokens_1.ImageTokens(); mImage.type = ImageTokens_1.ImageTokens.T_VK; mImage.path = this.images[0].imageDir; this.images[0].imageToken = await mImage.getToken(); } } if (this.images[0].imageToken) { object.push(this.images[0].imageToken); } } else { const elements = []; for (let i = 0; i < this.images.length; i++) { const image = this.images[i]; if (!image.imageToken) { if (image.imageDir) { const mImage = new ImageTokens_1.ImageTokens(); mImage.type = ImageTokens_1.ImageTokens.T_VK; mImage.path = image.imageDir; image.imageToken = await mImage.getToken(); } } if (image.imageToken) { if (this.isUsedGallery) { object.push(image.imageToken); } else { const element = { title: image.title, description: image.desc, photo_id: image.imageToken.replace('photo', ''), }; const button = image.button.getButtons(button_1.Buttons.T_VK_BUTTONS); if (button.one_time) { element.buttons = button.buttons.splice(0, 3); element.action = { type: 'open_photo' }; elements.push(element); } } } } if (elements.length) { return { type: 'carousel', elements, }; } } } return object; } } exports.VkCard = VkCard;