@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
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"send-vote.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/messages/send-vote.ts"],"names":[],"mappings":";;;AAAA,wDAAgF;AAEhF,gEAA8D;AAC9D,0EAAgE;AAEhE,mDAAwH;AACxH,qDAA6D;AAC7D,8DAAsD;AACtD,uDAA+C;AAE/C;;GAEG;AACI,KAAK,UAAU,QAAQ,CAC1B,MAAuB,EACvB,MAQC;IAED,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,IAAA,kCAAuB,EAAC,MAAM,CAAC,CAAA;IAC3D,IAAI,EAAE,OAAO,EAAE,GAAG,MAAM,CAAA;IAExB,IAAI,OAAO,KAAK,IAAI;QAAE,OAAO,GAAG,EAAE,CAAA;IAClC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;QAAE,OAAO,GAAG,CAAC,OAAO,CAAC,CAAA;IAEhD,MAAM,IAAI,GAAG,MAAM,IAAA,6BAAW,EAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAE9C,IAAI,IAAI,GAAqB,SAAS,CAAA;IAEtC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,OAAO,EAAE,KAAK,QAAQ,CAAC,EAAE;
|
|
1
|
+
{"version":3,"file":"send-vote.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/messages/send-vote.ts"],"names":[],"mappings":";;;AAAA,wDAAgF;AAEhF,gEAA8D;AAC9D,0EAAgE;AAEhE,mDAAwH;AACxH,qDAA6D;AAC7D,8DAAsD;AACtD,uDAA+C;AAE/C;;GAEG;AACI,KAAK,UAAU,QAAQ,CAC1B,MAAuB,EACvB,MAQC;IAED,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,IAAA,kCAAuB,EAAC,MAAM,CAAC,CAAA;IAC3D,IAAI,EAAE,OAAO,EAAE,GAAG,MAAM,CAAA;IAExB,IAAI,OAAO,KAAK,IAAI;QAAE,OAAO,GAAG,EAAE,CAAA;IAClC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;QAAE,OAAO,GAAG,CAAC,OAAO,CAAC,CAAA;IAEhD,MAAM,IAAI,GAAG,MAAM,IAAA,6BAAW,EAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAE9C,IAAI,IAAI,GAAqB,SAAS,CAAA;IAEtC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,OAAO,EAAE,KAAK,QAAQ,CAAC,EAAE,CAAC;QAC/C,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,IAAA,6BAAW,EAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,CAAA;QAEtD,IAAI,CAAC,GAAG,EAAE,CAAC;YACP,MAAM,IAAI,iCAAsB,CAAC,IAAA,+BAAe,EAAC,IAAI,CAAC,EAAE,OAAO,EAAE,YAAY,CAAC,CAAA;QAClF,CAAC;QAED,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,YAAY,eAAI,CAAC,EAAE,CAAC;YAC/B,MAAM,IAAI,2BAAe,CAAC,sCAAsC,CAAC,CAAA;QACrE,CAAC;QAED,IAAI,GAAG,GAAG,CAAC,KAAK,CAAA;QAChB,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;YAC1B,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;gBAC1B,OAAO,IAAK,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,CAAA;YACxC,CAAC;YAED,OAAO,GAAG,CAAA;QACd,CAAC,CAAC,CAAA;IACN,CAAC;IAED,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC;QAC1B,CAAC,EAAE,mBAAmB;QACtB,IAAI;QACJ,KAAK,EAAE,OAAO;QACd,OAAO,EAAE,OAAuB;KACnC,CAAC,CAAA;IAEF,IAAA,+BAAoB,EAAC,mBAAmB,EAAE,GAAG,CAAC,CAAA;IAE9C,MAAM,CAAC,kBAAkB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;IAEpC,MAAM,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;IAC1B,IAAA,iCAAY,EAAC,mCAAmC,EAAE,GAAG,EAAE,mBAAmB,CAAC,CAAA;IAE3E,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;QACZ,MAAM,IAAI,gCAAoB,CAAC,wCAAwC,EAAE,MAAM,EAAE,WAAW,CAAC,CAAA;IACjG,CAAC;IAED,MAAM,KAAK,GAAG,qBAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAElC,OAAO,IAAI,eAAI,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,CAAA;AACjD,CAAC;AAhED,4BAgEC","sourcesContent":["import { MtArgumentError, MtTypeAssertionError } from '../../../types/errors.js'\nimport { MaybeArray } from '../../../types/utils.js'\nimport { getMarkedPeerId } from '../../../utils/peer-utils.js'\nimport { assertTypeIs } from '../../../utils/type-assertions.js'\nimport { ITelegramClient } from '../../client.types.js'\nimport { InputMessageId, MtMessageNotFoundError, normalizeInputMessageId, PeersIndex, Poll } from '../../types/index.js'\nimport { assertIsUpdatesGroup } from '../../updates/utils.js'\nimport { resolvePeer } from '../users/resolve-peer.js'\nimport { getMessages } from './get-messages.js'\n\n/**\n * Send or retract a vote in a poll.\n */\nexport async function sendVote(\n client: ITelegramClient,\n params: InputMessageId & {\n /**\n * Selected options, or `null` to retract.\n * You can pass indexes of the answers or the `Buffer`s\n * representing them. In case of indexes, the poll will first\n * be requested from the server.\n */\n options: null | MaybeArray<number | Uint8Array>\n },\n): Promise<Poll> {\n const { chatId, message } = normalizeInputMessageId(params)\n let { options } = params\n\n if (options === null) options = []\n if (!Array.isArray(options)) options = [options]\n\n const peer = await resolvePeer(client, chatId)\n\n let poll: Poll | undefined = undefined\n\n if (options.some((it) => typeof it === 'number')) {\n const [msg] = await getMessages(client, peer, message)\n\n if (!msg) {\n throw new MtMessageNotFoundError(getMarkedPeerId(peer), message, 'to vote in')\n }\n\n if (!(msg.media instanceof Poll)) {\n throw new MtArgumentError('This message does not contain a poll')\n }\n\n poll = msg.media\n options = options.map((opt) => {\n if (typeof opt === 'number') {\n return poll!.raw.answers[opt].option\n }\n\n return opt\n })\n }\n\n const res = await client.call({\n _: 'messages.sendVote',\n peer,\n msgId: message,\n options: options as Uint8Array[],\n })\n\n assertIsUpdatesGroup('messages.sendVote', res)\n\n client.handleClientUpdate(res, true)\n\n const upd = res.updates[0]\n assertTypeIs('messages.sendVote (@ .updates[0])', upd, 'updateMessagePoll')\n\n if (!upd.poll) {\n throw new MtTypeAssertionError('messages.sendVote (@ .updates[0].poll)', 'poll', 'undefined')\n }\n\n const peers = PeersIndex.from(res)\n\n return new Poll(upd.poll, peers, upd.results)\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"translate-text.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/messages/translate-text.ts"],"names":[],"mappings":";;;AAAA,wDAA+D;AAG/D,iEAA+D;AAE/D;;;;;GAKG;AACI,KAAK,UAAU,aAAa,CAC/B,MAAuB,EACvB,IAAe,EACf,UAAkB;IAElB,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,GAAG,MAAM,IAAA,uCAAmB,EAAC,MAAM,EAAE,IAAI,CAAC,CAAA;IAEnE,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC;QAC1B,CAAC,EAAE,wBAAwB;QAC3B,IAAI,EAAE;YACF;gBACI,CAAC,EAAE,kBAAkB;gBACrB,IAAI,EAAE,OAAO;gBACb,QAAQ,EAAE,QAAQ,IAAI,EAAE;aAC3B;SACJ;QACD,MAAM,EAAE,UAAU;KACrB,CAAC,CAAA;IAEF,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE;
|
|
1
|
+
{"version":3,"file":"translate-text.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/messages/translate-text.ts"],"names":[],"mappings":";;;AAAA,wDAA+D;AAG/D,iEAA+D;AAE/D;;;;;GAKG;AACI,KAAK,UAAU,aAAa,CAC/B,MAAuB,EACvB,IAAe,EACf,UAAkB;IAElB,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,GAAG,MAAM,IAAA,uCAAmB,EAAC,MAAM,EAAE,IAAI,CAAC,CAAA;IAEnE,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC;QAC1B,CAAC,EAAE,wBAAwB;QAC3B,IAAI,EAAE;YACF;gBACI,CAAC,EAAE,kBAAkB;gBACrB,IAAI,EAAE,OAAO;gBACb,QAAQ,EAAE,QAAQ,IAAI,EAAE;aAC3B;SACJ;QACD,MAAM,EAAE,UAAU;KACrB,CAAC,CAAA;IAEF,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;QACjB,MAAM,IAAI,gCAAoB,CAAC,iCAAiC,EAAE,WAAW,EAAE,OAAO,CAAC,CAAA;IAC3F,CAAC;IAED,OAAO;QACH,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI;QACxB,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ;KACnC,CAAA;AACL,CAAC;AA3BD,sCA2BC","sourcesContent":["import { MtTypeAssertionError } from '../../../types/errors.js'\nimport { ITelegramClient } from '../../client.types.js'\nimport { InputText, TextWithEntities } from '../../types/misc/entities.js'\nimport { _normalizeInputText } from '../misc/normalize-text.js'\n\n/**\n * Translate text to a given language.\n *\n * @param text Text to translate\n * @param toLanguage Target language (two-letter ISO 639-1 language code)\n */\nexport async function translateText(\n client: ITelegramClient,\n text: InputText,\n toLanguage: string,\n): Promise<TextWithEntities> {\n const [message, entities] = await _normalizeInputText(client, text)\n\n const res = await client.call({\n _: 'messages.translateText',\n text: [\n {\n _: 'textWithEntities',\n text: message,\n entities: entities || [],\n },\n ],\n toLang: toLanguage,\n })\n\n if (!res.result[0]) {\n throw new MtTypeAssertionError('messages.translateResult#result', 'not empty', 'empty')\n }\n\n return {\n text: res.result[0].text,\n entities: res.result[0].entities,\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"unpin-all-messages.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/messages/unpin-all-messages.ts"],"names":[],"mappings":";;;AAEA,qDAA0D;AAC1D,6DAA8D;AAC9D,8DAAsD;AAEtD;;;;GAIG;AACI,KAAK,UAAU,gBAAgB,CAClC,MAAuB,EACvB,MAAqB,EACrB,MAKC;IAED,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,IAAI,EAAE,CAAA;IAEhC,MAAM,IAAI,GAAG,MAAM,IAAA,6BAAW,EAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAE9C,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC;QAC1B,CAAC,EAAE,2BAA2B;QAC9B,IAAI;QACJ,QAAQ,EAAE,OAAO;KACpB,CAAC,CAAA;IAEF,IAAI,IAAA,kCAAkB,EAAC,IAAI,CAAC,EAAE;
|
|
1
|
+
{"version":3,"file":"unpin-all-messages.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/messages/unpin-all-messages.ts"],"names":[],"mappings":";;;AAEA,qDAA0D;AAC1D,6DAA8D;AAC9D,8DAAsD;AAEtD;;;;GAIG;AACI,KAAK,UAAU,gBAAgB,CAClC,MAAuB,EACvB,MAAqB,EACrB,MAKC;IAED,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,IAAI,EAAE,CAAA;IAEhC,MAAM,IAAI,GAAG,MAAM,IAAA,6BAAW,EAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAE9C,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC;QAC1B,CAAC,EAAE,2BAA2B;QAC9B,IAAI;QACJ,QAAQ,EAAE,OAAO;KACpB,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;AAzBD,4CAyBC","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 * Unpin all pinned messages in a chat.\n *\n * @param chatId Chat or user ID\n */\nexport async function unpinAllMessages(\n client: ITelegramClient,\n chatId: InputPeerLike,\n params?: {\n /**\n * For forums - unpin only messages from the given topic\n */\n topicId?: number\n },\n): Promise<void> {\n const { topicId } = params ?? {}\n\n const peer = await resolvePeer(client, chatId)\n\n const res = await client.call({\n _: 'messages.unpinAllMessages',\n peer,\n topMsgId: topicId,\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":"normalize-privacy-rules.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/misc/normalize-privacy-rules.ts"],"names":[],"mappings":";;;AAIA,mDAAkD;AAClD,wEAA+D;AAE/D;;;GAGG;AACI,KAAK,UAAU,sBAAsB,CACxC,MAAuB,EACvB,KAAyB;IAEzB,MAAM,GAAG,GAA8B,EAAE,CAAA;IAEzC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;
|
|
1
|
+
{"version":3,"file":"normalize-privacy-rules.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/misc/normalize-privacy-rules.ts"],"names":[],"mappings":";;;AAIA,mDAAkD;AAClD,wEAA+D;AAE/D;;;GAGG;AACI,KAAK,UAAU,sBAAsB,CACxC,MAAuB,EACvB,KAAyB;IAEzB,MAAM,GAAG,GAA8B,EAAE,CAAA;IAEzC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACvB,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;YACd,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YACd,SAAQ;QACZ,CAAC;QAED,IAAI,OAAO,IAAI,IAAI,EAAE,CAAC;YAClB,MAAM,KAAK,GAAG,MAAM,IAAA,sCAAe,EAAC,MAAM,EAAE,IAAI,CAAC,KAAK,EAAE,sBAAW,CAAC,CAAA;YAEpE,GAAG,CAAC,IAAI,CAAC;gBACL,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,6BAA6B,CAAC,CAAC,CAAC,gCAAgC;gBAChF,KAAK;aACR,CAAC,CAAA;YACF,SAAQ;QACZ,CAAC;QAED,IAAI,OAAO,IAAI,IAAI,EAAE,CAAC;YAClB,MAAM,KAAK,GAAG,MAAM,IAAA,sCAAe,EAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,CAAA;YAEvD,GAAG,CAAC,IAAI,CAAC;gBACL,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,wCAAwC,CAAC,CAAC,CAAC,2CAA2C;gBACtG,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;oBACtB,IAAI,WAAW,IAAI,IAAI;wBAAE,OAAO,IAAI,CAAC,SAAS,CAAA;oBAC9C,IAAI,QAAQ,IAAI,IAAI;wBAAE,OAAO,IAAI,CAAC,MAAM,CAAA;oBAExC,MAAM,IAAI,KAAK,CAAC,aAAa,CAAC,CAAA;gBAClC,CAAC,CAAC;aACL,CAAC,CAAA;YACF,SAAQ;QACZ,CAAC;IACL,CAAC;IAED,OAAO,GAAG,CAAA;AACd,CAAC;AAvCD,wDAuCC","sourcesContent":["import { tl } from '@mtcute/tl'\n\nimport { ITelegramClient } from '../../client.types.js'\nimport { InputPrivacyRule } from '../../types/index.js'\nimport { toInputUser } from '../../utils/index.js'\nimport { resolvePeerMany } from '../users/resolve-peer-many.js'\n\n/**\n * Normalize {@link InputPrivacyRule}[] to `tl.TypeInputPrivacyRule`,\n * resolving the peers if needed.\n */\nexport async function _normalizePrivacyRules(\n client: ITelegramClient,\n rules: InputPrivacyRule[],\n): Promise<tl.TypeInputPrivacyRule[]> {\n const res: tl.TypeInputPrivacyRule[] = []\n\n for (const rule of rules) {\n if ('_' in rule) {\n res.push(rule)\n continue\n }\n\n if ('users' in rule) {\n const users = await resolvePeerMany(client, rule.users, toInputUser)\n\n res.push({\n _: rule.allow ? 'inputPrivacyValueAllowUsers' : 'inputPrivacyValueDisallowUsers',\n users,\n })\n continue\n }\n\n if ('chats' in rule) {\n const chats = await resolvePeerMany(client, rule.chats)\n\n res.push({\n _: rule.allow ? 'inputPrivacyValueAllowChatParticipants' : 'inputPrivacyValueDisallowChatParticipants',\n chats: chats.map((peer) => {\n if ('channelId' in peer) return peer.channelId\n if ('chatId' in peer) return peer.chatId\n\n throw new Error('UNREACHABLE')\n }),\n })\n continue\n }\n }\n\n return res\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"normalize-text.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/misc/normalize-text.ts"],"names":[],"mappings":";;;AAIA,8DAAsD;AAEtD,MAAM,KAAK,GAAwB,CAAC,EAAE,EAAE,SAAS,CAAC,CAAA;AAElD,gBAAgB;AACT,KAAK,UAAU,mBAAmB,CACrC,MAAuB,EACvB,KAAiB;IAEjB,IAAI,CAAC,KAAK,EAAE;
|
|
1
|
+
{"version":3,"file":"normalize-text.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/misc/normalize-text.ts"],"names":[],"mappings":";;;AAIA,8DAAsD;AAEtD,MAAM,KAAK,GAAwB,CAAC,EAAE,EAAE,SAAS,CAAC,CAAA;AAElD,gBAAgB;AACT,KAAK,UAAU,mBAAmB,CACrC,MAAuB,EACvB,KAAiB;IAEjB,IAAI,CAAC,KAAK,EAAE,CAAC;QACT,OAAO,KAAK,CAAA;IAChB,CAAC;IAED,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC5B,OAAO,CAAC,KAAK,EAAE,SAAS,CAAC,CAAA;IAC7B,CAAC;IAED,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAA;IAChC,IAAI,CAAC,QAAQ;QAAE,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,CAAA;IAEvC,+CAA+C;IAC/C,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;QACzB,IAAI,GAAG,CAAC,CAAC,KAAK,0BAA0B,EAAE,CAAC;YACvC,IAAI,CAAC;gBACD,MAAM,SAAS,GAAG,MAAM,IAAA,6BAAW,EAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;gBAEvD,MAAM,IAAI,GAAG,GAAqD,CAAA;gBAClE,IAAI,CAAC,CAAC,GAAG,+BAA+B,CAAA;gBACxC,IAAI,CAAC,MAAM,GAAG,SAAS,CAAA;YAC3B,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACT,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,6CAA6C,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;YACjF,CAAC;QACL,CAAC;IACL,CAAC;IAED,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;AAC3B,CAAC;AA/BD,kDA+BC","sourcesContent":["import { tl } from '@mtcute/tl'\n\nimport { ITelegramClient } from '../../client.types.js'\nimport { InputText } from '../../types/misc/entities.js'\nimport { resolveUser } from '../users/resolve-peer.js'\n\nconst empty: [string, undefined] = ['', undefined]\n\n/** @internal */\nexport async function _normalizeInputText(\n client: ITelegramClient,\n input?: InputText,\n): Promise<[string, tl.TypeMessageEntity[] | undefined]> {\n if (!input) {\n return empty\n }\n\n if (typeof input === 'string') {\n return [input, undefined]\n }\n\n const { text, entities } = input\n if (!entities) return [text, undefined]\n\n // replace mentionName entities with input ones\n for (const ent of entities) {\n if (ent._ === 'messageEntityMentionName') {\n try {\n const inputPeer = await resolveUser(client, ent.userId)\n\n const ent_ = ent as unknown as tl.RawInputMessageEntityMentionName\n ent_._ = 'inputMessageEntityMentionName'\n ent_.userId = inputPeer\n } catch (e) {\n client.log.warn('Failed to resolve mention entity for %s: %s', ent.userId, e)\n }\n }\n }\n\n return [text, entities]\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"with-params.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/misc/with-params.ts"],"names":[],"mappings":";;;AAKA,QAAQ;AACR;;;;;;GAMG;AACH,SAAgB,UAAU,CAA4B,MAAS,EAAE,MAAsB;IACnF,MAAM,WAAW,GAAG,CAAC,OAAqB,EAAE,WAA4B,EAAE,EAAE,CACxE,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,GAAG,MAAM,EAAE,GAAG,WAAW,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAA;IAE9E,MAAM,KAAK,GAAM,IAAI,KAAK,CAAI,MAAM,EAAE;QAClC,GAAG,EAAE,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;YAC5B,IAAI,IAAI,KAAK,MAAM,EAAE;
|
|
1
|
+
{"version":3,"file":"with-params.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/misc/with-params.ts"],"names":[],"mappings":";;;AAKA,QAAQ;AACR;;;;;;GAMG;AACH,SAAgB,UAAU,CAA4B,MAAS,EAAE,MAAsB;IACnF,MAAM,WAAW,GAAG,CAAC,OAAqB,EAAE,WAA4B,EAAE,EAAE,CACxE,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,GAAG,MAAM,EAAE,GAAG,WAAW,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAA;IAE9E,MAAM,KAAK,GAAM,IAAI,KAAK,CAAI,MAAM,EAAE;QAClC,GAAG,EAAE,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;YAC5B,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;gBAClB,OAAO,WAAW,CAAA;YACtB,CAAC;YAED,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;gBACrB,qFAAqF;gBACrF,qDAAqD;gBACrD,oCAAoC;gBACpC,uCAAuC;gBACvC,OAAO,KAAK,CAAA;YAChB,CAAC;YAED,OAAO,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAA;QAC9C,CAAC;KACJ,CAAC,CAAA;IAEF,OAAO,KAAK,CAAA;AAChB,CAAC;AAvBD,gCAuBC","sourcesContent":["import { tl } from '@mtcute/tl'\n\nimport { RpcCallOptions } from '../../../network/index.js'\nimport { ITelegramClient } from '../../client.types.js'\n\n// @skip\n/**\n * Wrap a client so that all RPC calls will use the specified parameters.\n *\n * @param client Client to wrap\n * @param params RPC call parameters to use by default\n * @returns The wrapped client\n */\nexport function withParams<T extends ITelegramClient>(client: T, params: RpcCallOptions): T {\n const wrappedCall = (message: tl.RpcMethod, extraParams?: RpcCallOptions) =>\n client.call(message, extraParams ? { ...params, ...extraParams } : params)\n\n const proxy: T = new Proxy<T>(client, {\n get: (target, prop, receiver) => {\n if (prop === 'call') {\n return wrappedCall\n }\n\n if (prop === '_client') {\n // ideally we would wrap it as well, but it's not really needed, since TelegramClient\n // TelegramClient stores underlying client in _client\n // itself implements ITelegramClient\n // very much a hack, but i dont care :D\n return proxy\n }\n\n return Reflect.get(target, prop, receiver)\n },\n })\n\n return proxy\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"change-cloud-password.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/password/change-cloud-password.ts"],"names":[],"mappings":";;;AAAA,wDAA0D;AAG1D;;GAEG;AACI,KAAK,UAAU,mBAAmB,CACrC,MAAuB,EACvB,MAOC;IAED,MAAM,EAAE,eAAe,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,MAAM,CAAA;IAErD,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,qBAAqB,EAAE,CAAC,CAAA;IAE3D,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE;
|
|
1
|
+
{"version":3,"file":"change-cloud-password.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/password/change-cloud-password.ts"],"names":[],"mappings":";;;AAAA,wDAA0D;AAG1D;;GAEG;AACI,KAAK,UAAU,mBAAmB,CACrC,MAAuB,EACvB,MAOC;IAED,MAAM,EAAE,eAAe,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,MAAM,CAAA;IAErD,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,qBAAqB,EAAE,CAAC,CAAA;IAE3D,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;QACnB,MAAM,IAAI,2BAAe,CAAC,+BAA+B,CAAC,CAAA;IAC9D,CAAC;IAED,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,CAAA;IAExB,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,GAAG,EAAE,eAAe,CAAC,CAAA;IAClE,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,sBAAsB,CAAC,IAAI,EAAE,WAAW,CAAC,CAAA;IAEtE,MAAM,MAAM,CAAC,IAAI,CAAC;QACd,CAAC,EAAE,gCAAgC;QACnC,QAAQ,EAAE,MAAM;QAChB,WAAW,EAAE;YACT,CAAC,EAAE,+BAA+B;YAClC,OAAO,EAAE,IAAI;YACb,eAAe,EAAE,OAAO;YACxB,IAAI;SACP;KACJ,CAAC,CAAA;AACN,CAAC;AAlCD,kDAkCC","sourcesContent":["import { MtArgumentError } from '../../../types/errors.js'\nimport { ITelegramClient } from '../../client.types.js'\n\n/**\n * Change your 2FA password\n */\nexport async function changeCloudPassword(\n client: ITelegramClient,\n params: {\n /** Current password as plaintext */\n currentPassword: string\n /** New password as plaintext */\n newPassword: string\n /** Hint for the new password */\n hint?: string\n },\n): Promise<void> {\n const { currentPassword, newPassword, hint } = params\n\n const pwd = await client.call({ _: 'account.getPassword' })\n\n if (!pwd.hasPassword) {\n throw new MtArgumentError('Cloud password is not enabled')\n }\n\n const algo = pwd.newAlgo\n\n const oldSrp = await client.computeSrpParams(pwd, currentPassword)\n const newHash = await client.computeNewPasswordHash(algo, newPassword)\n\n await client.call({\n _: 'account.updatePasswordSettings',\n password: oldSrp,\n newSettings: {\n _: 'account.passwordInputSettings',\n newAlgo: algo,\n newPasswordHash: newHash,\n hint,\n },\n })\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"enable-cloud-password.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/password/enable-cloud-password.ts"],"names":[],"mappings":";;;AAAA,wDAA0D;AAC1D,0EAAgE;AAGhE;;;;;;;GAOG;AACI,KAAK,UAAU,mBAAmB,CACrC,MAAuB,EACvB,MAOC;IAED,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,CAAA;IAExC,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,qBAAqB,EAAE,CAAC,CAAA;IAE3D,IAAI,GAAG,CAAC,WAAW,EAAE;
|
|
1
|
+
{"version":3,"file":"enable-cloud-password.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/password/enable-cloud-password.ts"],"names":[],"mappings":";;;AAAA,wDAA0D;AAC1D,0EAAgE;AAGhE;;;;;;;GAOG;AACI,KAAK,UAAU,mBAAmB,CACrC,MAAuB,EACvB,MAOC;IAED,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,CAAA;IAExC,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,qBAAqB,EAAE,CAAC,CAAA;IAE3D,IAAI,GAAG,CAAC,WAAW,EAAE,CAAC;QAClB,MAAM,IAAI,2BAAe,CAAC,mCAAmC,CAAC,CAAA;IAClE,CAAC;IAED,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,CAAA;IACxB,IAAA,iCAAY,EAAC,qBAAqB,EAAE,IAAI,EAAE,mEAAmE,CAAC,CAAA;IAE9G,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,sBAAsB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;IAEnE,MAAM,MAAM,CAAC,IAAI,CAAC;QACd,CAAC,EAAE,gCAAgC;QACnC,QAAQ,EAAE,EAAE,CAAC,EAAE,yBAAyB,EAAE;QAC1C,WAAW,EAAE;YACT,CAAC,EAAE,+BAA+B;YAClC,OAAO,EAAE,IAAI;YACb,eAAe,EAAE,OAAO;YACxB,IAAI;YACJ,KAAK;SACR;KACJ,CAAC,CAAA;AACN,CAAC;AAnCD,kDAmCC","sourcesContent":["import { MtArgumentError } from '../../../types/errors.js'\nimport { assertTypeIs } from '../../../utils/type-assertions.js'\nimport { ITelegramClient } from '../../client.types.js'\n\n/**\n * Enable 2FA password on your account\n *\n * Note that if you pass `email`, `EmailUnconfirmedError` may be\n * thrown, and you should use {@link verifyPasswordEmail},\n * {@link resendPasswordEmail} or {@link cancelPasswordEmail},\n * and the call this method again\n */\nexport async function enableCloudPassword(\n client: ITelegramClient,\n params: {\n /** 2FA password as plaintext */\n password: string\n /** Hint for the new password */\n hint?: string\n /** Recovery email */\n email?: string\n },\n): Promise<void> {\n const { password, hint, email } = params\n\n const pwd = await client.call({ _: 'account.getPassword' })\n\n if (pwd.hasPassword) {\n throw new MtArgumentError('Cloud password is already enabled')\n }\n\n const algo = pwd.newAlgo\n assertTypeIs('account.getPassword', algo, 'passwordKdfAlgoSHA256SHA256PBKDF2HMACSHA512iter100000SHA256ModPow')\n\n const newHash = await client.computeNewPasswordHash(algo, password)\n\n await client.call({\n _: 'account.updatePasswordSettings',\n password: { _: 'inputCheckPasswordEmpty' },\n newSettings: {\n _: 'account.passwordInputSettings',\n newAlgo: algo,\n newPasswordHash: newHash,\n hint,\n email,\n },\n })\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"remove-cloud-password.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/password/remove-cloud-password.ts"],"names":[],"mappings":";;;AAAA,wDAA0D;AAG1D;;;;GAIG;AACI,KAAK,UAAU,mBAAmB,CAAC,MAAuB,EAAE,QAAgB;IAC/E,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,qBAAqB,EAAE,CAAC,CAAA;IAE3D,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE;
|
|
1
|
+
{"version":3,"file":"remove-cloud-password.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/password/remove-cloud-password.ts"],"names":[],"mappings":";;;AAAA,wDAA0D;AAG1D;;;;GAIG;AACI,KAAK,UAAU,mBAAmB,CAAC,MAAuB,EAAE,QAAgB;IAC/E,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,qBAAqB,EAAE,CAAC,CAAA;IAE3D,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;QACnB,MAAM,IAAI,2BAAe,CAAC,+BAA+B,CAAC,CAAA;IAC9D,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAA;IAE3D,MAAM,MAAM,CAAC,IAAI,CAAC;QACd,CAAC,EAAE,gCAAgC;QACnC,QAAQ,EAAE,MAAM;QAChB,WAAW,EAAE;YACT,CAAC,EAAE,+BAA+B;YAClC,OAAO,EAAE,EAAE,CAAC,EAAE,wBAAwB,EAAE;YACxC,eAAe,EAAE,IAAI,UAAU,CAAC,CAAC,CAAC;YAClC,IAAI,EAAE,EAAE;SACX;KACJ,CAAC,CAAA;AACN,CAAC;AAnBD,kDAmBC","sourcesContent":["import { MtArgumentError } from '../../../types/errors.js'\nimport { ITelegramClient } from '../../client.types.js'\n\n/**\n * Remove 2FA password from your account\n *\n * @param password 2FA password as plaintext\n */\nexport async function removeCloudPassword(client: ITelegramClient, password: string): Promise<void> {\n const pwd = await client.call({ _: 'account.getPassword' })\n\n if (!pwd.hasPassword) {\n throw new MtArgumentError('Cloud password is not enabled')\n }\n\n const oldSrp = await client.computeSrpParams(pwd, password)\n\n await client.call({\n _: 'account.updatePasswordSettings',\n password: oldSrp,\n newSettings: {\n _: 'account.passwordInputSettings',\n newAlgo: { _: 'passwordKdfAlgoUnknown' },\n newPasswordHash: new Uint8Array(0),\n hint: '',\n },\n })\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"can-apply-boost.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/premium/can-apply-boost.ts"],"names":[],"mappings":";;;AAGA,mEAAyD;AAQzD;;;;;;;;;;;GAWG;AACI,KAAK,UAAU,aAAa,CAAC,MAAuB;IACvD,MAAM,QAAQ,GAAG,MAAM,IAAA,uCAAe,EAAC,MAAM,CAAC,CAAA;IAE9C,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE;
|
|
1
|
+
{"version":3,"file":"can-apply-boost.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/premium/can-apply-boost.ts"],"names":[],"mappings":";;;AAGA,mEAAyD;AAQzD;;;;;;;;;;;GAWG;AACI,KAAK,UAAU,aAAa,CAAC,MAAuB;IACvD,MAAM,QAAQ,GAAG,MAAM,IAAA,uCAAe,EAAC,MAAM,CAAC,CAAA;IAE9C,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;QACnB,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAA;IAClE,CAAC;IAED,MAAM,UAAU,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAA;IAExD,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxB,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAA;IACzC,CAAC;IAED,MAAM,gBAAgB,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,aAAa,KAAK,IAAI,CAAC,CAAA;IAE3E,IAAI,gBAAgB,CAAC,MAAM,EAAE,CAAC;QAC1B,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,gBAAgB,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAK,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAA;IAC1F,CAAC;IAED,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAA;AAC9D,CAAC;AApBD,sCAoBC","sourcesContent":["import { ITelegramClient } from '../../client.types.js'\nimport { Chat } from '../../types/index.js'\nimport { BoostSlot } from '../../types/premium/boost-slot.js'\nimport { getMyBoostSlots } from './get-my-boost-slots.js'\n\n// @exported\nexport type CanApplyBoostResult =\n | { can: true; replace?: Chat[]; slots: BoostSlot[] }\n | { can: false; reason: 'need_premium'; slots: BoostSlot[] }\n | { can: false; reason: 'no_slots'; slots: BoostSlot[] }\n\n/**\n * Check if the current user can apply boost to some channel\n *\n * @returns\n * - `{ can: true }` if the user can apply boost\n * - `.replace` - {@link Chat}s that can be replaced with the current one.\n * If the user can apply boost without replacing any chats, this field will be `undefined`.\n * - `{ can: false }` if the user can't apply boost\n * - `.reason == \"no_slots\"` if the user has no available slots\n * - `.reason == \"need_premium\"` if the user needs Premium to boost\n * - In all cases, `slots` will contain all the current user's boost slots\n */\nexport async function canApplyBoost(client: ITelegramClient): Promise<CanApplyBoostResult> {\n const myBoosts = await getMyBoostSlots(client)\n\n if (!myBoosts.length) {\n return { can: false, reason: 'need_premium', slots: myBoosts }\n }\n\n const emptySlots = myBoosts.filter((it) => !it.occupied)\n\n if (emptySlots.length > 0) {\n return { can: true, slots: myBoosts }\n }\n\n const replaceableSlots = myBoosts.filter((it) => it.cooldownUntil === null)\n\n if (replaceableSlots.length) {\n return { can: true, replace: replaceableSlots.map((it) => it.chat!), slots: myBoosts }\n }\n\n return { can: false, reason: 'no_slots', slots: myBoosts }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"iter-boosters.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/premium/iter-boosters.ts"],"names":[],"mappings":";;;AAGA,8DAAsD;AACtD,mDAA2C;AAE3C;;;;;;GAMG;AACI,KAAK,SAAS,CAAC,CAAC,YAAY,CAC/B,MAAuB,EACvB,MAAqB,EACrB,MAeC;IAED,IAAI,CAAC,MAAM;QAAE,MAAM,GAAG,EAAE,CAAA;IACxB,MAAM,EAAE,KAAK,GAAG,QAAQ,EAAE,SAAS,GAAG,GAAG,EAAE,GAAG,MAAM,CAAA;IAEpD,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,CAAA;IACvB,IAAI,OAAO,GAAG,CAAC,CAAA;IAEf,MAAM,IAAI,GAAG,MAAM,IAAA,6BAAW,EAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAE9C,SAAS;
|
|
1
|
+
{"version":3,"file":"iter-boosters.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/premium/iter-boosters.ts"],"names":[],"mappings":";;;AAGA,8DAAsD;AACtD,mDAA2C;AAE3C;;;;;;GAMG;AACI,KAAK,SAAS,CAAC,CAAC,YAAY,CAC/B,MAAuB,EACvB,MAAqB,EACrB,MAeC;IAED,IAAI,CAAC,MAAM;QAAE,MAAM,GAAG,EAAE,CAAA;IACxB,MAAM,EAAE,KAAK,GAAG,QAAQ,EAAE,SAAS,GAAG,GAAG,EAAE,GAAG,MAAM,CAAA;IAEpD,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,CAAA;IACvB,IAAI,OAAO,GAAG,CAAC,CAAA;IAEf,MAAM,IAAI,GAAG,MAAM,IAAA,6BAAW,EAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAE9C,SAAS,CAAC;QACN,MAAM,GAAG,GAAG,MAAM,IAAA,yBAAS,EAAC,MAAM,EAAE,IAAI,EAAE;YACtC,MAAM;YACN,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,OAAO,EAAE,SAAS,CAAC;SAC9C,CAAC,CAAA;QAEF,KAAK,MAAM,OAAO,IAAI,GAAG,EAAE,CAAC;YACxB,MAAM,OAAO,CAAA;YAEb,IAAI,EAAE,OAAO,IAAI,KAAK;gBAAE,OAAM;QAClC,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,IAAI;YAAE,OAAM;QACrB,MAAM,GAAG,GAAG,CAAC,IAAI,CAAA;IACrB,CAAC;AACL,CAAC;AA3CD,oCA2CC","sourcesContent":["import { ITelegramClient } from '../../client.types.js'\nimport { InputPeerLike } from '../../types/index.js'\nimport { Boost } from '../../types/premium/boost.js'\nimport { resolvePeer } from '../users/resolve-peer.js'\nimport { getBoosts } from './get-boosts.js'\n\n/**\n * Iterate over boosters of a channel.\n *\n * Wrapper over {@link getBoosters}\n *\n * @returns IDs of stories that were removed\n */\nexport async function* iterBoosters(\n client: ITelegramClient,\n peerId: InputPeerLike,\n params?: Parameters<typeof getBoosts>[2] & {\n /**\n * Total number of boosters to fetch\n *\n * @default Infinity, i.e. fetch all boosters\n */\n limit?: number\n\n /**\n * Number of boosters to fetch per request\n * Usually you don't need to change this\n *\n * @default 100\n */\n chunkSize?: number\n },\n): AsyncIterableIterator<Boost> {\n if (!params) params = {}\n const { limit = Infinity, chunkSize = 100 } = params\n\n let { offset } = params\n let current = 0\n\n const peer = await resolvePeer(client, peerId)\n\n for (;;) {\n const res = await getBoosts(client, peer, {\n offset,\n limit: Math.min(limit - current, chunkSize),\n })\n\n for (const booster of res) {\n yield booster\n\n if (++current >= limit) return\n }\n\n if (!res.next) return\n offset = res.next\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-sticker-set.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/stickers/create-sticker-set.ts"],"names":[],"mappings":";;;AAGA,mDAQ6B;AAC7B,0FAAiF;AACjF,8DAAsD;AAEtD;;;;;;;;GAQG;AACI,KAAK,UAAU,gBAAgB,CAClC,MAAuB,EACvB,MAuEC;IAED,MAAM,KAAK,GAAG,MAAM,IAAA,6BAAW,EAAC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,CAAA;IAErD,MAAM,aAAa,GAAiC,EAAE,CAAA;IAEtD,IAAI,CAAC,GAAG,CAAC,CAAA;IAET,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,QAAQ,EAAE;
|
|
1
|
+
{"version":3,"file":"create-sticker-set.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/stickers/create-sticker-set.ts"],"names":[],"mappings":";;;AAGA,mDAQ6B;AAC7B,0FAAiF;AACjF,8DAAsD;AAEtD;;;;;;;;GAQG;AACI,KAAK,UAAU,gBAAgB,CAClC,MAAuB,EACvB,MAuEC;IAED,MAAM,KAAK,GAAG,MAAM,IAAA,6BAAW,EAAC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,CAAA;IAErD,MAAM,aAAa,GAAiC,EAAE,CAAA;IAEtD,IAAI,CAAC,GAAG,CAAC,CAAA;IAET,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QACpC,MAAM,gBAAgB,GAAG,MAAM,CAAC,gBAAgB,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAA;QAE/D,aAAa,CAAC,IAAI,CAAC;YACf,CAAC,EAAE,qBAAqB;YACxB,QAAQ,EAAE,MAAM,IAAA,wDAAwB,EAAC,MAAM,EAAE,OAAO,CAAC,IAAI,EAAE;gBAC3D,gBAAgB;aACnB,CAAC;YACF,KAAK,EAAE,OAAO,CAAC,MAAM;YACrB,UAAU,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;gBAC9B;oBACI,CAAC,EAAE,YAAY;oBACf,CAAC,EAAE,oCAAyB,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC;oBACxD,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;oBACzB,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;oBACzB,IAAI,EAAE,OAAO,CAAC,YAAY,CAAC,KAAK;iBACnC,CAAC,CAAC;gBACH,SAAS;SAChB,CAAC,CAAA;QAEF,CAAC,IAAI,CAAC,CAAA;IACV,CAAC;IAED,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC;QAC1B,CAAC,EAAE,2BAA2B;QAC9B,QAAQ,EAAE,MAAM,CAAC,UAAU,KAAK,UAAU;QAC1C,MAAM,EAAE,MAAM,CAAC,UAAU,KAAK,OAAO;QACrC,KAAK,EAAE,MAAM,CAAC,IAAI,KAAK,MAAM;QAC7B,MAAM,EAAE,MAAM,CAAC,IAAI,KAAK,OAAO;QAC/B,SAAS,EAAE,MAAM,CAAC,QAAQ;QAC1B,MAAM,EAAE,KAAK;QACb,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,SAAS,EAAE,MAAM,CAAC,SAAS;QAC3B,QAAQ,EAAE,aAAa;QACvB,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,IAAA,wDAAwB,EAAC,MAAM,EAAE,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS;KAC7F,CAAC,CAAA;IAEF,OAAO,IAAI,qBAAU,CAAC,GAAG,CAAC,CAAA;AAC9B,CAAC;AAvHD,4CAuHC","sourcesContent":["import { tl } from '@mtcute/tl'\n\nimport { ITelegramClient } from '../../client.types.js'\nimport {\n InputFileLike,\n InputPeerLike,\n InputStickerSetItem,\n MASK_POSITION_POINT_TO_TL,\n StickerSet,\n StickerSourceType,\n StickerType,\n} from '../../types/index.js'\nimport { _normalizeFileToDocument } from '../files/normalize-file-to-document.js'\nimport { resolveUser } from '../users/resolve-peer.js'\n\n/**\n * Create a new sticker set.\n *\n * This is the only sticker-related method that\n * users can use (they allowed it with the \"import stickers\" update)\n *\n * @param params\n * @returns Newly created sticker set\n */\nexport async function createStickerSet(\n client: ITelegramClient,\n params: {\n /**\n * Owner of the sticker set (must be user).\n *\n * If this pack is created from a user account,\n * can only be `\"self\"`\n */\n owner: InputPeerLike\n\n /**\n * Title of the sticker set (1-64 chars)\n */\n title: string\n\n /**\n * Short name of the sticker set.\n * Can only contain English letters, digits and underscores\n * (i.e. must match `/^[a-zA-Z0-9_]+$/),\n * and (for bots) must end with `_by_<bot username>`\n * (`<bot username>` is case-insensitive).\n */\n shortName: string\n\n /**\n * Type of the stickers in this set.\n *\n * @default `sticker`, i.e. regular stickers.\n */\n type?: StickerType\n\n /**\n * File source type for the stickers in this set.\n *\n * @default `static`, i.e. regular WEBP stickers.\n */\n sourceType?: StickerSourceType\n\n /**\n * Whether to create \"adaptive\" emoji set.\n *\n * Color of the emoji will be changed depending on the text color.\n * Only works for TGS-based emoji stickers\n */\n adaptive?: boolean\n\n /**\n * List of stickers to be immediately added into the pack.\n * There must be at least one sticker in this list.\n */\n stickers: InputStickerSetItem[]\n\n /**\n * Thumbnail for the set.\n *\n * The file must be either a `.png` file\n * up to 128kb, having size of exactly `100x100` px,\n * or a `.tgs` file up to 32kb.\n *\n * If not set, Telegram will use the first sticker\n * in the sticker set as the thumbnail\n */\n thumb?: InputFileLike\n\n /**\n * Upload progress callback.\n *\n * @param idx Index of the sticker\n * @param uploaded Number of bytes uploaded\n * @param total Total file size\n */\n progressCallback?: (idx: number, uploaded: number, total: number) => void\n },\n): Promise<StickerSet> {\n const owner = await resolveUser(client, params.owner)\n\n const inputStickers: tl.TypeInputStickerSetItem[] = []\n\n let i = 0\n\n for (const sticker of params.stickers) {\n const progressCallback = params.progressCallback?.bind(null, i)\n\n inputStickers.push({\n _: 'inputStickerSetItem',\n document: await _normalizeFileToDocument(client, sticker.file, {\n progressCallback,\n }),\n emoji: sticker.emojis,\n maskCoords: sticker.maskPosition ?\n {\n _: 'maskCoords',\n n: MASK_POSITION_POINT_TO_TL[sticker.maskPosition.point],\n x: sticker.maskPosition.x,\n y: sticker.maskPosition.y,\n zoom: sticker.maskPosition.scale,\n } :\n undefined,\n })\n\n i += 1\n }\n\n const res = await client.call({\n _: 'stickers.createStickerSet',\n animated: params.sourceType === 'animated',\n videos: params.sourceType === 'video',\n masks: params.type === 'mask',\n emojis: params.type === 'emoji',\n textColor: params.adaptive,\n userId: owner,\n title: params.title,\n shortName: params.shortName,\n stickers: inputStickers,\n thumb: params.thumb ? await _normalizeFileToDocument(client, params.thumb, {}) : undefined,\n })\n\n return new StickerSet(res)\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delete-sticker-from-set.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/stickers/delete-sticker-from-set.ts"],"names":[],"mappings":";;;AAAA,6CAA0C;AAI1C,mDAAiD;AACjD,uEAAsE;AAEtE;;;;;;;;;;GAUG;AACI,KAAK,UAAU,oBAAoB,CACtC,MAAuB,EACvB,OAA2E;IAE3E,IAAI,kBAAQ,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE;
|
|
1
|
+
{"version":3,"file":"delete-sticker-from-set.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/stickers/delete-sticker-from-set.ts"],"names":[],"mappings":";;;AAAA,6CAA0C;AAI1C,mDAAiD;AACjD,uEAAsE;AAEtE;;;;;;;;;;GAUG;AACI,KAAK,UAAU,oBAAoB,CACtC,MAAuB,EACvB,OAA2E;IAE3E,IAAI,kBAAQ,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,CAAC;QACjC,OAAO,GAAG,IAAA,0CAAqB,EAAC,OAAO,CAAC,CAAA;IAC5C,CAAC;IAED,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC;QAC1B,CAAC,EAAE,+BAA+B;QAClC,OAAO;KACV,CAAC,CAAA;IAEF,OAAO,IAAI,qBAAU,CAAC,GAAG,CAAC,CAAA;AAC9B,CAAC;AAdD,oDAcC","sourcesContent":["import { tdFileId } from '@mtcute/file-id'\nimport { tl } from '@mtcute/tl'\n\nimport { ITelegramClient } from '../../client.types.js'\nimport { StickerSet } from '../../types/index.js'\nimport { fileIdToInputDocument } from '../../utils/convert-file-id.js'\n\n/**\n * Delete a sticker from a sticker set\n *\n * Only for bots, and the sticker set must\n * have been created by this bot.\n *\n * @param sticker\n * TDLib and Bot API compatible File ID, or a\n * TL object representing a sticker to be removed\n * @returns Modfiied sticker set\n */\nexport async function deleteStickerFromSet(\n client: ITelegramClient,\n sticker: string | tdFileId.RawFullRemoteFileLocation | tl.TypeInputDocument,\n): Promise<StickerSet> {\n if (tdFileId.isFileIdLike(sticker)) {\n sticker = fileIdToInputDocument(sticker)\n }\n\n const res = await client.call({\n _: 'stickers.removeStickerFromSet',\n sticker,\n })\n\n return new StickerSet(res)\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-custom-emojis.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/stickers/get-custom-emojis.ts"],"names":[],"mappings":";;;AAEA,wDAA+D;AAE/D,gEAAsD;AACtD,0EAAgE;AAGhE,2EAAmE;AAEnE;;;;GAIG;AACI,KAAK,UAAU,eAAe,CAAC,MAAuB,EAAE,GAAc;IACzE,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC;QAC1B,CAAC,EAAE,kCAAkC;QACrC,UAAU,EAAE,GAAG;KAClB,CAAC,CAAA;IAEF,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;QAClB,IAAA,iCAAY,EAAC,iBAAiB,EAAE,EAAE,EAAE,UAAU,CAAC,CAAA;QAE/C,MAAM,GAAG,GAAG,IAAA,iCAAa,EAAC,EAAE,CAAC,CAAA;QAE7B,IAAI,GAAG,CAAC,IAAI,KAAK,SAAS,EAAE;
|
|
1
|
+
{"version":3,"file":"get-custom-emojis.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/stickers/get-custom-emojis.ts"],"names":[],"mappings":";;;AAEA,wDAA+D;AAE/D,gEAAsD;AACtD,0EAAgE;AAGhE,2EAAmE;AAEnE;;;;GAIG;AACI,KAAK,UAAU,eAAe,CAAC,MAAuB,EAAE,GAAc;IACzE,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC;QAC1B,CAAC,EAAE,kCAAkC;QACrC,UAAU,EAAE,GAAG;KAClB,CAAC,CAAA;IAEF,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;QAClB,IAAA,iCAAY,EAAC,iBAAiB,EAAE,EAAE,EAAE,UAAU,CAAC,CAAA;QAE/C,MAAM,GAAG,GAAG,IAAA,iCAAa,EAAC,EAAE,CAAC,CAAA;QAE7B,IAAI,GAAG,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YACzB,MAAM,IAAI,gCAAoB,CAAC,iBAAiB,EAAE,SAAS,EAAE,GAAG,CAAC,IAAI,CAAC,CAAA;QAC1E,CAAC;QAED,OAAO,GAAG,CAAA;IACd,CAAC,CAAC,CAAA;AACN,CAAC;AAjBD,0CAiBC;AAED;;GAEG;AACI,KAAK,UAAU,2BAA2B,CAC7C,MAAuB,EACvB,QAA6B;IAE7B,MAAM,GAAG,GAAG,IAAI,uBAAO,EAAE,CAAA;IAEzB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC;QAAE,QAAQ,GAAG,CAAC,QAAQ,CAAC,CAAA;IAEnD,KAAK,MAAM,EAAE,GAAG,EAAE,IAAI,QAAQ,EAAE,CAAC;QAC7B,IAAI,GAAG,CAAC,CAAC,KAAK,gBAAgB,IAAI,CAAC,GAAG,CAAC,QAAQ;YAAE,SAAQ;QAEzD,KAAK,MAAM,MAAM,IAAI,GAAG,CAAC,QAAQ,EAAE,CAAC;YAChC,IAAI,MAAM,CAAC,CAAC,KAAK,0BAA0B,EAAE,CAAC;gBAC1C,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;YAC9B,CAAC;QACL,CAAC;IACL,CAAC;IAED,MAAM,GAAG,GAAG,GAAG,CAAC,OAAO,EAAE,CAAA;IACzB,IAAI,CAAC,GAAG,CAAC,MAAM;QAAE,OAAO,EAAE,CAAA;IAE1B,OAAO,eAAe,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;AACvC,CAAC;AAtBD,kEAsBC","sourcesContent":["import { tl } from '@mtcute/tl'\n\nimport { MtTypeAssertionError } from '../../../types/errors.js'\nimport { MaybeArray } from '../../../types/utils.js'\nimport { LongSet } from '../../../utils/long-utils.js'\nimport { assertTypeIs } from '../../../utils/type-assertions.js'\nimport { ITelegramClient } from '../../client.types.js'\nimport { Message, Sticker } from '../../types/index.js'\nimport { parseDocument } from '../../types/media/document-utils.js'\n\n/**\n * Get custom emoji stickers by their IDs\n *\n * @param ids IDs of the stickers (as defined in {@link MessageEntity.emojiId})\n */\nexport async function getCustomEmojis(client: ITelegramClient, ids: tl.Long[]): Promise<Sticker[]> {\n const res = await client.call({\n _: 'messages.getCustomEmojiDocuments',\n documentId: ids,\n })\n\n return res.map((it) => {\n assertTypeIs('getCustomEmojis', it, 'document')\n\n const doc = parseDocument(it)\n\n if (doc.type !== 'sticker') {\n throw new MtTypeAssertionError('getCustomEmojis', 'sticker', doc.type)\n }\n\n return doc\n })\n}\n\n/**\n * Given one or more messages, extract all unique custom emojis from it and fetch them\n */\nexport async function getCustomEmojisFromMessages(\n client: ITelegramClient,\n messages: MaybeArray<Message>,\n): Promise<Sticker[]> {\n const set = new LongSet()\n\n if (!Array.isArray(messages)) messages = [messages]\n\n for (const { raw } of messages) {\n if (raw._ === 'messageService' || !raw.entities) continue\n\n for (const entity of raw.entities) {\n if (entity._ === 'messageEntityCustomEmoji') {\n set.add(entity.documentId)\n }\n }\n }\n\n const arr = set.toArray()\n if (!arr.length) return []\n\n return getCustomEmojis(client, arr)\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"move-sticker-in-set.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/stickers/move-sticker-in-set.ts"],"names":[],"mappings":";;;AAAA,6CAA0C;AAI1C,mDAAiD;AACjD,uEAAsE;AAEtE;;;;;;;;;;;;GAYG;AAEI,KAAK,UAAU,gBAAgB,CAClC,MAAuB,EACvB,OAA2E,EAC3E,QAAgB;IAEhB,IAAI,kBAAQ,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE;
|
|
1
|
+
{"version":3,"file":"move-sticker-in-set.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/stickers/move-sticker-in-set.ts"],"names":[],"mappings":";;;AAAA,6CAA0C;AAI1C,mDAAiD;AACjD,uEAAsE;AAEtE;;;;;;;;;;;;GAYG;AAEI,KAAK,UAAU,gBAAgB,CAClC,MAAuB,EACvB,OAA2E,EAC3E,QAAgB;IAEhB,IAAI,kBAAQ,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,CAAC;QACjC,OAAO,GAAG,IAAA,0CAAqB,EAAC,OAAO,CAAC,CAAA;IAC5C,CAAC;IAED,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC;QAC1B,CAAC,EAAE,gCAAgC;QACnC,OAAO;QACP,QAAQ;KACX,CAAC,CAAA;IAEF,OAAO,IAAI,qBAAU,CAAC,GAAG,CAAC,CAAA;AAC9B,CAAC;AAhBD,4CAgBC","sourcesContent":["import { tdFileId } from '@mtcute/file-id'\nimport { tl } from '@mtcute/tl'\n\nimport { ITelegramClient } from '../../client.types.js'\nimport { StickerSet } from '../../types/index.js'\nimport { fileIdToInputDocument } from '../../utils/convert-file-id.js'\n\n/**\n * Move a sticker in a sticker set\n * to another position\n *\n * Only for bots, and the sticker set must\n * have been created by this bot.\n *\n * @param sticker\n * TDLib and Bot API compatible File ID, or a\n * TL object representing a sticker to be removed\n * @param position New sticker position (starting from 0)\n * @returns Modfiied sticker set\n */\n\nexport async function moveStickerInSet(\n client: ITelegramClient,\n sticker: string | tdFileId.RawFullRemoteFileLocation | tl.TypeInputDocument,\n position: number,\n): Promise<StickerSet> {\n if (tdFileId.isFileIdLike(sticker)) {\n sticker = fileIdToInputDocument(sticker)\n }\n\n const res = await client.call({\n _: 'stickers.changeStickerPosition',\n sticker,\n position,\n })\n\n return new StickerSet(res)\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"can-send-story.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/stories/can-send-story.ts"],"names":[],"mappings":";;;AAAA,mCAA+B;AAI/B,8DAAsD;AAKtD;;;;;;;;GAQG;AACI,KAAK,UAAU,YAAY,CAAC,MAAuB,EAAE,MAAqB;IAC7E,IAAI;
|
|
1
|
+
{"version":3,"file":"can-send-story.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/stories/can-send-story.ts"],"names":[],"mappings":";;;AAAA,mCAA+B;AAI/B,8DAAsD;AAKtD;;;;;;;;GAQG;AACI,KAAK,UAAU,YAAY,CAAC,MAAuB,EAAE,MAAqB;IAC7E,IAAI,CAAC;QACD,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC;YAC1B,CAAC,EAAE,sBAAsB;YACzB,IAAI,EAAE,MAAM,IAAA,6BAAW,EAAC,MAAM,EAAE,MAAM,CAAC;SAC1C,CAAC,CAAA;QACF,IAAI,CAAC,GAAG;YAAE,OAAO,YAAY,CAAA;QAE7B,OAAO,IAAI,CAAA;IACf,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACT,IAAI,OAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,qBAAqB,CAAC,EAAE,CAAC;YAC3C,OAAO,YAAY,CAAA;QACvB,CAAC;QAED,IAAI,OAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,iBAAiB,CAAC,EAAE,CAAC;YACvC,OAAO,aAAa,CAAA;QACxB,CAAC;QAED,MAAM,CAAC,CAAA;IACX,CAAC;AACL,CAAC;AApBD,oCAoBC","sourcesContent":["import { tl } from '@mtcute/tl'\n\nimport { ITelegramClient } from '../../client.types.js'\nimport { InputPeerLike } from '../../types/index.js'\nimport { resolvePeer } from '../users/resolve-peer.js'\n\n// @exported\nexport type CanSendStoryResult = true | 'need_admin' | 'need_boosts'\n\n/**\n * Check if the current user can post stories as a given peer\n *\n * @param peerId Peer ID whose stories to fetch\n * @returns\n * - `true` if the user can post stories\n * - `\"need_admin\"` if the user is not an admin in the chat\n * - `\"need_boosts\"` if the channel doesn't have enough boosts\n */\nexport async function canSendStory(client: ITelegramClient, peerId: InputPeerLike): Promise<CanSendStoryResult> {\n try {\n const res = await client.call({\n _: 'stories.canSendStory',\n peer: await resolvePeer(client, peerId),\n })\n if (!res) return 'need_admin'\n\n return true\n } catch (e) {\n if (tl.RpcError.is(e, 'CHAT_ADMIN_REQUIRED')) {\n return 'need_admin'\n }\n\n if (tl.RpcError.is(e, 'BOOSTS_REQUIRED')) {\n return 'need_boosts'\n }\n\n throw e\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"edit-story.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/stories/edit-story.ts"],"names":[],"mappings":";;;AAIA,gFAAwE;AACxE,mFAA2E;AAC3E,iEAA+D;AAC/D,8DAAsD;AACtD,2DAAwD;AAExD;;;;GAIG;AACI,KAAK,UAAU,SAAS,CAC3B,MAAuB,EACvB,MAkCC;IAED,MAAM,EAAE,EAAE,EAAE,IAAI,GAAG,IAAI,EAAE,mBAAmB,EAAE,GAAG,MAAM,CAAA;IAEvD,IAAI,OAAO,GAAuB,SAAS,CAAA;IAC3C,IAAI,QAA4C,CAAA;IAChD,IAAI,KAAK,GAAkC,SAAS,CAAA;IAEpD,IAAI,MAAM,CAAC,KAAK,EAAE;
|
|
1
|
+
{"version":3,"file":"edit-story.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/stories/edit-story.ts"],"names":[],"mappings":";;;AAIA,gFAAwE;AACxE,mFAA2E;AAC3E,iEAA+D;AAC/D,8DAAsD;AACtD,2DAAwD;AAExD;;;;GAIG;AACI,KAAK,UAAU,SAAS,CAC3B,MAAuB,EACvB,MAkCC;IAED,MAAM,EAAE,EAAE,EAAE,IAAI,GAAG,IAAI,EAAE,mBAAmB,EAAE,GAAG,MAAM,CAAA;IAEvD,IAAI,OAAO,GAAuB,SAAS,CAAA;IAC3C,IAAI,QAA4C,CAAA;IAChD,IAAI,KAAK,GAAkC,SAAS,CAAA;IAEpD,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QACf,KAAK,GAAG,MAAM,IAAA,+CAAoB,EAAC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,CAAA;QAExD,wEAAwE;QACxE,+EAA+E;QAC/E,IAAI,SAAS,IAAI,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,KAAK,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YAClE,CAAC,OAAO,EAAE,QAAQ,CAAC,GAAG,MAAM,IAAA,uCAAmB,EAAC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;QACjF,CAAC;IACL,CAAC;IAED,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QACjB,CAAC,OAAO,EAAE,QAAQ,CAAC,GAAG,MAAM,IAAA,uCAAmB,EAAC,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,CAAA;IAC3E,CAAC;IAED,MAAM,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,IAAA,mDAAsB,EAAC,MAAM,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IAEhH,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC;QAC1B,CAAC,EAAE,mBAAmB;QACtB,IAAI,EAAE,MAAM,IAAA,6BAAW,EAAC,MAAM,EAAE,IAAI,CAAC;QACrC,EAAE;QACF,KAAK;QACL,UAAU,EAAE,mBAAmB;QAC/B,OAAO;QACP,QAAQ;QACR,YAAY;KACf,CAAC,CAAA;IAEF,OAAO,IAAA,sCAAkB,EAAC,MAAM,EAAE,GAAG,CAAC,CAAA;AAC1C,CAAC;AAxED,8BAwEC","sourcesContent":["import { tl } from '@mtcute/tl'\n\nimport { ITelegramClient } from '../../client.types.js'\nimport { InputMediaLike, InputPeerLike, InputPrivacyRule, InputText, Story } from '../../types/index.js'\nimport { _normalizeInputMedia } from '../files/normalize-input-media.js'\nimport { _normalizePrivacyRules } from '../misc/normalize-privacy-rules.js'\nimport { _normalizeInputText } from '../misc/normalize-text.js'\nimport { resolvePeer } from '../users/resolve-peer.js'\nimport { _findStoryInUpdate } from './find-in-update.js'\n\n/**\n * Edit a sent story\n *\n * @returns Edited story\n */\nexport async function editStory(\n client: ITelegramClient,\n params: {\n /**\n * Story ID to edit\n */\n id: number\n\n /**\n * Peer ID to whose story to edit\n *\n * @default `self`\n */\n peer?: InputPeerLike\n\n /**\n * Media contained in a story. Currently can only be a photo or a video.\n */\n media?: InputMediaLike\n\n /**\n * Override caption for {@link media}\n */\n caption?: InputText\n\n /**\n * Interactive elements to add to the story\n */\n interactiveElements?: tl.TypeMediaArea[]\n\n /**\n * Privacy rules to apply to the story\n *\n * @default \"Everyone\"\n */\n privacyRules?: InputPrivacyRule[]\n },\n): Promise<Story> {\n const { id, peer = 'me', interactiveElements } = params\n\n let caption: string | undefined = undefined\n let entities: tl.TypeMessageEntity[] | undefined\n let media: tl.TypeInputMedia | undefined = undefined\n\n if (params.media) {\n media = await _normalizeInputMedia(client, params.media)\n\n // if there's no caption in input media (i.e. not present or undefined),\n // user wants to keep current caption, thus `content` needs to stay `undefined`\n if ('caption' in params.media && params.media.caption !== undefined) {\n [caption, entities] = await _normalizeInputText(client, params.media.caption)\n }\n }\n\n if (params.caption) {\n [caption, entities] = await _normalizeInputText(client, params.caption)\n }\n\n const privacyRules = params.privacyRules ? await _normalizePrivacyRules(client, params.privacyRules) : undefined\n\n const res = await client.call({\n _: 'stories.editStory',\n peer: await resolvePeer(client, peer),\n id,\n media,\n mediaAreas: interactiveElements,\n caption,\n entities,\n privacyRules,\n })\n\n return _findStoryInUpdate(client, res)\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"find-in-update.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/stories/find-in-update.ts"],"names":[],"mappings":";;;AAEA,wDAA+D;AAC/D,0EAA+E;AAE/E,mDAAwD;AACxD,qDAA6D;AAE7D,gBAAgB;AAChB,SAAgB,kBAAkB,CAAC,MAAuB,EAAE,GAAmB;IAC3E,IAAA,+BAAoB,EAAC,oBAAoB,EAAE,GAAG,CAAC,CAAA;IAE/C,MAAM,CAAC,kBAAkB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;IAEpC,MAAM,KAAK,GAAG,qBAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAClC,MAAM,WAAW,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,IAAA,kCAAa,EAAC,GAAG,EAAE,aAAa,CAAC,CAAC,CAAA;IAEvE,IAAI,CAAC,WAAW,EAAE;
|
|
1
|
+
{"version":3,"file":"find-in-update.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/stories/find-in-update.ts"],"names":[],"mappings":";;;AAEA,wDAA+D;AAC/D,0EAA+E;AAE/E,mDAAwD;AACxD,qDAA6D;AAE7D,gBAAgB;AAChB,SAAgB,kBAAkB,CAAC,MAAuB,EAAE,GAAmB;IAC3E,IAAA,+BAAoB,EAAC,oBAAoB,EAAE,GAAG,CAAC,CAAA;IAE/C,MAAM,CAAC,kBAAkB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;IAEpC,MAAM,KAAK,GAAG,qBAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAClC,MAAM,WAAW,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,IAAA,kCAAa,EAAC,GAAG,EAAE,aAAa,CAAC,CAAC,CAAA;IAEvE,IAAI,CAAC,WAAW,EAAE,CAAC;QACf,MAAM,IAAI,gCAAoB,CAAC,oCAAoC,EAAE,aAAa,EAAE,MAAM,CAAC,CAAA;IAC/F,CAAC;IAED,IAAA,iCAAY,EAAC,mBAAmB,EAAE,WAAW,CAAC,KAAK,EAAE,WAAW,CAAC,CAAA;IAEjE,OAAO,IAAI,gBAAK,CAAC,WAAW,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;AAC9C,CAAC;AAfD,gDAeC","sourcesContent":["import { tl } from '@mtcute/tl'\n\nimport { MtTypeAssertionError } from '../../../types/errors.js'\nimport { assertTypeIs, hasValueAtKey } from '../../../utils/type-assertions.js'\nimport { ITelegramClient } from '../../client.types.js'\nimport { PeersIndex, Story } from '../../types/index.js'\nimport { assertIsUpdatesGroup } from '../../updates/utils.js'\n\n/** @internal */\nexport function _findStoryInUpdate(client: ITelegramClient, res: tl.TypeUpdates): Story {\n assertIsUpdatesGroup('_findStoryInUpdate', res)\n\n client.handleClientUpdate(res, true)\n\n const peers = PeersIndex.from(res)\n const updateStory = res.updates.find(hasValueAtKey('_', 'updateStory'))\n\n if (!updateStory) {\n throw new MtTypeAssertionError('_findStoryInUpdate (@ .updates[*])', 'updateStory', 'none')\n }\n\n assertTypeIs('updateStory.story', updateStory.story, 'storyItem')\n\n return new Story(updateStory.story, peers)\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hide-my-stories-views.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/stories/hide-my-stories-views.ts"],"names":[],"mappings":";;;AAAA,wDAA+D;AAC/D,0EAAiE;AAEjE,yEAAwE;AACxE,qDAA6D;AAE7D;;;;GAIG;AACI,KAAK,UAAU,kBAAkB,CACpC,MAAuB,EACvB,MAcC;IAED,MAAM,EAAE,IAAI,GAAG,IAAI,EAAE,MAAM,GAAG,IAAI,EAAE,GAAG,MAAM,IAAI,EAAE,CAAA;IAEnD,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC;QAC1B,CAAC,EAAE,6BAA6B;QAChC,IAAI;QACJ,MAAM;KACT,CAAC,CAAA;IAEF,IAAA,+BAAoB,EAAC,oBAAoB,EAAE,GAAG,CAAC,CAAA;IAC/C,MAAM,CAAC,kBAAkB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;IAEpC,MAAM,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,IAAA,kCAAa,EAAC,GAAG,EAAE,0BAA0B,CAAC,CAAC,CAAA;IAE5E,IAAI,CAAC,GAAG,EAAE;
|
|
1
|
+
{"version":3,"file":"hide-my-stories-views.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/stories/hide-my-stories-views.ts"],"names":[],"mappings":";;;AAAA,wDAA+D;AAC/D,0EAAiE;AAEjE,yEAAwE;AACxE,qDAA6D;AAE7D;;;;GAIG;AACI,KAAK,UAAU,kBAAkB,CACpC,MAAuB,EACvB,MAcC;IAED,MAAM,EAAE,IAAI,GAAG,IAAI,EAAE,MAAM,GAAG,IAAI,EAAE,GAAG,MAAM,IAAI,EAAE,CAAA;IAEnD,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC;QAC1B,CAAC,EAAE,6BAA6B;QAChC,IAAI;QACJ,MAAM;KACT,CAAC,CAAA;IAEF,IAAA,+BAAoB,EAAC,oBAAoB,EAAE,GAAG,CAAC,CAAA;IAC/C,MAAM,CAAC,kBAAkB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;IAEpC,MAAM,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,IAAA,kCAAa,EAAC,GAAG,EAAE,0BAA0B,CAAC,CAAC,CAAA;IAE5E,IAAI,CAAC,GAAG,EAAE,CAAC;QACP,MAAM,IAAI,gCAAoB,CAAC,uCAAuC,EAAE,0BAA0B,EAAE,MAAM,CAAC,CAAA;IAC/G,CAAC;IAED,OAAO,IAAI,oCAAkB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAA;AAClD,CAAC;AApCD,gDAoCC","sourcesContent":["import { MtTypeAssertionError } from '../../../types/errors.js'\nimport { hasValueAtKey } from '../../../utils/type-assertions.js'\nimport { ITelegramClient } from '../../client.types.js'\nimport { StoriesStealthMode } from '../../types/stories/stealth-mode.js'\nimport { assertIsUpdatesGroup } from '../../updates/utils.js'\n\n/**\n * Hide own stories views (activate so called \"stealth mode\")\n *\n * Currently has a cooldown of 1 hour, and throws FLOOD_WAIT error if it is on cooldown.\n */\nexport async function hideMyStoriesViews(\n client: ITelegramClient,\n params?: {\n /**\n * Whether to hide views from the last 5 minutes\n *\n * @default true\n */\n past?: boolean\n\n /**\n * Whether to hide views for the next 25 minutes\n *\n * @default true\n */\n future?: boolean\n },\n): Promise<StoriesStealthMode> {\n const { past = true, future = true } = params ?? {}\n\n const res = await client.call({\n _: 'stories.activateStealthMode',\n past,\n future,\n })\n\n assertIsUpdatesGroup('hideMyStoriesViews', res)\n client.handleClientUpdate(res, true)\n\n const upd = res.updates.find(hasValueAtKey('_', 'updateStoriesStealthMode'))\n\n if (!upd) {\n throw new MtTypeAssertionError('hideMyStoriesViews (@ res.updates[*])', 'updateStoriesStealthMode', 'none')\n }\n\n return new StoriesStealthMode(upd.stealthMode)\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"iter-all-stories.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/stories/iter-all-stories.ts"],"names":[],"mappings":";;;AAEA,6DAAoD;AAEpD;;;;GAIG;AACI,KAAK,SAAS,CAAC,CAAC,cAAc,CACjC,MAAuB,EACvB,MAOC;IAED,IAAI,CAAC,MAAM;QAAE,MAAM,GAAG,EAAE,CAAA;IAExB,MAAM,EAAE,QAAQ,EAAE,KAAK,GAAG,QAAQ,EAAE,GAAG,MAAM,CAAA;IAC7C,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,CAAA;IACvB,IAAI,OAAO,GAAG,CAAC,CAAA;IAEf,SAAS;
|
|
1
|
+
{"version":3,"file":"iter-all-stories.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/stories/iter-all-stories.ts"],"names":[],"mappings":";;;AAEA,6DAAoD;AAEpD;;;;GAIG;AACI,KAAK,SAAS,CAAC,CAAC,cAAc,CACjC,MAAuB,EACvB,MAOC;IAED,IAAI,CAAC,MAAM;QAAE,MAAM,GAAG,EAAE,CAAA;IAExB,MAAM,EAAE,QAAQ,EAAE,KAAK,GAAG,QAAQ,EAAE,GAAG,MAAM,CAAA;IAC7C,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,CAAA;IACvB,IAAI,OAAO,GAAG,CAAC,CAAA;IAEf,SAAS,CAAC;QACN,MAAM,GAAG,GAAG,MAAM,IAAA,kCAAa,EAAC,MAAM,EAAE;YACpC,MAAM;YACN,QAAQ;SACX,CAAC,CAAA;QAEF,KAAK,MAAM,IAAI,IAAI,GAAG,CAAC,WAAW,EAAE,CAAC;YACjC,MAAM,IAAI,CAAA;YAEV,IAAI,EAAE,OAAO,IAAI,KAAK;gBAAE,OAAM;QAClC,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,OAAO;YAAE,OAAM;QACxB,MAAM,GAAG,GAAG,CAAC,IAAI,CAAA;IACrB,CAAC;AACL,CAAC;AAhCD,wCAgCC","sourcesContent":["import { ITelegramClient } from '../../client.types.js'\nimport { PeerStories } from '../../types/index.js'\nimport { getAllStories } from './get-all-stories.js'\n\n/**\n * Iterate over all stories (e.g. to load the top bar)\n *\n * Wrapper over {@link getAllStories}\n */\nexport async function* iterAllStories(\n client: ITelegramClient,\n params?: Parameters<typeof getAllStories>[1] & {\n /**\n * Maximum number of stories to fetch\n *\n * @default Infinity\n */\n limit?: number\n },\n): AsyncIterableIterator<PeerStories> {\n if (!params) params = {}\n\n const { archived, limit = Infinity } = params\n let { offset } = params\n let current = 0\n\n for (;;) {\n const res = await getAllStories(client, {\n offset,\n archived,\n })\n\n for (const peer of res.peerStories) {\n yield peer\n\n if (++current >= limit) return\n }\n\n if (!res.hasMore) return\n offset = res.next\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"iter-profile-stories.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/stories/iter-profile-stories.ts"],"names":[],"mappings":";;;AAEA,8DAAsD;AACtD,qEAA4D;AAE5D;;GAEG;AACI,KAAK,SAAS,CAAC,CAAC,kBAAkB,CACrC,MAAuB,EACvB,MAAqB,EACrB,MAeC;IAED,IAAI,CAAC,MAAM;QAAE,MAAM,GAAG,EAAE,CAAA;IAExB,MAAM,EAAE,IAAI,GAAG,QAAQ,EAAE,KAAK,GAAG,QAAQ,EAAE,SAAS,GAAG,GAAG,EAAE,GAAG,MAAM,CAAA;IAErE,IAAI,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAA;IACzB,IAAI,OAAO,GAAG,CAAC,CAAA;IAEf,MAAM,IAAI,GAAG,MAAM,IAAA,6BAAW,EAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAE9C,SAAS;
|
|
1
|
+
{"version":3,"file":"iter-profile-stories.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/stories/iter-profile-stories.ts"],"names":[],"mappings":";;;AAEA,8DAAsD;AACtD,qEAA4D;AAE5D;;GAEG;AACI,KAAK,SAAS,CAAC,CAAC,kBAAkB,CACrC,MAAuB,EACvB,MAAqB,EACrB,MAeC;IAED,IAAI,CAAC,MAAM;QAAE,MAAM,GAAG,EAAE,CAAA;IAExB,MAAM,EAAE,IAAI,GAAG,QAAQ,EAAE,KAAK,GAAG,QAAQ,EAAE,SAAS,GAAG,GAAG,EAAE,GAAG,MAAM,CAAA;IAErE,IAAI,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAA;IACzB,IAAI,OAAO,GAAG,CAAC,CAAA;IAEf,MAAM,IAAI,GAAG,MAAM,IAAA,6BAAW,EAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAE9C,SAAS,CAAC;QACN,MAAM,GAAG,GAAG,MAAM,IAAA,0CAAiB,EAAC,MAAM,EAAE,IAAI,EAAE;YAC9C,IAAI;YACJ,QAAQ;YACR,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,OAAO,EAAE,SAAS,CAAC;SAC9C,CAAC,CAAA;QAEF,KAAK,MAAM,IAAI,IAAI,GAAG,EAAE,CAAC;YACrB,MAAM,IAAI,CAAA;YAEV,IAAI,EAAE,OAAO,IAAI,KAAK;gBAAE,OAAM;QAClC,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,IAAI;YAAE,OAAM;QACrB,QAAQ,GAAG,GAAG,CAAC,IAAI,CAAA;IACvB,CAAC;AACL,CAAC;AA7CD,gDA6CC","sourcesContent":["import { ITelegramClient } from '../../client.types.js'\nimport { InputPeerLike, Story } from '../../types/index.js'\nimport { resolvePeer } from '../users/resolve-peer.js'\nimport { getProfileStories } from './get-profile-stories.js'\n\n/**\n * Iterate over profile stories. Wrapper over {@link getProfileStories}\n */\nexport async function* iterProfileStories(\n client: ITelegramClient,\n peerId: InputPeerLike,\n params?: Parameters<typeof getProfileStories>[2] & {\n /**\n * Total number of stories to fetch\n *\n * @default `Infinity`, i.e. fetch all stories\n */\n limit?: number\n\n /**\n * Number of stories to fetch per request.\n * Usually you shouldn't care about this.\n *\n * @default 100\n */\n chunkSize?: number\n },\n): AsyncIterableIterator<Story> {\n if (!params) params = {}\n\n const { kind = 'pinned', limit = Infinity, chunkSize = 100 } = params\n\n let { offsetId } = params\n let current = 0\n\n const peer = await resolvePeer(client, peerId)\n\n for (;;) {\n const res = await getProfileStories(client, peer, {\n kind,\n offsetId,\n limit: Math.min(limit - current, chunkSize),\n })\n\n for (const peer of res) {\n yield peer\n\n if (++current >= limit) return\n }\n\n if (!res.next) return\n offsetId = res.next\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"iter-story-viewers.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/stories/iter-story-viewers.ts"],"names":[],"mappings":";;;AAEA,8DAAsD;AACtD,iEAAwD;AAExD;;;GAGG;AACI,KAAK,SAAS,CAAC,CAAC,gBAAgB,CACnC,MAAuB,EACvB,MAAqB,EACrB,OAAe,EACf,MAeC;IAED,IAAI,CAAC,MAAM;QAAE,MAAM,GAAG,EAAE,CAAA;IAExB,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,UAAU,EAAE,KAAK,EAAE,KAAK,GAAG,QAAQ,EAAE,SAAS,GAAG,GAAG,EAAE,GAAG,MAAM,CAAA;IAE9F,IAAI,EAAE,MAAM,GAAG,EAAE,EAAE,GAAG,MAAM,CAAA;IAC5B,IAAI,OAAO,GAAG,CAAC,CAAA;IAEf,MAAM,IAAI,GAAG,MAAM,IAAA,6BAAW,EAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAE9C,SAAS;
|
|
1
|
+
{"version":3,"file":"iter-story-viewers.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/stories/iter-story-viewers.ts"],"names":[],"mappings":";;;AAEA,8DAAsD;AACtD,iEAAwD;AAExD;;;GAGG;AACI,KAAK,SAAS,CAAC,CAAC,gBAAgB,CACnC,MAAuB,EACvB,MAAqB,EACrB,OAAe,EACf,MAeC;IAED,IAAI,CAAC,MAAM;QAAE,MAAM,GAAG,EAAE,CAAA;IAExB,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,UAAU,EAAE,KAAK,EAAE,KAAK,GAAG,QAAQ,EAAE,SAAS,GAAG,GAAG,EAAE,GAAG,MAAM,CAAA;IAE9F,IAAI,EAAE,MAAM,GAAG,EAAE,EAAE,GAAG,MAAM,CAAA;IAC5B,IAAI,OAAO,GAAG,CAAC,CAAA;IAEf,MAAM,IAAI,GAAG,MAAM,IAAA,6BAAW,EAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAE9C,SAAS,CAAC;QACN,MAAM,GAAG,GAAG,MAAM,IAAA,sCAAe,EAAC,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE;YACrD,YAAY;YACZ,MAAM;YACN,KAAK;YACL,MAAM;YACN,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,OAAO,EAAE,SAAS,CAAC;SAC9C,CAAC,CAAA;QAEF,KAAK,MAAM,IAAI,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;YAC7B,MAAM,IAAI,CAAA;YAEV,IAAI,EAAE,OAAO,IAAI,KAAK;gBAAE,OAAM;QAClC,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,IAAI;YAAE,OAAM;QACrB,MAAM,GAAG,GAAG,CAAC,IAAI,CAAA;IACrB,CAAC;AACL,CAAC;AAhDD,4CAgDC","sourcesContent":["import { ITelegramClient } from '../../client.types.js'\nimport { InputPeerLike, StoryViewer } from '../../types/index.js'\nimport { resolvePeer } from '../users/resolve-peer.js'\nimport { getStoryViewers } from './get-story-viewers.js'\n\n/**\n * Iterate over viewers list of a story.\n * Wrapper over {@link getStoryViewers}\n */\nexport async function* iterStoryViewers(\n client: ITelegramClient,\n peerId: InputPeerLike,\n storyId: number,\n params?: Parameters<typeof getStoryViewers>[3] & {\n /**\n * Total number of viewers to fetch\n *\n * @default Infinity, i.e. fetch all viewers\n */\n limit?: number\n\n /**\n * Number of viewers to fetch per request.\n * Usually you don't need to change this.\n *\n * @default 100\n */\n chunkSize?: number\n },\n): AsyncIterableIterator<StoryViewer> {\n if (!params) params = {}\n\n const { onlyContacts, sortBy = 'reaction', query, limit = Infinity, chunkSize = 100 } = params\n\n let { offset = '' } = params\n let current = 0\n\n const peer = await resolvePeer(client, peerId)\n\n for (;;) {\n const res = await getStoryViewers(client, peer, storyId, {\n onlyContacts,\n sortBy,\n query,\n offset,\n limit: Math.min(limit - current, chunkSize),\n })\n\n for (const peer of res.viewers) {\n yield peer\n\n if (++current >= limit) return\n }\n\n if (!res.next) return\n offset = res.next\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"send-story.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/stories/send-story.ts"],"names":[],"mappings":";;;AAEA,gEAAyD;AAGzD,gFAAwE;AACxE,mFAA2E;AAC3E,iEAA+D;AAC/D,8DAAsD;AACtD,2DAAwD;AAExD;;;;GAIG;AACI,KAAK,UAAU,SAAS,CAC3B,MAAuB,EACvB,MAiDC;IAED,MAAM,EAAE,IAAI,GAAG,IAAI,EAAE,MAAM,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,EAAE,GAAG,MAAM,CAAA;IACnF,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,CAAA;IAEtB,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;
|
|
1
|
+
{"version":3,"file":"send-story.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/stories/send-story.ts"],"names":[],"mappings":";;;AAEA,gEAAyD;AAGzD,gFAAwE;AACxE,mFAA2E;AAC3E,iEAA+D;AAC/D,8DAAsD;AACtD,2DAAwD;AAExD;;;;GAIG;AACI,KAAK,UAAU,SAAS,CAC3B,MAAuB,EACvB,MAiDC;IAED,MAAM,EAAE,IAAI,GAAG,IAAI,EAAE,MAAM,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,EAAE,GAAG,MAAM,CAAA;IACnF,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,CAAA;IAEtB,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC5B,KAAK,GAAG;YACJ,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,KAAK;SACd,CAAA;IACL,CAAC;IAED,MAAM,UAAU,GAAG,MAAM,IAAA,+CAAoB,EAAC,MAAM,EAAE,KAAK,CAAC,CAAA;IAC5D,MAAM,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC;QACtC,MAAM,IAAA,mDAAsB,EAAC,MAAM,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC;QAC3D,CAAC,EAAE,CAAC,EAAE,2BAA2B,EAAW,CAAC,CAAA;IAEjD,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,GAAG,MAAM,IAAA,uCAAmB,EACjD,MAAM;IACN,yDAAyD;IACzD,oFAAoF;IACpF,MAAM,CAAC,OAAO,IAAK,KAAsD,CAAC,OAAO,CACpF,CAAA;IAED,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC;QAC1B,CAAC,EAAE,mBAAmB;QACtB,MAAM;QACN,UAAU,EAAE,cAAc;QAC1B,IAAI,EAAE,MAAM,IAAA,6BAAW,EAAC,MAAM,EAAE,IAAI,CAAC;QACrC,KAAK,EAAE,UAAU;QACjB,UAAU,EAAE,mBAAmB;QAC/B,OAAO;QACP,QAAQ;QACR,YAAY;QACZ,QAAQ,EAAE,IAAA,0BAAU,GAAE;QACtB,MAAM;KACT,CAAC,CAAA;IAEF,OAAO,IAAA,sCAAkB,EAAC,MAAM,EAAE,GAAG,CAAC,CAAA;AAC1C,CAAC;AA1FD,8BA0FC","sourcesContent":["import { tl } from '@mtcute/tl'\n\nimport { randomLong } from '../../../utils/long-utils.js'\nimport { ITelegramClient } from '../../client.types.js'\nimport { InputMediaLike, InputPeerLike, InputPrivacyRule, InputText, Story } from '../../types/index.js'\nimport { _normalizeInputMedia } from '../files/normalize-input-media.js'\nimport { _normalizePrivacyRules } from '../misc/normalize-privacy-rules.js'\nimport { _normalizeInputText } from '../misc/normalize-text.js'\nimport { resolvePeer } from '../users/resolve-peer.js'\nimport { _findStoryInUpdate } from './find-in-update.js'\n\n/**\n * Send a story\n *\n * @returns Created story\n */\nexport async function sendStory(\n client: ITelegramClient,\n params: {\n /**\n * Peer ID to send story as\n *\n * @default `self`\n */\n peer?: InputPeerLike\n\n /**\n * Media contained in a story. Currently can only be a photo or a video.\n *\n * You can also pass TDLib and Bot API compatible File ID,\n * which will be wrapped in {@link InputMedia.auto}\n */\n media: InputMediaLike | string\n\n /**\n * Override caption for {@link media}\n */\n caption?: InputText\n\n /**\n * Whether to automatically pin this story to the profile\n */\n pinned?: boolean\n\n /**\n * Whether to disallow sharing this story\n */\n forbidForwards?: boolean\n\n /**\n * Interactive elements to add to the story\n */\n interactiveElements?: tl.TypeMediaArea[]\n\n /**\n * Privacy rules to apply to the story\n *\n * @default \"Everyone\"\n */\n privacyRules?: InputPrivacyRule[]\n\n /**\n * TTL period of the story, in seconds\n *\n * @default 86400\n */\n period?: number\n },\n): Promise<Story> {\n const { peer = 'me', pinned, forbidForwards, interactiveElements, period } = params\n let { media } = params\n\n if (typeof media === 'string') {\n media = {\n type: 'auto',\n file: media,\n }\n }\n\n const inputMedia = await _normalizeInputMedia(client, media)\n const privacyRules = params.privacyRules ?\n await _normalizePrivacyRules(client, params.privacyRules) :\n [{ _: 'inputPrivacyValueAllowAll' } as const]\n\n const [caption, entities] = await _normalizeInputText(\n client,\n // some types dont have `caption` field, and ts warns us,\n // but since it's JS, they'll just be `undefined` and properly handled by the method\n params.caption || (media as Extract<typeof media, { caption?: unknown }>).caption,\n )\n\n const res = await client.call({\n _: 'stories.sendStory',\n pinned,\n noforwards: forbidForwards,\n peer: await resolvePeer(client, peer),\n media: inputMedia,\n mediaAreas: interactiveElements,\n caption,\n entities,\n privacyRules,\n randomId: randomLong(),\n period,\n })\n\n return _findStoryInUpdate(client, res)\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delete-profile-photos.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/users/delete-profile-photos.ts"],"names":[],"mappings":";;;AAIA,uEAAmE;AAEnE;;;;GAIG;AACI,KAAK,UAAU,mBAAmB,CACrC,MAAuB,EACvB,GAA2C;IAE3C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;QAAE,GAAG,GAAG,CAAC,GAAG,CAAC,CAAA;IAEpC,MAAM,MAAM,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;QAC1B,IAAI,OAAO,EAAE,KAAK,QAAQ,EAAE;
|
|
1
|
+
{"version":3,"file":"delete-profile-photos.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/users/delete-profile-photos.ts"],"names":[],"mappings":";;;AAIA,uEAAmE;AAEnE;;;;GAIG;AACI,KAAK,UAAU,mBAAmB,CACrC,MAAuB,EACvB,GAA2C;IAE3C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;QAAE,GAAG,GAAG,CAAC,GAAG,CAAC,CAAA;IAEpC,MAAM,MAAM,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;QAC1B,IAAI,OAAO,EAAE,KAAK,QAAQ,EAAE,CAAC;YACzB,OAAO,IAAA,uCAAkB,EAAC,EAAE,CAAC,CAAA;QACjC,CAAC;QAED,OAAO,EAAE,CAAA;IACb,CAAC,CAAC,CAAA;IAEF,MAAM,MAAM,CAAC,IAAI,CAAC;QACd,CAAC,EAAE,qBAAqB;QACxB,EAAE,EAAE,MAAM;KACb,CAAC,CAAA;AACN,CAAC;AAlBD,kDAkBC","sourcesContent":["import { tl } from '@mtcute/tl'\n\nimport { MaybeArray } from '../../../types/utils.js'\nimport { ITelegramClient } from '../../client.types.js'\nimport { fileIdToInputPhoto } from '../../utils/convert-file-id.js'\n\n/**\n * Delete your own profile photos\n *\n * @param ids ID(s) of the photos. Can be file IDs or raw TL objects\n */\nexport async function deleteProfilePhotos(\n client: ITelegramClient,\n ids: MaybeArray<string | tl.TypeInputPhoto>,\n): Promise<void> {\n if (!Array.isArray(ids)) ids = [ids]\n\n const photos = ids.map((id) => {\n if (typeof id === 'string') {\n return fileIdToInputPhoto(id)\n }\n\n return id\n })\n\n await client.call({\n _: 'photos.deletePhotos',\n id: photos,\n })\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-users.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/users/get-users.ts"],"names":[],"mappings":";;;AAEA,mDAA0D;AAC1D,6DAAuD;AACvD,oEAA8D;AAC9D,uDAA+C;AAC/C,iEAAwD;AAExD;;;;;;;GAOG;AACI,KAAK,UAAU,QAAQ,CAAC,MAAuB,EAAE,GAA8B;IAClF,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;
|
|
1
|
+
{"version":3,"file":"get-users.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/users/get-users.ts"],"names":[],"mappings":";;;AAEA,mDAA0D;AAC1D,6DAAuD;AACvD,oEAA8D;AAC9D,uDAA+C;AAC/C,iEAAwD;AAExD;;;;;;;GAOG;AACI,KAAK,UAAU,QAAQ,CAAC,MAAuB,EAAE,GAA8B;IAClF,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QACtB,gEAAgE;QAChE,MAAM,GAAG,GAAG,MAAM,IAAA,qCAAgB,EAAC,MAAM,EAAE,MAAM,IAAA,6BAAW,EAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAA;QAE1E,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,eAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;IACvC,CAAC;IAED,MAAM,UAAU,GAAG,MAAM,IAAA,sCAAe,EAAC,MAAM,EAAE,GAAG,EAAE,2BAAW,CAAC,CAAA;IAElE,qCAAqC;IACrC,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,qCAAgB,EAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,CAAA;IAEvF,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,eAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;AACtD,CAAC;AAdD,4BAcC","sourcesContent":["import { MaybeArray } from '../../../types/utils.js'\nimport { ITelegramClient } from '../../client.types.js'\nimport { InputPeerLike, User } from '../../types/index.js'\nimport { toInputUser } from '../../utils/peer-utils.js'\nimport { _getUsersBatched } from '../chats/batched-queries.js'\nimport { resolveUser } from './resolve-peer.js'\nimport { resolvePeerMany } from './resolve-peer-many.js'\n\n/**\n * Get information about multiple users.\n * You can retrieve up to 200 users at once.\n *\n * Note that order is not guaranteed.\n *\n * @param ids Users' identifiers. Can be ID, username, phone number, `\"me\"`, `\"self\"` or TL object\n */\nexport async function getUsers(client: ITelegramClient, ids: MaybeArray<InputPeerLike>): Promise<(User | null)[]> {\n if (!Array.isArray(ids)) {\n // avoid unnecessary overhead of Promise.all and resolvePeerMany\n const res = await _getUsersBatched(client, await resolveUser(client, ids))\n\n return [res ? new User(res) : null]\n }\n\n const inputPeers = await resolvePeerMany(client, ids, toInputUser)\n\n // pooling will be done by the helper\n const res = await Promise.all(inputPeers.map((peer) => _getUsersBatched(client, peer)))\n\n return res.map((it) => (it ? new User(it) : null))\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"iter-profile-photos.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/users/iter-profile-photos.ts"],"names":[],"mappings":";;;AAEA,mEAA0D;AAC1D,uDAA+C;AAE/C;;;;;GAKG;AACI,KAAK,SAAS,CAAC,CAAC,iBAAiB,CACpC,MAAuB,EACvB,MAAqB,EACrB,MAcC;IAED,IAAI,CAAC,MAAM;QAAE,MAAM,GAAG,EAAE,CAAA;IAExB,MAAM,IAAI,GAAG,MAAM,IAAA,6BAAW,EAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAE9C,MAAM,EAAE,KAAK,GAAG,QAAQ,EAAE,SAAS,GAAG,GAAG,EAAE,GAAG,MAAM,CAAA;IAEpD,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,CAAA;IACvB,IAAI,OAAO,GAAG,CAAC,CAAA;IAEf,SAAS;
|
|
1
|
+
{"version":3,"file":"iter-profile-photos.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/users/iter-profile-photos.ts"],"names":[],"mappings":";;;AAEA,mEAA0D;AAC1D,uDAA+C;AAE/C;;;;;GAKG;AACI,KAAK,SAAS,CAAC,CAAC,iBAAiB,CACpC,MAAuB,EACvB,MAAqB,EACrB,MAcC;IAED,IAAI,CAAC,MAAM;QAAE,MAAM,GAAG,EAAE,CAAA;IAExB,MAAM,IAAI,GAAG,MAAM,IAAA,6BAAW,EAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAE9C,MAAM,EAAE,KAAK,GAAG,QAAQ,EAAE,SAAS,GAAG,GAAG,EAAE,GAAG,MAAM,CAAA;IAEpD,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,CAAA;IACvB,IAAI,OAAO,GAAG,CAAC,CAAA;IAEf,SAAS,CAAC;QACN,MAAM,GAAG,GAAG,MAAM,IAAA,wCAAgB,EAAC,MAAM,EAAE,IAAI,EAAE;YAC7C,MAAM;YACN,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,KAAK,GAAG,OAAO,CAAC;SAC9C,CAAC,CAAA;QAEF,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC;YACnB,MAAM,EAAE,CAAA;YAER,IAAI,EAAE,OAAO,IAAI,KAAK;gBAAE,OAAM;QAClC,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,IAAI;YAAE,OAAM;QACrB,MAAM,GAAG,GAAG,CAAC,IAAI,CAAA;IACrB,CAAC;AACL,CAAC;AA3CD,8CA2CC","sourcesContent":["import { ITelegramClient } from '../../client.types.js'\nimport { InputPeerLike, Photo } from '../../types/index.js'\nimport { getProfilePhotos } from './get-profile-photos.js'\nimport { resolveUser } from './resolve-peer.js'\n\n/**\n * Iterate over profile photos\n *\n * @param userId User ID, username, phone number, `\"me\"` or `\"self\"`\n * @param params\n */\nexport async function* iterProfilePhotos(\n client: ITelegramClient,\n userId: InputPeerLike,\n params?: Parameters<typeof getProfilePhotos>[2] & {\n /**\n * Maximum number of items to fetch\n *\n * @default `Infinity`, i.e. all items are fetched\n */\n limit?: number\n\n /**\n * Size of chunks which are fetched. Usually not needed.\n *\n * @default 100\n */\n chunkSize?: number\n },\n): AsyncIterableIterator<Photo> {\n if (!params) params = {}\n\n const peer = await resolveUser(client, userId)\n\n const { limit = Infinity, chunkSize = 100 } = params\n\n let { offset } = params\n let current = 0\n\n for (;;) {\n const res = await getProfilePhotos(client, peer, {\n offset,\n limit: Math.min(chunkSize, limit - current),\n })\n\n for (const it of res) {\n yield it\n\n if (++current >= limit) return\n }\n\n if (!res.next) return\n offset = res.next\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolve-peer-many.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/users/resolve-peer-many.ts"],"names":[],"mappings":";;;AAEA,gFAAwE;AAGxE,uDAA+C;AA2B/C;;GAEG;AACI,KAAK,UAAU,eAAe,CACjC,MAAuB,EACvB,OAAwB,EACxB,UAAwG;IAExG,MAAM,GAAG,GAAkE,EAAE,CAAA;IAE7E,MAAM,KAAK,GAAG,CAAC,CAAA;IAEf,IAAI,OAAO,CAAC,MAAM,GAAG,KAAK,EAAE;
|
|
1
|
+
{"version":3,"file":"resolve-peer-many.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/users/resolve-peer-many.ts"],"names":[],"mappings":"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","sourcesContent":["import { tl } from '@mtcute/tl'\n\nimport { ConditionVariable } from '../../../utils/condition-variable.js'\nimport { ITelegramClient } from '../../client.types.js'\nimport { InputPeerLike } from '../../types/index.js'\nimport { resolvePeer } from './resolve-peer.js'\n\n/**\n * Get multiple `InputPeer`s at once,\n * while also normalizing and removing\n * peers that can't be normalized to that type.\n *\n * Uses async pool internally, with a concurrent limit of 8\n *\n * @param peerIds Peer Ids\n * @param normalizer Normalization function\n */\nexport async function resolvePeerMany<T extends tl.TypeInputPeer | tl.TypeInputUser | tl.TypeInputChannel>(\n client: ITelegramClient,\n peerIds: InputPeerLike[],\n normalizer: (obj: tl.TypeInputPeer) => T | null,\n): Promise<T[]>\n\n/**\n * Get multiple `InputPeer`s at once.\n *\n * Uses async pool internally, with a concurrent limit of 8\n *\n * @param peerIds Peer Ids\n */\nexport async function resolvePeerMany(client: ITelegramClient, peerIds: InputPeerLike[]): Promise<tl.TypeInputPeer[]>\n\n/**\n * @internal\n */\nexport async function resolvePeerMany(\n client: ITelegramClient,\n peerIds: InputPeerLike[],\n normalizer?: (obj: tl.TypeInputPeer) => tl.TypeInputPeer | tl.TypeInputUser | tl.TypeInputChannel | null,\n): Promise<(tl.TypeInputPeer | tl.TypeInputUser | tl.TypeInputChannel)[]> {\n const ret: (tl.TypeInputPeer | tl.TypeInputUser | tl.TypeInputChannel)[] = []\n\n const limit = 8\n\n if (peerIds.length < limit) {\n // no point in using async pool for <limit peers\n const res = await Promise.all(peerIds.map((it) => resolvePeer(client, it)))\n\n if (!normalizer) return res\n\n for (const value of res) {\n const norm = normalizer(value)\n\n if (norm) {\n ret.push(norm)\n }\n }\n\n return ret\n }\n\n const cv = new ConditionVariable()\n const buffer: Record<number, tl.TypeInputPeer | null> = {}\n\n let nextIdx = 0\n let nextWorkerIdx = 0\n\n const fetchNext = async (idx = nextWorkerIdx++): Promise<void> => {\n const result = await resolvePeer(client, peerIds[idx])\n\n buffer[idx] = result\n\n if (nextIdx === idx) {\n cv.notify()\n }\n\n if (nextWorkerIdx < peerIds.length) {\n await fetchNext(nextWorkerIdx++)\n }\n }\n\n let error: unknown = undefined\n void Promise.all(Array.from({ length: limit }, (_, i) => fetchNext(i))).catch((e) => {\n client.log.debug('resolvePeerMany errored: %s', e.message)\n error = e\n cv.notify()\n })\n\n while (nextIdx < peerIds.length) {\n await cv.wait()\n\n // eslint-disable-next-line @typescript-eslint/no-throw-literal\n if (error) throw error\n\n while (nextIdx in buffer) {\n const buf = buffer[nextIdx]\n delete buffer[nextIdx]\n\n nextIdx++\n\n if (!buf) continue\n\n if (!normalizer) {\n ret.push(buf)\n } else {\n const norm = normalizer(buf)\n\n if (norm) {\n ret.push(norm)\n }\n }\n }\n }\n\n return ret\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolve-peer.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/users/resolve-peer.ts"],"names":[],"mappings":"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","sourcesContent":["import Long from 'long'\n\nimport { tl } from '@mtcute/tl'\n\nimport { MtTypeAssertionError } from '../../../types/errors.js'\nimport { getMarkedPeerId, parseMarkedPeerId, toggleChannelIdMark } from '../../../utils/peer-utils.js'\nimport { ITelegramClient } from '../../client.types.js'\nimport { MtPeerNotFoundError } from '../../types/errors.js'\nimport { InputPeerLike } from '../../types/peers/index.js'\nimport { toInputChannel, toInputPeer, toInputUser } from '../../utils/peer-utils.js'\n\n// @available=both\n/**\n * Get the `InputPeer` of a known peer id.\n * Useful when an `InputPeer` is needed in Raw API.\n *\n * @param peerId The peer identifier that you want to extract the `InputPeer` from.\n * @param force Whether to force re-fetch the peer from the server (only for usernames and phone numbers)\n */\nexport async function resolvePeer(\n client: ITelegramClient,\n peerId: InputPeerLike,\n force = false,\n): Promise<tl.TypeInputPeer> {\n // for convenience we also accept tl and User/Chat objects directly\n if (typeof peerId === 'object') {\n if (tl.isAnyPeer(peerId)) {\n peerId = getMarkedPeerId(peerId)\n } else if ('inputPeer' in peerId) {\n // User | Chat\n peerId = peerId.inputPeer\n } else {\n peerId = toInputPeer(peerId)\n }\n }\n\n if (typeof peerId === 'object') {\n switch (peerId._) {\n case 'mtcute.dummyInputPeerMinUser':\n peerId = peerId.userId\n break\n case 'mtcute.dummyInputPeerMinChannel':\n peerId = toggleChannelIdMark(peerId.channelId)\n break\n default:\n return peerId\n }\n }\n\n if (typeof peerId === 'number' && !force) {\n const fromStorage = await client.storage.peers.getById(peerId)\n if (fromStorage) return fromStorage\n }\n\n if (typeof peerId === 'string') {\n if (peerId === 'self' || peerId === 'me') return { _: 'inputPeerSelf' }\n\n peerId = peerId.replace(/[@+\\s()]/g, '')\n\n let res\n\n if (peerId.match(/^\\d+$/)) {\n // phone number\n const fromStorage = await client.storage.peers.getByPhone(peerId)\n if (fromStorage) return fromStorage\n\n res = await client.call({\n _: 'contacts.resolvePhone',\n phone: peerId,\n })\n } else {\n // username\n if (!force) {\n const fromStorage = await client.storage.peers.getByUsername(peerId)\n if (fromStorage) return fromStorage\n }\n\n res = await client.call({\n _: 'contacts.resolveUsername',\n username: peerId,\n })\n }\n\n if (res.peer._ === 'peerUser') {\n const id = res.peer.userId\n\n const found = res.users.find((it) => it.id === id)\n\n if (found && found._ === 'user') {\n if (!found.accessHash) {\n // no access hash, we can't use it\n // this may happen when bot resolves a username\n // of a user who hasn't started a conversation with it\n throw new MtPeerNotFoundError(\n `Peer (user) with username ${peerId} was found, but it has no access hash`,\n )\n }\n\n return {\n _: 'inputPeerUser',\n userId: found.id,\n accessHash: found.accessHash,\n }\n }\n } else if (res.peer._ === 'peerChannel') {\n const id = res.peer.channelId\n const found = res.chats.find((it) => it.id === id)\n\n if (found) {\n if (!(found._ === 'channel' || found._ === 'channelForbidden')) {\n // chats can't have usernames\n // furthermore, our id is a channel id, so it must be a channel\n // this should never happen, unless Telegram goes crazy\n throw new MtTypeAssertionError('contacts.resolveUsername#chats', 'channel', found._)\n }\n\n if (!found.accessHash) {\n // shouldn't happen? but just in case\n throw new MtPeerNotFoundError(`Peer (channel) with ${peerId} was found, but it has no access hash`)\n }\n\n return {\n _: 'inputPeerChannel',\n channelId: found.id,\n accessHash: found.accessHash,\n }\n }\n } else {\n // chats can't have usernames\n throw new MtTypeAssertionError('contacts.resolveUsername', 'user or channel', res.peer._)\n }\n\n throw new MtPeerNotFoundError(`Could not find a peer by ${peerId}`)\n }\n\n // in some cases, the server allows us to use access_hash=0.\n // particularly, when we're a bot or we're referencing a user\n // who we have \"seen\" recently\n // if it's not the case, we'll get an `PEER_ID_INVALID` error anyways\n const [peerType, bareId] = parseMarkedPeerId(peerId)\n\n switch (peerType) {\n case 'user':\n return {\n _: 'inputPeerUser',\n userId: bareId,\n accessHash: Long.ZERO,\n }\n case 'chat':\n return {\n _: 'inputPeerChat',\n chatId: bareId,\n }\n case 'channel':\n return {\n _: 'inputPeerChannel',\n channelId: bareId,\n accessHash: Long.ZERO,\n }\n }\n}\n\n/**\n * Shorthand for `resolvePeer` that converts the input peer to `InputUser`.\n */\nexport async function resolveUser(\n client: ITelegramClient,\n peerId: InputPeerLike,\n force = false,\n): Promise<tl.TypeInputUser> {\n return toInputUser(await resolvePeer(client, peerId, force), peerId)\n}\n\n/**\n * Shorthand for `resolvePeer` that converts the input peer to `InputChannel`.\n */\nexport async function resolveChannel(\n client: ITelegramClient,\n peerId: InputPeerLike,\n force = false,\n): Promise<tl.TypeInputChannel> {\n return toInputChannel(await resolvePeer(client, peerId, force), peerId)\n}\n"]}
|
|
1
|
+
{"version":3,"file":"resolve-peer.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/users/resolve-peer.ts"],"names":[],"mappings":"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","sourcesContent":["import Long from 'long'\n\nimport { tl } from '@mtcute/tl'\n\nimport { MtTypeAssertionError } from '../../../types/errors.js'\nimport { getMarkedPeerId, parseMarkedPeerId, toggleChannelIdMark } from '../../../utils/peer-utils.js'\nimport { ITelegramClient } from '../../client.types.js'\nimport { MtPeerNotFoundError } from '../../types/errors.js'\nimport { InputPeerLike } from '../../types/peers/index.js'\nimport { toInputChannel, toInputPeer, toInputUser } from '../../utils/peer-utils.js'\n\n// @available=both\n/**\n * Get the `InputPeer` of a known peer id.\n * Useful when an `InputPeer` is needed in Raw API.\n *\n * @param peerId The peer identifier that you want to extract the `InputPeer` from.\n * @param force Whether to force re-fetch the peer from the server (only for usernames and phone numbers)\n */\nexport async function resolvePeer(\n client: ITelegramClient,\n peerId: InputPeerLike,\n force = false,\n): Promise<tl.TypeInputPeer> {\n // for convenience we also accept tl and User/Chat objects directly\n if (typeof peerId === 'object') {\n if (tl.isAnyPeer(peerId)) {\n peerId = getMarkedPeerId(peerId)\n } else if ('inputPeer' in peerId) {\n // User | Chat\n peerId = peerId.inputPeer\n } else {\n peerId = toInputPeer(peerId)\n }\n }\n\n if (typeof peerId === 'object') {\n switch (peerId._) {\n case 'mtcute.dummyInputPeerMinUser':\n peerId = peerId.userId\n break\n case 'mtcute.dummyInputPeerMinChannel':\n peerId = toggleChannelIdMark(peerId.channelId)\n break\n default:\n return peerId\n }\n }\n\n if (typeof peerId === 'number' && !force) {\n const fromStorage = await client.storage.peers.getById(peerId)\n if (fromStorage) return fromStorage\n }\n\n if (typeof peerId === 'string') {\n if (peerId === 'self' || peerId === 'me') return { _: 'inputPeerSelf' }\n\n peerId = peerId.replace(/[@+\\s()]/g, '')\n\n let res\n\n if (peerId.match(/^\\d+$/)) {\n // phone number\n const fromStorage = await client.storage.peers.getByPhone(peerId)\n if (fromStorage) return fromStorage\n\n res = await client.call({\n _: 'contacts.resolvePhone',\n phone: peerId,\n })\n } else {\n // username\n if (!force) {\n const fromStorage = await client.storage.peers.getByUsername(peerId)\n if (fromStorage) return fromStorage\n }\n\n res = await client.call({\n _: 'contacts.resolveUsername',\n username: peerId,\n })\n }\n\n if (res.peer._ === 'peerUser') {\n const id = res.peer.userId\n\n const found = res.users.find((it) => it.id === id)\n\n if (found && found._ === 'user') {\n if (!found.accessHash) {\n // no access hash, we can't use it\n // this may happen when bot resolves a username\n // of a user who hasn't started a conversation with it\n throw new MtPeerNotFoundError(\n `Peer (user) with username ${peerId} was found, but it has no access hash`,\n )\n }\n\n return {\n _: 'inputPeerUser',\n userId: found.id,\n accessHash: found.accessHash,\n }\n }\n } else if (res.peer._ === 'peerChannel') {\n const id = res.peer.channelId\n const found = res.chats.find((it) => it.id === id)\n\n if (found) {\n if (!(found._ === 'channel' || found._ === 'channelForbidden')) {\n // chats can't have usernames\n // furthermore, our id is a channel id, so it must be a channel\n // this should never happen, unless Telegram goes crazy\n throw new MtTypeAssertionError('contacts.resolveUsername#chats', 'channel', found._)\n }\n\n if (!found.accessHash) {\n // shouldn't happen? but just in case\n throw new MtPeerNotFoundError(`Peer (channel) with ${peerId} was found, but it has no access hash`)\n }\n\n return {\n _: 'inputPeerChannel',\n channelId: found.id,\n accessHash: found.accessHash,\n }\n }\n } else {\n // chats can't have usernames\n throw new MtTypeAssertionError('contacts.resolveUsername', 'user or channel', res.peer._)\n }\n\n throw new MtPeerNotFoundError(`Could not find a peer by ${peerId}`)\n }\n\n // in some cases, the server allows us to use access_hash=0.\n // particularly, when we're a bot or we're referencing a user\n // who we have \"seen\" recently\n // if it's not the case, we'll get an `PEER_ID_INVALID` error anyways\n const [peerType, bareId] = parseMarkedPeerId(peerId)\n\n switch (peerType) {\n case 'user':\n return {\n _: 'inputPeerUser',\n userId: bareId,\n accessHash: Long.ZERO,\n }\n case 'chat':\n return {\n _: 'inputPeerChat',\n chatId: bareId,\n }\n case 'channel':\n return {\n _: 'inputPeerChannel',\n channelId: bareId,\n accessHash: Long.ZERO,\n }\n }\n}\n\n/**\n * Shorthand for `resolvePeer` that converts the input peer to `InputUser`.\n */\nexport async function resolveUser(\n client: ITelegramClient,\n peerId: InputPeerLike,\n force = false,\n): Promise<tl.TypeInputUser> {\n return toInputUser(await resolvePeer(client, peerId, force), peerId)\n}\n\n/**\n * Shorthand for `resolvePeer` that converts the input peer to `InputChannel`.\n */\nexport async function resolveChannel(\n client: ITelegramClient,\n peerId: InputPeerLike,\n force = false,\n): Promise<tl.TypeInputChannel> {\n return toInputChannel(await resolvePeer(client, peerId, force), peerId)\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"set-my-emoji-status.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/users/set-my-emoji-status.ts"],"names":[],"mappings":";;;AAEA,0EAA8D;AAE9D,mDAAoD;AAEpD;;;;GAIG;AACI,KAAK,UAAU,gBAAgB,CAClC,MAAuB,EACvB,KAAqB,EACrB,MAKC;IAED,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,EAAE,CAAA;IAE9B,IAAI,WAA+B,CAAA;IAEnC,IAAI,KAAK,KAAK,IAAI,EAAE;
|
|
1
|
+
{"version":3,"file":"set-my-emoji-status.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/users/set-my-emoji-status.ts"],"names":[],"mappings":";;;AAEA,0EAA8D;AAE9D,mDAAoD;AAEpD;;;;GAIG;AACI,KAAK,UAAU,gBAAgB,CAClC,MAAuB,EACvB,KAAqB,EACrB,MAKC;IAED,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,EAAE,CAAA;IAE9B,IAAI,WAA+B,CAAA;IAEnC,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QACjB,WAAW,GAAG,EAAE,CAAC,EAAE,kBAAkB,EAAE,CAAA;IAC3C,CAAC;SAAM,IAAI,KAAK,EAAE,CAAC;QACf,WAAW,GAAG;YACV,CAAC,EAAE,kBAAkB;YACrB,UAAU,EAAE,KAAK;YACjB,KAAK,EAAE,IAAA,wBAAa,EAAC,KAAK,CAAC;SAC9B,CAAA;IACL,CAAC;SAAM,CAAC;QACJ,WAAW,GAAG;YACV,CAAC,EAAE,aAAa;YAChB,UAAU,EAAE,KAAK;SACpB,CAAA;IACL,CAAC;IAED,MAAM,CAAC,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC;QACxB,CAAC,EAAE,2BAA2B;QAC9B,WAAW;KACd,CAAC,CAAA;IAEF,IAAA,+BAAU,EAAC,2BAA2B,EAAE,CAAC,CAAC,CAAA;AAC9C,CAAC;AAnCD,4CAmCC","sourcesContent":["import { tl } from '@mtcute/tl'\n\nimport { assertTrue } from '../../../utils/type-assertions.js'\nimport { ITelegramClient } from '../../client.types.js'\nimport { normalizeDate } from '../../utils/index.js'\n\n/**\n * Set an emoji status for the current user\n *\n * @param emoji Custom emoji ID or `null` to remove the emoji\n */\nexport async function setMyEmojiStatus(\n client: ITelegramClient,\n emoji: tl.Long | null,\n params?: {\n /**\n * Date when the emoji status should expire (only if `emoji` is not `null`)\n */\n until?: number | Date\n },\n): Promise<void> {\n const { until } = params ?? {}\n\n let emojiStatus: tl.TypeEmojiStatus\n\n if (emoji === null) {\n emojiStatus = { _: 'emojiStatusEmpty' }\n } else if (until) {\n emojiStatus = {\n _: 'emojiStatusUntil',\n documentId: emoji,\n until: normalizeDate(until),\n }\n } else {\n emojiStatus = {\n _: 'emojiStatus',\n documentId: emoji,\n }\n }\n\n const r = await client.call({\n _: 'account.updateEmojiStatus',\n emojiStatus,\n })\n\n assertTrue('account.updateEmojiStatus', r)\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"set-my-profile-photo.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/users/set-my-profile-photo.ts"],"names":[],"mappings":";;;AAAA,6CAA0C;AAC1C,mCAA+B;AAE/B,wDAA0D;AAE1D,mDAA2D;AAC3D,uEAAmE;AACnE,8EAAsE;AAEtE;;;;GAIG;AACI,KAAK,UAAU,iBAAiB,CACnC,MAAuB,EACvB,MAOC;IAED,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,MAAM,CAAA;IACnC,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,CAAA;IAEtB,8CAA8C;IAC9C,IAAI,kBAAQ,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAE,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,EAAE;
|
|
1
|
+
{"version":3,"file":"set-my-profile-photo.js","sourceRoot":"","sources":["../../../../../src/highlevel/methods/users/set-my-profile-photo.ts"],"names":[],"mappings":";;;AAAA,6CAA0C;AAC1C,mCAA+B;AAE/B,wDAA0D;AAE1D,mDAA2D;AAC3D,uEAAmE;AACnE,8EAAsE;AAEtE;;;;GAIG;AACI,KAAK,UAAU,iBAAiB,CACnC,MAAuB,EACvB,MAOC;IAED,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,MAAM,CAAA;IACnC,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,CAAA;IAEtB,8CAA8C;IAC9C,IAAI,kBAAQ,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAE,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;QAC3F,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,KAAK,CAAC,cAAc,CAAC,EAAE,CAAC;YAC3D,MAAM,IAAI,2BAAe,CAAC,sCAAsC,CAAC,CAAA;QACrE,CAAC;QAED,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;YACtD,IAAI,kBAAQ,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC/B,KAAK,GAAG,IAAA,uCAAkB,EAAC,KAAK,CAAC,CAAA;YACrC,CAAC;YAED,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC;gBAC1B,CAAC,EAAE,2BAA2B;gBAC9B,EAAE,EAAE,KAAK;aACZ,CAAC,CAAA;YAEF,OAAO,IAAI,gBAAK,CAAC,GAAG,CAAC,KAAoB,CAAC,CAAA;QAC9C,CAAC;IACL,CAAC;IAED,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC;QAC1B,CAAC,EAAE,2BAA2B;QAC9B,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,MAAM,IAAA,6CAAmB,EAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC;QACnF,YAAY,EAAE,UAAU;KAC3B,CAAC,CAAA;IAEF,OAAO,IAAI,gBAAK,CAAC,GAAG,CAAC,KAAoB,CAAC,CAAA;AAC9C,CAAC;AAzCD,8CAyCC","sourcesContent":["import { tdFileId } from '@mtcute/file-id'\nimport { tl } from '@mtcute/tl'\n\nimport { MtArgumentError } from '../../../types/errors.js'\nimport { ITelegramClient } from '../../client.types.js'\nimport { InputFileLike, Photo } from '../../types/index.js'\nimport { fileIdToInputPhoto } from '../../utils/convert-file-id.js'\nimport { _normalizeInputFile } from '../files/normalize-input-file.js'\n\n/**\n * Set a new profile photo or video for the current user.\n *\n * You can also pass a file ID or an InputPhoto to re-use existing photo.\n */\nexport async function setMyProfilePhoto(\n client: ITelegramClient,\n params: {\n /** Media type (photo or video) */\n type: 'photo' | 'video'\n /** Input media file */\n media: InputFileLike | tl.TypeInputPhoto\n /** When `type = video`, timestamp in seconds which will be shown as a static preview. */\n previewSec?: number\n },\n): Promise<Photo> {\n const { type, previewSec } = params\n let { media } = params\n\n // try parsing media as file id or input photo\n if (tdFileId.isFileIdLike(media) || (typeof media === 'object' && tl.isAnyInputPhoto(media))) {\n if (typeof media === 'string' && media.match(/^https?:\\/\\//)) {\n throw new MtArgumentError(\"Profile photo can't be set from URL.\")\n }\n\n if (typeof media !== 'string' || !media.match(/^file:/)) {\n if (tdFileId.isFileIdLike(media)) {\n media = fileIdToInputPhoto(media)\n }\n\n const res = await client.call({\n _: 'photos.updateProfilePhoto',\n id: media,\n })\n\n return new Photo(res.photo as tl.RawPhoto)\n }\n }\n\n const res = await client.call({\n _: 'photos.uploadProfilePhoto',\n [type === 'photo' ? 'file' : 'video']: await _normalizeInputFile(client, media, {}),\n videoStartTs: previewSec,\n })\n\n return new Photo(res.photo as tl.RawPhoto)\n}\n"]}
|