@mtcute/core 0.10.2 → 0.11.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cjs/highlevel/base.d.ts +1 -1
- package/cjs/highlevel/base.js +29 -23
- package/cjs/highlevel/base.js.map +1 -1
- package/cjs/highlevel/client.d.ts +3 -2
- package/cjs/highlevel/client.js +1 -0
- package/cjs/highlevel/client.js.map +1 -1
- package/cjs/highlevel/managers/app-config-manager.js +7 -5
- package/cjs/highlevel/managers/app-config-manager.js.map +1 -1
- package/cjs/highlevel/methods/_init.js.map +1 -1
- package/cjs/highlevel/methods/auth/start-test.js.map +1 -1
- package/cjs/highlevel/methods/auth/start.js.map +1 -1
- package/cjs/highlevel/methods/auth/utils.js.map +1 -1
- package/cjs/highlevel/methods/bots/get-callback-answer.js.map +1 -1
- package/cjs/highlevel/methods/bots/get-game-high-scores.js.map +1 -1
- package/cjs/highlevel/methods/bots/normalize-command-scope.js.map +1 -1
- package/cjs/highlevel/methods/bots/set-my-commands.js.map +1 -1
- package/cjs/highlevel/methods/chats/add-chat-members.js.map +1 -1
- package/cjs/highlevel/methods/chats/ban-chat-member.js.map +1 -1
- package/cjs/highlevel/methods/chats/batched-queries.js.map +1 -1
- package/cjs/highlevel/methods/chats/delete-chat-photo.js.map +1 -1
- package/cjs/highlevel/methods/chats/delete-history.js.map +1 -1
- package/cjs/highlevel/methods/chats/get-chat-event-log.js.map +1 -1
- package/cjs/highlevel/methods/chats/get-chat-member.js.map +1 -1
- package/cjs/highlevel/methods/chats/get-chat-members.js.map +1 -1
- package/cjs/highlevel/methods/chats/get-chat-preview.js.map +1 -1
- package/cjs/highlevel/methods/chats/get-chat.js.map +1 -1
- package/cjs/highlevel/methods/chats/get-full-chat.js.map +1 -1
- package/cjs/highlevel/methods/chats/get-nearby-chats.js.map +1 -1
- package/cjs/highlevel/methods/chats/get-similar-channels.js.map +1 -1
- package/cjs/highlevel/methods/chats/iter-chat-event-log.js.map +1 -1
- package/cjs/highlevel/methods/chats/iter-chat-members.js.map +1 -1
- package/cjs/highlevel/methods/chats/join-chat.js.map +1 -1
- package/cjs/highlevel/methods/chats/kick-chat-member.js.map +1 -1
- package/cjs/highlevel/methods/chats/leave-chat.js.map +1 -1
- package/cjs/highlevel/methods/chats/open-chat.js.map +1 -1
- package/cjs/highlevel/methods/chats/reorder-usernames.js.map +1 -1
- package/cjs/highlevel/methods/chats/restrict-chat-member.js.map +1 -1
- package/cjs/highlevel/methods/chats/save-draft.js.map +1 -1
- package/cjs/highlevel/methods/chats/set-chat-color.js.map +1 -1
- package/cjs/highlevel/methods/chats/set-chat-photo.js.map +1 -1
- package/cjs/highlevel/methods/chats/set-chat-title.js.map +1 -1
- package/cjs/highlevel/methods/chats/toggle-fragment-username.js.map +1 -1
- package/cjs/highlevel/methods/chats/unarchive-chats.js.map +1 -1
- package/cjs/highlevel/methods/chats/unban-chat-member.js.map +1 -1
- package/cjs/highlevel/methods/contacts/delete-contacts.js.map +1 -1
- package/cjs/highlevel/methods/dialogs/create-folder.js.map +1 -1
- package/cjs/highlevel/methods/dialogs/edit-folder.js.map +1 -1
- package/cjs/highlevel/methods/dialogs/find-folder.js.map +1 -1
- package/cjs/highlevel/methods/dialogs/get-folders.js.map +1 -1
- package/cjs/highlevel/methods/dialogs/iter-dialogs.js.map +1 -1
- package/cjs/highlevel/methods/files/download-buffer.js.map +1 -1
- package/cjs/highlevel/methods/files/download-iterable.js +1 -1
- package/cjs/highlevel/methods/files/download-iterable.js.map +1 -1
- package/cjs/highlevel/methods/files/download-node-stream.js.map +1 -1
- package/cjs/highlevel/methods/files/download-stream.js.map +1 -1
- package/cjs/highlevel/methods/files/normalize-file-to-document.js.map +1 -1
- package/cjs/highlevel/methods/files/normalize-input-file.js.map +1 -1
- package/cjs/highlevel/methods/files/normalize-input-media.js +1 -2
- package/cjs/highlevel/methods/files/normalize-input-media.js.map +1 -1
- package/cjs/highlevel/methods/files/upload-file.js +7 -6
- package/cjs/highlevel/methods/files/upload-file.js.map +1 -1
- package/cjs/highlevel/methods/files/upload-media.js.map +1 -1
- package/cjs/highlevel/methods/forums/iter-forum-topics.js.map +1 -1
- package/cjs/highlevel/methods/invite-links/get-primary-invite-link.js.map +1 -1
- package/cjs/highlevel/methods/invite-links/iter-invite-link-members.js.map +1 -1
- package/cjs/highlevel/methods/invite-links/iter-invite-links.js.map +1 -1
- package/cjs/highlevel/methods/messages/close-poll.js.map +1 -1
- package/cjs/highlevel/methods/messages/delete-messages.js.map +1 -1
- package/cjs/highlevel/methods/messages/edit-inline-message.js.map +1 -1
- package/cjs/highlevel/methods/messages/edit-message.js.map +1 -1
- package/cjs/highlevel/methods/messages/find-in-update.js.map +1 -1
- package/cjs/highlevel/methods/messages/forward-messages.js.map +1 -1
- package/cjs/highlevel/methods/messages/get-callback-query-message.js.map +1 -1
- package/cjs/highlevel/methods/messages/get-discussion-message.js.map +1 -1
- package/cjs/highlevel/methods/messages/get-history.js +5 -1
- package/cjs/highlevel/methods/messages/get-history.js.map +1 -1
- package/cjs/highlevel/methods/messages/get-message-by-link.js.map +1 -1
- package/cjs/highlevel/methods/messages/get-message-group.js.map +1 -1
- package/cjs/highlevel/methods/messages/get-message-reactions.js.map +1 -1
- package/cjs/highlevel/methods/messages/get-messages.js.map +1 -1
- package/cjs/highlevel/methods/messages/get-reply-to.js.map +1 -1
- package/cjs/highlevel/methods/messages/iter-history.js.map +1 -1
- package/cjs/highlevel/methods/messages/iter-reaction-users.js.map +1 -1
- package/cjs/highlevel/methods/messages/iter-search-global.js.map +1 -1
- package/cjs/highlevel/methods/messages/iter-search-messages.js.map +1 -1
- package/cjs/highlevel/methods/messages/read-history.js.map +1 -1
- package/cjs/highlevel/methods/messages/send-answer.js.map +1 -1
- package/cjs/highlevel/methods/messages/send-comment.js.map +1 -1
- package/cjs/highlevel/methods/messages/send-common.js.map +1 -1
- package/cjs/highlevel/methods/messages/send-copy-group.js.map +1 -1
- package/cjs/highlevel/methods/messages/send-copy.js.map +1 -1
- package/cjs/highlevel/methods/messages/send-media-group.js.map +1 -1
- package/cjs/highlevel/methods/messages/send-media.js.map +1 -1
- package/cjs/highlevel/methods/messages/send-quote.js.map +1 -1
- package/cjs/highlevel/methods/messages/send-text.js.map +1 -1
- package/cjs/highlevel/methods/messages/send-typing.js.map +1 -1
- package/cjs/highlevel/methods/messages/send-vote.js.map +1 -1
- package/cjs/highlevel/methods/messages/translate-text.js.map +1 -1
- package/cjs/highlevel/methods/messages/unpin-all-messages.js.map +1 -1
- package/cjs/highlevel/methods/misc/normalize-privacy-rules.js.map +1 -1
- package/cjs/highlevel/methods/misc/normalize-text.js.map +1 -1
- package/cjs/highlevel/methods/misc/with-params.js.map +1 -1
- package/cjs/highlevel/methods/password/change-cloud-password.js.map +1 -1
- package/cjs/highlevel/methods/password/enable-cloud-password.js.map +1 -1
- package/cjs/highlevel/methods/password/remove-cloud-password.js.map +1 -1
- package/cjs/highlevel/methods/premium/can-apply-boost.js.map +1 -1
- package/cjs/highlevel/methods/premium/iter-boosters.js.map +1 -1
- package/cjs/highlevel/methods/stickers/create-sticker-set.js.map +1 -1
- package/cjs/highlevel/methods/stickers/delete-sticker-from-set.js.map +1 -1
- package/cjs/highlevel/methods/stickers/get-custom-emojis.js.map +1 -1
- package/cjs/highlevel/methods/stickers/move-sticker-in-set.js.map +1 -1
- package/cjs/highlevel/methods/stories/can-send-story.js.map +1 -1
- package/cjs/highlevel/methods/stories/edit-story.js.map +1 -1
- package/cjs/highlevel/methods/stories/find-in-update.js.map +1 -1
- package/cjs/highlevel/methods/stories/hide-my-stories-views.js.map +1 -1
- package/cjs/highlevel/methods/stories/iter-all-stories.js.map +1 -1
- package/cjs/highlevel/methods/stories/iter-profile-stories.js.map +1 -1
- package/cjs/highlevel/methods/stories/iter-story-viewers.js.map +1 -1
- package/cjs/highlevel/methods/stories/send-story.js.map +1 -1
- package/cjs/highlevel/methods/users/delete-profile-photos.js.map +1 -1
- package/cjs/highlevel/methods/users/get-users.js.map +1 -1
- package/cjs/highlevel/methods/users/iter-profile-photos.js.map +1 -1
- package/cjs/highlevel/methods/users/resolve-peer-many.js.map +1 -1
- package/cjs/highlevel/methods/users/resolve-peer.js.map +1 -1
- package/cjs/highlevel/methods/users/set-my-emoji-status.js.map +1 -1
- package/cjs/highlevel/methods/users/set-my-profile-photo.js.map +1 -1
- package/cjs/highlevel/storage/service/current-user.js +2 -0
- package/cjs/highlevel/storage/service/current-user.js.map +1 -1
- package/cjs/highlevel/storage/service/peers.js +5 -1
- package/cjs/highlevel/storage/service/peers.js.map +1 -1
- package/cjs/highlevel/storage/service/ref-messages.js +3 -0
- package/cjs/highlevel/storage/service/ref-messages.js.map +1 -1
- package/cjs/highlevel/storage/service/updates.js +1 -0
- package/cjs/highlevel/storage/service/updates.js.map +1 -1
- package/cjs/highlevel/storage/storage.d.ts +1 -1
- package/cjs/highlevel/storage/storage.js +17 -4
- package/cjs/highlevel/storage/storage.js.map +1 -1
- package/cjs/highlevel/types/auth/sent-code.js +1 -0
- package/cjs/highlevel/types/auth/sent-code.js.map +1 -1
- package/cjs/highlevel/types/bots/game-high-score.js +2 -0
- package/cjs/highlevel/types/bots/game-high-score.js.map +1 -1
- package/cjs/highlevel/types/bots/inline-message/factories.js.map +1 -1
- package/cjs/highlevel/types/bots/inline-result/factories.js.map +1 -1
- package/cjs/highlevel/types/bots/keyboards/builder.js +2 -1
- package/cjs/highlevel/types/bots/keyboards/builder.js.map +1 -1
- package/cjs/highlevel/types/bots/keyboards/factories.js.map +1 -1
- package/cjs/highlevel/types/calls/discard-reason.js.map +1 -1
- package/cjs/highlevel/types/conversation.js +13 -7
- package/cjs/highlevel/types/conversation.js.map +1 -1
- package/cjs/highlevel/types/errors.js +3 -0
- package/cjs/highlevel/types/errors.js.map +1 -1
- package/cjs/highlevel/types/files/file-location.js +3 -0
- package/cjs/highlevel/types/files/file-location.js.map +1 -1
- package/cjs/highlevel/types/files/uploaded-file.js +1 -1
- package/cjs/highlevel/types/files/uploaded-file.js.map +1 -1
- package/cjs/highlevel/types/files/utils.d.ts +3 -3
- package/cjs/highlevel/types/files/utils.js.map +1 -1
- package/cjs/highlevel/types/files/web-document.js +1 -0
- package/cjs/highlevel/types/files/web-document.js.map +1 -1
- package/cjs/highlevel/types/media/audio.js +3 -2
- package/cjs/highlevel/types/media/audio.js.map +1 -1
- package/cjs/highlevel/types/media/contact.js +2 -1
- package/cjs/highlevel/types/media/contact.js.map +1 -1
- package/cjs/highlevel/types/media/dice.js +125 -124
- package/cjs/highlevel/types/media/dice.js.map +1 -1
- package/cjs/highlevel/types/media/document-utils.js.map +1 -1
- package/cjs/highlevel/types/media/document.js +2 -4
- package/cjs/highlevel/types/media/document.js.map +1 -1
- package/cjs/highlevel/types/media/game.js +2 -1
- package/cjs/highlevel/types/media/game.js.map +1 -1
- package/cjs/highlevel/types/media/invoice.js +4 -1
- package/cjs/highlevel/types/media/invoice.js.map +1 -1
- package/cjs/highlevel/types/media/location.js +4 -5
- package/cjs/highlevel/types/media/location.js.map +1 -1
- package/cjs/highlevel/types/media/photo.js +8 -1
- package/cjs/highlevel/types/media/photo.js.map +1 -1
- package/cjs/highlevel/types/media/poll.js +4 -1
- package/cjs/highlevel/types/media/poll.js.map +1 -1
- package/cjs/highlevel/types/media/sticker.js +3 -1
- package/cjs/highlevel/types/media/sticker.js.map +1 -1
- package/cjs/highlevel/types/media/story.js +3 -1
- package/cjs/highlevel/types/media/story.js.map +1 -1
- package/cjs/highlevel/types/media/thumbnail.js +35 -22
- package/cjs/highlevel/types/media/thumbnail.js.map +1 -1
- package/cjs/highlevel/types/media/venue.js +2 -1
- package/cjs/highlevel/types/media/venue.js.map +1 -1
- package/cjs/highlevel/types/media/video.js +3 -1
- package/cjs/highlevel/types/media/video.js.map +1 -1
- package/cjs/highlevel/types/media/voice.js +2 -1
- package/cjs/highlevel/types/media/voice.js.map +1 -1
- package/cjs/highlevel/types/media/web-page.js +2 -1
- package/cjs/highlevel/types/media/web-page.js.map +1 -1
- package/cjs/highlevel/types/messages/dialog.js +3 -0
- package/cjs/highlevel/types/messages/dialog.js.map +1 -1
- package/cjs/highlevel/types/messages/draft-message.js +1 -0
- package/cjs/highlevel/types/messages/draft-message.js.map +1 -1
- package/cjs/highlevel/types/messages/message-action.js.map +1 -1
- package/cjs/highlevel/types/messages/message-entity.js +2 -0
- package/cjs/highlevel/types/messages/message-entity.js.map +1 -1
- package/cjs/highlevel/types/messages/message-forward.js +2 -0
- package/cjs/highlevel/types/messages/message-forward.js.map +1 -1
- package/cjs/highlevel/types/messages/message-media.js.map +1 -1
- package/cjs/highlevel/types/messages/message-reactions.js +4 -0
- package/cjs/highlevel/types/messages/message-reactions.js.map +1 -1
- package/cjs/highlevel/types/messages/message-replies.js +2 -0
- package/cjs/highlevel/types/messages/message-replies.js.map +1 -1
- package/cjs/highlevel/types/messages/message.js +6 -0
- package/cjs/highlevel/types/messages/message.js.map +1 -1
- package/cjs/highlevel/types/messages/replied-message.js +2 -0
- package/cjs/highlevel/types/messages/replied-message.js.map +1 -1
- package/cjs/highlevel/types/misc/sticker-set.js +7 -1
- package/cjs/highlevel/types/misc/sticker-set.js.map +1 -1
- package/cjs/highlevel/types/misc/takeout-session.js +5 -0
- package/cjs/highlevel/types/misc/takeout-session.js.map +1 -1
- package/cjs/highlevel/types/peers/chat-colors.js +2 -0
- package/cjs/highlevel/types/peers/chat-colors.js.map +1 -1
- package/cjs/highlevel/types/peers/chat-event/actions.js.map +1 -1
- package/cjs/highlevel/types/peers/chat-event/filters.js.map +1 -1
- package/cjs/highlevel/types/peers/chat-event/index.js +2 -0
- package/cjs/highlevel/types/peers/chat-event/index.js.map +1 -1
- package/cjs/highlevel/types/peers/chat-invite-link-member.js +2 -0
- package/cjs/highlevel/types/peers/chat-invite-link-member.js.map +1 -1
- package/cjs/highlevel/types/peers/chat-invite-link.js +2 -0
- package/cjs/highlevel/types/peers/chat-invite-link.js.map +1 -1
- package/cjs/highlevel/types/peers/chat-location.js +1 -0
- package/cjs/highlevel/types/peers/chat-location.js.map +1 -1
- package/cjs/highlevel/types/peers/chat-member.js +2 -0
- package/cjs/highlevel/types/peers/chat-member.js.map +1 -1
- package/cjs/highlevel/types/peers/chat-permissions.js +1 -0
- package/cjs/highlevel/types/peers/chat-permissions.js.map +1 -1
- package/cjs/highlevel/types/peers/chat-photo.js +5 -0
- package/cjs/highlevel/types/peers/chat-photo.js.map +1 -1
- package/cjs/highlevel/types/peers/chat-preview.js +2 -0
- package/cjs/highlevel/types/peers/chat-preview.js.map +1 -1
- package/cjs/highlevel/types/peers/chat.js +12 -1
- package/cjs/highlevel/types/peers/chat.js.map +1 -1
- package/cjs/highlevel/types/peers/forum-topic.js +9 -6
- package/cjs/highlevel/types/peers/forum-topic.js.map +1 -1
- package/cjs/highlevel/types/peers/peer.js.map +1 -1
- package/cjs/highlevel/types/peers/peers-index.js +3 -1
- package/cjs/highlevel/types/peers/peers-index.js.map +1 -1
- package/cjs/highlevel/types/peers/user.js +5 -1
- package/cjs/highlevel/types/peers/user.js.map +1 -1
- package/cjs/highlevel/types/premium/boost-slot.js +2 -0
- package/cjs/highlevel/types/premium/boost-slot.js.map +1 -1
- package/cjs/highlevel/types/premium/boost-stats.js +1 -0
- package/cjs/highlevel/types/premium/boost-stats.js.map +1 -1
- package/cjs/highlevel/types/premium/boost.js +2 -0
- package/cjs/highlevel/types/premium/boost.js.map +1 -1
- package/cjs/highlevel/types/reactions/emoji-status.js +1 -0
- package/cjs/highlevel/types/reactions/emoji-status.js.map +1 -1
- package/cjs/highlevel/types/reactions/peer-reaction.js +2 -0
- package/cjs/highlevel/types/reactions/peer-reaction.js.map +1 -1
- package/cjs/highlevel/types/reactions/reaction-count.js +1 -0
- package/cjs/highlevel/types/reactions/reaction-count.js.map +1 -1
- package/cjs/highlevel/types/reactions/types.js.map +1 -1
- package/cjs/highlevel/types/stories/all-stories.d.ts +2 -2
- package/cjs/highlevel/types/stories/all-stories.js +3 -1
- package/cjs/highlevel/types/stories/all-stories.js.map +1 -1
- package/cjs/highlevel/types/stories/interactive/base.js +1 -0
- package/cjs/highlevel/types/stories/interactive/base.js.map +1 -1
- package/cjs/highlevel/types/stories/interactive/channel-post.js +3 -1
- package/cjs/highlevel/types/stories/interactive/channel-post.js.map +1 -1
- package/cjs/highlevel/types/stories/interactive/index.js.map +1 -1
- package/cjs/highlevel/types/stories/interactive/input.js +1 -0
- package/cjs/highlevel/types/stories/interactive/input.js.map +1 -1
- package/cjs/highlevel/types/stories/interactive/location.js +2 -1
- package/cjs/highlevel/types/stories/interactive/location.js.map +1 -1
- package/cjs/highlevel/types/stories/interactive/reaction.js +2 -1
- package/cjs/highlevel/types/stories/interactive/reaction.js.map +1 -1
- package/cjs/highlevel/types/stories/interactive/venue.js +2 -1
- package/cjs/highlevel/types/stories/interactive/venue.js.map +1 -1
- package/cjs/highlevel/types/stories/peer-stories.js +2 -0
- package/cjs/highlevel/types/stories/peer-stories.js.map +1 -1
- package/cjs/highlevel/types/stories/stealth-mode.js +1 -0
- package/cjs/highlevel/types/stories/stealth-mode.js.map +1 -1
- package/cjs/highlevel/types/stories/story-interactions.js +2 -0
- package/cjs/highlevel/types/stories/story-interactions.js.map +1 -1
- package/cjs/highlevel/types/stories/story-viewer.d.ts +1 -1
- package/cjs/highlevel/types/stories/story-viewer.js +6 -0
- package/cjs/highlevel/types/stories/story-viewer.js.map +1 -1
- package/cjs/highlevel/types/stories/story.js +2 -0
- package/cjs/highlevel/types/stories/story.js.map +1 -1
- package/cjs/highlevel/types/updates/bot-chat-join-request.js +2 -0
- package/cjs/highlevel/types/updates/bot-chat-join-request.js.map +1 -1
- package/cjs/highlevel/types/updates/bot-reaction.js +4 -0
- package/cjs/highlevel/types/updates/bot-reaction.js.map +1 -1
- package/cjs/highlevel/types/updates/bot-stopped.js +2 -0
- package/cjs/highlevel/types/updates/bot-stopped.js.map +1 -1
- package/cjs/highlevel/types/updates/callback-query.js +4 -0
- package/cjs/highlevel/types/updates/callback-query.js.map +1 -1
- package/cjs/highlevel/types/updates/chat-join-request.js +2 -0
- package/cjs/highlevel/types/updates/chat-join-request.js.map +1 -1
- package/cjs/highlevel/types/updates/chat-member-update.js +2 -0
- package/cjs/highlevel/types/updates/chat-member-update.js.map +1 -1
- package/cjs/highlevel/types/updates/chosen-inline-result.js +2 -0
- package/cjs/highlevel/types/updates/chosen-inline-result.js.map +1 -1
- package/cjs/highlevel/types/updates/delete-message-update.js +1 -0
- package/cjs/highlevel/types/updates/delete-message-update.js.map +1 -1
- package/cjs/highlevel/types/updates/delete-story-update.js +2 -0
- package/cjs/highlevel/types/updates/delete-story-update.js.map +1 -1
- package/cjs/highlevel/types/updates/history-read-update.js +1 -0
- package/cjs/highlevel/types/updates/history-read-update.js.map +1 -1
- package/cjs/highlevel/types/updates/inline-query.js +2 -0
- package/cjs/highlevel/types/updates/inline-query.js.map +1 -1
- package/cjs/highlevel/types/updates/parse-update.js.map +1 -1
- package/cjs/highlevel/types/updates/poll-update.js +2 -0
- package/cjs/highlevel/types/updates/poll-update.js.map +1 -1
- package/cjs/highlevel/types/updates/poll-vote.js +2 -0
- package/cjs/highlevel/types/updates/poll-vote.js.map +1 -1
- package/cjs/highlevel/types/updates/pre-checkout-query.js +2 -0
- package/cjs/highlevel/types/updates/pre-checkout-query.js.map +1 -1
- package/cjs/highlevel/types/updates/story-update.js +2 -0
- package/cjs/highlevel/types/updates/story-update.js.map +1 -1
- package/cjs/highlevel/types/updates/user-status-update.js +1 -0
- package/cjs/highlevel/types/updates/user-status-update.js.map +1 -1
- package/cjs/highlevel/types/updates/user-typing-update.js +1 -0
- package/cjs/highlevel/types/updates/user-typing-update.js.map +1 -1
- package/cjs/highlevel/updates/manager.d.ts +1 -1
- package/cjs/highlevel/updates/manager.js +50 -28
- package/cjs/highlevel/updates/manager.js.map +1 -1
- package/cjs/highlevel/updates/parsed.js.map +1 -1
- package/cjs/highlevel/updates/utils.js.map +1 -1
- package/cjs/highlevel/utils/convert-file-id.js.map +1 -1
- package/cjs/highlevel/utils/entities.js.map +1 -1
- package/cjs/highlevel/utils/file-type.d.ts +1 -0
- package/cjs/highlevel/utils/file-type.js +35 -1
- package/cjs/highlevel/utils/file-type.js.map +1 -1
- package/cjs/highlevel/utils/file-utils.js +1 -1
- package/cjs/highlevel/utils/file-utils.js.map +1 -1
- package/cjs/highlevel/utils/inline-utils.js.map +1 -1
- package/cjs/highlevel/utils/inspectable.js.map +1 -1
- package/cjs/highlevel/utils/memoize.js.map +1 -1
- package/cjs/highlevel/utils/peer-utils.js.map +1 -1
- package/cjs/highlevel/utils/query-batcher.js.map +1 -1
- package/cjs/highlevel/utils/rps-meter.js +3 -0
- package/cjs/highlevel/utils/rps-meter.js.map +1 -1
- package/cjs/highlevel/utils/stream-utils.js.map +1 -1
- package/cjs/highlevel/utils/string-session.d.ts +1 -2
- package/cjs/highlevel/utils/string-session.js +27 -7
- package/cjs/highlevel/utils/string-session.js.map +1 -1
- package/cjs/highlevel/utils/voice-utils.js.map +1 -1
- package/cjs/highlevel/worker/app-config.d.ts +2 -3
- package/cjs/highlevel/worker/app-config.js +6 -3
- package/cjs/highlevel/worker/app-config.js.map +1 -1
- package/cjs/highlevel/worker/errors.js.map +1 -1
- package/cjs/highlevel/worker/invoker.js +3 -2
- package/cjs/highlevel/worker/invoker.js.map +1 -1
- package/cjs/highlevel/worker/port.d.ts +16 -17
- package/cjs/highlevel/worker/port.js +74 -49
- package/cjs/highlevel/worker/port.js.map +1 -1
- package/cjs/highlevel/worker/protocol.d.ts +2 -2
- package/cjs/highlevel/worker/protocol.js.map +1 -1
- package/cjs/highlevel/worker/storage.d.ts +9 -13
- package/cjs/highlevel/worker/storage.js +34 -19
- package/cjs/highlevel/worker/storage.js.map +1 -1
- package/cjs/highlevel/worker/worker.js +3 -0
- package/cjs/highlevel/worker/worker.js.map +1 -1
- package/cjs/network/auth-key.js +8 -1
- package/cjs/network/auth-key.js.map +1 -1
- package/cjs/network/authorization.js.map +1 -1
- package/cjs/network/client.d.ts +1 -1
- package/cjs/network/client.js +39 -14
- package/cjs/network/client.js.map +1 -1
- package/cjs/network/config-manager.js.map +1 -1
- package/cjs/network/mtproto-session.d.ts +1 -1
- package/cjs/network/mtproto-session.js +40 -30
- package/cjs/network/mtproto-session.js.map +1 -1
- package/cjs/network/multi-session-connection.d.ts +2 -2
- package/cjs/network/multi-session-connection.js +13 -7
- package/cjs/network/multi-session-connection.js.map +1 -1
- package/cjs/network/network-manager.d.ts +2 -3
- package/cjs/network/network-manager.js +49 -28
- package/cjs/network/network-manager.js.map +1 -1
- package/cjs/network/persistent-connection.d.ts +3 -3
- package/cjs/network/persistent-connection.js +33 -22
- package/cjs/network/persistent-connection.js.map +1 -1
- package/cjs/network/server-salt.js +4 -5
- package/cjs/network/server-salt.js.map +1 -1
- package/cjs/network/session-connection.d.ts +1 -1
- package/cjs/network/session-connection.js +22 -12
- package/cjs/network/session-connection.js.map +1 -1
- package/cjs/network/transports/abstract.d.ts +2 -2
- package/cjs/network/transports/abstract.js +1 -0
- package/cjs/network/transports/abstract.js.map +1 -1
- package/cjs/network/transports/intermediate.js +1 -0
- package/cjs/network/transports/intermediate.js.map +1 -1
- package/cjs/network/transports/obfuscated.js +3 -0
- package/cjs/network/transports/obfuscated.js.map +1 -1
- package/cjs/network/transports/streamed.d.ts +1 -1
- package/cjs/network/transports/streamed.js +1 -4
- package/cjs/network/transports/streamed.js.map +1 -1
- package/cjs/network/transports/wrapped.d.ts +1 -1
- package/cjs/network/transports/wrapped.js +2 -0
- package/cjs/network/transports/wrapped.js.map +1 -1
- package/cjs/platform.js.map +1 -1
- package/cjs/storage/driver.js +3 -4
- package/cjs/storage/driver.js.map +1 -1
- package/cjs/storage/memory/driver.js +1 -3
- package/cjs/storage/memory/driver.js.map +1 -1
- package/cjs/storage/memory/index.js +5 -7
- package/cjs/storage/memory/index.js.map +1 -1
- package/cjs/storage/memory/repository/auth-keys.d.ts +1 -1
- package/cjs/storage/memory/repository/auth-keys.js +2 -0
- package/cjs/storage/memory/repository/auth-keys.js.map +1 -1
- package/cjs/storage/memory/repository/kv.d.ts +1 -1
- package/cjs/storage/memory/repository/kv.js +2 -0
- package/cjs/storage/memory/repository/kv.js.map +1 -1
- package/cjs/storage/memory/repository/peers.d.ts +1 -1
- package/cjs/storage/memory/repository/peers.js +2 -0
- package/cjs/storage/memory/repository/peers.js.map +1 -1
- package/cjs/storage/memory/repository/ref-messages.d.ts +1 -1
- package/cjs/storage/memory/repository/ref-messages.js +2 -0
- package/cjs/storage/memory/repository/ref-messages.js.map +1 -1
- package/cjs/storage/service/auth-keys.js +2 -0
- package/cjs/storage/service/auth-keys.js.map +1 -1
- package/cjs/storage/service/base.js +4 -0
- package/cjs/storage/service/base.js.map +1 -1
- package/cjs/storage/service/default-dcs.js +2 -0
- package/cjs/storage/service/default-dcs.js.map +1 -1
- package/cjs/storage/service/future-salts.js +2 -1
- package/cjs/storage/service/future-salts.js.map +1 -1
- package/cjs/storage/sqlite/driver.js +10 -10
- package/cjs/storage/sqlite/driver.js.map +1 -1
- package/cjs/storage/sqlite/index.d.ts +1 -1
- package/cjs/storage/sqlite/index.js +5 -0
- package/cjs/storage/sqlite/index.js.map +1 -1
- package/cjs/storage/sqlite/repository/auth-keys.js +9 -0
- package/cjs/storage/sqlite/repository/auth-keys.js.map +1 -1
- package/cjs/storage/sqlite/repository/kv.js +5 -0
- package/cjs/storage/sqlite/repository/kv.js.map +1 -1
- package/cjs/storage/sqlite/repository/peers.js +6 -0
- package/cjs/storage/sqlite/repository/peers.js.map +1 -1
- package/cjs/storage/sqlite/repository/ref-messages.d.ts +1 -1
- package/cjs/storage/sqlite/repository/ref-messages.js +6 -0
- package/cjs/storage/sqlite/repository/ref-messages.js.map +1 -1
- package/cjs/storage/storage.d.ts +1 -3
- package/cjs/storage/storage.js +21 -13
- package/cjs/storage/storage.js.map +1 -1
- package/cjs/types/errors.js +13 -0
- package/cjs/types/errors.js.map +1 -1
- package/cjs/utils/async-lock.js +1 -3
- package/cjs/utils/async-lock.js.map +1 -1
- package/cjs/utils/bigint-utils.js.map +1 -1
- package/cjs/utils/binary/asn1-parser.js.map +1 -1
- package/cjs/utils/buffer-utils.js.map +1 -1
- package/cjs/utils/condition-variable.js +2 -0
- package/cjs/utils/condition-variable.js.map +1 -1
- package/cjs/utils/crypto/factorization.js.map +1 -1
- package/cjs/utils/crypto/keys.js.map +1 -1
- package/cjs/utils/crypto/miller-rabin.js.map +1 -1
- package/cjs/utils/crypto/password.js.map +1 -1
- package/cjs/utils/crypto/utils.js.map +1 -1
- package/cjs/utils/dcs.js +1 -1
- package/cjs/utils/dcs.js.map +1 -1
- package/cjs/utils/deque.js +8 -2
- package/cjs/utils/deque.js.map +1 -1
- package/cjs/utils/early-timer.js +4 -1
- package/cjs/utils/early-timer.js.map +1 -1
- package/cjs/utils/error-reporting.js.map +1 -1
- package/cjs/utils/function-utils.js.map +1 -1
- package/cjs/utils/linked-list.js +4 -1
- package/cjs/utils/linked-list.js.map +1 -1
- package/cjs/utils/links/bots.js.map +1 -1
- package/cjs/utils/links/chat.js.map +1 -1
- package/cjs/utils/links/common.js.map +1 -1
- package/cjs/utils/links/misc.js.map +1 -1
- package/cjs/utils/logger.d.ts +2 -2
- package/cjs/utils/logger.js +21 -14
- package/cjs/utils/logger.js.map +1 -1
- package/cjs/utils/long-utils.js +2 -6
- package/cjs/utils/long-utils.js.map +1 -1
- package/cjs/utils/lru-map.js +5 -1
- package/cjs/utils/lru-map.js.map +1 -1
- package/cjs/utils/lru-set.js +4 -0
- package/cjs/utils/lru-set.js.map +1 -1
- package/cjs/utils/peer-utils.js.map +1 -1
- package/cjs/utils/reloadable.d.ts +1 -1
- package/cjs/utils/reloadable.js +10 -7
- package/cjs/utils/reloadable.js.map +1 -1
- package/cjs/utils/sorted-array.js +2 -0
- package/cjs/utils/sorted-array.js.map +1 -1
- package/cjs/utils/tl-json.js.map +1 -1
- package/cjs/utils/type-assertions.js.map +1 -1
- package/esm/highlevel/base.d.ts +1 -1
- package/esm/highlevel/base.js +29 -23
- package/esm/highlevel/base.js.map +1 -1
- package/esm/highlevel/client.d.ts +2 -1
- package/esm/highlevel/client.js +1 -0
- package/esm/highlevel/client.js.map +1 -1
- package/esm/highlevel/managers/app-config-manager.js +7 -5
- package/esm/highlevel/managers/app-config-manager.js.map +1 -1
- package/esm/highlevel/methods/_init.js.map +1 -1
- package/esm/highlevel/methods/auth/start-test.js.map +1 -1
- package/esm/highlevel/methods/auth/start.js.map +1 -1
- package/esm/highlevel/methods/auth/utils.js.map +1 -1
- package/esm/highlevel/methods/bots/get-callback-answer.js.map +1 -1
- package/esm/highlevel/methods/bots/get-game-high-scores.js.map +1 -1
- package/esm/highlevel/methods/bots/normalize-command-scope.js.map +1 -1
- package/esm/highlevel/methods/bots/set-my-commands.js.map +1 -1
- package/esm/highlevel/methods/chats/add-chat-members.js.map +1 -1
- package/esm/highlevel/methods/chats/ban-chat-member.js.map +1 -1
- package/esm/highlevel/methods/chats/batched-queries.js.map +1 -1
- package/esm/highlevel/methods/chats/delete-chat-photo.js.map +1 -1
- package/esm/highlevel/methods/chats/delete-history.js.map +1 -1
- package/esm/highlevel/methods/chats/get-chat-event-log.js.map +1 -1
- package/esm/highlevel/methods/chats/get-chat-member.js.map +1 -1
- package/esm/highlevel/methods/chats/get-chat-members.js.map +1 -1
- package/esm/highlevel/methods/chats/get-chat-preview.js.map +1 -1
- package/esm/highlevel/methods/chats/get-chat.js.map +1 -1
- package/esm/highlevel/methods/chats/get-full-chat.js.map +1 -1
- package/esm/highlevel/methods/chats/get-nearby-chats.js.map +1 -1
- package/esm/highlevel/methods/chats/get-similar-channels.js.map +1 -1
- package/esm/highlevel/methods/chats/iter-chat-event-log.js.map +1 -1
- package/esm/highlevel/methods/chats/iter-chat-members.js.map +1 -1
- package/esm/highlevel/methods/chats/join-chat.js.map +1 -1
- package/esm/highlevel/methods/chats/kick-chat-member.js.map +1 -1
- package/esm/highlevel/methods/chats/leave-chat.js.map +1 -1
- package/esm/highlevel/methods/chats/open-chat.js.map +1 -1
- package/esm/highlevel/methods/chats/reorder-usernames.js.map +1 -1
- package/esm/highlevel/methods/chats/restrict-chat-member.js.map +1 -1
- package/esm/highlevel/methods/chats/save-draft.js.map +1 -1
- package/esm/highlevel/methods/chats/set-chat-color.js.map +1 -1
- package/esm/highlevel/methods/chats/set-chat-photo.js.map +1 -1
- package/esm/highlevel/methods/chats/set-chat-title.js.map +1 -1
- package/esm/highlevel/methods/chats/toggle-fragment-username.js.map +1 -1
- package/esm/highlevel/methods/chats/unarchive-chats.js.map +1 -1
- package/esm/highlevel/methods/chats/unban-chat-member.js.map +1 -1
- package/esm/highlevel/methods/contacts/delete-contacts.js.map +1 -1
- package/esm/highlevel/methods/dialogs/create-folder.js.map +1 -1
- package/esm/highlevel/methods/dialogs/edit-folder.js.map +1 -1
- package/esm/highlevel/methods/dialogs/find-folder.js.map +1 -1
- package/esm/highlevel/methods/dialogs/get-folders.js.map +1 -1
- package/esm/highlevel/methods/dialogs/iter-dialogs.js.map +1 -1
- package/esm/highlevel/methods/files/download-buffer.js.map +1 -1
- package/esm/highlevel/methods/files/download-iterable.js +1 -1
- package/esm/highlevel/methods/files/download-iterable.js.map +1 -1
- package/esm/highlevel/methods/files/download-node-stream.js.map +1 -1
- package/esm/highlevel/methods/files/download-stream.js.map +1 -1
- package/esm/highlevel/methods/files/normalize-file-to-document.js.map +1 -1
- package/esm/highlevel/methods/files/normalize-input-file.js.map +1 -1
- package/esm/highlevel/methods/files/normalize-input-media.js +1 -2
- package/esm/highlevel/methods/files/normalize-input-media.js.map +1 -1
- package/esm/highlevel/methods/files/upload-file.js +8 -7
- package/esm/highlevel/methods/files/upload-file.js.map +1 -1
- package/esm/highlevel/methods/files/upload-media.js.map +1 -1
- package/esm/highlevel/methods/forums/iter-forum-topics.js.map +1 -1
- package/esm/highlevel/methods/invite-links/get-primary-invite-link.js.map +1 -1
- package/esm/highlevel/methods/invite-links/iter-invite-link-members.js.map +1 -1
- package/esm/highlevel/methods/invite-links/iter-invite-links.js.map +1 -1
- package/esm/highlevel/methods/messages/close-poll.js.map +1 -1
- package/esm/highlevel/methods/messages/delete-messages.js.map +1 -1
- package/esm/highlevel/methods/messages/edit-inline-message.js.map +1 -1
- package/esm/highlevel/methods/messages/edit-message.js.map +1 -1
- package/esm/highlevel/methods/messages/find-in-update.js.map +1 -1
- package/esm/highlevel/methods/messages/forward-messages.js.map +1 -1
- package/esm/highlevel/methods/messages/get-callback-query-message.js.map +1 -1
- package/esm/highlevel/methods/messages/get-discussion-message.js.map +1 -1
- package/esm/highlevel/methods/messages/get-history.js +5 -1
- package/esm/highlevel/methods/messages/get-history.js.map +1 -1
- package/esm/highlevel/methods/messages/get-message-by-link.js.map +1 -1
- package/esm/highlevel/methods/messages/get-message-group.js.map +1 -1
- package/esm/highlevel/methods/messages/get-message-reactions.js.map +1 -1
- package/esm/highlevel/methods/messages/get-messages.js.map +1 -1
- package/esm/highlevel/methods/messages/get-reply-to.js.map +1 -1
- package/esm/highlevel/methods/messages/iter-history.js.map +1 -1
- package/esm/highlevel/methods/messages/iter-reaction-users.js.map +1 -1
- package/esm/highlevel/methods/messages/iter-search-global.js.map +1 -1
- package/esm/highlevel/methods/messages/iter-search-messages.js.map +1 -1
- package/esm/highlevel/methods/messages/read-history.js.map +1 -1
- package/esm/highlevel/methods/messages/send-answer.js.map +1 -1
- package/esm/highlevel/methods/messages/send-comment.js.map +1 -1
- package/esm/highlevel/methods/messages/send-common.js.map +1 -1
- package/esm/highlevel/methods/messages/send-copy-group.js.map +1 -1
- package/esm/highlevel/methods/messages/send-copy.js.map +1 -1
- package/esm/highlevel/methods/messages/send-media-group.js.map +1 -1
- package/esm/highlevel/methods/messages/send-media.js.map +1 -1
- package/esm/highlevel/methods/messages/send-quote.js.map +1 -1
- package/esm/highlevel/methods/messages/send-text.js.map +1 -1
- package/esm/highlevel/methods/messages/send-typing.js.map +1 -1
- package/esm/highlevel/methods/messages/send-vote.js.map +1 -1
- package/esm/highlevel/methods/messages/translate-text.js.map +1 -1
- package/esm/highlevel/methods/messages/unpin-all-messages.js.map +1 -1
- package/esm/highlevel/methods/misc/normalize-privacy-rules.js.map +1 -1
- package/esm/highlevel/methods/misc/normalize-text.js.map +1 -1
- package/esm/highlevel/methods/misc/with-params.js.map +1 -1
- package/esm/highlevel/methods/password/change-cloud-password.js.map +1 -1
- package/esm/highlevel/methods/password/enable-cloud-password.js.map +1 -1
- package/esm/highlevel/methods/password/remove-cloud-password.js.map +1 -1
- package/esm/highlevel/methods/premium/can-apply-boost.js.map +1 -1
- package/esm/highlevel/methods/premium/iter-boosters.js.map +1 -1
- package/esm/highlevel/methods/stickers/create-sticker-set.js.map +1 -1
- package/esm/highlevel/methods/stickers/delete-sticker-from-set.js.map +1 -1
- package/esm/highlevel/methods/stickers/get-custom-emojis.js.map +1 -1
- package/esm/highlevel/methods/stickers/move-sticker-in-set.js.map +1 -1
- package/esm/highlevel/methods/stories/can-send-story.js.map +1 -1
- package/esm/highlevel/methods/stories/edit-story.js.map +1 -1
- package/esm/highlevel/methods/stories/find-in-update.js.map +1 -1
- package/esm/highlevel/methods/stories/hide-my-stories-views.js.map +1 -1
- package/esm/highlevel/methods/stories/iter-all-stories.js.map +1 -1
- package/esm/highlevel/methods/stories/iter-profile-stories.js.map +1 -1
- package/esm/highlevel/methods/stories/iter-story-viewers.js.map +1 -1
- package/esm/highlevel/methods/stories/send-story.js.map +1 -1
- package/esm/highlevel/methods/users/delete-profile-photos.js.map +1 -1
- package/esm/highlevel/methods/users/get-users.js.map +1 -1
- package/esm/highlevel/methods/users/iter-profile-photos.js.map +1 -1
- package/esm/highlevel/methods/users/resolve-peer-many.js.map +1 -1
- package/esm/highlevel/methods/users/resolve-peer.js.map +1 -1
- package/esm/highlevel/methods/users/set-my-emoji-status.js.map +1 -1
- package/esm/highlevel/methods/users/set-my-profile-photo.js.map +1 -1
- package/esm/highlevel/storage/service/current-user.js +2 -0
- package/esm/highlevel/storage/service/current-user.js.map +1 -1
- package/esm/highlevel/storage/service/peers.js +5 -1
- package/esm/highlevel/storage/service/peers.js.map +1 -1
- package/esm/highlevel/storage/service/ref-messages.js +3 -0
- package/esm/highlevel/storage/service/ref-messages.js.map +1 -1
- package/esm/highlevel/storage/service/updates.js +1 -0
- package/esm/highlevel/storage/service/updates.js.map +1 -1
- package/esm/highlevel/storage/storage.d.ts +1 -1
- package/esm/highlevel/storage/storage.js +17 -4
- package/esm/highlevel/storage/storage.js.map +1 -1
- package/esm/highlevel/types/auth/sent-code.js +1 -0
- package/esm/highlevel/types/auth/sent-code.js.map +1 -1
- package/esm/highlevel/types/bots/game-high-score.js +2 -0
- package/esm/highlevel/types/bots/game-high-score.js.map +1 -1
- package/esm/highlevel/types/bots/inline-message/factories.js.map +1 -1
- package/esm/highlevel/types/bots/inline-result/factories.js.map +1 -1
- package/esm/highlevel/types/bots/keyboards/builder.js +2 -1
- package/esm/highlevel/types/bots/keyboards/builder.js.map +1 -1
- package/esm/highlevel/types/bots/keyboards/factories.js.map +1 -1
- package/esm/highlevel/types/calls/discard-reason.js.map +1 -1
- package/esm/highlevel/types/conversation.js +13 -7
- package/esm/highlevel/types/conversation.js.map +1 -1
- package/esm/highlevel/types/errors.js +3 -0
- package/esm/highlevel/types/errors.js.map +1 -1
- package/esm/highlevel/types/files/file-location.js +3 -0
- package/esm/highlevel/types/files/file-location.js.map +1 -1
- package/esm/highlevel/types/files/uploaded-file.js +1 -1
- package/esm/highlevel/types/files/uploaded-file.js.map +1 -1
- package/esm/highlevel/types/files/utils.d.ts +1 -1
- package/esm/highlevel/types/files/utils.js.map +1 -1
- package/esm/highlevel/types/files/web-document.js +1 -0
- package/esm/highlevel/types/files/web-document.js.map +1 -1
- package/esm/highlevel/types/media/audio.js +3 -2
- package/esm/highlevel/types/media/audio.js.map +1 -1
- package/esm/highlevel/types/media/contact.js +2 -1
- package/esm/highlevel/types/media/contact.js.map +1 -1
- package/esm/highlevel/types/media/dice.js +125 -124
- package/esm/highlevel/types/media/dice.js.map +1 -1
- package/esm/highlevel/types/media/document-utils.js.map +1 -1
- package/esm/highlevel/types/media/document.js +2 -4
- package/esm/highlevel/types/media/document.js.map +1 -1
- package/esm/highlevel/types/media/game.js +2 -1
- package/esm/highlevel/types/media/game.js.map +1 -1
- package/esm/highlevel/types/media/invoice.js +4 -1
- package/esm/highlevel/types/media/invoice.js.map +1 -1
- package/esm/highlevel/types/media/location.js +4 -5
- package/esm/highlevel/types/media/location.js.map +1 -1
- package/esm/highlevel/types/media/photo.js +8 -1
- package/esm/highlevel/types/media/photo.js.map +1 -1
- package/esm/highlevel/types/media/poll.js +4 -1
- package/esm/highlevel/types/media/poll.js.map +1 -1
- package/esm/highlevel/types/media/sticker.js +3 -1
- package/esm/highlevel/types/media/sticker.js.map +1 -1
- package/esm/highlevel/types/media/story.js +3 -1
- package/esm/highlevel/types/media/story.js.map +1 -1
- package/esm/highlevel/types/media/thumbnail.js +35 -22
- package/esm/highlevel/types/media/thumbnail.js.map +1 -1
- package/esm/highlevel/types/media/venue.js +2 -1
- package/esm/highlevel/types/media/venue.js.map +1 -1
- package/esm/highlevel/types/media/video.js +3 -1
- package/esm/highlevel/types/media/video.js.map +1 -1
- package/esm/highlevel/types/media/voice.js +2 -1
- package/esm/highlevel/types/media/voice.js.map +1 -1
- package/esm/highlevel/types/media/web-page.js +2 -1
- package/esm/highlevel/types/media/web-page.js.map +1 -1
- package/esm/highlevel/types/messages/dialog.js +3 -0
- package/esm/highlevel/types/messages/dialog.js.map +1 -1
- package/esm/highlevel/types/messages/draft-message.js +1 -0
- package/esm/highlevel/types/messages/draft-message.js.map +1 -1
- package/esm/highlevel/types/messages/message-action.js.map +1 -1
- package/esm/highlevel/types/messages/message-entity.js +2 -0
- package/esm/highlevel/types/messages/message-entity.js.map +1 -1
- package/esm/highlevel/types/messages/message-forward.js +2 -0
- package/esm/highlevel/types/messages/message-forward.js.map +1 -1
- package/esm/highlevel/types/messages/message-media.js.map +1 -1
- package/esm/highlevel/types/messages/message-reactions.js +4 -0
- package/esm/highlevel/types/messages/message-reactions.js.map +1 -1
- package/esm/highlevel/types/messages/message-replies.js +2 -0
- package/esm/highlevel/types/messages/message-replies.js.map +1 -1
- package/esm/highlevel/types/messages/message.js +6 -0
- package/esm/highlevel/types/messages/message.js.map +1 -1
- package/esm/highlevel/types/messages/replied-message.js +2 -0
- package/esm/highlevel/types/messages/replied-message.js.map +1 -1
- package/esm/highlevel/types/misc/sticker-set.js +7 -1
- package/esm/highlevel/types/misc/sticker-set.js.map +1 -1
- package/esm/highlevel/types/misc/takeout-session.js +5 -0
- package/esm/highlevel/types/misc/takeout-session.js.map +1 -1
- package/esm/highlevel/types/peers/chat-colors.js +2 -0
- package/esm/highlevel/types/peers/chat-colors.js.map +1 -1
- package/esm/highlevel/types/peers/chat-event/actions.js.map +1 -1
- package/esm/highlevel/types/peers/chat-event/filters.js.map +1 -1
- package/esm/highlevel/types/peers/chat-event/index.js +2 -0
- package/esm/highlevel/types/peers/chat-event/index.js.map +1 -1
- package/esm/highlevel/types/peers/chat-invite-link-member.js +2 -0
- package/esm/highlevel/types/peers/chat-invite-link-member.js.map +1 -1
- package/esm/highlevel/types/peers/chat-invite-link.js +2 -0
- package/esm/highlevel/types/peers/chat-invite-link.js.map +1 -1
- package/esm/highlevel/types/peers/chat-location.js +1 -0
- package/esm/highlevel/types/peers/chat-location.js.map +1 -1
- package/esm/highlevel/types/peers/chat-member.js +2 -0
- package/esm/highlevel/types/peers/chat-member.js.map +1 -1
- package/esm/highlevel/types/peers/chat-permissions.js +1 -0
- package/esm/highlevel/types/peers/chat-permissions.js.map +1 -1
- package/esm/highlevel/types/peers/chat-photo.js +5 -0
- package/esm/highlevel/types/peers/chat-photo.js.map +1 -1
- package/esm/highlevel/types/peers/chat-preview.js +2 -0
- package/esm/highlevel/types/peers/chat-preview.js.map +1 -1
- package/esm/highlevel/types/peers/chat.js +12 -1
- package/esm/highlevel/types/peers/chat.js.map +1 -1
- package/esm/highlevel/types/peers/forum-topic.js +9 -6
- package/esm/highlevel/types/peers/forum-topic.js.map +1 -1
- package/esm/highlevel/types/peers/peer.js.map +1 -1
- package/esm/highlevel/types/peers/peers-index.js +3 -1
- package/esm/highlevel/types/peers/peers-index.js.map +1 -1
- package/esm/highlevel/types/peers/user.js +5 -1
- package/esm/highlevel/types/peers/user.js.map +1 -1
- package/esm/highlevel/types/premium/boost-slot.js +2 -0
- package/esm/highlevel/types/premium/boost-slot.js.map +1 -1
- package/esm/highlevel/types/premium/boost-stats.js +1 -0
- package/esm/highlevel/types/premium/boost-stats.js.map +1 -1
- package/esm/highlevel/types/premium/boost.js +2 -0
- package/esm/highlevel/types/premium/boost.js.map +1 -1
- package/esm/highlevel/types/reactions/emoji-status.js +1 -0
- package/esm/highlevel/types/reactions/emoji-status.js.map +1 -1
- package/esm/highlevel/types/reactions/peer-reaction.js +2 -0
- package/esm/highlevel/types/reactions/peer-reaction.js.map +1 -1
- package/esm/highlevel/types/reactions/reaction-count.js +1 -0
- package/esm/highlevel/types/reactions/reaction-count.js.map +1 -1
- package/esm/highlevel/types/reactions/types.js.map +1 -1
- package/esm/highlevel/types/stories/all-stories.d.ts +2 -2
- package/esm/highlevel/types/stories/all-stories.js +3 -1
- package/esm/highlevel/types/stories/all-stories.js.map +1 -1
- package/esm/highlevel/types/stories/interactive/base.js +1 -0
- package/esm/highlevel/types/stories/interactive/base.js.map +1 -1
- package/esm/highlevel/types/stories/interactive/channel-post.js +3 -1
- package/esm/highlevel/types/stories/interactive/channel-post.js.map +1 -1
- package/esm/highlevel/types/stories/interactive/index.js.map +1 -1
- package/esm/highlevel/types/stories/interactive/input.js +1 -0
- package/esm/highlevel/types/stories/interactive/input.js.map +1 -1
- package/esm/highlevel/types/stories/interactive/location.js +2 -1
- package/esm/highlevel/types/stories/interactive/location.js.map +1 -1
- package/esm/highlevel/types/stories/interactive/reaction.js +2 -1
- package/esm/highlevel/types/stories/interactive/reaction.js.map +1 -1
- package/esm/highlevel/types/stories/interactive/venue.js +2 -1
- package/esm/highlevel/types/stories/interactive/venue.js.map +1 -1
- package/esm/highlevel/types/stories/peer-stories.js +2 -0
- package/esm/highlevel/types/stories/peer-stories.js.map +1 -1
- package/esm/highlevel/types/stories/stealth-mode.js +1 -0
- package/esm/highlevel/types/stories/stealth-mode.js.map +1 -1
- package/esm/highlevel/types/stories/story-interactions.js +2 -0
- package/esm/highlevel/types/stories/story-interactions.js.map +1 -1
- package/esm/highlevel/types/stories/story-viewer.d.ts +1 -1
- package/esm/highlevel/types/stories/story-viewer.js +6 -0
- package/esm/highlevel/types/stories/story-viewer.js.map +1 -1
- package/esm/highlevel/types/stories/story.js +2 -0
- package/esm/highlevel/types/stories/story.js.map +1 -1
- package/esm/highlevel/types/updates/bot-chat-join-request.js +2 -0
- package/esm/highlevel/types/updates/bot-chat-join-request.js.map +1 -1
- package/esm/highlevel/types/updates/bot-reaction.js +4 -0
- package/esm/highlevel/types/updates/bot-reaction.js.map +1 -1
- package/esm/highlevel/types/updates/bot-stopped.js +2 -0
- package/esm/highlevel/types/updates/bot-stopped.js.map +1 -1
- package/esm/highlevel/types/updates/callback-query.js +4 -0
- package/esm/highlevel/types/updates/callback-query.js.map +1 -1
- package/esm/highlevel/types/updates/chat-join-request.js +2 -0
- package/esm/highlevel/types/updates/chat-join-request.js.map +1 -1
- package/esm/highlevel/types/updates/chat-member-update.js +2 -0
- package/esm/highlevel/types/updates/chat-member-update.js.map +1 -1
- package/esm/highlevel/types/updates/chosen-inline-result.js +2 -0
- package/esm/highlevel/types/updates/chosen-inline-result.js.map +1 -1
- package/esm/highlevel/types/updates/delete-message-update.js +1 -0
- package/esm/highlevel/types/updates/delete-message-update.js.map +1 -1
- package/esm/highlevel/types/updates/delete-story-update.js +2 -0
- package/esm/highlevel/types/updates/delete-story-update.js.map +1 -1
- package/esm/highlevel/types/updates/history-read-update.js +1 -0
- package/esm/highlevel/types/updates/history-read-update.js.map +1 -1
- package/esm/highlevel/types/updates/inline-query.js +2 -0
- package/esm/highlevel/types/updates/inline-query.js.map +1 -1
- package/esm/highlevel/types/updates/parse-update.js.map +1 -1
- package/esm/highlevel/types/updates/poll-update.js +2 -0
- package/esm/highlevel/types/updates/poll-update.js.map +1 -1
- package/esm/highlevel/types/updates/poll-vote.js +2 -0
- package/esm/highlevel/types/updates/poll-vote.js.map +1 -1
- package/esm/highlevel/types/updates/pre-checkout-query.js +2 -0
- package/esm/highlevel/types/updates/pre-checkout-query.js.map +1 -1
- package/esm/highlevel/types/updates/story-update.js +2 -0
- package/esm/highlevel/types/updates/story-update.js.map +1 -1
- package/esm/highlevel/types/updates/user-status-update.js +1 -0
- package/esm/highlevel/types/updates/user-status-update.js.map +1 -1
- package/esm/highlevel/types/updates/user-typing-update.js +1 -0
- package/esm/highlevel/types/updates/user-typing-update.js.map +1 -1
- package/esm/highlevel/updates/manager.js +50 -28
- package/esm/highlevel/updates/manager.js.map +1 -1
- package/esm/highlevel/updates/parsed.js.map +1 -1
- package/esm/highlevel/updates/utils.js.map +1 -1
- package/esm/highlevel/utils/convert-file-id.js.map +1 -1
- package/esm/highlevel/utils/entities.js.map +1 -1
- package/esm/highlevel/utils/file-type.d.ts +1 -0
- package/esm/highlevel/utils/file-type.js +34 -0
- package/esm/highlevel/utils/file-type.js.map +1 -1
- package/esm/highlevel/utils/file-utils.js +1 -1
- package/esm/highlevel/utils/file-utils.js.map +1 -1
- package/esm/highlevel/utils/inline-utils.js.map +1 -1
- package/esm/highlevel/utils/inspectable.js.map +1 -1
- package/esm/highlevel/utils/memoize.js.map +1 -1
- package/esm/highlevel/utils/peer-utils.js.map +1 -1
- package/esm/highlevel/utils/query-batcher.js.map +1 -1
- package/esm/highlevel/utils/rps-meter.js +3 -0
- package/esm/highlevel/utils/rps-meter.js.map +1 -1
- package/esm/highlevel/utils/stream-utils.js.map +1 -1
- package/esm/highlevel/utils/string-session.d.ts +1 -2
- package/esm/highlevel/utils/string-session.js +27 -7
- package/esm/highlevel/utils/string-session.js.map +1 -1
- package/esm/highlevel/utils/voice-utils.js.map +1 -1
- package/esm/highlevel/worker/app-config.d.ts +2 -3
- package/esm/highlevel/worker/app-config.js +6 -3
- package/esm/highlevel/worker/app-config.js.map +1 -1
- package/esm/highlevel/worker/errors.js.map +1 -1
- package/esm/highlevel/worker/invoker.js +3 -2
- package/esm/highlevel/worker/invoker.js.map +1 -1
- package/esm/highlevel/worker/port.d.ts +16 -17
- package/esm/highlevel/worker/port.js +74 -49
- package/esm/highlevel/worker/port.js.map +1 -1
- package/esm/highlevel/worker/protocol.d.ts +1 -1
- package/esm/highlevel/worker/protocol.js.map +1 -1
- package/esm/highlevel/worker/storage.d.ts +9 -13
- package/esm/highlevel/worker/storage.js +34 -19
- package/esm/highlevel/worker/storage.js.map +1 -1
- package/esm/highlevel/worker/worker.js +3 -0
- package/esm/highlevel/worker/worker.js.map +1 -1
- package/esm/network/auth-key.js +8 -1
- package/esm/network/auth-key.js.map +1 -1
- package/esm/network/authorization.js.map +1 -1
- package/esm/network/client.js +39 -14
- package/esm/network/client.js.map +1 -1
- package/esm/network/config-manager.js.map +1 -1
- package/esm/network/mtproto-session.js +40 -30
- package/esm/network/mtproto-session.js.map +1 -1
- package/esm/network/multi-session-connection.d.ts +1 -1
- package/esm/network/multi-session-connection.js +13 -7
- package/esm/network/multi-session-connection.js.map +1 -1
- package/esm/network/network-manager.d.ts +2 -3
- package/esm/network/network-manager.js +49 -28
- package/esm/network/network-manager.js.map +1 -1
- package/esm/network/persistent-connection.d.ts +2 -2
- package/esm/network/persistent-connection.js +33 -22
- package/esm/network/persistent-connection.js.map +1 -1
- package/esm/network/server-salt.js +4 -5
- package/esm/network/server-salt.js.map +1 -1
- package/esm/network/session-connection.d.ts +1 -1
- package/esm/network/session-connection.js +22 -12
- package/esm/network/session-connection.js.map +1 -1
- package/esm/network/transports/abstract.d.ts +1 -1
- package/esm/network/transports/abstract.js +1 -0
- package/esm/network/transports/abstract.js.map +1 -1
- package/esm/network/transports/intermediate.js +1 -0
- package/esm/network/transports/intermediate.js.map +1 -1
- package/esm/network/transports/obfuscated.js +3 -0
- package/esm/network/transports/obfuscated.js.map +1 -1
- package/esm/network/transports/streamed.js +1 -4
- package/esm/network/transports/streamed.js.map +1 -1
- package/esm/network/transports/wrapped.js +2 -0
- package/esm/network/transports/wrapped.js.map +1 -1
- package/esm/platform.js.map +1 -1
- package/esm/storage/driver.js +3 -4
- package/esm/storage/driver.js.map +1 -1
- package/esm/storage/memory/driver.js +1 -3
- package/esm/storage/memory/driver.js.map +1 -1
- package/esm/storage/memory/index.js +5 -7
- package/esm/storage/memory/index.js.map +1 -1
- package/esm/storage/memory/repository/auth-keys.d.ts +1 -1
- package/esm/storage/memory/repository/auth-keys.js +2 -0
- package/esm/storage/memory/repository/auth-keys.js.map +1 -1
- package/esm/storage/memory/repository/kv.d.ts +1 -1
- package/esm/storage/memory/repository/kv.js +2 -0
- package/esm/storage/memory/repository/kv.js.map +1 -1
- package/esm/storage/memory/repository/peers.d.ts +1 -1
- package/esm/storage/memory/repository/peers.js +2 -0
- package/esm/storage/memory/repository/peers.js.map +1 -1
- package/esm/storage/memory/repository/ref-messages.d.ts +1 -1
- package/esm/storage/memory/repository/ref-messages.js +2 -0
- package/esm/storage/memory/repository/ref-messages.js.map +1 -1
- package/esm/storage/service/auth-keys.js +2 -0
- package/esm/storage/service/auth-keys.js.map +1 -1
- package/esm/storage/service/base.js +4 -0
- package/esm/storage/service/base.js.map +1 -1
- package/esm/storage/service/default-dcs.js +2 -0
- package/esm/storage/service/default-dcs.js.map +1 -1
- package/esm/storage/service/future-salts.js +2 -1
- package/esm/storage/service/future-salts.js.map +1 -1
- package/esm/storage/sqlite/driver.js +10 -10
- package/esm/storage/sqlite/driver.js.map +1 -1
- package/esm/storage/sqlite/index.d.ts +1 -1
- package/esm/storage/sqlite/index.js +5 -0
- package/esm/storage/sqlite/index.js.map +1 -1
- package/esm/storage/sqlite/repository/auth-keys.js +9 -0
- package/esm/storage/sqlite/repository/auth-keys.js.map +1 -1
- package/esm/storage/sqlite/repository/kv.js +5 -0
- package/esm/storage/sqlite/repository/kv.js.map +1 -1
- package/esm/storage/sqlite/repository/peers.js +6 -0
- package/esm/storage/sqlite/repository/peers.js.map +1 -1
- package/esm/storage/sqlite/repository/ref-messages.d.ts +1 -1
- package/esm/storage/sqlite/repository/ref-messages.js +6 -0
- package/esm/storage/sqlite/repository/ref-messages.js.map +1 -1
- package/esm/storage/storage.d.ts +1 -3
- package/esm/storage/storage.js +21 -13
- package/esm/storage/storage.js.map +1 -1
- package/esm/types/errors.js +13 -0
- package/esm/types/errors.js.map +1 -1
- package/esm/utils/async-lock.js +1 -3
- package/esm/utils/async-lock.js.map +1 -1
- package/esm/utils/bigint-utils.js.map +1 -1
- package/esm/utils/binary/asn1-parser.js.map +1 -1
- package/esm/utils/buffer-utils.js.map +1 -1
- package/esm/utils/condition-variable.js +2 -0
- package/esm/utils/condition-variable.js.map +1 -1
- package/esm/utils/crypto/factorization.js.map +1 -1
- package/esm/utils/crypto/keys.js.map +1 -1
- package/esm/utils/crypto/miller-rabin.js.map +1 -1
- package/esm/utils/crypto/password.js.map +1 -1
- package/esm/utils/crypto/utils.js.map +1 -1
- package/esm/utils/dcs.js +1 -1
- package/esm/utils/dcs.js.map +1 -1
- package/esm/utils/deque.js +8 -2
- package/esm/utils/deque.js.map +1 -1
- package/esm/utils/early-timer.js +4 -1
- package/esm/utils/early-timer.js.map +1 -1
- package/esm/utils/error-reporting.js.map +1 -1
- package/esm/utils/function-utils.js.map +1 -1
- package/esm/utils/linked-list.js +4 -1
- package/esm/utils/linked-list.js.map +1 -1
- package/esm/utils/links/bots.js.map +1 -1
- package/esm/utils/links/chat.js.map +1 -1
- package/esm/utils/links/common.js.map +1 -1
- package/esm/utils/links/misc.js.map +1 -1
- package/esm/utils/logger.d.ts +2 -2
- package/esm/utils/logger.js +21 -14
- package/esm/utils/logger.js.map +1 -1
- package/esm/utils/long-utils.js +2 -6
- package/esm/utils/long-utils.js.map +1 -1
- package/esm/utils/lru-map.js +5 -1
- package/esm/utils/lru-map.js.map +1 -1
- package/esm/utils/lru-set.js +4 -0
- package/esm/utils/lru-set.js.map +1 -1
- package/esm/utils/peer-utils.js.map +1 -1
- package/esm/utils/reloadable.js +10 -7
- package/esm/utils/reloadable.js.map +1 -1
- package/esm/utils/sorted-array.js +2 -0
- package/esm/utils/sorted-array.js.map +1 -1
- package/esm/utils/tl-json.js.map +1 -1
- package/esm/utils/type-assertions.js.map +1 -1
- package/package.json +11 -11
|
@@ -5,14 +5,15 @@ const errors_js_1 = require("../../types/errors.js");
|
|
|
5
5
|
const reloadable_js_1 = require("../../utils/reloadable.js");
|
|
6
6
|
const tl_json_js_1 = require("../../utils/tl-json.js");
|
|
7
7
|
class AppConfigManager {
|
|
8
|
+
client;
|
|
8
9
|
constructor(client) {
|
|
9
10
|
this.client = client;
|
|
10
|
-
this._reloadable = new reloadable_js_1.Reloadable({
|
|
11
|
-
reload: this._reload.bind(this),
|
|
12
|
-
getExpiresAt: () => 3600000,
|
|
13
|
-
disableAutoReload: true,
|
|
14
|
-
});
|
|
15
11
|
}
|
|
12
|
+
_reloadable = new reloadable_js_1.Reloadable({
|
|
13
|
+
reload: this._reload.bind(this),
|
|
14
|
+
getExpiresAt: () => 3_600_000,
|
|
15
|
+
disableAutoReload: true,
|
|
16
|
+
});
|
|
16
17
|
async _reload(old) {
|
|
17
18
|
const res = await this.client.call({
|
|
18
19
|
_: 'help.getAppConfig',
|
|
@@ -22,6 +23,7 @@ class AppConfigManager {
|
|
|
22
23
|
return old;
|
|
23
24
|
return res;
|
|
24
25
|
}
|
|
26
|
+
_object;
|
|
25
27
|
async get() {
|
|
26
28
|
if (!this._reloadable.isStale && this._object)
|
|
27
29
|
return this._object;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app-config-manager.js","sourceRoot":"","sources":["../../../../src/highlevel/managers/app-config-manager.ts"],"names":[],"mappings":";;;AAEA,qDAA4D;AAC5D,6DAAsD;AACtD,uDAAqD;AAIrD,MAAa,gBAAgB;
|
|
1
|
+
{"version":3,"file":"app-config-manager.js","sourceRoot":"","sources":["../../../../src/highlevel/managers/app-config-manager.ts"],"names":[],"mappings":";;;AAEA,qDAA4D;AAC5D,6DAAsD;AACtD,uDAAqD;AAIrD,MAAa,gBAAgB;IACL;IAApB,YAAoB,MAA0B;QAA1B,WAAM,GAAN,MAAM,CAAoB;IAAG,CAAC;IAE1C,WAAW,GAAG,IAAI,0BAAU,CAAuB;QACvD,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;QAC/B,YAAY,EAAE,GAAG,EAAE,CAAC,SAAS;QAC7B,iBAAiB,EAAE,IAAI;KAC1B,CAAC,CAAA;IAEM,KAAK,CAAC,OAAO,CAAC,GAA0B;QAC5C,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;YAC/B,CAAC,EAAE,mBAAmB;YACtB,IAAI,EAAE,GAAG,EAAE,IAAI,IAAI,CAAC;SACvB,CAAC,CAAA;QAEF,IAAI,GAAG,CAAC,CAAC,KAAK,2BAA2B;YAAE,OAAO,GAAI,CAAA;QAEtD,OAAO,GAAG,CAAA;IACd,CAAC;IAEO,OAAO,CAAkB;IACjC,KAAK,CAAC,GAAG;QACL,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO;YAAE,OAAO,IAAI,CAAC,OAAO,CAAA;QAElE,MAAM,GAAG,GAAG,IAAA,yBAAY,EAAC,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,CAAA;QAE/D,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;YAClC,MAAM,IAAI,gCAAoB,CAAC,WAAW,EAAE,QAAQ,EAAE,OAAO,GAAG,CAAC,CAAA;QACrE,CAAC;QAED,IAAI,CAAC,OAAO,GAAG,GAAsB,CAAA;QAErC,OAAO,IAAI,CAAC,OAAO,CAAA;IACvB,CAAC;IAOD,KAAK,CAAC,QAAQ,CACV,KAAQ,EACR,QAA0C;QAE1C,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,GAAG,EAAE,CAAA;QAE5B,OAAO,GAAG,CAAC,KAAK,CAAC,IAAI,QAAQ,CAAA;IACjC,CAAC;CACJ;AAhDD,4CAgDC","sourcesContent":["import { tl } from '@mtcute/tl'\n\nimport { MtTypeAssertionError } from '../../types/errors.js'\nimport { Reloadable } from '../../utils/reloadable.js'\nimport { tlJsonToJson } from '../../utils/tl-json.js'\nimport { BaseTelegramClient } from '../base.js'\nimport { AppConfigSchema } from '../types/misc/app-config.js'\n\nexport class AppConfigManager {\n constructor(private client: BaseTelegramClient) {}\n\n private _reloadable = new Reloadable<tl.help.RawAppConfig>({\n reload: this._reload.bind(this),\n getExpiresAt: () => 3_600_000,\n disableAutoReload: true,\n })\n\n private async _reload(old?: tl.help.RawAppConfig) {\n const res = await this.client.call({\n _: 'help.getAppConfig',\n hash: old?.hash ?? 0,\n })\n\n if (res._ === 'help.appConfigNotModified') return old!\n\n return res\n }\n\n private _object?: AppConfigSchema\n async get(): Promise<AppConfigSchema> {\n if (!this._reloadable.isStale && this._object) return this._object\n\n const obj = tlJsonToJson((await this._reloadable.get()).config)\n\n if (!obj || typeof obj !== 'object') {\n throw new MtTypeAssertionError('appConfig', 'object', typeof obj)\n }\n\n this._object = obj as AppConfigSchema\n\n return this._object\n }\n\n async getField<K extends keyof AppConfigSchema>(field: K): Promise<AppConfigSchema[K]>\n async getField<K extends keyof AppConfigSchema>(\n field: K,\n fallback: NonNullable<AppConfigSchema[K]>,\n ): Promise<NonNullable<AppConfigSchema[K]>>\n async getField<K extends keyof AppConfigSchema>(\n field: K,\n fallback?: NonNullable<AppConfigSchema[K]>,\n ): Promise<AppConfigSchema[K]> {\n const obj = await this.get()\n\n return obj[field] ?? fallback\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_init.js","sourceRoot":"","sources":["../../../../src/highlevel/methods/_init.ts"],"names":[],"mappings":";AAAA,sDAAsD;;AAEtD,QAAQ;AACR,mDAAsE;AACtE,wCAA0E;AAK1E,QAAQ;AACR,8DAAuD;AACvD,QAAQ;AACR,oDAAyF;AAwBzF,cAAc;AACd,gBAAgB;AAChB,SAAS,iBAAiB,CAAuB,IAA2B;IACxE,IAAI,QAAQ,IAAI,IAAI,EAAE;
|
|
1
|
+
{"version":3,"file":"_init.js","sourceRoot":"","sources":["../../../../src/highlevel/methods/_init.ts"],"names":[],"mappings":";AAAA,sDAAsD;;AAEtD,QAAQ;AACR,mDAAsE;AACtE,wCAA0E;AAK1E,QAAQ;AACR,8DAAuD;AACvD,QAAQ;AACR,oDAAyF;AAwBzF,cAAc;AACd,gBAAgB;AAChB,SAAS,iBAAiB,CAAuB,IAA2B;IACxE,IAAI,QAAQ,IAAI,IAAI,EAAE,CAAC;QACnB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,CAAA;IAC9B,CAAC;SAAM,CAAC;QACJ,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACvF,MAAM,IAAI,6BAAkB,CAAC,+EAA+E,CAAC,CAAA;QACjH,CAAC;QAED,IAAI,CAAC,OAAO,GAAG,IAAI,4BAAkB,CAAC,IAAiC,CAAC,CAAA;IAC5E,CAAC;IAED,2BAA2B;IAC3B,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAA;IAC3B,2BAA2B;IAC3B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAA;IAEnC,MAAM,uBAAuB,GAAG,IAAI,CAAC,uBAAuB,IAAI,IAAI,CAAA;IACpE,MAAM,EAAE,uBAAuB,EAAE,GAAG,IAAI,CAAC,OAAO,IAAI,EAAE,CAAA;IAEtD,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAA,mCAAuB,EAAC;QAC1C,uBAAuB;QACvB,QAAQ,EAAE,CAAC,MAAM,EAAE,EAAE;YACjB,IAAI,8BAAY,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,IAAI,uBAAuB;gBAAE,OAAM;YAEtF,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;YAC3B,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,CAAA;QACvC,CAAC;QACD,WAAW,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;YAC3B,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,MAAM,EAAE,KAAK,CAAC,CAAA;QAC1C,CAAC;KACJ,CAAC,CAAC,CAAA;AACP,CAAC","sourcesContent":["/* eslint-disable @typescript-eslint/no-unused-vars */\n\n// @copy\nimport { MtUnsupportedError, PartialOnly } from '../../types/index.js'\nimport { BaseTelegramClient, BaseTelegramClientOptions } from '../base.js'\nimport { TelegramClient } from '../client.js'\nimport { ITelegramClient } from '../client.types.js'\n// @copy\nimport { ITelegramStorageProvider } from '../storage/provider.js'\n// @copy\nimport { Conversation } from '../types/conversation.js'\n// @copy\nimport { makeParsedUpdateHandler, ParsedUpdateHandlerParams } from '../updates/parsed.js'\n\n// @copy\ntype TelegramClientOptions = ((PartialOnly<Omit<BaseTelegramClientOptions, 'storage'>, 'transport' | 'crypto'> & {\n /**\n * Storage to use for this client.\n *\n * If a string is passed, it will be used as\n * a name for the default platform-specific storage provider to use.\n *\n * @default `\"client.session\"`\n */\n storage?: string | ITelegramStorageProvider\n}) | ({ client: ITelegramClient })) & {\n updates?: Omit<ParsedUpdateHandlerParams, 'onUpdate'>\n /**\n * If `true`, the updates that were handled by some {@link Conversation}\n * will not be dispatched any further.\n *\n * @default true\n */\n skipConversationUpdates?: boolean\n}\n\n// @initialize\n/** @internal */\nfunction _initializeClient(this: TelegramClient, opts: TelegramClientOptions) {\n if ('client' in opts) {\n this._client = opts.client\n } else {\n if (!opts.storage || typeof opts.storage === 'string' || !opts.transport || !opts.crypto) {\n throw new MtUnsupportedError('You need to explicitly provide storage, transport and crypto for @mtcute/core')\n }\n\n this._client = new BaseTelegramClient(opts as BaseTelegramClientOptions)\n }\n\n // @ts-expect-error codegen\n this.log = this._client.log\n // @ts-expect-error codegen\n this.storage = this._client.storage\n\n const skipConversationUpdates = opts.skipConversationUpdates ?? true\n const { messageGroupingInterval } = opts.updates ?? {}\n\n this._client.onUpdate(makeParsedUpdateHandler({\n messageGroupingInterval,\n onUpdate: (update) => {\n if (Conversation.handleUpdate(this._client, update) && skipConversationUpdates) return\n\n this.emit('update', update)\n this.emit(update.name, update.data)\n },\n onRawUpdate: (update, peers) => {\n this.emit('raw_update', update, peers)\n },\n }))\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"start-test.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/auth/start-test.ts"],"names":[],"mappings":";;;AAAA,wDAA0D;AAG1D,6CAAqC;AACrC,yCAAkC;AAElC;;;;;;;;;GASG;AACI,KAAK,UAAU,SAAS,CAC3B,MAAuB,EACvB,MAmBC;IAED,IAAI,CAAC,MAAM;QAAE,MAAM,GAAG,EAAE,CAAA;IAExB,IAAI,MAAM,CAAC,MAAM,EAAE;
|
|
1
|
+
{"version":3,"file":"start-test.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/auth/start-test.ts"],"names":[],"mappings":";;;AAAA,wDAA0D;AAG1D,6CAAqC;AACrC,yCAAkC;AAElC;;;;;;;;;GASG;AACI,KAAK,UAAU,SAAS,CAC3B,MAAuB,EACvB,MAmBC;IAED,IAAI,CAAC,MAAM;QAAE,MAAM,GAAG,EAAE,CAAA;IAExB,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;QAChB,IAAI,CAAC;YACD,MAAM,IAAA,mBAAM,EAAC,MAAM,CAAC,CAAA;QACxB,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC,CAAA,CAAC;IAClB,CAAC;IAED,MAAM,YAAY,GAAG,MAAM,MAAM;SAC5B,IAAI,CAAC;QACF,CAAC,EAAE,gBAAgB;KACtB,CAAC;SACD,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;IAEjC,IAAI,KAAK,GAAG,MAAM,CAAC,KAAK,CAAA;IAExB,IAAI,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE,CAAC;YAC9B,MAAM,IAAI,2BAAe,CAAC,GAAG,KAAK,kCAAkC,CAAC,CAAA;QACzE,CAAC;QACD,MAAM,EAAE,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;QAE7B,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;YAC3C,MAAM,IAAI,2BAAe,CAAC,GAAG,KAAK,uBAAuB,EAAE,GAAG,CAAC,CAAA;QACnE,CAAC;IACL,CAAC;SAAM,CAAC;QACJ,IAAI,IAAI,GAAG,MAAM,MAAM,CAAC,cAAc,EAAE,CAAA;QAExC,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;YACd,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;gBACpD,MAAM,IAAI,2BAAe,CAAC,qBAAqB,IAAI,GAAG,CAAC,CAAA;YAC3D,CAAC;YACD,IAAI,GAAG,MAAM,CAAC,IAAI,CAAA;QACtB,CAAC;QAED,IAAI,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAA;QACzD,OAAO,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,IAAI,GAAG,CAAA;QAE3C,KAAK,GAAG,QAAQ,IAAI,GAAG,OAAO,EAAE,CAAA;IACpC,CAAC;IAED,IAAI,IAAI,GAAG,EAAE,CAAA;IAEb,OAAO,IAAA,gBAAK,EAAC,MAAM,EAAE;QACjB,KAAK;QACL,IAAI,EAAE,GAAG,EAAE,CAAC,IAAI;QAChB,gBAAgB,EAAE,CAAC,IAAI,EAAE,EAAE;YACvB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBACnC,IAAI,IAAI,KAAK,CAAC,CAAC,CAAC,CAAA;YACpB,CAAC;QACL,CAAC;KACJ,CAAC,CAAA;AACN,CAAC;AA3ED,8BA2EC","sourcesContent":["import { MtArgumentError } from '../../../types/errors.js'\nimport { ITelegramClient } from '../../client.types.js'\nimport { User } from '../../types/index.js'\nimport { logOut } from './log-out.js'\nimport { start } from './start.js'\n\n/**\n * Utility function to quickly authorize on test DC\n * using a [Test phone number](https://core.telegram.org/api/auth#test-phone-numbers),\n * which is randomly generated by default.\n *\n * > **Note**: Using this method assumes that you\n * > are using a test DC in `primaryDc` parameter.\n *\n * @param params Additional parameters\n */\nexport async function startTest(\n client: ITelegramClient,\n params?: {\n /**\n * Whether to log out if current session is logged in.\n *\n * @default false.\n */\n logout?: boolean\n\n /**\n * Override phone number. Must be a valid Test phone number.\n *\n * By default is randomly generated.\n */\n phone?: string\n\n /**\n * Override user's DC. Must be a valid test DC.\n */\n dcId?: number\n },\n): Promise<User> {\n if (!params) params = {}\n\n if (params.logout) {\n try {\n await logOut(client)\n } catch (e) {}\n }\n\n const availableDcs = await client\n .call({\n _: 'help.getConfig',\n })\n .then((res) => res.dcOptions)\n\n let phone = params.phone\n\n if (phone) {\n if (!phone.match(/^99966\\d{5}/)) {\n throw new MtArgumentError(`${phone} is an invalid test phone number`)\n }\n const id = parseInt(phone[5])\n\n if (!availableDcs.find((dc) => dc.id === id)) {\n throw new MtArgumentError(`${phone} has invalid DC ID (${id})`)\n }\n } else {\n let dcId = await client.getPrimaryDcId()\n\n if (params.dcId) {\n if (!availableDcs.find((dc) => dc.id === params.dcId)) {\n throw new MtArgumentError(`DC ID is invalid (${dcId})`)\n }\n dcId = params.dcId\n }\n\n let numbers = Math.floor(Math.random() * 9999).toString()\n while (numbers.length !== 4) numbers += '0'\n\n phone = `99966${dcId}${numbers}`\n }\n\n let code = ''\n\n return start(client, {\n phone,\n code: () => code,\n codeSentCallback: (sent) => {\n for (let i = 0; i < sent.length; i++) {\n code += phone[5]\n }\n },\n })\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"start.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/auth/start.ts"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable no-console */\nimport { tl } from '@mtcute/tl'\n\nimport { MtArgumentError } from '../../../types/errors.js'\nimport { MaybePromise } from '../../../types/utils.js'\nimport { ITelegramClient } from '../../client.types.js'\nimport { SentCode } from '../../types/auth/sent-code.js'\nimport { User } from '../../types/peers/user.js'\nimport { MaybeDynamic } from '../../types/utils.js'\nimport { normalizePhoneNumber, resolveMaybeDynamic } from '../../utils/misc-utils.js'\nimport { StringSessionData } from '../../utils/string-session.js'\nimport { getMe } from '../users/get-me.js'\nimport { checkPassword } from './check-password.js'\nimport { resendCode } from './resend-code.js'\nimport { sendCode } from './send-code.js'\nimport { signIn } from './sign-in.js'\nimport { signInBot } from './sign-in-bot.js'\n\n// @available=both\n/**\n * Start the client in an interactive and declarative manner,\n * by providing callbacks for authorization details.\n *\n * This method handles both login and sign up, and also handles 2FV\n *\n * All parameters are `MaybeDynamic<T>`, meaning you\n * can either supply `T`, or a function that returns `MaybePromise<T>`\n *\n * This method is intended for simple and fast use in automated\n * scripts and bots. If you are developing a custom client,\n * you'll probably need to use other auth methods.\n */\nexport async function start(\n client: ITelegramClient,\n params: {\n /**\n * String session exported using {@link TelegramClient.exportSession}.\n *\n * This simply calls {@link TelegramClient.importSession} before anything else.\n *\n * Note that passed session will be ignored in case storage already\n * contains authorization.\n */\n session?: string | StringSessionData\n\n /**\n * Whether to overwrite existing session.\n */\n sessionForce?: boolean\n\n /**\n * Phone number of the account.\n * If account does not exist, it will be created\n */\n phone?: MaybeDynamic<string>\n\n /**\n * Bot token to use. Ignored if `phone` is supplied.\n */\n botToken?: MaybeDynamic<string>\n\n /**\n * 2FA password. Ignored if `botToken` is supplied\n */\n password?: MaybeDynamic<string>\n\n /**\n * Code sent to the phone (either sms, call, flash call or other).\n * Ignored if `botToken` is supplied, must be present if `phone` is supplied.\n */\n code?: MaybeDynamic<string>\n\n /**\n * If passed, this function will be called if provided code or 2FA password\n * was invalid. New code/password will be requested later.\n *\n * If provided `code`/`password` is a constant string, providing an\n * invalid one will interrupt authorization flow.\n */\n invalidCodeCallback?: (type: 'code' | 'password') => MaybePromise<void>\n\n /**\n * Whether to force code delivery through SMS\n */\n forceSms?: boolean\n\n /**\n * Custom method that is called when a code is sent. Can be used\n * to show a GUI alert of some kind.\n *\n * This method is called *before* {@link start.params.code}.\n *\n * @param code\n * @default `console.log`.\n */\n codeSentCallback?: (code: SentCode) => MaybePromise<void>\n },\n): Promise<User> {\n if (params.session) {\n await client.importSession(params.session, params.sessionForce)\n }\n\n try {\n const me = await getMe(client)\n\n // user is already authorized\n\n client.log.info('Logged in as %s (ID: %s, username: %s, bot: %s)', me.displayName, me.id, me.username, me.isBot)\n\n await client.notifyLoggedIn(me.raw)\n\n return me\n } catch (e) {\n if (!tl.RpcError.is(e, 'AUTH_KEY_UNREGISTERED')) throw e\n }\n\n if (!params.phone && !params.botToken) {\n throw new MtArgumentError('Neither phone nor bot token were provided')\n }\n\n let phone = params.phone ? await resolveMaybeDynamic(params.phone) : null\n\n if (phone) {\n phone = normalizePhoneNumber(phone)\n\n if (!params.code) {\n throw new MtArgumentError('You must pass `code` to use `phone`')\n }\n } else {\n const botToken = params.botToken ? await resolveMaybeDynamic(params.botToken) : null\n\n if (!botToken) {\n throw new MtArgumentError('Either bot token or phone number must be provided')\n }\n\n return await signInBot(client, botToken)\n }\n\n let sentCode = await sendCode(client, { phone })\n\n if (params.forceSms && sentCode.type === 'app') {\n sentCode = await resendCode(client, { phone, phoneCodeHash: sentCode.phoneCodeHash })\n }\n\n if (params.codeSentCallback) {\n await params.codeSentCallback(sentCode)\n } else {\n console.log(`The confirmation code has been sent via ${sentCode.type}.`)\n }\n\n let has2fa = false\n\n for (;;) {\n const code = await resolveMaybeDynamic(params.code)\n if (!code) throw new tl.RpcError(400, 'PHONE_CODE_EMPTY')\n\n try {\n return await signIn(client, { phone, phoneCodeHash: sentCode.phoneCodeHash, phoneCode: code })\n } catch (e) {\n if (!tl.RpcError.is(e)) throw e\n\n if (e.is('SESSION_PASSWORD_NEEDED')) {\n has2fa = true\n break\n } else if (\n e.is('PHONE_CODE_EMPTY') ||\n e.is('PHONE_CODE_EXPIRED') ||\n e.is('PHONE_CODE_INVALID') ||\n e.is('PHONE_CODE_HASH_EMPTY')\n ) {\n if (typeof params.code !== 'function') {\n throw new MtArgumentError('Provided code was invalid')\n }\n\n if (params.invalidCodeCallback) {\n await params.invalidCodeCallback('code')\n } else {\n console.log('Invalid code. Please try again')\n }\n\n continue\n } else throw e\n }\n\n // if there was no error, code was valid, so it's either 2fa or signup\n break\n }\n\n if (has2fa) {\n if (!params.password) {\n throw new MtArgumentError('2FA is enabled, but `password` was not provided.')\n }\n\n for (;;) {\n const password = await resolveMaybeDynamic(params.password)\n\n try {\n return await checkPassword(client, password)\n } catch (e) {\n if (typeof params.password !== 'function') {\n throw new MtArgumentError('Provided password was invalid')\n }\n\n if (tl.RpcError.is(e, 'PASSWORD_HASH_INVALID')) {\n if (params.invalidCodeCallback) {\n await params.invalidCodeCallback('password')\n } else {\n console.log('Invalid password. Please try again')\n }\n continue\n } else throw e\n }\n }\n }\n\n throw new MtArgumentError('Failed to log in with provided credentials')\n}\n"]}
|
|
1
|
+
{"version":3,"file":"start.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/auth/start.ts"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable no-console */\nimport { tl } from '@mtcute/tl'\n\nimport { MtArgumentError } from '../../../types/errors.js'\nimport { MaybePromise } from '../../../types/utils.js'\nimport { ITelegramClient } from '../../client.types.js'\nimport { SentCode } from '../../types/auth/sent-code.js'\nimport { User } from '../../types/peers/user.js'\nimport { MaybeDynamic } from '../../types/utils.js'\nimport { normalizePhoneNumber, resolveMaybeDynamic } from '../../utils/misc-utils.js'\nimport { StringSessionData } from '../../utils/string-session.js'\nimport { getMe } from '../users/get-me.js'\nimport { checkPassword } from './check-password.js'\nimport { resendCode } from './resend-code.js'\nimport { sendCode } from './send-code.js'\nimport { signIn } from './sign-in.js'\nimport { signInBot } from './sign-in-bot.js'\n\n// @available=both\n/**\n * Start the client in an interactive and declarative manner,\n * by providing callbacks for authorization details.\n *\n * This method handles both login and sign up, and also handles 2FV\n *\n * All parameters are `MaybeDynamic<T>`, meaning you\n * can either supply `T`, or a function that returns `MaybePromise<T>`\n *\n * This method is intended for simple and fast use in automated\n * scripts and bots. If you are developing a custom client,\n * you'll probably need to use other auth methods.\n */\nexport async function start(\n client: ITelegramClient,\n params: {\n /**\n * String session exported using {@link TelegramClient.exportSession}.\n *\n * This simply calls {@link TelegramClient.importSession} before anything else.\n *\n * Note that passed session will be ignored in case storage already\n * contains authorization.\n */\n session?: string | StringSessionData\n\n /**\n * Whether to overwrite existing session.\n */\n sessionForce?: boolean\n\n /**\n * Phone number of the account.\n * If account does not exist, it will be created\n */\n phone?: MaybeDynamic<string>\n\n /**\n * Bot token to use. Ignored if `phone` is supplied.\n */\n botToken?: MaybeDynamic<string>\n\n /**\n * 2FA password. Ignored if `botToken` is supplied\n */\n password?: MaybeDynamic<string>\n\n /**\n * Code sent to the phone (either sms, call, flash call or other).\n * Ignored if `botToken` is supplied, must be present if `phone` is supplied.\n */\n code?: MaybeDynamic<string>\n\n /**\n * If passed, this function will be called if provided code or 2FA password\n * was invalid. New code/password will be requested later.\n *\n * If provided `code`/`password` is a constant string, providing an\n * invalid one will interrupt authorization flow.\n */\n invalidCodeCallback?: (type: 'code' | 'password') => MaybePromise<void>\n\n /**\n * Whether to force code delivery through SMS\n */\n forceSms?: boolean\n\n /**\n * Custom method that is called when a code is sent. Can be used\n * to show a GUI alert of some kind.\n *\n * This method is called *before* {@link start.params.code}.\n *\n * @param code\n * @default `console.log`.\n */\n codeSentCallback?: (code: SentCode) => MaybePromise<void>\n },\n): Promise<User> {\n if (params.session) {\n await client.importSession(params.session, params.sessionForce)\n }\n\n try {\n const me = await getMe(client)\n\n // user is already authorized\n\n client.log.info('Logged in as %s (ID: %s, username: %s, bot: %s)', me.displayName, me.id, me.username, me.isBot)\n\n await client.notifyLoggedIn(me.raw)\n\n return me\n } catch (e) {\n if (!tl.RpcError.is(e, 'AUTH_KEY_UNREGISTERED')) throw e\n }\n\n if (!params.phone && !params.botToken) {\n throw new MtArgumentError('Neither phone nor bot token were provided')\n }\n\n let phone = params.phone ? await resolveMaybeDynamic(params.phone) : null\n\n if (phone) {\n phone = normalizePhoneNumber(phone)\n\n if (!params.code) {\n throw new MtArgumentError('You must pass `code` to use `phone`')\n }\n } else {\n const botToken = params.botToken ? await resolveMaybeDynamic(params.botToken) : null\n\n if (!botToken) {\n throw new MtArgumentError('Either bot token or phone number must be provided')\n }\n\n return await signInBot(client, botToken)\n }\n\n let sentCode = await sendCode(client, { phone })\n\n if (params.forceSms && sentCode.type === 'app') {\n sentCode = await resendCode(client, { phone, phoneCodeHash: sentCode.phoneCodeHash })\n }\n\n if (params.codeSentCallback) {\n await params.codeSentCallback(sentCode)\n } else {\n console.log(`The confirmation code has been sent via ${sentCode.type}.`)\n }\n\n let has2fa = false\n\n for (;;) {\n const code = await resolveMaybeDynamic(params.code)\n if (!code) throw new tl.RpcError(400, 'PHONE_CODE_EMPTY')\n\n try {\n return await signIn(client, { phone, phoneCodeHash: sentCode.phoneCodeHash, phoneCode: code })\n } catch (e) {\n if (!tl.RpcError.is(e)) throw e\n\n if (e.is('SESSION_PASSWORD_NEEDED')) {\n has2fa = true\n break\n } else if (\n e.is('PHONE_CODE_EMPTY') ||\n e.is('PHONE_CODE_EXPIRED') ||\n e.is('PHONE_CODE_INVALID') ||\n e.is('PHONE_CODE_HASH_EMPTY')\n ) {\n if (typeof params.code !== 'function') {\n throw new MtArgumentError('Provided code was invalid')\n }\n\n if (params.invalidCodeCallback) {\n await params.invalidCodeCallback('code')\n } else {\n console.log('Invalid code. Please try again')\n }\n\n continue\n } else throw e\n }\n\n // if there was no error, code was valid, so it's either 2fa or signup\n break\n }\n\n if (has2fa) {\n if (!params.password) {\n throw new MtArgumentError('2FA is enabled, but `password` was not provided.')\n }\n\n for (;;) {\n const password = await resolveMaybeDynamic(params.password)\n\n try {\n return await checkPassword(client, password)\n } catch (e) {\n if (typeof params.password !== 'function') {\n throw new MtArgumentError('Provided password was invalid')\n }\n\n if (tl.RpcError.is(e, 'PASSWORD_HASH_INVALID')) {\n if (params.invalidCodeCallback) {\n await params.invalidCodeCallback('password')\n } else {\n console.log('Invalid password. Please try again')\n }\n continue\n } else throw e\n }\n }\n }\n\n throw new MtArgumentError('Failed to log in with provided credentials')\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/auth/utils.ts"],"names":[],"mappings":";;;AAGA,uDAAgD;AAEhD,gBAAgB;AACT,KAAK,UAAU,gBAAgB,CAClC,MAAuB,EACvB,IAA+B;IAE/B,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,CAAA;IAE9C,OAAO,IAAI,cAAI,CAAC,IAAI,CAAC,CAAA;AACzB,CAAC;AAPD,4CAOC;AAED;;GAEG;AACH,SAAgB,UAAU,CACtB,MAAuB,EACvB,IAAuD;IAEvD,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,CAAA;IAC7C,IAAI,CAAC,KAAK;QAAE,OAAO,KAAK,CAAA;IAExB,QAAQ,IAAI,CAAC,CAAC,EAAE;
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/auth/utils.ts"],"names":[],"mappings":";;;AAGA,uDAAgD;AAEhD,gBAAgB;AACT,KAAK,UAAU,gBAAgB,CAClC,MAAuB,EACvB,IAA+B;IAE/B,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,CAAA;IAE9C,OAAO,IAAI,cAAI,CAAC,IAAI,CAAC,CAAA;AACzB,CAAC;AAPD,4CAOC;AAED;;GAEG;AACH,SAAgB,UAAU,CACtB,MAAuB,EACvB,IAAuD;IAEvD,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,CAAA;IAC7C,IAAI,CAAC,KAAK;QAAE,OAAO,KAAK,CAAA;IAExB,QAAQ,IAAI,CAAC,CAAC,EAAE,CAAC;QACb,KAAK,eAAe,CAAC;QACrB,KAAK,eAAe;YAChB,OAAO,IAAI,CAAA;QACf,KAAK,eAAe,CAAC;QACrB,KAAK,0BAA0B,CAAC;QAChC,KAAK,WAAW,CAAC;QACjB,KAAK,sBAAsB,CAAC;QAC5B,KAAK,UAAU;YACX,OAAO,IAAI,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM,CAAA;QACvC;YACI,OAAO,KAAK,CAAA;IACpB,CAAC;AACL,CAAC;AApBD,gCAoBC","sourcesContent":["import { tl } from '@mtcute/tl'\n\nimport { ITelegramClient } from '../../client.types.js'\nimport { User } from '../../types/peers/user.js'\n\n/** @internal */\nexport async function _onAuthorization(\n client: ITelegramClient,\n auth: tl.auth.TypeAuthorization,\n): Promise<User> {\n const user = await client.notifyLoggedIn(auth)\n\n return new User(user)\n}\n\n/**\n * Check if the given peer/input peer is referring to the current user\n */\nexport function isSelfPeer(\n client: ITelegramClient,\n peer: tl.TypeInputPeer | tl.TypePeer | tl.TypeInputUser,\n): boolean {\n const state = client.storage.self.getCached()\n if (!state) return false\n\n switch (peer._) {\n case 'inputPeerSelf':\n case 'inputUserSelf':\n return true\n case 'inputPeerUser':\n case 'inputPeerUserFromMessage':\n case 'inputUser':\n case 'inputUserFromMessage':\n case 'peerUser':\n return peer.userId === state.userId\n default:\n return false\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-callback-answer.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/bots/get-callback-answer.ts"],"names":[],"mappings":";;;AAEA,sDAAkD;AAElD,mDAA8E;AAC9E,8DAAsD;AAEtD;;;;;GAKG;AACI,KAAK,UAAU,iBAAiB,CACnC,MAAuB,EACvB,MAuBC;IAED,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,IAAA,kCAAuB,EAAC,MAAM,CAAC,CAAA;IAC3D,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,GAAG,KAAK,EAAE,GAAG,MAAM,CAAA;IAE9C,IAAI,QAAQ,GAA6C,SAAS,CAAA;IAElE,IAAI,MAAM,EAAE,QAAQ,EAAE;
|
|
1
|
+
{"version":3,"file":"get-callback-answer.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/bots/get-callback-answer.ts"],"names":[],"mappings":";;;AAEA,sDAAkD;AAElD,mDAA8E;AAC9E,8DAAsD;AAEtD;;;;;GAKG;AACI,KAAK,UAAU,iBAAiB,CACnC,MAAuB,EACvB,MAuBC;IAED,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,IAAA,kCAAuB,EAAC,MAAM,CAAC,CAAA;IAC3D,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,GAAG,KAAK,EAAE,GAAG,MAAM,CAAA;IAE9C,IAAI,QAAQ,GAA6C,SAAS,CAAA;IAElE,IAAI,MAAM,EAAE,QAAQ,EAAE,CAAC;QACnB,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,qBAAqB,EAAE,CAAC,CAAA;QAC3D,QAAQ,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,GAAG,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAA;IAClE,CAAC;IAED,OAAO,MAAM,MAAM,CAAC,IAAI,CACpB;QACI,CAAC,EAAE,+BAA+B;QAClC,IAAI,EAAE,MAAM,IAAA,6BAAW,EAAC,MAAM,EAAE,MAAM,CAAC;QACvC,KAAK,EAAE,OAAO;QACd,IAAI,EAAE,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAA,yBAAW,GAAE,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI;QACtE,QAAQ;QACR,IAAI,EAAE,IAAI;KACb,EACD,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,CAC9B,CAAA;AACL,CAAC;AAhDD,8CAgDC","sourcesContent":["import { tl } from '@mtcute/tl'\n\nimport { getPlatform } from '../../../platform.js'\nimport { ITelegramClient } from '../../client.types.js'\nimport { InputMessageId, normalizeInputMessageId } from '../../types/index.js'\nimport { resolvePeer } from '../users/resolve-peer.js'\n\n/**\n * Request a callback answer from a bot,\n * i.e. click an inline button that contains data.\n *\n * @param params\n */\nexport async function getCallbackAnswer(\n client: ITelegramClient,\n params: InputMessageId & {\n /** Data contained in the button */\n data: string | Uint8Array\n\n /**\n * Timeout for the query in ms.\n *\n * @default `10000` (10 sec)\n */\n timeout?: number\n\n /**\n * Whether this is a \"play game\" button\n */\n game?: boolean\n\n /**\n * If the button requires password entry, your 2FA password.\n *\n * Your password is never exposed to the bot,\n * it is checked by Telegram.\n */\n password?: string\n },\n): Promise<tl.messages.TypeBotCallbackAnswer> {\n const { chatId, message } = normalizeInputMessageId(params)\n const { data, game, timeout = 10000 } = params\n\n let password: tl.TypeInputCheckPasswordSRP | undefined = undefined\n\n if (params?.password) {\n const pwd = await client.call({ _: 'account.getPassword' })\n password = await client.computeSrpParams(pwd, params.password)\n }\n\n return await client.call(\n {\n _: 'messages.getBotCallbackAnswer',\n peer: await resolvePeer(client, chatId),\n msgId: message,\n data: typeof data === 'string' ? getPlatform().utf8Encode(data) : data,\n password,\n game: game,\n },\n { timeout, throw503: true },\n )\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-game-high-scores.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/bots/get-game-high-scores.ts"],"names":[],"mappings":";;;AAGA,mDAAwH;AACxH,iEAA+D;AAC/D,8DAAmE;AAEnE;;GAEG;AACI,KAAK,UAAU,iBAAiB,CACnC,MAAuB,EACvB,MAGC;IAED,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,CAAA;IACzB,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,IAAA,kCAAuB,EAAC,MAAM,CAAC,CAAA;IAE3D,MAAM,IAAI,GAAG,MAAM,IAAA,6BAAW,EAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAE9C,IAAI,IAAsB,CAAA;IAE1B,IAAI,MAAM,EAAE;
|
|
1
|
+
{"version":3,"file":"get-game-high-scores.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/bots/get-game-high-scores.ts"],"names":[],"mappings":";;;AAGA,mDAAwH;AACxH,iEAA+D;AAC/D,8DAAmE;AAEnE;;GAEG;AACI,KAAK,UAAU,iBAAiB,CACnC,MAAuB,EACvB,MAGC;IAED,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,CAAA;IACzB,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,IAAA,kCAAuB,EAAC,MAAM,CAAC,CAAA;IAE3D,MAAM,IAAI,GAAG,MAAM,IAAA,6BAAW,EAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAE9C,IAAI,IAAsB,CAAA;IAE1B,IAAI,MAAM,EAAE,CAAC;QACT,IAAI,GAAG,MAAM,IAAA,6BAAW,EAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC5C,CAAC;SAAM,CAAC;QACJ,IAAI,GAAG,EAAE,CAAC,EAAE,gBAAgB,EAAE,CAAA;IAClC,CAAC;IAED,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC;QAC1B,CAAC,EAAE,4BAA4B;QAC/B,IAAI,EAAE,IAAI;QACV,EAAE,EAAE,OAAO;QACX,MAAM,EAAE,IAAI;KACf,CAAC,CAAA;IAEF,MAAM,KAAK,GAAG,qBAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAElC,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,wBAAa,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAA;AACrE,CAAC;AA9BD,8CA8BC;AAED;;;;;GAKG;AACI,KAAK,UAAU,uBAAuB,CACzC,MAAuB,EACvB,SAAkD,EAClD,MAAsB;IAEtB,MAAM,EAAE,GAAG,IAAA,mCAAiB,EAAC,SAAS,CAAC,CAAA;IAEvC,IAAI,IAAsB,CAAA;IAE1B,IAAI,MAAM,EAAE,CAAC;QACT,IAAI,GAAG,MAAM,IAAA,6BAAW,EAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC5C,CAAC;SAAM,CAAC;QACJ,IAAI,GAAG,EAAE,CAAC,EAAE,gBAAgB,EAAE,CAAA;IAClC,CAAC;IAED,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,IAAI,CACzB;QACI,CAAC,EAAE,kCAAkC;QACrC,EAAE;QACF,MAAM,EAAE,IAAI;KACf,EACD,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,CACpB,CAAA;IAED,MAAM,KAAK,GAAG,qBAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAElC,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,wBAAa,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAA;AACrE,CAAC;AA3BD,0DA2BC","sourcesContent":["import { tl } from '@mtcute/tl'\n\nimport { ITelegramClient } from '../../client.types.js'\nimport { GameHighScore, InputMessageId, InputPeerLike, normalizeInputMessageId, PeersIndex } from '../../types/index.js'\nimport { normalizeInlineId } from '../../utils/inline-utils.js'\nimport { resolvePeer, resolveUser } from '../users/resolve-peer.js'\n\n/**\n * Get high scores of a game\n */\nexport async function getGameHighScores(\n client: ITelegramClient,\n params: InputMessageId & {\n /** ID of the user to find high scores for */\n userId?: InputPeerLike\n },\n): Promise<GameHighScore[]> {\n const { userId } = params\n const { chatId, message } = normalizeInputMessageId(params)\n\n const chat = await resolvePeer(client, chatId)\n\n let user: tl.TypeInputUser\n\n if (userId) {\n user = await resolveUser(client, userId)\n } else {\n user = { _: 'inputUserEmpty' }\n }\n\n const res = await client.call({\n _: 'messages.getGameHighScores',\n peer: chat,\n id: message,\n userId: user,\n })\n\n const peers = PeersIndex.from(res)\n\n return res.scores.map((score) => new GameHighScore(score, peers))\n}\n\n/**\n * Get high scores of a game from an inline message\n *\n * @param messageId ID of the inline message containing the game\n * @param userId ID of the user to find high scores for\n */\nexport async function getInlineGameHighScores(\n client: ITelegramClient,\n messageId: string | tl.TypeInputBotInlineMessageID,\n userId?: InputPeerLike,\n): Promise<GameHighScore[]> {\n const id = normalizeInlineId(messageId)\n\n let user: tl.TypeInputUser\n\n if (userId) {\n user = await resolveUser(client, userId)\n } else {\n user = { _: 'inputUserEmpty' }\n }\n\n const res = await client.call(\n {\n _: 'messages.getInlineGameHighScores',\n id,\n userId: user,\n },\n { dcId: id.dcId },\n )\n\n const peers = PeersIndex.from(res)\n\n return res.scores.map((score) => new GameHighScore(score, peers))\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"normalize-command-scope.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/bots/normalize-command-scope.ts"],"names":[],"mappings":";;;AAAA,mCAA+B;AAE/B,sDAAqD;AAGrD,8DAAmE;AAEnE,gBAAgB;AACT,KAAK,UAAU,sBAAsB,CACxC,MAAuB,EACvB,KAA6D;IAE7D,IAAI,OAAE,CAAC,oBAAoB,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAA;IAEhD,QAAQ,KAAK,CAAC,IAAI,EAAE;
|
|
1
|
+
{"version":3,"file":"normalize-command-scope.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/bots/normalize-command-scope.ts"],"names":[],"mappings":";;;AAAA,mCAA+B;AAE/B,sDAAqD;AAGrD,8DAAmE;AAEnE,gBAAgB;AACT,KAAK,UAAU,sBAAsB,CACxC,MAAuB,EACvB,KAA6D;IAE7D,IAAI,OAAE,CAAC,oBAAoB,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAA;IAEhD,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;QACjB,KAAK,MAAM,CAAC;QACZ,KAAK,aAAa,CAAC,CAAC,CAAC;YACjB,MAAM,IAAI,GAAG,MAAM,IAAA,6BAAW,EAAC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,CAAA;YAElD,OAAO;gBACH,CAAC,EAAE,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,2BAA2B;gBAC9E,IAAI;aACP,CAAA;QACL,CAAC;QACD,KAAK,QAAQ,CAAC,CAAC,CAAC;YACZ,MAAM,IAAI,GAAG,MAAM,IAAA,6BAAW,EAAC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,CAAA;YAClD,MAAM,IAAI,GAAG,MAAM,IAAA,6BAAW,EAAC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,CAAA;YAElD,OAAO;gBACH,CAAC,EAAE,yBAAyB;gBAC5B,IAAI,EAAE,IAAI;gBACV,MAAM,EAAE,IAAI;aACf,CAAA;QACL,CAAC;QACD;YACI,IAAA,sBAAW,EAAC,KAAK,CAAC,CAAA;IAC1B,CAAC;AACL,CAAC;AA7BD,wDA6BC","sourcesContent":["import { tl } from '@mtcute/tl'\n\nimport { assertNever } from '../../../types/utils.js'\nimport { ITelegramClient } from '../../client.types.js'\nimport { BotCommands } from '../../types/index.js'\nimport { resolvePeer, resolveUser } from '../users/resolve-peer.js'\n\n/** @internal */\nexport async function _normalizeCommandScope(\n client: ITelegramClient,\n scope: tl.TypeBotCommandScope | BotCommands.IntermediateScope,\n): Promise<tl.TypeBotCommandScope> {\n if (tl.isAnyBotCommandScope(scope)) return scope\n\n switch (scope.type) {\n case 'peer':\n case 'peer_admins': {\n const peer = await resolvePeer(client, scope.peer)\n\n return {\n _: scope.type === 'peer' ? 'botCommandScopePeer' : 'botCommandScopePeerAdmins',\n peer,\n }\n }\n case 'member': {\n const user = await resolveUser(client, scope.user)\n const chat = await resolvePeer(client, scope.chat)\n\n return {\n _: 'botCommandScopePeerUser',\n peer: chat,\n userId: user,\n }\n }\n default:\n assertNever(scope)\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"set-my-commands.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/bots/set-my-commands.ts"],"names":[],"mappings":";;;AAEA,0EAA8D;AAG9D,6EAAqE;AAErE;;;;GAIG;AACI,KAAK,UAAU,aAAa,CAC/B,MAAuB,EACvB,MAmBC;IAED,MAAM,KAAK,GAA2B,MAAM,CAAC,KAAK,CAAC,CAAC;QAChD,MAAM,IAAA,mDAAsB,EAAC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QACpD;YACI,CAAC,EAAE,wBAAwB;SAC9B,CAAA;IAEL,IAAI,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE;
|
|
1
|
+
{"version":3,"file":"set-my-commands.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/bots/set-my-commands.ts"],"names":[],"mappings":";;;AAEA,0EAA8D;AAG9D,6EAAqE;AAErE;;;;GAIG;AACI,KAAK,UAAU,aAAa,CAC/B,MAAuB,EACvB,MAmBC;IAED,MAAM,KAAK,GAA2B,MAAM,CAAC,KAAK,CAAC,CAAC;QAChD,MAAM,IAAA,mDAAsB,EAAC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QACpD;YACI,CAAC,EAAE,wBAAwB;SAC9B,CAAA;IAEL,IAAI,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC;QAC1B,MAAM,CAAC,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC;YACxB,CAAC,EAAE,qBAAqB;YACxB,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,KAAK;YACL,QAAQ,EAAE,MAAM,CAAC,QAAQ,IAAI,EAAE;SAClC,CAAC,CAAA;QAEF,IAAA,+BAAU,EAAC,qBAAqB,EAAE,CAAC,CAAC,CAAA;IACxC,CAAC;SAAM,CAAC;QACJ,MAAM,CAAC,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC;YACxB,CAAC,EAAE,uBAAuB;YAC1B,KAAK;YACL,QAAQ,EAAE,MAAM,CAAC,QAAQ,IAAI,EAAE;SAClC,CAAC,CAAA;QAEF,IAAA,+BAAU,EAAC,uBAAuB,EAAE,CAAC,CAAC,CAAA;IAC1C,CAAC;AACL,CAAC;AA/CD,sCA+CC","sourcesContent":["import { tl } from '@mtcute/tl'\n\nimport { assertTrue } from '../../../utils/type-assertions.js'\nimport { ITelegramClient } from '../../client.types.js'\nimport { BotCommands } from '../../types/index.js'\nimport { _normalizeCommandScope } from './normalize-command-scope.js'\n\n/**\n * Set or delete commands for the current bot and the given scope\n *\n * Learn more about scopes in the [Bot API docs](https://core.telegram.org/bots/api#botcommandscope)\n */\nexport async function setMyCommands(\n client: ITelegramClient,\n params: {\n /**\n * New list of bot commands for the given scope.\n *\n * Pass empty array or `null` to delete them.\n */\n commands: tl.RawBotCommand[] | null\n\n /**\n * Scope of the commands.\n *\n * @default `BotScope.default_` (i.e. `botCommandScopeDefault`)\n */\n scope?: tl.TypeBotCommandScope | BotCommands.IntermediateScope\n\n /**\n * User language applied to the scope.\n */\n langCode?: string\n },\n): Promise<void> {\n const scope: tl.TypeBotCommandScope = params.scope ?\n await _normalizeCommandScope(client, params.scope) :\n {\n _: 'botCommandScopeDefault',\n }\n\n if (params.commands?.length) {\n const r = await client.call({\n _: 'bots.setBotCommands',\n commands: params.commands,\n scope,\n langCode: params.langCode ?? '',\n })\n\n assertTrue('bots.setBotCommands', r)\n } else {\n const r = await client.call({\n _: 'bots.resetBotCommands',\n scope,\n langCode: params.langCode ?? '',\n })\n\n assertTrue('bots.resetBotCommands', r)\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"add-chat-members.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/chats/add-chat-members.ts"],"names":[],"mappings":";;;AAIA,mDAA4E;AAC5E,6DAA4G;AAC5G,8DAAmE;AACnE,wEAA+D;AAE/D;;;;;;GAMG;AACI,KAAK,UAAU,cAAc,CAChC,MAAuB,EACvB,MAAqB,EACrB,KAAgC,EAChC,MAQC;IAED,MAAM,EAAE,YAAY,GAAG,GAAG,EAAE,GAAG,MAAM,CAAA;IAErC,MAAM,IAAI,GAAG,MAAM,IAAA,6BAAW,EAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAE9C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,KAAK,GAAG,CAAC,KAAK,CAAC,CAAA;IAE1C,IAAI,IAAA,+BAAe,EAAC,IAAI,CAAC,EAAE;
|
|
1
|
+
{"version":3,"file":"add-chat-members.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/chats/add-chat-members.ts"],"names":[],"mappings":";;;AAIA,mDAA4E;AAC5E,6DAA4G;AAC5G,8DAAmE;AACnE,wEAA+D;AAE/D;;;;;;GAMG;AACI,KAAK,UAAU,cAAc,CAChC,MAAuB,EACvB,MAAqB,EACrB,KAAgC,EAChC,MAQC;IAED,MAAM,EAAE,YAAY,GAAG,GAAG,EAAE,GAAG,MAAM,CAAA;IAErC,MAAM,IAAI,GAAG,MAAM,IAAA,6BAAW,EAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAE9C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,KAAK,GAAG,CAAC,KAAK,CAAC,CAAA;IAE1C,IAAI,IAAA,+BAAe,EAAC,IAAI,CAAC,EAAE,CAAC;QACxB,MAAM,OAAO,GAA2B,EAAE,CAAA;QAE1C,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACvB,MAAM,CAAC,GAAG,MAAM,IAAA,6BAAW,EAAC,MAAM,EAAE,IAAI,CAAC,CAAA;YAEzC,MAAM,EAAE,OAAO,EAAE,eAAe,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC;gBACnD,CAAC,EAAE,sBAAsB;gBACzB,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,MAAM,EAAE,CAAC;gBACT,QAAQ,EAAE,YAAY;aACzB,CAAC,CAAA;YACF,MAAM,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAA;YAClC,OAAO,CAAC,IAAI,CAAC,GAAG,eAAe,CAAC,CAAA;QACpC,CAAC;QAED,OAAO,OAAO,CAAA;IAClB,CAAC;SAAM,IAAI,IAAA,kCAAkB,EAAC,IAAI,CAAC,EAAE,CAAC;QAClC,MAAM,EAAE,OAAO,EAAE,eAAe,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC;YACnD,CAAC,EAAE,0BAA0B;YAC7B,OAAO,EAAE,IAAA,8BAAc,EAAC,IAAI,CAAC;YAC7B,KAAK,EAAE,MAAM,IAAA,sCAAe,EAAC,MAAM,EAAE,KAAK,EAAE,2BAAW,CAAC;SAC3D,CAAC,CAAA;QACF,MAAM,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAA;QAElC,OAAO,eAAe,CAAA;IAC1B,CAAC;IACD,MAAM,IAAI,iCAAsB,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAA;AAC/D,CAAC;AAhDD,wCAgDC","sourcesContent":["import { tl } from '@mtcute/tl'\n\nimport { MaybeArray } from '../../../types/utils.js'\nimport { ITelegramClient } from '../../client.types.js'\nimport { InputPeerLike, MtInvalidPeerTypeError } from '../../types/index.js'\nimport { isInputPeerChannel, isInputPeerChat, toInputChannel, toInputUser } from '../../utils/peer-utils.js'\nimport { resolvePeer, resolveUser } from '../users/resolve-peer.js'\nimport { resolvePeerMany } from '../users/resolve-peer-many.js'\n\n/**\n * Add one or more new members to a group, supergroup or channel.\n *\n * @param chatId ID of the chat or its username\n * @param users ID(s) of the user(s) to add\n * @returns List of users that were failed to be invited (may be empty)\n */\nexport async function addChatMembers(\n client: ITelegramClient,\n chatId: InputPeerLike,\n users: MaybeArray<InputPeerLike>,\n params: {\n /**\n * Number of old messages to be forwarded (0-100).\n * Only applicable to legacy groups, ignored for supergroups and channels\n *\n * @default 100\n */\n forwardCount?: number\n },\n): Promise<tl.RawMissingInvitee[]> {\n const { forwardCount = 100 } = params\n\n const chat = await resolvePeer(client, chatId)\n\n if (!Array.isArray(users)) users = [users]\n\n if (isInputPeerChat(chat)) {\n const missing: tl.RawMissingInvitee[] = []\n\n for (const user of users) {\n const p = await resolveUser(client, user)\n\n const { updates, missingInvitees } = await client.call({\n _: 'messages.addChatUser',\n chatId: chat.chatId,\n userId: p,\n fwdLimit: forwardCount,\n })\n client.handleClientUpdate(updates)\n missing.push(...missingInvitees)\n }\n\n return missing\n } else if (isInputPeerChannel(chat)) {\n const { updates, missingInvitees } = await client.call({\n _: 'channels.inviteToChannel',\n channel: toInputChannel(chat),\n users: await resolvePeerMany(client, users, toInputUser),\n })\n client.handleClientUpdate(updates)\n\n return missingInvitees\n }\n throw new MtInvalidPeerTypeError(chatId, 'chat or channel')\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ban-chat-member.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/chats/ban-chat-member.ts"],"names":[],"mappings":";;;AACA,mDAAqF;AACrF,6DAA4G;AAC5G,qEAAoE;AACpE,8DAAsD;AAEtD;;;;;;;;;GASG;AACI,KAAK,UAAU,aAAa,CAC/B,MAAuB,EACvB,MAYC;IAED,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,cAAc,EAAE,GAAG,MAAM,CAAA;IACxD,MAAM,IAAI,GAAG,MAAM,IAAA,6BAAW,EAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC9C,MAAM,IAAI,GAAG,MAAM,IAAA,6BAAW,EAAC,MAAM,EAAE,aAAa,CAAC,CAAA;IAErD,IAAI,GAAG,CAAA;IACP,IAAI,IAAA,kCAAkB,EAAC,IAAI,CAAC,EAAE;
|
|
1
|
+
{"version":3,"file":"ban-chat-member.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/chats/ban-chat-member.ts"],"names":[],"mappings":";;;AACA,mDAAqF;AACrF,6DAA4G;AAC5G,qEAAoE;AACpE,8DAAsD;AAEtD;;;;;;;;;GASG;AACI,KAAK,UAAU,aAAa,CAC/B,MAAuB,EACvB,MAYC;IAED,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,cAAc,EAAE,GAAG,MAAM,CAAA;IACxD,MAAM,IAAI,GAAG,MAAM,IAAA,6BAAW,EAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC9C,MAAM,IAAI,GAAG,MAAM,IAAA,6BAAW,EAAC,MAAM,EAAE,aAAa,CAAC,CAAA;IAErD,IAAI,GAAG,CAAA;IACP,IAAI,IAAA,kCAAkB,EAAC,IAAI,CAAC,EAAE,CAAC;QAC3B,GAAG,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC;YACpB,CAAC,EAAE,qBAAqB;YACxB,OAAO,EAAE,IAAA,8BAAc,EAAC,IAAI,CAAC;YAC7B,WAAW,EAAE,IAAI;YACjB,YAAY,EAAE;gBACV,CAAC,EAAE,kBAAkB;gBACrB,2BAA2B;gBAC3B,SAAS,EAAE,CAAC;gBACZ,YAAY,EAAE,IAAI;aACrB;SACJ,CAAC,CAAA;IACN,CAAC;SAAM,IAAI,IAAA,+BAAe,EAAC,IAAI,CAAC,EAAE,CAAC;QAC/B,GAAG,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC;YACpB,CAAC,EAAE,yBAAyB;YAC5B,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,MAAM,EAAE,IAAA,2BAAW,EAAC,IAAI,CAAC;SAC5B,CAAC,CAAA;IACN,CAAC;;QAAM,MAAM,IAAI,iCAAsB,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAA;IAElE,OAAO,IAAA,wCAAoB,EAAC,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,cAAc,EAAE,IAAI,CAAC,CAAA;AAC1E,CAAC;AA1CD,sCA0CC","sourcesContent":["import { ITelegramClient } from '../../client.types.js'\nimport { InputPeerLike, Message, MtInvalidPeerTypeError } from '../../types/index.js'\nimport { isInputPeerChannel, isInputPeerChat, toInputChannel, toInputUser } from '../../utils/peer-utils.js'\nimport { _findMessageInUpdate } from '../messages/find-in-update.js'\nimport { resolvePeer } from '../users/resolve-peer.js'\n\n/**\n * Ban a user/channel from a legacy group, a supergroup or a channel.\n * They will not be able to re-join the group on their own,\n * manual administrator's action will be required.\n *\n * When banning a channel, the user won't be able to use\n * any of their channels to post until the ban is lifted.\n *\n * @returns Service message about removed user, if one was generated.\n */\nexport async function banChatMember(\n client: ITelegramClient,\n params: {\n /** Chat ID */\n chatId: InputPeerLike\n\n /** ID of the user/channel to ban */\n participantId: InputPeerLike\n\n /**\n * Whether to dispatch the returned service message (if any)\n * to the client's update handler.\n */\n shouldDispatch?: true\n },\n): Promise<Message | null> {\n const { chatId, participantId, shouldDispatch } = params\n const chat = await resolvePeer(client, chatId)\n const peer = await resolvePeer(client, participantId)\n\n let res\n if (isInputPeerChannel(chat)) {\n res = await client.call({\n _: 'channels.editBanned',\n channel: toInputChannel(chat),\n participant: peer,\n bannedRights: {\n _: 'chatBannedRights',\n // bans can't be temporary.\n untilDate: 0,\n viewMessages: true,\n },\n })\n } else if (isInputPeerChat(chat)) {\n res = await client.call({\n _: 'messages.deleteChatUser',\n chatId: chat.chatId,\n userId: toInputUser(peer),\n })\n } else throw new MtInvalidPeerTypeError(chatId, 'chat or channel')\n\n return _findMessageInUpdate(client, res, false, !shouldDispatch, true)\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"batched-queries.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/chats/batched-queries.ts"],"names":[],"mappings":";;;AAAA,mCAA+B;AAE/B,wDAA0D;AAE1D,6DAMkC;AAClC,mEAA2D;AAE3D,gBAAgB;AACH,QAAA,gBAAgB,GAAG,IAAA,+BAAY,EAAwC;IAChF,KAAK,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CACrB,MAAM;SACD,IAAI,CAAC;QACF,CAAC,EAAE,gBAAgB;QACnB,EAAE,EAAE,KAAK;QACT,wGAAwG;QACxG,4EAA4E;KAC/E,CAAC;SACD,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,WAAW,CAAC,CAAC;IAChE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE;QACvB,QAAQ,IAAI,CAAC,CAAC,EAAE;
|
|
1
|
+
{"version":3,"file":"batched-queries.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/chats/batched-queries.ts"],"names":[],"mappings":"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","sourcesContent":["import { tl } from '@mtcute/tl'\n\nimport { MtArgumentError } from '../../../types/errors.js'\nimport { ITelegramClient } from '../../client.types.js'\nimport {\n isInputPeerChannel,\n isInputPeerChat,\n isInputPeerUser,\n toInputChannel,\n toInputUser,\n} from '../../utils/peer-utils.js'\nimport { batchedQuery } from '../../utils/query-batcher.js'\n\n/** @internal */\nexport const _getUsersBatched = batchedQuery<tl.TypeInputUser, tl.TypeUser, number>({\n fetch: (client, items) =>\n client\n .call({\n _: 'users.getUsers',\n id: items,\n // there's actually not much point in filtering, since telegram currently simply omits the missing users\n // but maybe it will change in the future and i don't want to think about it\n })\n .then((res) => res.filter((it) => it._ !== 'userEmpty')),\n inputKey: (item, client) => {\n switch (item._) {\n case 'inputUser':\n case 'inputUserFromMessage':\n return item.userId\n case 'inputUserSelf':\n return client.storage.self.getCached()!.userId\n default:\n throw new MtArgumentError('Invalid input user')\n }\n },\n outputKey: (item) => item.id,\n maxBatchSize: 50,\n maxConcurrent: 3,\n retrySingleOnError: (items, err) => {\n if (!tl.RpcError.is(err)) return false\n\n let fromMessageCount = 0\n\n for (const item of items) {\n if (item._ === 'inputUserFromMessage') fromMessageCount++\n }\n\n if (fromMessageCount === 0) {\n // no point in retrying, the error is likely not related to the inputUserFromMessage\n return false\n }\n\n switch (err.text) {\n case 'CHANNEL_INVALID':\n case 'USER_BANNED_IN_CHANNEL':\n case 'CHANNEL_PRIVATE':\n case 'MSG_ID_INVALID':\n return true\n default:\n return false\n }\n },\n})\n\n/** @internal */\nexport const _getChatsBatched = batchedQuery<number, tl.RawChat, number>({\n fetch: (client, items) =>\n client\n .call({\n _: 'messages.getChats',\n id: items,\n })\n .then((res) => res.chats.filter((it): it is tl.RawChat => it._ === 'chat')),\n inputKey: (id) => id,\n outputKey: (item) => item.id,\n maxBatchSize: 50,\n maxConcurrent: 3,\n})\n\n/** @internal */\nexport const _getChannelsBatched = batchedQuery<tl.TypeInputChannel, tl.RawChannel | tl.RawChannelForbidden, number>({\n fetch: (client, items) =>\n client\n .call({\n _: 'channels.getChannels',\n id: items,\n })\n .then((res) =>\n res.chats.filter(\n (it): it is tl.RawChannel | tl.RawChannelForbidden =>\n it._ === 'channel' || it._ === 'channelForbidden',\n ),\n ),\n inputKey: (id) => {\n switch (id._) {\n case 'inputChannel':\n case 'inputChannelFromMessage':\n return id.channelId\n default:\n throw new MtArgumentError('Invalid input channel')\n }\n },\n outputKey: (item) => item.id,\n maxBatchSize: 50,\n maxConcurrent: 3,\n retrySingleOnError: (items, err) => {\n if (!tl.RpcError.is(err)) return false\n\n let fromMessageCount = 0\n\n for (const item of items) {\n if (item._ === 'inputChannelFromMessage') fromMessageCount++\n }\n\n if (fromMessageCount === 0) {\n // no point in retrying, the error is likely not related to the inputChannelFromMessage\n return false\n }\n\n switch (err.text) {\n case 'CHANNEL_INVALID':\n case 'USER_BANNED_IN_CHANNEL':\n case 'CHANNEL_PRIVATE':\n case 'MSG_ID_INVALID':\n return true\n default:\n return false\n }\n },\n})\n\n/** @internal */\nexport function _getRawPeerBatched(\n client: ITelegramClient,\n peer: tl.TypeInputPeer,\n): Promise<tl.TypeUser | tl.TypeChat | null> {\n if (isInputPeerUser(peer)) {\n return _getUsersBatched(client, toInputUser(peer))\n } else if (isInputPeerChannel(peer)) {\n return _getChannelsBatched(client, toInputChannel(peer))\n } else if (isInputPeerChat(peer)) {\n return _getChatsBatched(client, peer.chatId)\n }\n\n throw new MtArgumentError('Invalid peer')\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delete-chat-photo.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/chats/delete-chat-photo.ts"],"names":[],"mappings":";;;AACA,mDAA4E;AAC5E,6DAA+F;AAC/F,8DAAsD;AAEtD;;;;;;GAMG;AACI,KAAK,UAAU,eAAe,CAAC,MAAuB,EAAE,MAAqB;IAChF,MAAM,IAAI,GAAG,MAAM,IAAA,6BAAW,EAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAE9C,IAAI,GAAG,CAAA;IACP,IAAI,IAAA,+BAAe,EAAC,IAAI,CAAC,EAAE;
|
|
1
|
+
{"version":3,"file":"delete-chat-photo.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/chats/delete-chat-photo.ts"],"names":[],"mappings":";;;AACA,mDAA4E;AAC5E,6DAA+F;AAC/F,8DAAsD;AAEtD;;;;;;GAMG;AACI,KAAK,UAAU,eAAe,CAAC,MAAuB,EAAE,MAAqB;IAChF,MAAM,IAAI,GAAG,MAAM,IAAA,6BAAW,EAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAE9C,IAAI,GAAG,CAAA;IACP,IAAI,IAAA,+BAAe,EAAC,IAAI,CAAC,EAAE,CAAC;QACxB,GAAG,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC;YACpB,CAAC,EAAE,wBAAwB;YAC3B,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,KAAK,EAAE,EAAE,CAAC,EAAE,qBAAqB,EAAE;SACtC,CAAC,CAAA;IACN,CAAC;SAAM,IAAI,IAAA,kCAAkB,EAAC,IAAI,CAAC,EAAE,CAAC;QAClC,GAAG,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC;YACpB,CAAC,EAAE,oBAAoB;YACvB,OAAO,EAAE,IAAA,8BAAc,EAAC,IAAI,CAAC;YAC7B,KAAK,EAAE,EAAE,CAAC,EAAE,qBAAqB,EAAE;SACtC,CAAC,CAAA;IACN,CAAC;;QAAM,MAAM,IAAI,iCAAsB,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAA;IAElE,MAAM,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAA;AAClC,CAAC;AAnBD,0CAmBC","sourcesContent":["import { ITelegramClient } from '../../client.types.js'\nimport { InputPeerLike, MtInvalidPeerTypeError } from '../../types/index.js'\nimport { isInputPeerChannel, isInputPeerChat, toInputChannel } from '../../utils/peer-utils.js'\nimport { resolvePeer } from '../users/resolve-peer.js'\n\n/**\n * Delete a chat photo\n *\n * You must be an administrator and have the appropriate permissions.\n *\n * @param chatId Chat ID or username\n */\nexport async function deleteChatPhoto(client: ITelegramClient, chatId: InputPeerLike): Promise<void> {\n const chat = await resolvePeer(client, chatId)\n\n let res\n if (isInputPeerChat(chat)) {\n res = await client.call({\n _: 'messages.editChatPhoto',\n chatId: chat.chatId,\n photo: { _: 'inputChatPhotoEmpty' },\n })\n } else if (isInputPeerChannel(chat)) {\n res = await client.call({\n _: 'channels.editPhoto',\n channel: toInputChannel(chat),\n photo: { _: 'inputChatPhotoEmpty' },\n })\n } else throw new MtInvalidPeerTypeError(chatId, 'chat or channel')\n\n client.handleClientUpdate(res)\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delete-history.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/chats/delete-history.ts"],"names":[],"mappings":";;;AAEA,qDAA0D;AAC1D,6DAA8D;AAC9D,8DAAsD;AAEtD;;GAEG;AACI,KAAK,UAAU,aAAa,CAC/B,MAAuB,EACvB,IAAmB,EACnB,MAmBC;IAED,MAAM,EAAE,IAAI,GAAG,QAAQ,EAAE,KAAK,GAAG,CAAC,EAAE,GAAG,MAAM,IAAI,EAAE,CAAA;IAEnD,MAAM,IAAI,GAAG,MAAM,IAAA,6BAAW,EAAC,MAAM,EAAE,IAAI,CAAC,CAAA;IAE5C,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC;QAC1B,CAAC,EAAE,wBAAwB;QAC3B,SAAS,EAAE,IAAI,KAAK,OAAO;QAC3B,MAAM,EAAE,IAAI,KAAK,QAAQ;QACzB,IAAI;QACJ,KAAK;KACR,CAAC,CAAA;IAEF,IAAI,IAAA,kCAAkB,EAAC,IAAI,CAAC,EAAE;
|
|
1
|
+
{"version":3,"file":"delete-history.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/chats/delete-history.ts"],"names":[],"mappings":";;;AAEA,qDAA0D;AAC1D,6DAA8D;AAC9D,8DAAsD;AAEtD;;GAEG;AACI,KAAK,UAAU,aAAa,CAC/B,MAAuB,EACvB,IAAmB,EACnB,MAmBC;IAED,MAAM,EAAE,IAAI,GAAG,QAAQ,EAAE,KAAK,GAAG,CAAC,EAAE,GAAG,MAAM,IAAI,EAAE,CAAA;IAEnD,MAAM,IAAI,GAAG,MAAM,IAAA,6BAAW,EAAC,MAAM,EAAE,IAAI,CAAC,CAAA;IAE5C,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC;QAC1B,CAAC,EAAE,wBAAwB;QAC3B,SAAS,EAAE,IAAI,KAAK,OAAO;QAC3B,MAAM,EAAE,IAAI,KAAK,QAAQ;QACzB,IAAI;QACJ,KAAK;KACR,CAAC,CAAA;IAEF,IAAI,IAAA,kCAAkB,EAAC,IAAI,CAAC,EAAE,CAAC;QAC3B,MAAM,CAAC,kBAAkB,CAAC,IAAA,4BAAiB,EAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAA;IACvF,CAAC;SAAM,CAAC;QACJ,MAAM,CAAC,kBAAkB,CAAC,IAAA,4BAAiB,EAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAA;IACvE,CAAC;AACL,CAAC;AAzCD,sCAyCC","sourcesContent":["import { ITelegramClient } from '../../client.types.js'\nimport { InputPeerLike } from '../../types/index.js'\nimport { createDummyUpdate } from '../../updates/utils.js'\nimport { isInputPeerChannel } from '../../utils/peer-utils.js'\nimport { resolvePeer } from '../users/resolve-peer.js'\n\n/**\n * Delete communication history (for private chats and legacy groups)\n */\nexport async function deleteHistory(\n client: ITelegramClient,\n chat: InputPeerLike,\n params?: {\n /**\n * Deletion mode. Can be:\n * - `delete`: delete messages (only for yourself)\n * - `clear`: delete messages (only for yourself)\n * - `revoke`: delete messages for all users\n * - I'm not sure what's the difference between `delete` and `clear`,\n * but they are in fact different flags in TL object.\n *\n * @default 'delete'\n */\n mode: 'delete' | 'clear' | 'revoke'\n\n /**\n * Maximum ID of message to delete.\n *\n * @default 0, i.e. remove all messages\n */\n maxId?: number\n },\n): Promise<void> {\n const { mode = 'delete', maxId = 0 } = params ?? {}\n\n const peer = await resolvePeer(client, chat)\n\n const res = await client.call({\n _: 'messages.deleteHistory',\n justClear: mode === 'clear',\n revoke: mode === 'revoke',\n peer,\n maxId,\n })\n\n if (isInputPeerChannel(peer)) {\n client.handleClientUpdate(createDummyUpdate(res.pts, res.ptsCount, peer.channelId))\n } else {\n client.handleClientUpdate(createDummyUpdate(res.pts, res.ptsCount))\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-chat-event-log.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/chats/get-chat-event-log.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAuB;AAKvB,mDAA2E;AAC3E,wEAA0G;AAC1G,6DAAuD;AACvD,8DAAyD;AACzD,wEAA+D;AAE/D;;;;;;;;;;;;GAYG;AACI,KAAK,UAAU,eAAe,CACjC,MAAuB,EACvB,MAAqB,EACrB,MAgDC;IAED,MAAM,EAAE,KAAK,GAAG,cAAI,CAAC,IAAI,EAAE,KAAK,GAAG,cAAI,CAAC,IAAI,EAAE,KAAK,GAAG,EAAE,EAAE,KAAK,GAAG,GAAG,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,MAAM,IAAI,EAAE,CAAA;IAEtG,MAAM,OAAO,GAAG,MAAM,IAAA,gCAAc,EAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAEpD,MAAM,MAAM,GAAmC,KAAK,CAAC,CAAC,CAAC,MAAM,IAAA,sCAAe,EAAC,MAAM,EAAE,KAAK,EAAE,2BAAW,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IAEpH,MAAM,EAAE,YAAY,EAAE,WAAW,EAAE,GAAG,IAAA,sCAAyB,EAAC,OAAO,CAAC,CAAA;IAExE,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC;QAC1B,CAAC,EAAE,sBAAsB;QACzB,OAAO;QACP,CAAC,EAAE,KAAK;QACR,YAAY,EAAE,YAAY;QAC1B,MAAM;QACN,KAAK;QACL,KAAK;QACL,KAAK;KACR,CAAC,CAAA;IAEF,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM;QAAE,OAAO,EAAE,CAAA;IAEjC,MAAM,KAAK,GAAG,qBAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAElC,MAAM,OAAO,GAAgB,EAAE,CAAA;IAE/B,KAAK,MAAM,GAAG,IAAI,GAAG,CAAC,MAAM,EAAE;
|
|
1
|
+
{"version":3,"file":"get-chat-event-log.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/chats/get-chat-event-log.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAuB;AAKvB,mDAA2E;AAC3E,wEAA0G;AAC1G,6DAAuD;AACvD,8DAAyD;AACzD,wEAA+D;AAE/D;;;;;;;;;;;;GAYG;AACI,KAAK,UAAU,eAAe,CACjC,MAAuB,EACvB,MAAqB,EACrB,MAgDC;IAED,MAAM,EAAE,KAAK,GAAG,cAAI,CAAC,IAAI,EAAE,KAAK,GAAG,cAAI,CAAC,IAAI,EAAE,KAAK,GAAG,EAAE,EAAE,KAAK,GAAG,GAAG,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,MAAM,IAAI,EAAE,CAAA;IAEtG,MAAM,OAAO,GAAG,MAAM,IAAA,gCAAc,EAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAEpD,MAAM,MAAM,GAAmC,KAAK,CAAC,CAAC,CAAC,MAAM,IAAA,sCAAe,EAAC,MAAM,EAAE,KAAK,EAAE,2BAAW,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IAEpH,MAAM,EAAE,YAAY,EAAE,WAAW,EAAE,GAAG,IAAA,sCAAyB,EAAC,OAAO,CAAC,CAAA;IAExE,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC;QAC1B,CAAC,EAAE,sBAAsB;QACzB,OAAO;QACP,CAAC,EAAE,KAAK;QACR,YAAY,EAAE,YAAY;QAC1B,MAAM;QACN,KAAK;QACL,KAAK;QACL,KAAK;KACR,CAAC,CAAA;IAEF,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM;QAAE,OAAO,EAAE,CAAA;IAEjC,MAAM,KAAK,GAAG,qBAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAElC,MAAM,OAAO,GAAgB,EAAE,CAAA;IAE/B,KAAK,MAAM,GAAG,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;QAC3B,MAAM,MAAM,GAAG,IAAI,oBAAS,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;QAExC,IAAI,WAAW,IAAI,CAAC,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;YACtE,SAAQ;QACZ,CAAC;QAED,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IACxB,CAAC;IAED,OAAO,OAAO,CAAA;AAClB,CAAC;AAzFD,0CAyFC","sourcesContent":["import Long from 'long'\n\nimport { tl } from '@mtcute/tl'\n\nimport { ITelegramClient } from '../../client.types.js'\nimport { ChatEvent, InputPeerLike, PeersIndex } from '../../types/index.js'\nimport { InputChatEventFilters, normalizeChatEventFilters } from '../../types/peers/chat-event/filters.js'\nimport { toInputUser } from '../../utils/peer-utils.js'\nimport { resolveChannel } from '../users/resolve-peer.js'\nimport { resolvePeerMany } from '../users/resolve-peer-many.js'\n\n/**\n * Get chat event log (\"Recent actions\" in official clients).\n *\n * Only available for supergroups and channels, and\n * requires (any) administrator rights.\n *\n * Results are returned in reverse chronological\n * order (i.e. newest first) and event IDs are\n * in direct chronological order (i.e. newer\n * events have bigger event ID)\n *\n * @param params\n */\nexport async function getChatEventLog(\n client: ITelegramClient,\n chatId: InputPeerLike,\n params?: {\n /**\n * Search query\n */\n query?: string\n\n /**\n * Minimum event ID to return\n */\n minId?: tl.Long\n\n /**\n * Maximum event ID to return,\n * can be used as a base offset\n */\n maxId?: tl.Long\n\n /**\n * List of users whose actions to return\n */\n users?: InputPeerLike[]\n\n /**\n * Event filters. Can be a TL object, or one or more\n * action types.\n *\n * Note that some filters are grouped in TL\n * (i.e. `info=true` will return `title_changed`,\n * `username_changed` and many more),\n * and when passing one or more action types,\n * they will be filtered locally.\n */\n filters?: InputChatEventFilters\n\n /**\n * Limit the number of events returned.\n *\n * > Note: when using filters, there will likely be\n * > less events returned than specified here.\n * > This limit is only used to limit the number of\n * > events to fetch from the server.\n * >\n * > If you need to limit the number of events\n * > returned, use {@link iterChatEventLog} instead.\n *\n * @default 100\n */\n limit?: number\n },\n): Promise<ChatEvent[]> {\n const { maxId = Long.ZERO, minId = Long.ZERO, query = '', limit = 100, users, filters } = params ?? {}\n\n const channel = await resolveChannel(client, chatId)\n\n const admins: tl.TypeInputUser[] | undefined = users ? await resolvePeerMany(client, users, toInputUser) : undefined\n\n const { serverFilter, localFilter } = normalizeChatEventFilters(filters)\n\n const res = await client.call({\n _: 'channels.getAdminLog',\n channel,\n q: query,\n eventsFilter: serverFilter,\n admins,\n maxId,\n minId,\n limit,\n })\n\n if (!res.events.length) return []\n\n const peers = PeersIndex.from(res)\n\n const results: ChatEvent[] = []\n\n for (const evt of res.events) {\n const parsed = new ChatEvent(evt, peers)\n\n if (localFilter && (!parsed.action || !localFilter[parsed.action.type])) {\n continue\n }\n\n results.push(parsed)\n }\n\n return results\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-chat-member.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/chats/get-chat-member.ts"],"names":[],"mappings":";;;AAAA,mCAA+B;AAE/B,0EAAgE;AAEhE,mDAAoG;AACpG,6DAAgH;AAChH,8DAAsD;AAEtD;;;;;;GAMG;AACI,KAAK,UAAU,aAAa,CAC/B,MAAuB,EACvB,MAKC;IAED,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,CAAA;IAEjC,MAAM,IAAI,GAAG,MAAM,IAAA,6BAAW,EAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC9C,MAAM,IAAI,GAAG,MAAM,IAAA,6BAAW,EAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAE9C,IAAI,IAAA,+BAAe,EAAC,IAAI,CAAC,EAAE;
|
|
1
|
+
{"version":3,"file":"get-chat-member.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/chats/get-chat-member.ts"],"names":[],"mappings":";;;AAAA,mCAA+B;AAE/B,0EAAgE;AAEhE,mDAAoG;AACpG,6DAAgH;AAChH,8DAAsD;AAEtD;;;;;;GAMG;AACI,KAAK,UAAU,aAAa,CAC/B,MAAuB,EACvB,MAKC;IAED,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,CAAA;IAEjC,MAAM,IAAI,GAAG,MAAM,IAAA,6BAAW,EAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC9C,MAAM,IAAI,GAAG,MAAM,IAAA,6BAAW,EAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAE9C,IAAI,IAAA,+BAAe,EAAC,IAAI,CAAC,EAAE,CAAC;QACxB,IAAI,CAAC,IAAA,+BAAe,EAAC,IAAI,CAAC,EAAE,CAAC;YACzB,MAAM,IAAI,iCAAsB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;QACpD,CAAC;QAED,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC;YAC1B,CAAC,EAAE,sBAAsB;YACzB,MAAM,EAAE,IAAI,CAAC,MAAM;SACtB,CAAC,CAAA;QAEF,IAAA,iCAAY,EAAC,wCAAwC,EAAE,GAAG,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAA;QAEhF,MAAM,OAAO,GACT,GAAG,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,KAAK,2BAA2B,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,YAAY,CAAC,YAAY,CAAA;QAE7G,MAAM,KAAK,GAAG,qBAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAElC,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;YACtB,IACI,CAAC,IAAI,CAAC,CAAC,KAAK,eAAe,IAAK,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAgB,CAAC,IAAI,CAAC;gBACzE,CAAC,IAAI,CAAC,CAAC,KAAK,eAAe,IAAI,CAAC,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM,CAAC,EAC1D,CAAC;gBACC,OAAO,IAAI,qBAAU,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;YACnC,CAAC;QACL,CAAC;QAED,OAAO,IAAI,CAAA;IACf,CAAC;SAAM,IAAI,IAAA,kCAAkB,EAAC,IAAI,CAAC,EAAE,CAAC;QAClC,IAAI,CAAC;YACD,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC;gBAC1B,CAAC,EAAE,yBAAyB;gBAC5B,OAAO,EAAE,IAAA,8BAAc,EAAC,IAAI,CAAC;gBAC7B,WAAW,EAAE,IAAI;aACpB,CAAC,CAAA;YAEF,MAAM,KAAK,GAAG,qBAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;YAElC,OAAO,IAAI,qBAAU,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,CAAC,CAAA;QACjD,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,IAAI,OAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,sBAAsB,CAAC,EAAE,CAAC;gBAC5C,OAAO,IAAI,CAAA;YACf,CAAC;YAED,MAAM,CAAC,CAAA;QACX,CAAC;IACL,CAAC;;QAAM,MAAM,IAAI,iCAAsB,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAA;AACtE,CAAC;AA5DD,sCA4DC","sourcesContent":["import { tl } from '@mtcute/tl'\n\nimport { assertTypeIs } from '../../../utils/type-assertions.js'\nimport { ITelegramClient } from '../../client.types.js'\nimport { ChatMember, InputPeerLike, MtInvalidPeerTypeError, PeersIndex } from '../../types/index.js'\nimport { isInputPeerChannel, isInputPeerChat, isInputPeerUser, toInputChannel } from '../../utils/peer-utils.js'\nimport { resolvePeer } from '../users/resolve-peer.js'\n\n/**\n * Get information about a single chat member\n *\n * @param chatId Chat ID or username\n * @param userId User ID, username, phone number, `\"me\"` or `\"self\"`\n * @returns Chat member, or `null` if user is not a member of the chat\n */\nexport async function getChatMember(\n client: ITelegramClient,\n params: {\n /** Chat ID or username */\n chatId: InputPeerLike\n /** User ID, username, phone number, `\"me\"` or `\"self\"` */\n userId: InputPeerLike\n },\n): Promise<ChatMember | null> {\n const { chatId, userId } = params\n\n const user = await resolvePeer(client, userId)\n const chat = await resolvePeer(client, chatId)\n\n if (isInputPeerChat(chat)) {\n if (!isInputPeerUser(user)) {\n throw new MtInvalidPeerTypeError(userId, 'user')\n }\n\n const res = await client.call({\n _: 'messages.getFullChat',\n chatId: chat.chatId,\n })\n\n assertTypeIs('getChatMember (@ messages.getFullChat)', res.fullChat, 'chatFull')\n\n const members =\n res.fullChat.participants._ === 'chatParticipantsForbidden' ? [] : res.fullChat.participants.participants\n\n const peers = PeersIndex.from(res)\n\n for (const m of members) {\n if (\n (user._ === 'inputPeerSelf' && (peers.user(m.userId) as tl.RawUser).self) ||\n (user._ === 'inputPeerUser' && m.userId === user.userId)\n ) {\n return new ChatMember(m, peers)\n }\n }\n\n return null\n } else if (isInputPeerChannel(chat)) {\n try {\n const res = await client.call({\n _: 'channels.getParticipant',\n channel: toInputChannel(chat),\n participant: user,\n })\n\n const peers = PeersIndex.from(res)\n\n return new ChatMember(res.participant, peers)\n } catch (e) {\n if (tl.RpcError.is(e, 'USER_NOT_PARTICIPANT')) {\n return null\n }\n\n throw e\n }\n } else throw new MtInvalidPeerTypeError(chatId, 'chat or channel')\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-chat-members.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/chats/get-chat-members.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAuB;AAIvB,sDAAqD;AACrD,0EAAgE;AAEhE,mDAAoH;AACpH,mDAAyD;AACzD,6DAA+F;AAC/F,8DAAsD;AAEtD;;;;;;;GAOG;AACI,KAAK,UAAU,cAAc,CAChC,MAAuB,EACvB,MAAqB,EACrB,MA2CC;IAED,MAAM,EAAE,KAAK,GAAG,EAAE,EAAE,MAAM,GAAG,CAAC,EAAE,KAAK,GAAG,GAAG,EAAE,IAAI,GAAG,QAAQ,EAAE,GAAG,MAAM,IAAI,EAAE,CAAA;IAE7E,MAAM,IAAI,GAAG,MAAM,IAAA,6BAAW,EAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAE9C,IAAI,IAAA,+BAAe,EAAC,IAAI,CAAC,EAAE;
|
|
1
|
+
{"version":3,"file":"get-chat-members.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/chats/get-chat-members.ts"],"names":[],"mappings":"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","sourcesContent":["import Long from 'long'\n\nimport { tl } from '@mtcute/tl'\n\nimport { assertNever } from '../../../types/utils.js'\nimport { assertTypeIs } from '../../../utils/type-assertions.js'\nimport { ITelegramClient } from '../../client.types.js'\nimport { ArrayWithTotal, ChatMember, InputPeerLike, MtInvalidPeerTypeError, PeersIndex } from '../../types/index.js'\nimport { makeArrayWithTotal } from '../../utils/index.js'\nimport { isInputPeerChannel, isInputPeerChat, toInputChannel } from '../../utils/peer-utils.js'\nimport { resolvePeer } from '../users/resolve-peer.js'\n\n/**\n * Get a chunk of members of some chat.\n *\n * You can retrieve up to 200 members at once\n *\n * @param chatId Chat ID or username\n * @param params Additional parameters\n */\nexport async function getChatMembers(\n client: ITelegramClient,\n chatId: InputPeerLike,\n params?: {\n /**\n * Search query to filter members by their display names and usernames\n *\n * > **Note**: Only used for these values of `filter`:\n * > `all, banned, restricted, mention, contacts`\n *\n * @default `''` (empty string)\n */\n query?: string\n\n /**\n * Sequential number of the first member to be returned.\n */\n offset?: number\n\n /**\n * Maximum number of members to be retrieved.\n *\n * > **Note**: Telegram currently only allows you to ever retrieve at most\n * > 200 members, regardless of offset/limit. I.e. when passing\n * > `offset=201` nothing will ever be returned.\n *\n * @default 200\n */\n limit?: number\n\n /**\n * Type of the query. Can be:\n * - `all`: get all members\n * - `banned`: get only banned members\n * - `restricted`: get only restricted members\n * - `bots`: get only bots\n * - `recent`: get recent members\n * - `admins`: get only administrators (and creator)\n * - `contacts`: get only contacts\n * - `mention`: get users that can be mentioned (see {@link tl.RawChannelParticipantsMentions})\n *\n * Only used for channels and supergroups.\n *\n * @default `recent`\n */\n type?: 'all' | 'banned' | 'restricted' | 'bots' | 'recent' | 'admins' | 'contacts' | 'mention'\n },\n): Promise<ArrayWithTotal<ChatMember>> {\n const { query = '', offset = 0, limit = 200, type = 'recent' } = params ?? {}\n\n const chat = await resolvePeer(client, chatId)\n\n if (isInputPeerChat(chat)) {\n const res = await client.call({\n _: 'messages.getFullChat',\n chatId: chat.chatId,\n })\n\n assertTypeIs('getChatMember (@ messages.getFullChat)', res.fullChat, 'chatFull')\n\n let members =\n res.fullChat.participants._ === 'chatParticipantsForbidden' ? [] : res.fullChat.participants.participants\n\n if (offset) members = members.slice(offset)\n if (limit) members = members.slice(0, limit)\n\n const peers = PeersIndex.from(res)\n\n const ret = members.map((m) => new ChatMember(m, peers))\n\n return makeArrayWithTotal(ret, ret.length)\n }\n\n if (isInputPeerChannel(chat)) {\n const q = query\n\n let filter: tl.TypeChannelParticipantsFilter\n\n switch (type) {\n case 'all':\n filter = { _: 'channelParticipantsSearch', q }\n break\n case 'banned':\n filter = { _: 'channelParticipantsKicked', q }\n break\n case 'restricted':\n filter = { _: 'channelParticipantsBanned', q }\n break\n case 'mention':\n filter = { _: 'channelParticipantsMentions', q }\n break\n case 'bots':\n filter = { _: 'channelParticipantsBots' }\n break\n case 'recent':\n filter = { _: 'channelParticipantsRecent' }\n break\n case 'admins':\n filter = { _: 'channelParticipantsAdmins' }\n break\n case 'contacts':\n filter = { _: 'channelParticipantsContacts', q }\n break\n default:\n assertNever(type)\n }\n\n const res = await client.call({\n _: 'channels.getParticipants',\n channel: toInputChannel(chat),\n filter,\n offset,\n limit,\n hash: Long.ZERO,\n })\n\n assertTypeIs('getChatMembers (@ channels.getParticipants)', res, 'channels.channelParticipants')\n\n const peers = PeersIndex.from(res)\n\n const ret = res.participants.map((i) => new ChatMember(i, peers))\n\n return makeArrayWithTotal(ret, res.count)\n }\n\n throw new MtInvalidPeerTypeError(chatId, 'chat or channel')\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-chat-preview.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/chats/get-chat-preview.ts"],"names":[],"mappings":";;;AAAA,wDAA0D;AAE1D,mDAAuE;AACvE,6DAA6D;AAE7D;;;;;;;;GAQG;AACI,KAAK,UAAU,cAAc,CAAC,MAAuB,EAAE,UAAkB;IAC5E,MAAM,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC,iCAAiB,CAAC,CAAA;IAC7C,IAAI,CAAC,CAAC;QAAE,MAAM,IAAI,2BAAe,CAAC,qBAAqB,CAAC,CAAA;IAExD,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC;QAC1B,CAAC,EAAE,0BAA0B;QAC7B,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;KACb,CAAC,CAAA;IAEF,IAAI,GAAG,CAAC,CAAC,KAAK,YAAY,EAAE;
|
|
1
|
+
{"version":3,"file":"get-chat-preview.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/chats/get-chat-preview.ts"],"names":[],"mappings":";;;AAAA,wDAA0D;AAE1D,mDAAuE;AACvE,6DAA6D;AAE7D;;;;;;;;GAQG;AACI,KAAK,UAAU,cAAc,CAAC,MAAuB,EAAE,UAAkB;IAC5E,MAAM,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC,iCAAiB,CAAC,CAAA;IAC7C,IAAI,CAAC,CAAC;QAAE,MAAM,IAAI,2BAAe,CAAC,qBAAqB,CAAC,CAAA;IAExD,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC;QAC1B,CAAC,EAAE,0BAA0B;QAC7B,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;KACb,CAAC,CAAA;IAEF,IAAI,GAAG,CAAC,CAAC,KAAK,YAAY,EAAE,CAAC;QACzB,MAAM,IAAI,8BAAmB,CAAC,oCAAoC,CAAC,CAAA;IACvE,CAAC;IAED,OAAO,IAAI,sBAAW,CAAC,GAAG,EAAE,UAAU,CAAC,CAAA;AAC3C,CAAC;AAdD,wCAcC","sourcesContent":["import { MtArgumentError } from '../../../types/errors.js'\nimport { ITelegramClient } from '../../client.types.js'\nimport { ChatPreview, MtPeerNotFoundError } from '../../types/index.js'\nimport { INVITE_LINK_REGEX } from '../../utils/peer-utils.js'\n\n/**\n * Get preview information about a private chat.\n *\n * @param inviteLink Invite link\n * @throws MtArgumentError In case invite link has invalid format\n * @throws MtPeerNotFoundError\n * In case you are trying to get info about private chat that you have already joined.\n * Use {@link getChat} or {@link getFullChat} instead.\n */\nexport async function getChatPreview(client: ITelegramClient, inviteLink: string): Promise<ChatPreview> {\n const m = inviteLink.match(INVITE_LINK_REGEX)\n if (!m) throw new MtArgumentError('Invalid invite link')\n\n const res = await client.call({\n _: 'messages.checkChatInvite',\n hash: m[1],\n })\n\n if (res._ !== 'chatInvite') {\n throw new MtPeerNotFoundError('You have already joined this chat!')\n }\n\n return new ChatPreview(res, inviteLink)\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-chat.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/chats/get-chat.ts"],"names":[],"mappings":";;;AAAA,wDAA0D;AAE1D,mDAA+E;AAC/E,6DAA6D;AAC7D,8DAAsD;AACtD,6DAAyD;AAEzD,kBAAkB;AAClB;;;;;;;GAOG;AACI,KAAK,UAAU,OAAO,CAAC,MAAuB,EAAE,MAAqB;IACxE,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;
|
|
1
|
+
{"version":3,"file":"get-chat.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/chats/get-chat.ts"],"names":[],"mappings":";;;AAAA,wDAA0D;AAE1D,mDAA+E;AAC/E,6DAA6D;AAC7D,8DAAsD;AACtD,6DAAyD;AAEzD,kBAAkB;AAClB;;;;;;;GAOG;AACI,KAAK,UAAU,OAAO,CAAC,MAAuB,EAAE,MAAqB;IACxE,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC7B,MAAM,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,iCAAiB,CAAC,CAAA;QAEzC,IAAI,CAAC,EAAE,CAAC;YACJ,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC;gBAC1B,CAAC,EAAE,0BAA0B;gBAC7B,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;aACb,CAAC,CAAA;YAEF,IAAI,GAAG,CAAC,CAAC,KAAK,YAAY,EAAE,CAAC;gBACzB,MAAM,IAAI,2BAAe,CAAC,sBAAsB,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;YAChF,CAAC;YAED,OAAO,IAAI,eAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QAC7B,CAAC;IACL,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,IAAA,6BAAW,EAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAE9C,MAAM,GAAG,GAAG,MAAM,IAAA,uCAAkB,EAAC,MAAM,EAAE,IAAI,CAAC,CAAA;IAElD,IAAI,CAAC,GAAG;QAAE,MAAM,IAAI,8BAAmB,CAAC,QAAQ,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAA;IAEvF,OAAO,IAAI,eAAI,CAAC,GAAG,CAAC,CAAA;AACxB,CAAC;AAzBD,0BAyBC","sourcesContent":["import { MtArgumentError } from '../../../types/errors.js'\nimport { ITelegramClient } from '../../client.types.js'\nimport { Chat, InputPeerLike, MtPeerNotFoundError } from '../../types/index.js'\nimport { INVITE_LINK_REGEX } from '../../utils/peer-utils.js'\nimport { resolvePeer } from '../users/resolve-peer.js'\nimport { _getRawPeerBatched } from './batched-queries.js'\n\n// @available=both\n/**\n * Get basic information about a chat.\n *\n * @param chatId ID of the chat, its username or invite link\n * @throws MtArgumentError\n * In case you are trying to get info about private chat that you haven't joined.\n * Use {@link getChatPreview} instead.\n */\nexport async function getChat(client: ITelegramClient, chatId: InputPeerLike): Promise<Chat> {\n if (typeof chatId === 'string') {\n const m = chatId.match(INVITE_LINK_REGEX)\n\n if (m) {\n const res = await client.call({\n _: 'messages.checkChatInvite',\n hash: m[1],\n })\n\n if (res._ === 'chatInvite') {\n throw new MtArgumentError(`You haven't joined ${JSON.stringify(res.title)}`)\n }\n\n return new Chat(res.chat)\n }\n }\n\n const peer = await resolvePeer(client, chatId)\n\n const res = await _getRawPeerBatched(client, peer)\n\n if (!res) throw new MtPeerNotFoundError(`Chat ${JSON.stringify(chatId)} was not found`)\n\n return new Chat(res)\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-full-chat.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/chats/get-full-chat.ts"],"names":[],"mappings":";;;AAEA,wDAA0D;AAE1D,mDAA0D;AAC1D,6DAOkC;AAClC,8DAAsD;AAEtD,kBAAkB;AAClB;;;;;;;GAOG;AACI,KAAK,UAAU,WAAW,CAAC,MAAuB,EAAE,MAAqB;IAC5E,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;
|
|
1
|
+
{"version":3,"file":"get-full-chat.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/chats/get-full-chat.ts"],"names":[],"mappings":";;;AAEA,wDAA0D;AAE1D,mDAA0D;AAC1D,6DAOkC;AAClC,8DAAsD;AAEtD,kBAAkB;AAClB;;;;;;;GAOG;AACI,KAAK,UAAU,WAAW,CAAC,MAAuB,EAAE,MAAqB;IAC5E,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC7B,MAAM,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,iCAAiB,CAAC,CAAA;QAEzC,IAAI,CAAC,EAAE,CAAC;YACJ,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC;gBAC1B,CAAC,EAAE,0BAA0B;gBAC7B,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;aACb,CAAC,CAAA;YAEF,IAAI,GAAG,CAAC,CAAC,KAAK,YAAY,EAAE,CAAC;gBACzB,MAAM,IAAI,2BAAe,CAAC,sBAAsB,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;YAChF,CAAC;YAED,wCAAwC;YACxC,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,EAAE,CAAA;QACxB,CAAC;IACL,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,IAAA,6BAAW,EAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAE9C,IAAI,GAAqD,CAAA;IACzD,IAAI,IAAA,kCAAkB,EAAC,IAAI,CAAC,EAAE,CAAC;QAC3B,GAAG,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC;YACpB,CAAC,EAAE,yBAAyB;YAC5B,OAAO,EAAE,IAAA,8BAAc,EAAC,IAAI,CAAC;SAChC,CAAC,CAAA;IACN,CAAC;SAAM,IAAI,IAAA,+BAAe,EAAC,IAAI,CAAC,EAAE,CAAC;QAC/B,GAAG,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC;YACpB,CAAC,EAAE,mBAAmB;YACtB,EAAE,EAAE,IAAA,2BAAW,EAAC,IAAI,CAAE;SACzB,CAAC,CAAA;IACN,CAAC;SAAM,IAAI,IAAA,+BAAe,EAAC,IAAI,CAAC,EAAE,CAAC;QAC/B,GAAG,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC;YACpB,CAAC,EAAE,sBAAsB;YACzB,MAAM,EAAE,IAAI,CAAC,MAAM;SACtB,CAAC,CAAA;IACN,CAAC;;QAAM,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAA;IAE3C,OAAO,eAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;AAC/B,CAAC;AAxCD,kCAwCC","sourcesContent":["import { tl } from '@mtcute/tl'\n\nimport { MtArgumentError } from '../../../types/errors.js'\nimport { ITelegramClient } from '../../client.types.js'\nimport { Chat, InputPeerLike } from '../../types/index.js'\nimport {\n INVITE_LINK_REGEX,\n isInputPeerChannel,\n isInputPeerChat,\n isInputPeerUser,\n toInputChannel,\n toInputUser,\n} from '../../utils/peer-utils.js'\nimport { resolvePeer } from '../users/resolve-peer.js'\n\n// @available=both\n/**\n * Get full information about a chat.\n *\n * @param chatId ID of the chat, its username or invite link\n * @throws MtArgumentError\n * In case you are trying to get info about private chat that you haven't joined.\n * Use {@link getChatPreview} instead.\n */\nexport async function getFullChat(client: ITelegramClient, chatId: InputPeerLike): Promise<Chat> {\n if (typeof chatId === 'string') {\n const m = chatId.match(INVITE_LINK_REGEX)\n\n if (m) {\n const res = await client.call({\n _: 'messages.checkChatInvite',\n hash: m[1],\n })\n\n if (res._ === 'chatInvite') {\n throw new MtArgumentError(`You haven't joined ${JSON.stringify(res.title)}`)\n }\n\n // we still need to fetch full chat info\n chatId = res.chat.id\n }\n }\n\n const peer = await resolvePeer(client, chatId)\n\n let res: tl.messages.TypeChatFull | tl.users.TypeUserFull\n if (isInputPeerChannel(peer)) {\n res = await client.call({\n _: 'channels.getFullChannel',\n channel: toInputChannel(peer),\n })\n } else if (isInputPeerUser(peer)) {\n res = await client.call({\n _: 'users.getFullUser',\n id: toInputUser(peer)!,\n })\n } else if (isInputPeerChat(peer)) {\n res = await client.call({\n _: 'messages.getFullChat',\n chatId: peer.chatId,\n })\n } else throw new Error('should not happen')\n\n return Chat._parseFull(res)\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-nearby-chats.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/chats/get-nearby-chats.ts"],"names":[],"mappings":";;;AAEA,gEAA8D;AAC9D,0EAAgE;AAEhE,mDAA2C;AAC3C,qDAA6D;AAE7D;;;;;GAKG;AACI,KAAK,UAAU,cAAc,CAAC,MAAuB,EAAE,QAAgB,EAAE,SAAiB;IAC7F,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC;QAC1B,CAAC,EAAE,qBAAqB;QACxB,QAAQ,EAAE;YACN,CAAC,EAAE,eAAe;YAClB,GAAG,EAAE,QAAQ;YACb,IAAI,EAAE,SAAS;SAClB;KACJ,CAAC,CAAA;IAEF,IAAA,+BAAoB,EAAC,qBAAqB,EAAE,GAAG,CAAC,CAAA;IAChD,uCAAuC;IAEvC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM;QAAE,OAAO,EAAE,CAAA;IAElC,IAAA,iCAAY,EAAC,qCAAqC,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,mBAAmB,CAAC,CAAA;IAExF,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,eAAI,CAAC,EAAE,CAAC,CAAC,CAAA;IAEjD,MAAM,KAAK,GAAyB,EAAE,CAAA;IACtC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;IAEvC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;QAClC,IAAI,IAAI,CAAC,CAAC,KAAK,iBAAiB;YAAE,OAAM;QAExC,MAAM,EAAE,GAAG,IAAA,+BAAe,EAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAErC,IAAI,KAAK,CAAC,EAAE,CAAC,EAAE;
|
|
1
|
+
{"version":3,"file":"get-nearby-chats.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/chats/get-nearby-chats.ts"],"names":[],"mappings":";;;AAEA,gEAA8D;AAC9D,0EAAgE;AAEhE,mDAA2C;AAC3C,qDAA6D;AAE7D;;;;;GAKG;AACI,KAAK,UAAU,cAAc,CAAC,MAAuB,EAAE,QAAgB,EAAE,SAAiB;IAC7F,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC;QAC1B,CAAC,EAAE,qBAAqB;QACxB,QAAQ,EAAE;YACN,CAAC,EAAE,eAAe;YAClB,GAAG,EAAE,QAAQ;YACb,IAAI,EAAE,SAAS;SAClB;KACJ,CAAC,CAAA;IAEF,IAAA,+BAAoB,EAAC,qBAAqB,EAAE,GAAG,CAAC,CAAA;IAChD,uCAAuC;IAEvC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM;QAAE,OAAO,EAAE,CAAA;IAElC,IAAA,iCAAY,EAAC,qCAAqC,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,mBAAmB,CAAC,CAAA;IAExF,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,eAAI,CAAC,EAAE,CAAC,CAAC,CAAA;IAEjD,MAAM,KAAK,GAAyB,EAAE,CAAA;IACtC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;IAEvC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;QAClC,IAAI,IAAI,CAAC,CAAC,KAAK,iBAAiB;YAAE,OAAM;QAExC,MAAM,EAAE,GAAG,IAAA,+BAAe,EAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAErC,IAAI,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC;YACX,KAAK,CAAC,EAAE,CAAsB,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAA;QAC5D,CAAC;IACL,CAAC,CAAC,CAAA;IAEF,OAAO,KAAK,CAAA;AAChB,CAAC;AAjCD,wCAiCC","sourcesContent":["import { tl } from '@mtcute/tl'\n\nimport { getMarkedPeerId } from '../../../utils/peer-utils.js'\nimport { assertTypeIs } from '../../../utils/type-assertions.js'\nimport { ITelegramClient } from '../../client.types.js'\nimport { Chat } from '../../types/index.js'\nimport { assertIsUpdatesGroup } from '../../updates/utils.js'\n\n/**\n * Get nearby chats\n *\n * @param latitude Latitude of the location\n * @param longitude Longitude of the location\n */\nexport async function getNearbyChats(client: ITelegramClient, latitude: number, longitude: number): Promise<Chat[]> {\n const res = await client.call({\n _: 'contacts.getLocated',\n geoPoint: {\n _: 'inputGeoPoint',\n lat: latitude,\n long: longitude,\n },\n })\n\n assertIsUpdatesGroup('contacts.getLocated', res)\n // client.handleClientUpdate(res, true)\n\n if (!res.updates.length) return []\n\n assertTypeIs('contacts.getLocated (@ .updates[0])', res.updates[0], 'updatePeerLocated')\n\n const chats = res.chats.map((it) => new Chat(it))\n\n const index: Record<number, Chat> = {}\n chats.forEach((c) => (index[c.id] = c))\n\n res.updates[0].peers.forEach((peer) => {\n if (peer._ === 'peerSelfLocated') return\n\n const id = getMarkedPeerId(peer.peer)\n\n if (index[id]) {\n (index[id] as tl.Mutable<Chat>).distance = peer.distance\n }\n })\n\n return chats\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-similar-channels.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/chats/get-similar-channels.ts"],"names":[],"mappings":";;;AACA,mDAA0E;AAC1E,6DAA8D;AAC9D,8DAAyD;AAEzD,kBAAkB;AAClB;;;;;;;;GAQG;AACI,KAAK,UAAU,kBAAkB,CACpC,MAAuB,EACvB,OAAsB;IAEtB,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC;QAC1B,CAAC,EAAE,oCAAoC;QACvC,OAAO,EAAE,MAAM,IAAA,gCAAc,EAAC,MAAM,EAAE,OAAO,CAAC;KACjD,CAAC,CAAA;IAEF,MAAM,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,eAAI,CAAC,IAAI,CAAC,CAAC,CAAA;IAEtD,QAAQ,GAAG,CAAC,CAAC,EAAE;
|
|
1
|
+
{"version":3,"file":"get-similar-channels.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/chats/get-similar-channels.ts"],"names":[],"mappings":";;;AACA,mDAA0E;AAC1E,6DAA8D;AAC9D,8DAAyD;AAEzD,kBAAkB;AAClB;;;;;;;;GAQG;AACI,KAAK,UAAU,kBAAkB,CACpC,MAAuB,EACvB,OAAsB;IAEtB,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC;QAC1B,CAAC,EAAE,oCAAoC;QACvC,OAAO,EAAE,MAAM,IAAA,gCAAc,EAAC,MAAM,EAAE,OAAO,CAAC;KACjD,CAAC,CAAA;IAEF,MAAM,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,eAAI,CAAC,IAAI,CAAC,CAAC,CAAA;IAEtD,QAAQ,GAAG,CAAC,CAAC,EAAE,CAAC;QACZ,KAAK,qBAAqB;YACtB,OAAO,IAAA,kCAAkB,EAAC,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,CAAA;QAChD,KAAK,gBAAgB;YACjB,OAAO,IAAA,kCAAkB,EAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAA;IACxD,CAAC;AACL,CAAC;AAjBD,gDAiBC","sourcesContent":["import { ITelegramClient } from '../../client.types.js'\nimport { ArrayWithTotal, Chat, InputPeerLike } from '../../types/index.js'\nimport { makeArrayWithTotal } from '../../utils/misc-utils.js'\nimport { resolveChannel } from '../users/resolve-peer.js'\n\n// @available=user\n/**\n * Get channels that are similar to a given channel\n *\n * > **Note**: This method only returns the channels that the current user\n * > is not subscribed to. For non-premium users, this method will only return\n * > a few channels (with the total number of similar channels being specified in `.total`)\n * >\n * > Returns empty array in case there are no similar channels available.\n */\nexport async function getSimilarChannels(\n client: ITelegramClient,\n channel: InputPeerLike,\n): Promise<ArrayWithTotal<Chat>> {\n const res = await client.call({\n _: 'channels.getChannelRecommendations',\n channel: await resolveChannel(client, channel),\n })\n\n const parsed = res.chats.map((chat) => new Chat(chat))\n\n switch (res._) {\n case 'messages.chatsSlice':\n return makeArrayWithTotal(parsed, res.count)\n case 'messages.chats':\n return makeArrayWithTotal(parsed, parsed.length)\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"iter-chat-event-log.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/chats/iter-chat-event-log.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAuB;AAMvB,wEAAmF;AACnF,6DAAuD;AACvD,8DAAyD;AACzD,wEAA+D;AAC/D,mEAAyD;AAEzD;;;;;;;GAOG;AACI,KAAK,SAAS,CAAC,CAAC,gBAAgB,CACnC,MAAuB,EACvB,MAAqB,EACrB,MAeC;IAED,IAAI,CAAC,MAAM;QAAE,MAAM,GAAG,EAAE,CAAA;IAExB,MAAM,OAAO,GAAG,MAAM,IAAA,gCAAc,EAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAEpD,MAAM,EAAE,KAAK,GAAG,cAAI,CAAC,IAAI,EAAE,KAAK,GAAG,EAAE,EAAE,KAAK,GAAG,QAAQ,EAAE,SAAS,GAAG,GAAG,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,MAAM,CAAA;IAEnG,MAAM,MAAM,GAAmC,KAAK,CAAC,CAAC,CAAC,MAAM,IAAA,sCAAe,EAAC,MAAM,EAAE,KAAK,EAAE,2BAAW,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IAEpH,MAAM,EAAE,YAAY,EAAE,WAAW,EAAE,GAAG,IAAA,sCAAyB,EAAC,OAAO,CAAC,CAAA;IAExE,IAAI,OAAO,GAAG,CAAC,CAAA;IACf,IAAI,KAAK,GAAG,MAAM,CAAC,KAAK,IAAI,cAAI,CAAC,IAAI,CAAA;IAErC,SAAS;
|
|
1
|
+
{"version":3,"file":"iter-chat-event-log.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/chats/iter-chat-event-log.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAuB;AAMvB,wEAAmF;AACnF,6DAAuD;AACvD,8DAAyD;AACzD,wEAA+D;AAC/D,mEAAyD;AAEzD;;;;;;;GAOG;AACI,KAAK,SAAS,CAAC,CAAC,gBAAgB,CACnC,MAAuB,EACvB,MAAqB,EACrB,MAeC;IAED,IAAI,CAAC,MAAM;QAAE,MAAM,GAAG,EAAE,CAAA;IAExB,MAAM,OAAO,GAAG,MAAM,IAAA,gCAAc,EAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAEpD,MAAM,EAAE,KAAK,GAAG,cAAI,CAAC,IAAI,EAAE,KAAK,GAAG,EAAE,EAAE,KAAK,GAAG,QAAQ,EAAE,SAAS,GAAG,GAAG,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,MAAM,CAAA;IAEnG,MAAM,MAAM,GAAmC,KAAK,CAAC,CAAC,CAAC,MAAM,IAAA,sCAAe,EAAC,MAAM,EAAE,KAAK,EAAE,2BAAW,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IAEpH,MAAM,EAAE,YAAY,EAAE,WAAW,EAAE,GAAG,IAAA,sCAAyB,EAAC,OAAO,CAAC,CAAA;IAExE,IAAI,OAAO,GAAG,CAAC,CAAA;IACf,IAAI,KAAK,GAAG,MAAM,CAAC,KAAK,IAAI,cAAI,CAAC,IAAI,CAAA;IAErC,SAAS,CAAC;QACN,MAAM,KAAK,GAAG,MAAM,IAAA,uCAAe,EAAC,MAAM,EAAE,OAAO,EAAE;YACjD,KAAK;YACL,KAAK;YACL,KAAK;YACL,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,OAAO,EAAE,SAAS,CAAC;YACrE,+DAA+D;YAC/D,KAAK,EAAE,MAAM;YACb,yCAAyC;YACzC,OAAO,EAAE,EAAE,YAAY,EAAE;SAC5B,CAAC,CAAA;QAEF,IAAI,CAAC,KAAK,CAAC,MAAM;YAAE,MAAK;QAExB,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;QACpC,KAAK,GAAG,IAAI,CAAC,EAAE,CAAA;QAEf,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACvB,IAAI,WAAW,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;gBAClE,SAAQ;YACZ,CAAC;YAED,OAAO,IAAI,CAAC,CAAA;YACZ,MAAM,IAAI,CAAA;YAEV,IAAI,OAAO,IAAI,KAAK;gBAAE,MAAK;QAC/B,CAAC;IACL,CAAC;AACL,CAAC;AA7DD,4CA6DC","sourcesContent":["import Long from 'long'\n\nimport { tl } from '@mtcute/tl'\n\nimport { ITelegramClient } from '../../client.types.js'\nimport { ChatEvent, InputPeerLike } from '../../types/index.js'\nimport { normalizeChatEventFilters } from '../../types/peers/chat-event/filters.js'\nimport { toInputUser } from '../../utils/peer-utils.js'\nimport { resolveChannel } from '../users/resolve-peer.js'\nimport { resolvePeerMany } from '../users/resolve-peer-many.js'\nimport { getChatEventLog } from './get-chat-event-log.js'\n\n/**\n * Iterate over chat event log.\n *\n * Small wrapper over {@link getChatEventLog}\n *\n * @param chatId Chat ID\n * @param params\n */\nexport async function* iterChatEventLog(\n client: ITelegramClient,\n chatId: InputPeerLike,\n params?: Parameters<typeof getChatEventLog>[2] & {\n /**\n * Total number of events to return.\n *\n * @default Infinity\n */\n limit?: number\n\n /**\n * Chunk size, passed as `limit` to {@link getChatEventLog}.\n * Usually you don't need to touch this.\n *\n * @default 100\n */\n chunkSize?: number\n },\n): AsyncIterableIterator<ChatEvent> {\n if (!params) params = {}\n\n const channel = await resolveChannel(client, chatId)\n\n const { minId = Long.ZERO, query = '', limit = Infinity, chunkSize = 100, users, filters } = params\n\n const admins: tl.TypeInputUser[] | undefined = users ? await resolvePeerMany(client, users, toInputUser) : undefined\n\n const { serverFilter, localFilter } = normalizeChatEventFilters(filters)\n\n let current = 0\n let maxId = params.maxId ?? Long.ZERO\n\n for (;;) {\n const chunk = await getChatEventLog(client, channel, {\n minId,\n maxId,\n query,\n limit: localFilter ? chunkSize : Math.min(limit - current, chunkSize),\n // provide already resolved users to avoid resolving them again\n users: admins,\n // local filters may mess with pagination\n filters: { serverFilter },\n })\n\n if (!chunk.length) break\n\n const last = chunk[chunk.length - 1]\n maxId = last.id\n\n for (const item of chunk) {\n if (localFilter && (!item.action || !localFilter[item.action.type])) {\n continue\n }\n\n current += 1\n yield item\n\n if (current >= limit) break\n }\n }\n}\n"]}
|