build: updated to 179 layer #56

Merged
teidesu merged 13 commits from layer179 into master 2024-05-06 12:28:14 +03:00
3 changed files with 46 additions and 0 deletions
Showing only changes of commit 47e1cde585 - Show all commits

View file

@ -130,6 +130,7 @@ import { deleteScheduledMessages } from './methods/messages/delete-scheduled-mes
import { editInlineMessage } from './methods/messages/edit-inline-message.js'
import { editMessage } from './methods/messages/edit-message.js'
import { ForwardMessageOptions, forwardMessages, forwardMessagesById } from './methods/messages/forward-messages.js'
import { getAllScheduledMessages } from './methods/messages/get-all-scheduled-messages.js'
import { getCallbackQueryMessage } from './methods/messages/get-callback-query-message.js'
import { getDiscussionMessage } from './methods/messages/get-discussion-message.js'
import { getHistory, GetHistoryOffset } from './methods/messages/get-history.js'
@ -3199,6 +3200,14 @@ export interface TelegramClient extends ITelegramClient {
messages: Message[]
},
): Promise<Message[]>
/**
* Get all scheduled messages in chat
*
* **Available**: 👤 users only
*
* @param chatId Chat's marked ID, its username, phone or `"me"` or `"self"`
*/
getAllScheduledMessages(chatId: InputPeerLike): Promise<Message[]>
/**
* Get the message containing the button being clicked
@ -5802,6 +5811,9 @@ TelegramClient.prototype.forwardMessagesById = function (...args) {
TelegramClient.prototype.forwardMessages = function (...args) {
return forwardMessages(this._client, ...args)
}
TelegramClient.prototype.getAllScheduledMessages = function (...args) {
return getAllScheduledMessages(this._client, ...args)
}
TelegramClient.prototype.getCallbackQueryMessage = function (...args) {
return getCallbackQueryMessage(this._client, ...args)
}

View file

@ -128,6 +128,7 @@ export { editMessage } from './methods/messages/edit-message.js'
export type { ForwardMessageOptions } from './methods/messages/forward-messages.js'
export { forwardMessagesById } from './methods/messages/forward-messages.js'
export { forwardMessages } from './methods/messages/forward-messages.js'
export { getAllScheduledMessages } from './methods/messages/get-all-scheduled-messages.js'
export { getCallbackQueryMessage } from './methods/messages/get-callback-query-message.js'
export { getDiscussionMessage } from './methods/messages/get-discussion-message.js'
export type { GetHistoryOffset } from './methods/messages/get-history.js'

View file

@ -0,0 +1,33 @@
import Long from 'long'
import { assertTypeIsNot } from '../../../utils/type-assertions.js'
import { ITelegramClient } from '../../client.types.js'
import { InputPeerLike, Message, PeersIndex } from '../../types/index.js'
import { resolvePeer } from '../users/resolve-peer.js'
/**
* Get all scheduled messages in chat
*
* @param chatId Chat's marked ID, its username, phone or `"me"` or `"self"`
*/
export async function getAllScheduledMessages(client: ITelegramClient, chatId: InputPeerLike): Promise<Message[]> {
const peer = await resolvePeer(client, chatId)
const res = await client.call({
_: 'messages.getScheduledHistory',
peer,
hash: Long.ZERO,
})
assertTypeIsNot('getScheduledMessages', res, 'messages.messagesNotModified')
const peers = PeersIndex.from(res)
const ret = res.messages.map((msg) => {
assertTypeIsNot('getScheduledMessages', msg, 'messageEmpty')
return new Message(msg, peers, true)
})
return ret
}