UNPKG

vvlad1973-telegram-framework

Version:
101 lines (86 loc) 2.27 kB
'use strict' import { MediaTypes } from './enums.js'; export class InputMedia { type; media; caption; parse_mode; caption_entities; constructor(type, media, caption, parse_mode, caption_entities) { switch (type) { case MediaTypes.PHOTO: { this.type = MediaTypes.PHOTO; break; } case MediaTypes.VIDEO: { this.type = MediaTypes.VIDEO; break; } case MediaTypes.AUDIO: { this.type = MediaTypes.AUDIO; break; } case MediaTypes.ANIMATION: { this.type = MediaTypes.ANIMATION; break; } case MediaTypes.DOCUMENT: { this.type = MediaTypes.DOCUMENT; break; } default: { this.type = MediaTypes.PHOTO } } this.media = media; this.caption = caption; this.parse_mode = parse_mode; this.caption_entities = caption_entities; } } export class InputMediaPhoto extends InputMedia { constructor(media, caption, parse_mode, caption_entities) { super(MediaTypes.PHOTO, media, caption, parse_mode, caption_entities); } } export class InputMediaEx extends InputMedia { thumd; duration; constructor( type, media, thumb, caption, parse_mode, caption_entities, duration ) { super(type, media, caption, parse_mode, caption_entities); this.thumb = thumb; this.duration = duration; } } export class InputMediaAnimation extends InputMediaEx { width; height; constructor( media, thumb, caption, parse_mode, caption_entities, width, height, duration ) { super( MediaTypes.ANIMATION, media, thumb, caption, parse_mode, caption_entities, duration ); this.width = width; this.height = height; } } export class InputMediaVideo extends InputMediaEx { width; height; supports_streaming; constructor( media, thumb, caption, parse_mode, caption_entities, width, height, duration, supports_streaming ) { super( MediaTypes.VIDEO, media, thumb, caption, parse_mode, caption_entities, duration ); this.width = width; this.height = height; this.supports_streaming = supports_streaming; } }