feat(client): markChatUnread method

This commit is contained in:
teidesu 2021-05-12 22:36:03 +03:00
parent 8cf4ce5533
commit 482c71690d
2 changed files with 30 additions and 0 deletions

View file

@ -39,6 +39,7 @@ import { iterChatMembers } from './methods/chats/iter-chat-members'
import { joinChat } from './methods/chats/join-chat'
import { kickChatMember } from './methods/chats/kick-chat-member'
import { leaveChat } from './methods/chats/leave-chat'
import { markChatUnread } from './methods/chats/mark-chat-unread'
import { restrictChatMember } from './methods/chats/restrict-chat-member'
import { saveDraft } from './methods/chats/save-draft'
import { setChatDefaultPermissions } from './methods/chats/set-chat-default-permissions'
@ -915,6 +916,12 @@ export interface TelegramClient extends BaseTelegramClient {
* @param clear (default: `false`) Whether to clear history after leaving (only for legacy group chats)
*/
leaveChat(chatId: InputPeerLike, clear?: boolean): Promise<void>
/**
* Mark a chat as unread
*
* @param chatId Chat ID
*/
markChatUnread(chatId: InputPeerLike): Promise<void>
/**
* Restrict a user in a supergroup.
*
@ -2900,6 +2907,7 @@ export class TelegramClient extends BaseTelegramClient {
joinChat = joinChat
kickChatMember = kickChatMember
leaveChat = leaveChat
markChatUnread = markChatUnread
restrictChatMember = restrictChatMember
saveDraft = saveDraft
setChatDefaultPermissions = setChatDefaultPermissions

View file

@ -0,0 +1,22 @@
import { TelegramClient } from '../../client'
import { InputPeerLike } from '../../types'
import { normalizeToInputPeer } from '../../utils/peer-utils'
/**
* Mark a chat as unread
*
* @param chatId Chat ID
* @internal
*/
export async function markChatUnread(
this: TelegramClient,
chatId: InputPeerLike
): Promise<void> {
await this.call({
_: 'messages.markDialogUnread',
peer: {
_: 'inputDialogPeer',
peer: normalizeToInputPeer(await this.resolvePeer(chatId)),
},
})
}