fix(client): message media and action parsing
This commit is contained in:
parent
db0d5f51e4
commit
4ad562bf06
3 changed files with 8 additions and 6 deletions
|
@ -1,6 +1,7 @@
|
|||
import { tl } from '@mtcute/tl'
|
||||
import { Photo } from '../media'
|
||||
import { _callDiscardReasonFromTl, CallDiscardReason } from '../calls/discard-reason'
|
||||
import { Message } from './message'
|
||||
|
||||
export namespace MessageAction {
|
||||
/** Group was created */
|
||||
|
@ -278,7 +279,7 @@ export type MessageAction =
|
|||
| null
|
||||
|
||||
/** @internal */
|
||||
export function _messageActionFromTl(act: tl.TypeMessageAction): MessageAction {
|
||||
export function _messageActionFromTl(this: Message, act: tl.TypeMessageAction): MessageAction {
|
||||
switch (act._) {
|
||||
case 'messageActionChatCreate':
|
||||
return {
|
||||
|
|
|
@ -17,6 +17,7 @@ import {
|
|||
} from '../media'
|
||||
import { tl } from '@mtcute/tl'
|
||||
import { parseDocument } from '../media/document-utils'
|
||||
import { Message } from './message'
|
||||
|
||||
/** A media inside of a {@link Message} */
|
||||
export type MessageMedia =
|
||||
|
@ -39,7 +40,7 @@ export type MessageMedia =
|
|||
// todo: successful_payment, connected_website
|
||||
|
||||
/** @internal */
|
||||
export function _messageMediaFromTl(m: tl.TypeMessageMedia): MessageMedia {
|
||||
export function _messageMediaFromTl(this: Message, m: tl.TypeMessageMedia): MessageMedia {
|
||||
switch (m._) {
|
||||
case 'messageMediaPhoto':
|
||||
if (!(m.photo?._ === 'photo')) return null
|
||||
|
|
|
@ -390,11 +390,11 @@ export class Message {
|
|||
if (this.raw._ === 'message') {
|
||||
this._action = null
|
||||
} else {
|
||||
this._action = _messageActionFromTl(this.raw.action)
|
||||
this._action = _messageActionFromTl.call(this, this.raw.action)
|
||||
}
|
||||
}
|
||||
|
||||
return this._action
|
||||
return this._action!
|
||||
}
|
||||
|
||||
private _media?: MessageMedia
|
||||
|
@ -413,11 +413,11 @@ export class Message {
|
|||
) {
|
||||
this._media = null
|
||||
} else {
|
||||
this._media = _messageMediaFromTl(this.raw.media)
|
||||
this._media = _messageMediaFromTl.call(this, this.raw.media)
|
||||
}
|
||||
}
|
||||
|
||||
return this._media
|
||||
return this._media!
|
||||
}
|
||||
|
||||
private _markup?: ReplyMarkup | null
|
||||
|
|
Loading…
Reference in a new issue