Message / Document: Support progressive video (follow-up)

This commit is contained in:
Alexander Zinchuk 2022-11-28 15:27:26 +01:00
parent 7024ce3b86
commit 6dbdcdfb42

View File

@ -116,14 +116,18 @@ export function getMessageWebPagePhoto(message: ApiMessage) {
return getMessageWebPage(message)?.photo; return getMessageWebPage(message)?.photo;
} }
export function getMessageWebPageDocument(message: ApiMessage) { export function getMessageDocumentPhoto(message: ApiMessage) {
return getMessageWebPage(message)?.document; return isMessageDocumentPhoto(message) ? getMessageDocument(message) : undefined;
} }
export function getMessageWebPageVideo(message: ApiMessage): ApiVideo | undefined { export function getMessageWebPageVideo(message: ApiMessage) {
return getMessageWebPage(message)?.video; return getMessageWebPage(message)?.video;
} }
export function getMessageDocumentVideo(message: ApiMessage) {
return isMessageDocumentVideo(message) ? getMessageDocument(message) : undefined;
}
export function getMessageMediaThumbnail(message: ApiMessage) { export function getMessageMediaThumbnail(message: ApiMessage) {
const media = getMessagePhoto(message) const media = getMessagePhoto(message)
|| getMessageVideo(message) || getMessageVideo(message)
@ -169,14 +173,11 @@ export function getMessageMediaHash(
const { const {
photo, video, sticker, audio, voice, document, photo, video, sticker, audio, voice, document,
} = message.content; } = message.content;
const webPagePhoto = getMessageWebPagePhoto(message);
const webPageVideo = getMessageWebPageVideo(message);
const messageVideo = video || webPageVideo; const messagePhoto = photo || getMessageWebPagePhoto(message) || getMessageDocumentPhoto(message);
const messagePhoto = photo || webPagePhoto; const messageVideo = video || getMessageWebPageVideo(message) || getMessageDocumentVideo(message);
const content = messagePhoto || messageVideo || sticker || audio || voice || document; const content = messagePhoto || messageVideo || sticker || audio || voice || document;
if (!content) { if (!content) {
return undefined; return undefined;
} }
@ -297,7 +298,7 @@ export function getGamePreviewVideoHash(game: ApiGame) {
return undefined; return undefined;
} }
function getVideoOrAudioBaseHash(media: ApiAudio | ApiVideo, base: string) { function getVideoOrAudioBaseHash(media: ApiAudio | ApiVideo | ApiDocument, base: string) {
if (IS_PROGRESSIVE_SUPPORTED && IS_SAFARI) { if (IS_PROGRESSIVE_SUPPORTED && IS_SAFARI) {
return `${base}?fileSize=${media.size}&mimeType=${media.mimeType}`; return `${base}?fileSize=${media.size}&mimeType=${media.mimeType}`;
} }