UNPKG

2.38 kBJavaScriptView Raw
1"use strict";
2Object.defineProperty(exports, "__esModule", { value: true });
3var recime_bot_extension_1 = require("recime-bot-extension");
4var Message = /** @class */ (function () {
5 function Message(platform) {
6 this.__ = recime_bot_extension_1.default[platform];
7 }
8 Message.prototype.normalizeButton = function (__, content) {
9 if (content.buttons) {
10 return content.buttons.map(function (button) {
11 switch (button.type) {
12 case 'reply': {
13 return __.postbackButton(button.title || button.reply, "reply-" + button.reply);
14 }
15 case 'phone_number': {
16 button.payload = button.payload.replace(/[\s()-]+/ig, '');
17 return button;
18 }
19 case 'element_share': {
20 return __.shareButton(button.content);
21 }
22 default: {
23 return button;
24 }
25 }
26 });
27 }
28 return void 0;
29 };
30 Message.prototype.eval = function (message) {
31 var _this = this;
32 var __ = this.__;
33 switch (message.type) {
34 case 'text': {
35 if (message.content && message.content.text.trim()) {
36 return __.text(message.content.text, this.normalizeButton(__, message.content));
37 }
38 }
39 case 'image':
40 case 'audio':
41 case 'video':
42 case 'file': {
43 return __[message.type](message.content.url, this.normalizeButton(__, message.content), message.content.assetId);
44 }
45 case 'button-template': {
46 return __.buttonTemplate(message.content.text, this.normalizeButton(__, message.content));
47 }
48 case 'card-template':
49 case 'wechat-article':
50 case 'generic-template': {
51 return __.genericTemplate(message.content.elements.map(function (e) {
52 return __.genericItem(e.title, e.digest || e.subtitle, e.imageUrl, e.contentSourceUrl || e.actionUrl, _this.normalizeButton(__, e), e.assetId, e.content, e.author);
53 }));
54 }
55 }
56 };
57 return Message;
58}());
59exports.Message = Message;