UNPKG

node-groupme

Version:

The only GroupMe API library that isn't a million years old.

78 lines 3.04 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.ChannelType = void 0; const __1 = require(".."); var ChannelType; (function (ChannelType) { ChannelType["Chat"] = "chat"; ChannelType["Group"] = "group"; ChannelType["FormerGroup"] = "former_group"; })(ChannelType = exports.ChannelType || (exports.ChannelType = {})); class Channel extends __1.Base { constructor(client, data) { super(client, data.id); this.messageCount = data.messageCount; this.lastMessage = data.lastMessage; this.createdAt = data.createdAt; this.updatedAt = data.updatedAt; this.messageDeletionMode = data.messageDeletionMode; this.messageDeletionPeriod = data.messageDeletionPeriod; } static _patch(self, data) { if (data.messageCount !== undefined) self.messageCount = data.messageCount; if (data.lastMessage !== undefined) self.lastMessage = data.lastMessage; if (data.createdAt !== undefined) self.createdAt = data.createdAt; if (data.updatedAt !== undefined) self.updatedAt = data.updatedAt; if (data.messageDeletionMode !== undefined) self.messageDeletionMode = data.messageDeletionMode; if (data.messageDeletionPeriod !== undefined) self.messageDeletionPeriod = data.messageDeletionPeriod; return self; } static dataFromGroup(data) { return { id: data.id, lastMessage: { id: data.messages.last_message_id, createdAt: data.messages.last_message_created_at, text: data.messages.preview.text, attachments: data.messages.preview.attachments, user: { image_url: data.messages.preview.image_url, nickname: data.messages.preview.nickname, }, }, messageCount: data.messages.count, createdAt: data.created_at, updatedAt: data.updated_at, messageDeletionMode: data.message_deletion_mode, messageDeletionPeriod: data.message_deletion_period, }; } static dataFromChat(data) { return { id: data.other_user.id, lastMessage: { id: data.last_message.id, createdAt: data.last_message.created_at, text: data.last_message.text, attachments: data.last_message.attachments, user: { nickname: data.last_message.name, image_url: data.last_message.avatar_url, }, }, messageCount: data.messages_count, createdAt: data.created_at, updatedAt: data.updated_at, messageDeletionMode: data.message_deletion_mode, messageDeletionPeriod: data.message_deletion_period, }; } } exports.default = Channel; //# sourceMappingURL=Channel.js.map