@mtcute/core 0.10.2 → 0.12.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 +199 -18
- package/cjs/highlevel/client.js +54 -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/_imports.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.d.ts +3 -0
- 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.d.ts +5 -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.d.ts +10 -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.d.ts +2 -2
- package/cjs/highlevel/methods/chats/get-full-chat.js +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.d.ts +3 -0
- 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.d.ts +9 -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.d.ts +1 -0
- package/cjs/highlevel/methods/files/normalize-input-media.js +12 -12
- 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/_business-connection.d.ts +7 -0
- package/cjs/highlevel/methods/messages/_business-connection.js +42 -0
- package/cjs/highlevel/methods/messages/_business-connection.js.map +1 -0
- package/cjs/highlevel/methods/messages/close-poll.js +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.d.ts +1 -0
- package/cjs/highlevel/methods/messages/edit-message.js +2 -1
- package/cjs/highlevel/methods/messages/edit-message.js.map +1 -1
- package/cjs/highlevel/methods/messages/find-in-update.d.ts +13 -1
- package/cjs/highlevel/methods/messages/find-in-update.js +7 -2
- package/cjs/highlevel/methods/messages/find-in-update.js.map +1 -1
- package/cjs/highlevel/methods/messages/forward-messages.d.ts +5 -0
- package/cjs/highlevel/methods/messages/forward-messages.js +2 -0
- package/cjs/highlevel/methods/messages/forward-messages.js.map +1 -1
- package/cjs/highlevel/methods/messages/get-all-scheduled-messages.d.ts +8 -0
- package/cjs/highlevel/methods/messages/get-all-scheduled-messages.js +32 -0
- package/cjs/highlevel/methods/messages/get-all-scheduled-messages.js.map +1 -0
- package/cjs/highlevel/methods/messages/get-callback-query-message.js.map +1 -1
- package/cjs/highlevel/methods/messages/get-discussion-message.d.ts +4 -0
- 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 +2 -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/search-global.d.ts +4 -0
- package/cjs/highlevel/methods/messages/search-global.js +2 -1
- package/cjs/highlevel/methods/messages/search-global.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.d.ts +28 -0
- package/cjs/highlevel/methods/messages/send-common.js +21 -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 +5 -2
- package/cjs/highlevel/methods/messages/send-media-group.js.map +1 -1
- package/cjs/highlevel/methods/messages/send-media.js +4 -2
- 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 +4 -2
- package/cjs/highlevel/methods/messages/send-text.js.map +1 -1
- package/cjs/highlevel/methods/messages/send-typing.d.ts +4 -0
- package/cjs/highlevel/methods/messages/send-typing.js +2 -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/chain-id.d.ts +4 -1
- package/cjs/highlevel/methods/misc/get-collectible-info.d.ts +6 -0
- package/cjs/highlevel/methods/misc/get-collectible-info.js +26 -0
- package/cjs/highlevel/methods/misc/get-collectible-info.js.map +1 -0
- package/cjs/highlevel/methods/misc/normalize-privacy-rules.js.map +1 -1
- package/cjs/highlevel/methods/misc/normalize-text.d.ts +5 -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/create-business-chat-link.d.ts +12 -0
- package/cjs/highlevel/methods/premium/create-business-chat-link.js +26 -0
- package/cjs/highlevel/methods/premium/create-business-chat-link.js.map +1 -0
- package/cjs/highlevel/methods/premium/edit-business-chat-link.d.ts +20 -0
- package/cjs/highlevel/methods/premium/edit-business-chat-link.js +42 -0
- package/cjs/highlevel/methods/premium/edit-business-chat-link.js.map +1 -0
- package/cjs/highlevel/methods/premium/get-business-chat-links.d.ts +6 -0
- package/cjs/highlevel/methods/premium/get-business-chat-links.js +14 -0
- package/cjs/highlevel/methods/premium/get-business-chat-links.js.map +1 -0
- package/cjs/highlevel/methods/premium/get-business-connection.d.ts +8 -0
- package/cjs/highlevel/methods/premium/get-business-connection.js +25 -0
- package/cjs/highlevel/methods/premium/get-business-connection.js.map +1 -0
- package/cjs/highlevel/methods/premium/iter-boosters.js.map +1 -1
- package/cjs/highlevel/methods/premium/set-business-intro.d.ts +22 -0
- package/cjs/highlevel/methods/premium/set-business-intro.js +42 -0
- package/cjs/highlevel/methods/premium/set-business-intro.js.map +1 -0
- package/cjs/highlevel/methods/premium/set-business-work-hours.d.ts +18 -0
- package/cjs/highlevel/methods/premium/set-business-work-hours.js +33 -0
- package/cjs/highlevel/methods/premium/set-business-work-hours.js.map +1 -0
- package/cjs/highlevel/methods/stickers/_utils.d.ts +10 -0
- package/cjs/highlevel/methods/stickers/_utils.js +27 -0
- package/cjs/highlevel/methods/stickers/_utils.js.map +1 -0
- package/cjs/highlevel/methods/stickers/add-sticker-to-set.d.ts +1 -2
- package/cjs/highlevel/methods/stickers/add-sticker-to-set.js +3 -17
- package/cjs/highlevel/methods/stickers/add-sticker-to-set.js.map +1 -1
- package/cjs/highlevel/methods/stickers/create-sticker-set.d.ts +0 -3
- package/cjs/highlevel/methods/stickers/create-sticker-set.js +2 -19
- package/cjs/highlevel/methods/stickers/create-sticker-set.js.map +1 -1
- package/cjs/highlevel/methods/stickers/delete-sticker-from-set.d.ts +1 -2
- package/cjs/highlevel/methods/stickers/delete-sticker-from-set.js +1 -2
- 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/get-installed-stickers.d.ts +1 -2
- package/cjs/highlevel/methods/stickers/get-installed-stickers.js +1 -2
- package/cjs/highlevel/methods/stickers/get-installed-stickers.js.map +1 -1
- package/cjs/highlevel/methods/stickers/get-my-sticker-sets.d.ts +13 -0
- package/cjs/highlevel/methods/stickers/get-my-sticker-sets.js +24 -0
- package/cjs/highlevel/methods/stickers/get-my-sticker-sets.js.map +1 -0
- package/cjs/highlevel/methods/stickers/get-sticker-set.d.ts +2 -2
- package/cjs/highlevel/methods/stickers/get-sticker-set.js +2 -2
- package/cjs/highlevel/methods/stickers/get-sticker-set.js.map +1 -1
- package/cjs/highlevel/methods/stickers/move-sticker-in-set.d.ts +2 -3
- package/cjs/highlevel/methods/stickers/move-sticker-in-set.js +2 -3
- package/cjs/highlevel/methods/stickers/move-sticker-in-set.js.map +1 -1
- package/cjs/highlevel/methods/stickers/replace-sticker-in-set.d.ts +24 -0
- package/cjs/highlevel/methods/stickers/replace-sticker-in-set.js +32 -0
- package/cjs/highlevel/methods/stickers/replace-sticker-in-set.js.map +1 -0
- 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.d.ts +5 -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-birthday.d.ts +12 -0
- package/cjs/highlevel/methods/users/set-my-birthday.js +22 -0
- package/cjs/highlevel/methods/users/set-my-birthday.js.map +1 -0
- 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/methods.d.ts +12 -0
- package/cjs/highlevel/methods.js +33 -3
- package/cjs/highlevel/methods.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 +8 -3
- package/cjs/highlevel/storage/storage.js +17 -4
- package/cjs/highlevel/storage/storage.js.map +1 -1
- package/cjs/highlevel/types/auth/sent-code.d.ts +7 -2
- package/cjs/highlevel/types/auth/sent-code.js +15 -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.d.ts +5 -1
- package/cjs/highlevel/types/bots/inline-message/factories.js.map +1 -1
- package/cjs/highlevel/types/bots/inline-result/factories.d.ts +4 -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.d.ts +7 -1
- package/cjs/highlevel/types/bots/keyboards/factories.js.map +1 -1
- package/cjs/highlevel/types/calls/discard-reason.d.ts +5 -0
- 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.d.ts +2 -0
- 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 +6 -5
- 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.d.ts +5 -0
- package/cjs/highlevel/types/media/document-utils.js +9 -2
- 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/input-media/types.d.ts +2 -2
- package/cjs/highlevel/types/media/input-media/types.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.d.ts +17 -6
- package/cjs/highlevel/types/media/poll.js +69 -19
- 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 +4 -12
- 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/input-message-id.d.ts +5 -0
- package/cjs/highlevel/types/messages/message-action.d.ts +19 -2
- package/cjs/highlevel/types/messages/message-action.js +6 -0
- 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.d.ts +4 -0
- 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.d.ts +59 -1
- package/cjs/highlevel/types/messages/message.js +102 -1
- 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/collectible-info.d.ts +27 -0
- package/cjs/highlevel/types/misc/collectible-info.js +46 -0
- package/cjs/highlevel/types/misc/collectible-info.js.map +1 -0
- package/cjs/highlevel/types/misc/entities.d.ts +7 -0
- package/cjs/highlevel/types/misc/entities.js +15 -0
- package/cjs/highlevel/types/misc/entities.js.map +1 -1
- package/cjs/highlevel/types/misc/index.d.ts +1 -0
- package/cjs/highlevel/types/misc/index.js +1 -0
- package/cjs/highlevel/types/misc/index.js.map +1 -1
- package/cjs/highlevel/types/misc/sticker-set.d.ts +8 -1
- package/cjs/highlevel/types/misc/sticker-set.js +43 -6
- 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.d.ts +3 -0
- package/cjs/highlevel/types/peers/chat-event/actions.js.map +1 -1
- package/cjs/highlevel/types/peers/chat-event/filters.d.ts +2 -0
- 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.d.ts +7 -93
- package/cjs/highlevel/types/peers/chat.js +10 -192
- 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/full-chat.d.ts +103 -0
- package/cjs/highlevel/types/peers/full-chat.js +237 -0
- package/cjs/highlevel/types/peers/full-chat.js.map +1 -0
- package/cjs/highlevel/types/peers/index.d.ts +1 -0
- package/cjs/highlevel/types/peers/index.js +1 -0
- package/cjs/highlevel/types/peers/index.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.d.ts +5 -0
- package/cjs/highlevel/types/peers/user.js +12 -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/premium/business-account.d.ts +19 -0
- package/cjs/highlevel/types/premium/business-account.js +45 -0
- package/cjs/highlevel/types/premium/business-account.js.map +1 -0
- package/cjs/highlevel/types/premium/business-chat-link.d.ts +19 -0
- package/cjs/highlevel/types/premium/business-chat-link.js +39 -0
- package/cjs/highlevel/types/premium/business-chat-link.js.map +1 -0
- package/cjs/highlevel/types/premium/business-connection.d.ts +23 -0
- package/cjs/highlevel/types/premium/business-connection.js +45 -0
- package/cjs/highlevel/types/premium/business-connection.js.map +1 -0
- package/cjs/highlevel/types/premium/business-intro.d.ts +22 -0
- package/cjs/highlevel/types/premium/business-intro.js +43 -0
- package/cjs/highlevel/types/premium/business-intro.js.map +1 -0
- package/cjs/highlevel/types/premium/business-location.d.ts +10 -0
- package/cjs/highlevel/types/premium/business-location.js +26 -0
- package/cjs/highlevel/types/premium/business-location.js.map +1 -0
- package/cjs/highlevel/types/premium/business-work-hours.d.ts +42 -0
- package/cjs/highlevel/types/premium/business-work-hours.js +141 -0
- package/cjs/highlevel/types/premium/business-work-hours.js.map +1 -0
- package/cjs/highlevel/types/premium/index.d.ts +5 -0
- package/cjs/highlevel/types/premium/index.js +5 -0
- package/cjs/highlevel/types/premium/index.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/business-message.d.ts +18 -0
- package/cjs/highlevel/types/updates/business-message.js +35 -0
- package/cjs/highlevel/types/updates/business-message.js.map +1 -0
- 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-business-message-update.d.ts +21 -0
- package/cjs/highlevel/types/updates/delete-business-message-update.js +37 -0
- package/cjs/highlevel/types/updates/delete-business-message-update.js.map +1 -0
- 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/index.d.ts +19 -2
- package/cjs/highlevel/types/updates/index.js +5 -1
- package/cjs/highlevel/types/updates/index.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.d.ts +4 -1
- package/cjs/highlevel/types/updates/parse-update.js +8 -0
- package/cjs/highlevel/types/updates/parse-update.js.map +1 -1
- package/cjs/highlevel/types/updates/poll-update.js +4 -2
- 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 +0 -1
- package/cjs/highlevel/updates/manager.js +57 -30
- package/cjs/highlevel/updates/manager.js.map +1 -1
- package/cjs/highlevel/updates/parsed.js +8 -2
- package/cjs/highlevel/updates/parsed.js.map +1 -1
- package/cjs/highlevel/updates/types.d.ts +57 -0
- package/cjs/highlevel/updates/utils.d.ts +2 -0
- 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 +7 -0
- 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/index.js +6 -0
- 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 +1 -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/index.js +6 -0
- 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 +0 -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 +0 -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 +1 -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 +10 -3
- package/cjs/network/network-manager.js +57 -31
- package/cjs/network/network-manager.js.map +1 -1
- package/cjs/network/persistent-connection.d.ts +2 -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 +32 -12
- package/cjs/network/session-connection.js.map +1 -1
- package/cjs/network/transports/abstract.d.ts +1 -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 +0 -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 +0 -1
- package/cjs/network/transports/wrapped.js +2 -0
- package/cjs/network/transports/wrapped.js.map +1 -1
- package/cjs/platform.js +6 -0
- 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 +7 -2
- 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 +22 -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/types/utils.d.ts +1 -0
- package/cjs/types/utils.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/index.js +6 -0
- 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 +0 -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/client.d.ts +1 -0
- package/client.js +1 -0
- 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 +199 -18
- package/esm/highlevel/client.js +48 -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/_imports.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.d.ts +3 -0
- 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.d.ts +5 -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.d.ts +10 -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.d.ts +2 -2
- package/esm/highlevel/methods/chats/get-full-chat.js +2 -2
- 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.d.ts +3 -0
- 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.d.ts +9 -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.d.ts +1 -0
- package/esm/highlevel/methods/files/normalize-input-media.js +12 -12
- 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/_business-connection.d.ts +7 -0
- package/esm/highlevel/methods/messages/_business-connection.js +38 -0
- package/esm/highlevel/methods/messages/_business-connection.js.map +1 -0
- package/esm/highlevel/methods/messages/close-poll.js +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.d.ts +1 -0
- package/esm/highlevel/methods/messages/edit-message.js +2 -1
- package/esm/highlevel/methods/messages/edit-message.js.map +1 -1
- package/esm/highlevel/methods/messages/find-in-update.d.ts +13 -1
- package/esm/highlevel/methods/messages/find-in-update.js +7 -2
- package/esm/highlevel/methods/messages/find-in-update.js.map +1 -1
- package/esm/highlevel/methods/messages/forward-messages.d.ts +5 -0
- package/esm/highlevel/methods/messages/forward-messages.js +2 -0
- package/esm/highlevel/methods/messages/forward-messages.js.map +1 -1
- package/esm/highlevel/methods/messages/get-all-scheduled-messages.d.ts +8 -0
- package/esm/highlevel/methods/messages/get-all-scheduled-messages.js +25 -0
- package/esm/highlevel/methods/messages/get-all-scheduled-messages.js.map +1 -0
- package/esm/highlevel/methods/messages/get-callback-query-message.js.map +1 -1
- package/esm/highlevel/methods/messages/get-discussion-message.d.ts +4 -0
- 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 +2 -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/search-global.d.ts +4 -0
- package/esm/highlevel/methods/messages/search-global.js +2 -1
- package/esm/highlevel/methods/messages/search-global.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.d.ts +28 -0
- package/esm/highlevel/methods/messages/send-common.js +19 -0
- 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 +5 -2
- package/esm/highlevel/methods/messages/send-media-group.js.map +1 -1
- package/esm/highlevel/methods/messages/send-media.js +4 -2
- 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 +4 -2
- package/esm/highlevel/methods/messages/send-text.js.map +1 -1
- package/esm/highlevel/methods/messages/send-typing.d.ts +4 -0
- package/esm/highlevel/methods/messages/send-typing.js +2 -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/chain-id.d.ts +4 -1
- package/esm/highlevel/methods/misc/get-collectible-info.d.ts +6 -0
- package/esm/highlevel/methods/misc/get-collectible-info.js +22 -0
- package/esm/highlevel/methods/misc/get-collectible-info.js.map +1 -0
- package/esm/highlevel/methods/misc/normalize-privacy-rules.js.map +1 -1
- package/esm/highlevel/methods/misc/normalize-text.d.ts +5 -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/create-business-chat-link.d.ts +12 -0
- package/esm/highlevel/methods/premium/create-business-chat-link.js +22 -0
- package/esm/highlevel/methods/premium/create-business-chat-link.js.map +1 -0
- package/esm/highlevel/methods/premium/edit-business-chat-link.d.ts +20 -0
- package/esm/highlevel/methods/premium/edit-business-chat-link.js +37 -0
- package/esm/highlevel/methods/premium/edit-business-chat-link.js.map +1 -0
- package/esm/highlevel/methods/premium/get-business-chat-links.d.ts +6 -0
- package/esm/highlevel/methods/premium/get-business-chat-links.js +10 -0
- package/esm/highlevel/methods/premium/get-business-chat-links.js.map +1 -0
- package/esm/highlevel/methods/premium/get-business-connection.d.ts +8 -0
- package/esm/highlevel/methods/premium/get-business-connection.js +21 -0
- package/esm/highlevel/methods/premium/get-business-connection.js.map +1 -0
- package/esm/highlevel/methods/premium/iter-boosters.js.map +1 -1
- package/esm/highlevel/methods/premium/set-business-intro.d.ts +22 -0
- package/esm/highlevel/methods/premium/set-business-intro.js +38 -0
- package/esm/highlevel/methods/premium/set-business-intro.js.map +1 -0
- package/esm/highlevel/methods/premium/set-business-work-hours.d.ts +18 -0
- package/esm/highlevel/methods/premium/set-business-work-hours.js +29 -0
- package/esm/highlevel/methods/premium/set-business-work-hours.js.map +1 -0
- package/esm/highlevel/methods/stickers/_utils.d.ts +10 -0
- package/esm/highlevel/methods/stickers/_utils.js +23 -0
- package/esm/highlevel/methods/stickers/_utils.js.map +1 -0
- package/esm/highlevel/methods/stickers/add-sticker-to-set.d.ts +1 -2
- package/esm/highlevel/methods/stickers/add-sticker-to-set.js +4 -18
- package/esm/highlevel/methods/stickers/add-sticker-to-set.js.map +1 -1
- package/esm/highlevel/methods/stickers/create-sticker-set.d.ts +0 -3
- package/esm/highlevel/methods/stickers/create-sticker-set.js +3 -20
- package/esm/highlevel/methods/stickers/create-sticker-set.js.map +1 -1
- package/esm/highlevel/methods/stickers/delete-sticker-from-set.d.ts +1 -2
- package/esm/highlevel/methods/stickers/delete-sticker-from-set.js +1 -2
- 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/get-installed-stickers.d.ts +1 -2
- package/esm/highlevel/methods/stickers/get-installed-stickers.js +1 -2
- package/esm/highlevel/methods/stickers/get-installed-stickers.js.map +1 -1
- package/esm/highlevel/methods/stickers/get-my-sticker-sets.d.ts +13 -0
- package/esm/highlevel/methods/stickers/get-my-sticker-sets.js +17 -0
- package/esm/highlevel/methods/stickers/get-my-sticker-sets.js.map +1 -0
- package/esm/highlevel/methods/stickers/get-sticker-set.d.ts +2 -2
- package/esm/highlevel/methods/stickers/get-sticker-set.js +2 -2
- package/esm/highlevel/methods/stickers/get-sticker-set.js.map +1 -1
- package/esm/highlevel/methods/stickers/move-sticker-in-set.d.ts +2 -3
- package/esm/highlevel/methods/stickers/move-sticker-in-set.js +2 -3
- package/esm/highlevel/methods/stickers/move-sticker-in-set.js.map +1 -1
- package/esm/highlevel/methods/stickers/replace-sticker-in-set.d.ts +24 -0
- package/esm/highlevel/methods/stickers/replace-sticker-in-set.js +28 -0
- package/esm/highlevel/methods/stickers/replace-sticker-in-set.js.map +1 -0
- 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.d.ts +5 -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-birthday.d.ts +12 -0
- package/esm/highlevel/methods/users/set-my-birthday.js +18 -0
- package/esm/highlevel/methods/users/set-my-birthday.js.map +1 -0
- 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/methods.d.ts +12 -0
- package/esm/highlevel/methods.js +12 -0
- package/esm/highlevel/methods.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 +8 -3
- package/esm/highlevel/storage/storage.js +17 -4
- package/esm/highlevel/storage/storage.js.map +1 -1
- package/esm/highlevel/types/auth/sent-code.d.ts +7 -2
- package/esm/highlevel/types/auth/sent-code.js +15 -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.d.ts +5 -1
- package/esm/highlevel/types/bots/inline-message/factories.js.map +1 -1
- package/esm/highlevel/types/bots/inline-result/factories.d.ts +4 -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.d.ts +7 -1
- package/esm/highlevel/types/bots/keyboards/factories.js.map +1 -1
- package/esm/highlevel/types/calls/discard-reason.d.ts +5 -0
- 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.d.ts +2 -0
- 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 +6 -5
- 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.d.ts +5 -0
- package/esm/highlevel/types/media/document-utils.js +7 -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/input-media/types.d.ts +2 -2
- package/esm/highlevel/types/media/input-media/types.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.d.ts +17 -6
- package/esm/highlevel/types/media/poll.js +68 -18
- 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 +4 -12
- 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/input-message-id.d.ts +5 -0
- package/esm/highlevel/types/messages/message-action.d.ts +19 -2
- package/esm/highlevel/types/messages/message-action.js +6 -0
- 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.d.ts +4 -0
- 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.d.ts +59 -1
- package/esm/highlevel/types/messages/message.js +102 -1
- 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/collectible-info.d.ts +27 -0
- package/esm/highlevel/types/misc/collectible-info.js +43 -0
- package/esm/highlevel/types/misc/collectible-info.js.map +1 -0
- package/esm/highlevel/types/misc/entities.d.ts +7 -0
- package/esm/highlevel/types/misc/entities.js +13 -1
- package/esm/highlevel/types/misc/entities.js.map +1 -1
- package/esm/highlevel/types/misc/index.d.ts +1 -0
- package/esm/highlevel/types/misc/index.js +1 -0
- package/esm/highlevel/types/misc/index.js.map +1 -1
- package/esm/highlevel/types/misc/sticker-set.d.ts +8 -1
- package/esm/highlevel/types/misc/sticker-set.js +45 -8
- 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.d.ts +3 -0
- package/esm/highlevel/types/peers/chat-event/actions.js.map +1 -1
- package/esm/highlevel/types/peers/chat-event/filters.d.ts +2 -0
- 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.d.ts +7 -93
- package/esm/highlevel/types/peers/chat.js +10 -192
- 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/full-chat.d.ts +103 -0
- package/esm/highlevel/types/peers/full-chat.js +234 -0
- package/esm/highlevel/types/peers/full-chat.js.map +1 -0
- package/esm/highlevel/types/peers/index.d.ts +1 -0
- package/esm/highlevel/types/peers/index.js +1 -0
- package/esm/highlevel/types/peers/index.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.d.ts +5 -0
- package/esm/highlevel/types/peers/user.js +12 -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/premium/business-account.d.ts +19 -0
- package/esm/highlevel/types/premium/business-account.js +42 -0
- package/esm/highlevel/types/premium/business-account.js.map +1 -0
- package/esm/highlevel/types/premium/business-chat-link.d.ts +19 -0
- package/esm/highlevel/types/premium/business-chat-link.js +36 -0
- package/esm/highlevel/types/premium/business-chat-link.js.map +1 -0
- package/esm/highlevel/types/premium/business-connection.d.ts +23 -0
- package/esm/highlevel/types/premium/business-connection.js +42 -0
- package/esm/highlevel/types/premium/business-connection.js.map +1 -0
- package/esm/highlevel/types/premium/business-intro.d.ts +22 -0
- package/esm/highlevel/types/premium/business-intro.js +40 -0
- package/esm/highlevel/types/premium/business-intro.js.map +1 -0
- package/esm/highlevel/types/premium/business-location.d.ts +10 -0
- package/esm/highlevel/types/premium/business-location.js +23 -0
- package/esm/highlevel/types/premium/business-location.js.map +1 -0
- package/esm/highlevel/types/premium/business-work-hours.d.ts +42 -0
- package/esm/highlevel/types/premium/business-work-hours.js +137 -0
- package/esm/highlevel/types/premium/business-work-hours.js.map +1 -0
- package/esm/highlevel/types/premium/index.d.ts +5 -0
- package/esm/highlevel/types/premium/index.js +5 -0
- package/esm/highlevel/types/premium/index.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/business-message.d.ts +18 -0
- package/esm/highlevel/types/updates/business-message.js +31 -0
- package/esm/highlevel/types/updates/business-message.js.map +1 -0
- 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-business-message-update.d.ts +21 -0
- package/esm/highlevel/types/updates/delete-business-message-update.js +34 -0
- package/esm/highlevel/types/updates/delete-business-message-update.js.map +1 -0
- 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/index.d.ts +19 -2
- package/esm/highlevel/types/updates/index.js +3 -1
- package/esm/highlevel/types/updates/index.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.d.ts +4 -1
- package/esm/highlevel/types/updates/parse-update.js +9 -1
- package/esm/highlevel/types/updates/parse-update.js.map +1 -1
- package/esm/highlevel/types/updates/poll-update.js +4 -2
- 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.d.ts +0 -1
- package/esm/highlevel/updates/manager.js +57 -30
- package/esm/highlevel/updates/manager.js.map +1 -1
- package/esm/highlevel/updates/parsed.js +8 -2
- package/esm/highlevel/updates/parsed.js.map +1 -1
- package/esm/highlevel/updates/types.d.ts +57 -0
- package/esm/highlevel/updates/utils.d.ts +2 -0
- 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 +4 -0
- 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 -2
- 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.d.ts +0 -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.d.ts +0 -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 -2
- 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 +10 -3
- package/esm/network/network-manager.js +57 -31
- package/esm/network/network-manager.js.map +1 -1
- package/esm/network/persistent-connection.d.ts +2 -3
- 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 +32 -12
- package/esm/network/session-connection.js.map +1 -1
- package/esm/network/transports/abstract.d.ts +1 -2
- 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.d.ts +0 -1
- package/esm/network/transports/streamed.js +1 -4
- package/esm/network/transports/streamed.js.map +1 -1
- package/esm/network/transports/wrapped.d.ts +0 -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 +7 -2
- 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 +22 -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/types/utils.d.ts +1 -0
- package/esm/types/utils.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.d.ts +0 -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/index.d.ts +1 -0
- package/index.js +1 -0
- package/methods.d.ts +1 -0
- package/methods.js +1 -0
- package/package.json +13 -13
- package/platform.d.ts +1 -0
- package/platform.js +1 -0
- package/utils.d.ts +1 -0
- package/utils.js +1 -0
- package/worker.d.ts +1 -0
- package/worker.js +1 -0
|
@@ -14,9 +14,10 @@ export function makeParsedUpdateHandler(params) {
|
|
|
14
14
|
const parsed = _parseUpdate(update, peers);
|
|
15
15
|
onRawUpdate(update, peers);
|
|
16
16
|
if (parsed) {
|
|
17
|
-
if (parsed.name === 'new_message') {
|
|
17
|
+
if (parsed.name === 'new_message' || parsed.name === 'new_business_message') {
|
|
18
18
|
const group = parsed.data.groupedIdUnique;
|
|
19
19
|
if (group) {
|
|
20
|
+
const isBusiness = parsed.name === 'new_business_message';
|
|
20
21
|
const pendingGroup = pending.get(group);
|
|
21
22
|
if (pendingGroup) {
|
|
22
23
|
pendingGroup[0].push(parsed.data);
|
|
@@ -25,7 +26,12 @@ export function makeParsedUpdateHandler(params) {
|
|
|
25
26
|
const messages = [parsed.data];
|
|
26
27
|
const timeout = setTimeout(() => {
|
|
27
28
|
pending.delete(group);
|
|
28
|
-
|
|
29
|
+
if (isBusiness) {
|
|
30
|
+
onUpdate({ name: 'business_message_group', data: messages });
|
|
31
|
+
}
|
|
32
|
+
else {
|
|
33
|
+
onUpdate({ name: 'message_group', data: messages });
|
|
34
|
+
}
|
|
29
35
|
}, messageGroupingInterval);
|
|
30
36
|
pending.set(group, [messages, timeout]);
|
|
31
37
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parsed.js","sourceRoot":"","sources":["../../../../src/highlevel/updates/parsed.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAA;AAkC/D,MAAM,UAAU,uBAAuB,CAAC,MAAiC;IACrE,MAAM,EAAE,uBAAuB,EAAE,QAAQ,EAAE,WAAW,GAAG,GAAG,EAAE,GAAE,CAAC,EAAE,GAAG,MAAM,CAAA;IAE5E,IAAI,CAAC,uBAAuB,EAAE;
|
|
1
|
+
{"version":3,"file":"parsed.js","sourceRoot":"","sources":["../../../../src/highlevel/updates/parsed.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAA;AAkC/D,MAAM,UAAU,uBAAuB,CAAC,MAAiC;IACrE,MAAM,EAAE,uBAAuB,EAAE,QAAQ,EAAE,WAAW,GAAG,GAAG,EAAE,GAAE,CAAC,EAAE,GAAG,MAAM,CAAA;IAE5E,IAAI,CAAC,uBAAuB,EAAE,CAAC;QAC3B,OAAO,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;YACrB,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;YAE1C,WAAW,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;YAC1B,IAAI,MAAM;gBAAE,QAAQ,CAAC,MAAM,CAAC,CAAA;QAChC,CAAC,CAAA;IACL,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,GAAG,EAAuC,CAAA;IAE9D,OAAO,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;QACrB,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;QAE1C,WAAW,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;QAE1B,IAAI,MAAM,EAAE,CAAC;YACT,IAAI,MAAM,CAAC,IAAI,KAAK,aAAa,IAAI,MAAM,CAAC,IAAI,KAAK,sBAAsB,EAAE,CAAC;gBAC1E,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,eAAe,CAAA;gBAEzC,IAAI,KAAK,EAAE,CAAC;oBACR,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,KAAK,sBAAsB,CAAA;oBACzD,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;oBAEvC,IAAI,YAAY,EAAE,CAAC;wBACf,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;oBACrC,CAAC;yBAAM,CAAC;wBACJ,MAAM,QAAQ,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;wBAC9B,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE;4BAC5B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;4BAErB,IAAI,UAAU,EAAE,CAAC;gCACb,QAAQ,CAAC,EAAE,IAAI,EAAE,wBAAwB,EAAE,IAAI,EAAE,QAA6B,EAAE,CAAC,CAAA;4BACrF,CAAC;iCAAM,CAAC;gCACJ,QAAQ,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAA;4BACvD,CAAC;wBACL,CAAC,EAAE,uBAAuB,CAAC,CAAA;wBAE3B,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAA;oBAC3C,CAAC;oBAED,OAAM;gBACV,CAAC;YACL,CAAC;YAED,QAAQ,CAAC,MAAM,CAAC,CAAA;QACpB,CAAC;IACL,CAAC,CAAA;AACL,CAAC","sourcesContent":["import { Message } from '../types/messages/index.js'\nimport { BusinessMessage, ParsedUpdate } from '../types/updates/index.js'\nimport { _parseUpdate } from '../types/updates/parse-update.js'\nimport { RawUpdateHandler } from './types.js'\n\nexport interface ParsedUpdateHandlerParams {\n /**\n * When non-zero, allows the library to automatically handle Telegram\n * media groups (e.g. albums) in {@link MessageGroup} updates\n * in a given time interval (in ms).\n *\n * > **Note**: this does not catch messages that happen to be consecutive,\n * > only messages belonging to the same \"media group\".\n *\n * This will cause up to `messageGroupingInterval` delay\n * in handling media group messages.\n *\n * This option only applies to `new_message` updates,\n * and the updates being grouped **will not** be dispatched on their own.\n *\n * Recommended value is 250 ms.\n *\n * @default 0 (disabled)\n */\n messageGroupingInterval?: number\n\n /** Handler for parsed updates */\n onUpdate: (update: ParsedUpdate) => void\n /**\n * Handler for raw updates.\n *\n * Note that this handler will be called **before** the parsed update handler.\n */\n onRawUpdate?: RawUpdateHandler\n}\n\nexport function makeParsedUpdateHandler(params: ParsedUpdateHandlerParams): RawUpdateHandler {\n const { messageGroupingInterval, onUpdate, onRawUpdate = () => {} } = params\n\n if (!messageGroupingInterval) {\n return (update, peers) => {\n const parsed = _parseUpdate(update, peers)\n\n onRawUpdate(update, peers)\n if (parsed) onUpdate(parsed)\n }\n }\n\n const pending = new Map<string, [Message[], NodeJS.Timeout]>()\n\n return (update, peers) => {\n const parsed = _parseUpdate(update, peers)\n\n onRawUpdate(update, peers)\n\n if (parsed) {\n if (parsed.name === 'new_message' || parsed.name === 'new_business_message') {\n const group = parsed.data.groupedIdUnique\n\n if (group) {\n const isBusiness = parsed.name === 'new_business_message'\n const pendingGroup = pending.get(group)\n\n if (pendingGroup) {\n pendingGroup[0].push(parsed.data)\n } else {\n const messages = [parsed.data]\n const timeout = setTimeout(() => {\n pending.delete(group)\n\n if (isBusiness) {\n onUpdate({ name: 'business_message_group', data: messages as BusinessMessage[] })\n } else {\n onUpdate({ name: 'message_group', data: messages })\n }\n }, messageGroupingInterval)\n\n pending.set(group, [messages, timeout])\n }\n\n return\n }\n }\n\n onUpdate(parsed)\n }\n }\n}\n"]}
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import { tl } from '@mtcute/tl';
|
|
2
|
+
import { AsyncLock, ConditionVariable, Deque, EarlyTimer, Logger, SortedLinkedList } from '../../utils/index.js';
|
|
3
|
+
import { CurrentUserInfo } from '../storage/service/current-user.js';
|
|
2
4
|
import { PeersIndex } from '../types/peers/peers-index.js';
|
|
3
5
|
/**
|
|
4
6
|
* Function to be called for each update.
|
|
@@ -46,3 +48,58 @@ export interface UpdatesManagerParams {
|
|
|
46
48
|
*/
|
|
47
49
|
catchUp?: boolean;
|
|
48
50
|
}
|
|
51
|
+
/** @internal */
|
|
52
|
+
export interface PendingUpdateContainer {
|
|
53
|
+
upd: tl.TypeUpdates;
|
|
54
|
+
seqStart: number;
|
|
55
|
+
seqEnd: number;
|
|
56
|
+
}
|
|
57
|
+
/** @internal */
|
|
58
|
+
export interface PendingUpdate {
|
|
59
|
+
update: tl.TypeUpdate;
|
|
60
|
+
channelId?: number;
|
|
61
|
+
pts?: number;
|
|
62
|
+
ptsBefore?: number;
|
|
63
|
+
qts?: number;
|
|
64
|
+
qtsBefore?: number;
|
|
65
|
+
timeout?: number;
|
|
66
|
+
peers: PeersIndex;
|
|
67
|
+
fromDifference: boolean;
|
|
68
|
+
}
|
|
69
|
+
/** @internal */
|
|
70
|
+
export interface UpdatesState {
|
|
71
|
+
updatesLoopActive: boolean;
|
|
72
|
+
updatesLoopCv: ConditionVariable;
|
|
73
|
+
postponedTimer: EarlyTimer;
|
|
74
|
+
hasTimedoutPostponed: boolean;
|
|
75
|
+
pendingUpdateContainers: SortedLinkedList<PendingUpdateContainer>;
|
|
76
|
+
pendingPtsUpdates: SortedLinkedList<PendingUpdate>;
|
|
77
|
+
pendingPtsUpdatesPostponed: SortedLinkedList<PendingUpdate>;
|
|
78
|
+
pendingQtsUpdates: SortedLinkedList<PendingUpdate>;
|
|
79
|
+
pendingQtsUpdatesPostponed: SortedLinkedList<PendingUpdate>;
|
|
80
|
+
pendingUnorderedUpdates: Deque<PendingUpdate>;
|
|
81
|
+
noDispatchEnabled: boolean;
|
|
82
|
+
noDispatchMsg: Map<number, Set<number>>;
|
|
83
|
+
noDispatchPts: Map<number, Set<number>>;
|
|
84
|
+
noDispatchQts: Set<number>;
|
|
85
|
+
lock: AsyncLock;
|
|
86
|
+
pts?: number;
|
|
87
|
+
qts?: number;
|
|
88
|
+
date?: number;
|
|
89
|
+
seq?: number;
|
|
90
|
+
oldPts?: number;
|
|
91
|
+
oldQts?: number;
|
|
92
|
+
oldDate?: number;
|
|
93
|
+
oldSeq?: number;
|
|
94
|
+
selfChanged: boolean;
|
|
95
|
+
catchUpChannels: boolean;
|
|
96
|
+
catchUpOnStart: boolean;
|
|
97
|
+
cpts: Map<number, number>;
|
|
98
|
+
cptsMod: Map<number, number>;
|
|
99
|
+
channelDiffTimeouts: Map<number, NodeJS.Timeout>;
|
|
100
|
+
channelsOpened: Map<number, number>;
|
|
101
|
+
log: Logger;
|
|
102
|
+
stop: () => void;
|
|
103
|
+
handler: RawUpdateHandler;
|
|
104
|
+
auth: CurrentUserInfo | null;
|
|
105
|
+
}
|
|
@@ -17,3 +17,5 @@ export declare function createDummyUpdatesContainer(updates: tl.TypeUpdate[], se
|
|
|
17
17
|
* @param channelId Channel ID (bare), if applicable
|
|
18
18
|
*/
|
|
19
19
|
export declare function createDummyUpdate(pts: number, ptsCount: number, channelId?: number): tl.TypeUpdates;
|
|
20
|
+
/** @internal */
|
|
21
|
+
export declare function assertIsUpdatesGroup(ctx: string, upd: tl.TypeUpdates): asserts upd is tl.RawUpdates | tl.RawUpdatesCombined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/highlevel/updates/utils.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAA;AAI5D,MAAM,UAAU,eAAe,CAAC,OAAuB;IACnD,QAAQ,OAAO,CAAC,MAAO,CAAC,CAAC,EAAE;
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/highlevel/updates/utils.ts"],"names":[],"mappings":"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","sourcesContent":["import { tl } from '@mtcute/tl'\n\nimport { MtTypeAssertionError } from '../../types/errors.js'\nimport { PeersIndex } from '../types/peers/peers-index.js'\nimport type { PendingUpdate } from './types.js'\n\nexport function messageToUpdate(message: tl.TypeMessage): tl.TypeUpdate {\n switch (message.peerId!._) {\n case 'peerUser':\n case 'peerChat':\n return {\n _: 'updateNewMessage',\n message,\n pts: 0,\n ptsCount: 0,\n }\n case 'peerChannel':\n return {\n _: 'updateNewChannelMessage',\n message,\n pts: 0,\n ptsCount: 0,\n }\n }\n}\n\nexport function extractChannelIdFromUpdate(upd: tl.TypeUpdate): number | undefined {\n // holy shit\n let res = 0\n\n if ('channelId' in upd) {\n res = upd.channelId\n } else if (\n 'message' in upd &&\n typeof upd.message !== 'string' &&\n 'peerId' in upd.message &&\n upd.message.peerId &&\n 'channelId' in upd.message.peerId\n ) {\n res = upd.message.peerId.channelId\n }\n\n if (res === 0) return undefined\n\n return res\n}\n\nexport function toPendingUpdate(upd: tl.TypeUpdate, peers: PeersIndex, fromDifference = false): PendingUpdate {\n const channelId = extractChannelIdFromUpdate(upd) || 0\n const pts = 'pts' in upd ? upd.pts : undefined\n // eslint-disable-next-line no-nested-ternary\n const ptsCount = 'ptsCount' in upd ? upd.ptsCount : pts ? 0 : undefined\n const qts = 'qts' in upd ? upd.qts : undefined\n\n return {\n update: upd,\n channelId,\n pts,\n ptsBefore: pts ? pts - ptsCount! : undefined,\n qts,\n qtsBefore: qts ? qts - 1 : undefined,\n peers,\n fromDifference,\n }\n}\n\nexport function isMessageEmpty(upd: tl.TypeUpdate): boolean {\n return (upd as Extract<typeof upd, { message: object }>).message?._ === 'messageEmpty'\n}\n\n// dummy updates which are used for methods that return messages.affectedHistory.\n// that is not an update, but it carries info about pts, and we need to handle it\n\n/**\n * Create a dummy `updates` container with given updates.\n */\nexport function createDummyUpdatesContainer(updates: tl.TypeUpdate[], seq = 0): tl.TypeUpdates {\n return {\n _: 'updates',\n seq,\n date: 0,\n chats: [],\n users: [],\n updates,\n }\n}\n\n/**\n * Create a dummy update from PTS and PTS count.\n *\n * @param pts PTS\n * @param ptsCount PTS count\n * @param channelId Channel ID (bare), if applicable\n */\nexport function createDummyUpdate(pts: number, ptsCount: number, channelId = 0): tl.TypeUpdates {\n return createDummyUpdatesContainer([\n {\n _: 'mtcute.dummyUpdate',\n channelId,\n pts,\n ptsCount,\n },\n ])\n}\n\n/** @internal */\nexport function assertIsUpdatesGroup(\n ctx: string,\n upd: tl.TypeUpdates,\n): asserts upd is tl.RawUpdates | tl.RawUpdatesCombined {\n switch (upd._) {\n case 'updates':\n case 'updatesCombined':\n return\n }\n throw new MtTypeAssertionError(ctx, 'updates | updatesCombined', upd._)\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"convert-file-id.js","sourceRoot":"","sources":["../../../../src/highlevel/utils/convert-file-id.ts"],"names":[],"mappings":"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","sourcesContent":["import Long from 'long'\n\nimport { parseFileId, tdFileId as td } from '@mtcute/file-id'\nimport { tl } from '@mtcute/tl'\n\nimport { parseMarkedPeerId } from '../../utils/peer-utils.js'\n\nimport FileType = td.FileType\nimport { getPlatform } from '../../platform.js'\nimport { assertNever } from '../../types/utils.js'\n\nconst EMPTY_BUFFER = new Uint8Array(0)\n\ntype FileId = td.RawFullRemoteFileLocation\n\nfunction dialogPhotoToInputPeer(\n dialog: td.RawPhotoSizeSourceDialogPhoto | td.RawPhotoSizeSourceDialogPhotoLegacy,\n): tl.TypeInputPeer {\n const markedPeerId = dialog.id\n const [peerType, peerId] = parseMarkedPeerId(markedPeerId)\n\n if (peerType === 'user') {\n return {\n _: 'inputPeerUser',\n userId: peerId,\n accessHash: dialog.accessHash,\n }\n } else if (peerType === 'chat') {\n return {\n _: 'inputPeerChat',\n chatId: peerId,\n }\n }\n\n return {\n _: 'inputPeerChannel',\n channelId: peerId,\n accessHash: dialog.accessHash,\n }\n}\n\n/**\n * Convert a file ID or {@link tdFileId.RawFullRemoteFileLocation}\n * to TL object `inputWebFileLocation`\n *\n * @param fileId File ID, either parsed or as a string\n */\nexport function fileIdToInputWebFileLocation(fileId: string | FileId): tl.RawInputWebFileLocation {\n if (typeof fileId === 'string') fileId = parseFileId(getPlatform(), fileId)\n\n if (fileId.location._ !== 'web') {\n throw new td.ConversionError('inputWebFileLocation')\n }\n\n return {\n _: 'inputWebFileLocation',\n url: fileId.location.url,\n accessHash: fileId.location.accessHash,\n }\n}\n\n/**\n * Convert a file ID or {@link tdFileId.RawFullRemoteFileLocation}\n * to TL object representing an `InputFileLocation`\n *\n * @param fileId File ID, either parsed or as a string\n */\nexport function fileIdToInputFileLocation(fileId: string | FileId): tl.TypeInputFileLocation {\n if (typeof fileId === 'string') fileId = parseFileId(getPlatform(), fileId)\n\n const loc = fileId.location\n\n switch (loc._) {\n case 'web':\n throw new td.ConversionError('InputFileLocation')\n\n case 'photo': {\n switch (loc.source._) {\n case 'legacy':\n if (!fileId.fileReference) {\n throw new td.InvalidFileIdError('Expected legacy photo to have file reference')\n }\n\n // for some reason tdlib removed this thing altogether\n // https://github.com/tdlib/td/commit/4bb76a7b6f47bf9e0d0d01a72aac579ec73557ee#diff-8cc4f7c60a8261a8cf782e7fb51b95105bfb08710a1c2b63f80a48263ae0fb9bL401\n // still leaving this, but not sure if passing 0 as volume_id and local_id is correct at all lol\n return {\n _: 'inputPhotoLegacyFileLocation',\n fileReference: fileId.fileReference,\n id: loc.id,\n accessHash: loc.accessHash,\n volumeId: Long.ZERO,\n localId: 0,\n secret: loc.source.secret,\n }\n case 'thumbnail':\n if (!fileId.fileReference) {\n throw new td.InvalidFileIdError('Expected thumbnail photo to have file reference')\n }\n\n if (loc.source.fileType !== FileType.Photo && loc.source.fileType !== FileType.Thumbnail) {\n throw new td.InvalidFileIdError('Expected a thumbnail to have a correct file type')\n }\n\n return {\n _:\n loc.source.fileType === FileType.Photo ?\n 'inputPhotoFileLocation' :\n 'inputDocumentFileLocation',\n fileReference: fileId.fileReference,\n id: loc.id,\n accessHash: loc.accessHash,\n thumbSize: loc.source.thumbnailType,\n }\n case 'dialogPhoto':\n return {\n _: 'inputPeerPhotoFileLocation',\n big: loc.source.big,\n peer: dialogPhotoToInputPeer(loc.source),\n photoId: loc.id,\n }\n case 'stickerSetThumbnail':\n // this was also removed from tdlib:\n // https://github.com/tdlib/td/commit/4bb76a7b6f47bf9e0d0d01a72aac579ec73557ee#diff-8cc4f7c60a8261a8cf782e7fb51b95105bfb08710a1c2b63f80a48263ae0fb9bR432\n // also leaving this one though.\n return {\n _: 'inputStickerSetThumb',\n stickerset: {\n _: 'inputStickerSetID',\n id: loc.source.id,\n accessHash: loc.source.accessHash,\n },\n thumbVersion: 0,\n }\n case 'fullLegacy':\n if (!fileId.fileReference) {\n throw new td.InvalidFileIdError('Expected legacy photo to have file reference')\n }\n\n return {\n _: 'inputPhotoLegacyFileLocation',\n fileReference: fileId.fileReference,\n id: loc.id,\n accessHash: loc.accessHash,\n volumeId: loc.source.volumeId,\n localId: loc.source.localId,\n secret: loc.source.secret,\n }\n case 'dialogPhotoLegacy':\n return {\n _: 'inputPeerPhotoFileLocationLegacy',\n big: loc.source.big,\n peer: dialogPhotoToInputPeer(loc.source),\n volumeId: loc.source.volumeId,\n localId: loc.source.localId,\n }\n case 'stickerSetThumbnailLegacy':\n return {\n _: 'inputStickerSetThumbLegacy',\n stickerset: {\n _: 'inputStickerSetID',\n id: loc.source.id,\n accessHash: loc.source.accessHash,\n },\n volumeId: loc.source.volumeId,\n localId: loc.source.localId,\n }\n case 'stickerSetThumbnailVersion':\n return {\n _: 'inputStickerSetThumb',\n stickerset: {\n _: 'inputStickerSetID',\n id: loc.source.id,\n accessHash: loc.source.accessHash,\n },\n thumbVersion: loc.source.version,\n }\n default:\n assertNever(loc.source)\n }\n\n throw new td.ConversionError('inputFileLocation')\n }\n case 'common': {\n if (!fileId.fileReference) {\n throw new td.InvalidFileIdError('Expected common to have file reference')\n }\n\n if (fileId.type === FileType.Encrypted) {\n return {\n _: 'inputEncryptedFileLocation',\n id: loc.id,\n accessHash: loc.accessHash,\n }\n } else if (fileId.type === FileType.Secure || fileId.type === FileType.SecureRaw) {\n return {\n _: 'inputSecureFileLocation',\n id: loc.id,\n accessHash: loc.accessHash,\n }\n }\n\n return {\n _: 'inputDocumentFileLocation',\n fileReference: fileId.fileReference,\n id: loc.id,\n accessHash: loc.accessHash,\n thumbSize: '',\n }\n }\n default:\n assertNever(loc)\n }\n}\n\n/**\n * Convert a file ID or {@link tdFileId.RawFullRemoteFileLocation}\n * to TL object `inputDocument`\n *\n * @param fileId File ID, either parsed or as a string\n */\nexport function fileIdToInputDocument(fileId: string | FileId): tl.RawInputDocument {\n if (typeof fileId === 'string') fileId = parseFileId(getPlatform(), fileId)\n\n if (\n fileId.location._ !== 'common' ||\n fileId.type === FileType.Secure ||\n fileId.type === FileType.SecureRaw ||\n fileId.type === FileType.Encrypted\n ) {\n throw new td.ConversionError('inputDocument')\n }\n\n let fileRef = fileId.fileReference\n\n if (!fileRef) {\n if (fileId.type === FileType.Sticker) {\n // older stickers' file IDs don't have file ref\n fileRef = EMPTY_BUFFER\n } else {\n throw new td.InvalidFileIdError('Expected document to have file reference')\n }\n }\n\n return {\n _: 'inputDocument',\n fileReference: fileRef,\n id: fileId.location.id,\n accessHash: fileId.location.accessHash,\n }\n}\n\n/**\n * Convert a file ID or {@link tdFileId.RawFullRemoteFileLocation}\n * to TL object `inputPhoto`\n *\n * @param fileId File ID, either parsed or as a string\n */\nexport function fileIdToInputPhoto(fileId: string | FileId): tl.RawInputPhoto {\n if (typeof fileId === 'string') fileId = parseFileId(getPlatform(), fileId)\n\n if (fileId.location._ !== 'photo') {\n throw new td.ConversionError('inputPhoto')\n }\n\n if (!fileId.fileReference) {\n throw new td.InvalidFileIdError('Expected photo to have file reference')\n }\n\n return {\n _: 'inputPhoto',\n fileReference: fileId.fileReference,\n id: fileId.location.id,\n accessHash: fileId.location.accessHash,\n }\n}\n\n/**\n * Convert a file ID or {@link tdFileId.RawFullRemoteFileLocation}\n * to TL object `inputEncryptedFile`\n *\n * @param fileId File ID, either parsed or as a string\n */\nexport function fileIdToEncryptedFile(fileId: string | FileId): tl.RawInputEncryptedFile {\n if (typeof fileId === 'string') fileId = parseFileId(getPlatform(), fileId)\n\n if (fileId.location._ !== 'common' || fileId.type !== FileType.Encrypted) {\n throw new td.ConversionError('inputEncryptedFile')\n }\n\n return {\n _: 'inputEncryptedFile',\n id: fileId.location.id,\n accessHash: fileId.location.accessHash,\n }\n}\n\n/**\n * Convert a file ID or {@link tdFileId.RawFullRemoteFileLocation}\n * to TL object `inputSecureFile`\n *\n * @param fileId File ID, either parsed or as a string\n */\nexport function fileIdToSecureFile(fileId: string | FileId): tl.RawInputSecureFile {\n if (typeof fileId === 'string') fileId = parseFileId(getPlatform(), fileId)\n\n if (fileId.location._ !== 'common' || (fileId.type !== FileType.Secure && fileId.type !== FileType.SecureRaw)) {\n throw new td.ConversionError('inputSecureFile')\n }\n\n return {\n _: 'inputSecureFile',\n id: fileId.location.id,\n accessHash: fileId.location.accessHash,\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"convert-file-id.js","sourceRoot":"","sources":["../../../../src/highlevel/utils/convert-file-id.ts"],"names":[],"mappings":"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","sourcesContent":["import Long from 'long'\n\nimport { parseFileId, tdFileId as td } from '@mtcute/file-id'\nimport { tl } from '@mtcute/tl'\n\nimport { parseMarkedPeerId } from '../../utils/peer-utils.js'\n\nimport FileType = td.FileType\nimport { getPlatform } from '../../platform.js'\nimport { assertNever } from '../../types/utils.js'\n\nconst EMPTY_BUFFER = new Uint8Array(0)\n\ntype FileId = td.RawFullRemoteFileLocation\n\nfunction dialogPhotoToInputPeer(\n dialog: td.RawPhotoSizeSourceDialogPhoto | td.RawPhotoSizeSourceDialogPhotoLegacy,\n): tl.TypeInputPeer {\n const markedPeerId = dialog.id\n const [peerType, peerId] = parseMarkedPeerId(markedPeerId)\n\n if (peerType === 'user') {\n return {\n _: 'inputPeerUser',\n userId: peerId,\n accessHash: dialog.accessHash,\n }\n } else if (peerType === 'chat') {\n return {\n _: 'inputPeerChat',\n chatId: peerId,\n }\n }\n\n return {\n _: 'inputPeerChannel',\n channelId: peerId,\n accessHash: dialog.accessHash,\n }\n}\n\n/**\n * Convert a file ID or {@link tdFileId.RawFullRemoteFileLocation}\n * to TL object `inputWebFileLocation`\n *\n * @param fileId File ID, either parsed or as a string\n */\nexport function fileIdToInputWebFileLocation(fileId: string | FileId): tl.RawInputWebFileLocation {\n if (typeof fileId === 'string') fileId = parseFileId(getPlatform(), fileId)\n\n if (fileId.location._ !== 'web') {\n throw new td.ConversionError('inputWebFileLocation')\n }\n\n return {\n _: 'inputWebFileLocation',\n url: fileId.location.url,\n accessHash: fileId.location.accessHash,\n }\n}\n\n/**\n * Convert a file ID or {@link tdFileId.RawFullRemoteFileLocation}\n * to TL object representing an `InputFileLocation`\n *\n * @param fileId File ID, either parsed or as a string\n */\nexport function fileIdToInputFileLocation(fileId: string | FileId): tl.TypeInputFileLocation {\n if (typeof fileId === 'string') fileId = parseFileId(getPlatform(), fileId)\n\n const loc = fileId.location\n\n switch (loc._) {\n case 'web':\n throw new td.ConversionError('InputFileLocation')\n\n case 'photo': {\n switch (loc.source._) {\n case 'legacy':\n if (!fileId.fileReference) {\n throw new td.InvalidFileIdError('Expected legacy photo to have file reference')\n }\n\n // for some reason tdlib removed this thing altogether\n // https://github.com/tdlib/td/commit/4bb76a7b6f47bf9e0d0d01a72aac579ec73557ee#diff-8cc4f7c60a8261a8cf782e7fb51b95105bfb08710a1c2b63f80a48263ae0fb9bL401\n // still leaving this, but not sure if passing 0 as volume_id and local_id is correct at all lol\n return {\n _: 'inputPhotoLegacyFileLocation',\n fileReference: fileId.fileReference,\n id: loc.id,\n accessHash: loc.accessHash,\n volumeId: Long.ZERO,\n localId: 0,\n secret: loc.source.secret,\n }\n case 'thumbnail':\n if (!fileId.fileReference) {\n throw new td.InvalidFileIdError('Expected thumbnail photo to have file reference')\n }\n\n if (loc.source.fileType !== FileType.Photo && loc.source.fileType !== FileType.Thumbnail) {\n throw new td.InvalidFileIdError('Expected a thumbnail to have a correct file type')\n }\n\n return {\n _:\n loc.source.fileType === FileType.Photo ?\n 'inputPhotoFileLocation' :\n 'inputDocumentFileLocation',\n fileReference: fileId.fileReference,\n id: loc.id,\n accessHash: loc.accessHash,\n thumbSize: loc.source.thumbnailType,\n }\n case 'dialogPhoto':\n return {\n _: 'inputPeerPhotoFileLocation',\n big: loc.source.big,\n peer: dialogPhotoToInputPeer(loc.source),\n photoId: loc.id,\n }\n case 'stickerSetThumbnail':\n // this was also removed from tdlib:\n // https://github.com/tdlib/td/commit/4bb76a7b6f47bf9e0d0d01a72aac579ec73557ee#diff-8cc4f7c60a8261a8cf782e7fb51b95105bfb08710a1c2b63f80a48263ae0fb9bR432\n // also leaving this one though.\n return {\n _: 'inputStickerSetThumb',\n stickerset: {\n _: 'inputStickerSetID',\n id: loc.source.id,\n accessHash: loc.source.accessHash,\n },\n thumbVersion: 0,\n }\n case 'fullLegacy':\n if (!fileId.fileReference) {\n throw new td.InvalidFileIdError('Expected legacy photo to have file reference')\n }\n\n return {\n _: 'inputPhotoLegacyFileLocation',\n fileReference: fileId.fileReference,\n id: loc.id,\n accessHash: loc.accessHash,\n volumeId: loc.source.volumeId,\n localId: loc.source.localId,\n secret: loc.source.secret,\n }\n case 'dialogPhotoLegacy':\n return {\n _: 'inputPeerPhotoFileLocationLegacy',\n big: loc.source.big,\n peer: dialogPhotoToInputPeer(loc.source),\n volumeId: loc.source.volumeId,\n localId: loc.source.localId,\n }\n case 'stickerSetThumbnailLegacy':\n return {\n _: 'inputStickerSetThumbLegacy',\n stickerset: {\n _: 'inputStickerSetID',\n id: loc.source.id,\n accessHash: loc.source.accessHash,\n },\n volumeId: loc.source.volumeId,\n localId: loc.source.localId,\n }\n case 'stickerSetThumbnailVersion':\n return {\n _: 'inputStickerSetThumb',\n stickerset: {\n _: 'inputStickerSetID',\n id: loc.source.id,\n accessHash: loc.source.accessHash,\n },\n thumbVersion: loc.source.version,\n }\n default:\n assertNever(loc.source)\n }\n\n throw new td.ConversionError('inputFileLocation')\n }\n case 'common': {\n if (!fileId.fileReference) {\n throw new td.InvalidFileIdError('Expected common to have file reference')\n }\n\n if (fileId.type === FileType.Encrypted) {\n return {\n _: 'inputEncryptedFileLocation',\n id: loc.id,\n accessHash: loc.accessHash,\n }\n } else if (fileId.type === FileType.Secure || fileId.type === FileType.SecureRaw) {\n return {\n _: 'inputSecureFileLocation',\n id: loc.id,\n accessHash: loc.accessHash,\n }\n }\n\n return {\n _: 'inputDocumentFileLocation',\n fileReference: fileId.fileReference,\n id: loc.id,\n accessHash: loc.accessHash,\n thumbSize: '',\n }\n }\n default:\n assertNever(loc)\n }\n}\n\n/**\n * Convert a file ID or {@link tdFileId.RawFullRemoteFileLocation}\n * to TL object `inputDocument`\n *\n * @param fileId File ID, either parsed or as a string\n */\nexport function fileIdToInputDocument(fileId: string | FileId): tl.RawInputDocument {\n if (typeof fileId === 'string') fileId = parseFileId(getPlatform(), fileId)\n\n if (\n fileId.location._ !== 'common' ||\n fileId.type === FileType.Secure ||\n fileId.type === FileType.SecureRaw ||\n fileId.type === FileType.Encrypted\n ) {\n throw new td.ConversionError('inputDocument')\n }\n\n let fileRef = fileId.fileReference\n\n if (!fileRef) {\n if (fileId.type === FileType.Sticker) {\n // older stickers' file IDs don't have file ref\n fileRef = EMPTY_BUFFER\n } else {\n throw new td.InvalidFileIdError('Expected document to have file reference')\n }\n }\n\n return {\n _: 'inputDocument',\n fileReference: fileRef,\n id: fileId.location.id,\n accessHash: fileId.location.accessHash,\n }\n}\n\n/**\n * Convert a file ID or {@link tdFileId.RawFullRemoteFileLocation}\n * to TL object `inputPhoto`\n *\n * @param fileId File ID, either parsed or as a string\n */\nexport function fileIdToInputPhoto(fileId: string | FileId): tl.RawInputPhoto {\n if (typeof fileId === 'string') fileId = parseFileId(getPlatform(), fileId)\n\n if (fileId.location._ !== 'photo') {\n throw new td.ConversionError('inputPhoto')\n }\n\n if (!fileId.fileReference) {\n throw new td.InvalidFileIdError('Expected photo to have file reference')\n }\n\n return {\n _: 'inputPhoto',\n fileReference: fileId.fileReference,\n id: fileId.location.id,\n accessHash: fileId.location.accessHash,\n }\n}\n\n/**\n * Convert a file ID or {@link tdFileId.RawFullRemoteFileLocation}\n * to TL object `inputEncryptedFile`\n *\n * @param fileId File ID, either parsed or as a string\n */\nexport function fileIdToEncryptedFile(fileId: string | FileId): tl.RawInputEncryptedFile {\n if (typeof fileId === 'string') fileId = parseFileId(getPlatform(), fileId)\n\n if (fileId.location._ !== 'common' || fileId.type !== FileType.Encrypted) {\n throw new td.ConversionError('inputEncryptedFile')\n }\n\n return {\n _: 'inputEncryptedFile',\n id: fileId.location.id,\n accessHash: fileId.location.accessHash,\n }\n}\n\n/**\n * Convert a file ID or {@link tdFileId.RawFullRemoteFileLocation}\n * to TL object `inputSecureFile`\n *\n * @param fileId File ID, either parsed or as a string\n */\nexport function fileIdToSecureFile(fileId: string | FileId): tl.RawInputSecureFile {\n if (typeof fileId === 'string') fileId = parseFileId(getPlatform(), fileId)\n\n if (fileId.location._ !== 'common' || (fileId.type !== FileType.Secure && fileId.type !== FileType.SecureRaw)) {\n throw new td.ConversionError('inputSecureFile')\n }\n\n return {\n _: 'inputSecureFile',\n id: fileId.location.id,\n accessHash: fileId.location.accessHash,\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entities.js","sourceRoot":"","sources":["../../../../src/highlevel/utils/entities.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,oBAAoB,CAChC,KAAoC,EACpC,QAAmC,EAAE;IAErC,MAAM,SAAS,GAAa,EAAE,CAAA;IAC9B,MAAM,WAAW,GAA2B,EAAE,CAAA;IAE9C,IAAI,QAAQ,GAAG,CAAC,CAAA;IAEhB,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;
|
|
1
|
+
{"version":3,"file":"entities.js","sourceRoot":"","sources":["../../../../src/highlevel/utils/entities.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,oBAAoB,CAChC,KAAoC,EACpC,QAAmC,EAAE;IAErC,MAAM,SAAS,GAAa,EAAE,CAAA;IAC9B,MAAM,WAAW,GAA2B,EAAE,CAAA;IAE9C,IAAI,QAAQ,GAAG,CAAC,CAAA;IAEhB,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC5B,KAAK,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,CAAA;IAC3B,CAAC;IAED,MAAM,QAAQ,GAAG,CAAC,IAAsB,EAAE,EAAE;QACxC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACzB,MAAM,cAAc,GAAG,QAAQ,CAAA;QAC/B,QAAQ,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,CAAA;QAE5B,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAChB,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACjC,WAAW,CAAC,IAAI,CAAC;oBACb,GAAG,MAAM;oBACT,MAAM,EAAE,MAAM,CAAC,MAAM,GAAG,cAAc;iBACzC,CAAC,CAAA;YACN,CAAC;QACL,CAAC;IACL,CAAC,CAAA;IAED,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACvB,IAAI,QAAQ,GAAG,CAAC,EAAE,CAAC;YACf,QAAQ,CAAC,KAAK,CAAC,CAAA;QACnB,CAAC;QAED,QAAQ,CAAC,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;IAC9D,CAAC;IAED,OAAO;QACH,IAAI,EAAE,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;QACxB,QAAQ,EAAE,WAAW;KACxB,CAAA;AACL,CAAC","sourcesContent":["import { tl } from '@mtcute/tl'\n\nimport { TextWithEntities } from '../types/misc/entities.js'\n\n/**\n * Join multiple text parts with entities into a single text with entities,\n * adjusting the entities' offsets accordingly.\n *\n * @param parts List of text parts with entities\n * @param delim Delimiter to insert between parts\n * @returns A single text with entities\n * @example\n *\n * ```ts\n * const scoreboardText = joinTextWithEntities(\n * apiResult.scoreboard.map((entry) => html`<b>${entry.name}</b>: ${entry.score}`),\n * html`<br>`\n * )\n * await tg.sendText(chatId, html`<b>scoreboard:</b><br><br>${scoreboardText}`)\n * ```\n */\nexport function joinTextWithEntities(\n parts: (string | TextWithEntities)[],\n delim: string | TextWithEntities = '',\n): TextWithEntities {\n const textParts: string[] = []\n const newEntities: tl.TypeMessageEntity[] = []\n\n let position = 0\n\n if (typeof delim === 'string') {\n delim = { text: delim }\n }\n\n const pushPart = (part: TextWithEntities) => {\n textParts.push(part.text)\n const entitiesOffset = position\n position += part.text.length\n\n if (part.entities) {\n for (const entity of part.entities) {\n newEntities.push({\n ...entity,\n offset: entity.offset + entitiesOffset,\n })\n }\n }\n }\n\n for (const part of parts) {\n if (position > 0) {\n pushPart(delim)\n }\n\n pushPart(typeof part === 'string' ? { text: part } : part)\n }\n\n return {\n text: textParts.join(''),\n entities: newEntities,\n }\n}\n"]}
|
|
@@ -132,4 +132,38 @@ export function guessFileMime(chunk) {
|
|
|
132
132
|
}
|
|
133
133
|
return null;
|
|
134
134
|
}
|
|
135
|
+
export const MIME_TO_EXTENSION = {
|
|
136
|
+
'image/bmp': 'bmp',
|
|
137
|
+
'application/x-msdownload': 'exe',
|
|
138
|
+
'application/x-compress': 'z',
|
|
139
|
+
'application/gzip': 'gz',
|
|
140
|
+
'application/x-bzip2': 'bz2',
|
|
141
|
+
'audio/mpeg': 'mp3',
|
|
142
|
+
'application/zip': 'zip',
|
|
143
|
+
'image/vnd.adobe.photoshop': 'psd',
|
|
144
|
+
'application/zstd': 'zst',
|
|
145
|
+
'audio/x-flac': 'flac',
|
|
146
|
+
'image/jpeg': 'jpg',
|
|
147
|
+
'audio/ogg': 'ogg',
|
|
148
|
+
'video/ogg': 'ogv',
|
|
149
|
+
'application/ogg': 'ogg',
|
|
150
|
+
'application/pdf': 'pdf',
|
|
151
|
+
'image/gif': 'gif',
|
|
152
|
+
'application/x-7z-compressed': '7z',
|
|
153
|
+
'image/png': 'png',
|
|
154
|
+
'application/x-rar-compressed': 'rar',
|
|
155
|
+
'image/avif': 'avif',
|
|
156
|
+
'image/heif': 'heif',
|
|
157
|
+
'image/heif-sequence': 'heif',
|
|
158
|
+
'image/heic': 'heic',
|
|
159
|
+
'image/heic-sequence': 'heic',
|
|
160
|
+
'video/quicktime': 'mov',
|
|
161
|
+
'video/x-m4v': 'm4v',
|
|
162
|
+
'audio/x-m4a': 'm4a',
|
|
163
|
+
'audio/mp4': 'm4a',
|
|
164
|
+
'image/x-canon-cr3': 'cr3',
|
|
165
|
+
'video/3gpp2': '3g2',
|
|
166
|
+
'video/3gpp': '3gp',
|
|
167
|
+
'video/mp4': 'mp4',
|
|
168
|
+
};
|
|
135
169
|
//# sourceMappingURL=file-type.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"file-type.js","sourceRoot":"","sources":["../../../../src/highlevel/utils/file-type.ts"],"names":[],"mappings":"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","sourcesContent":["export function guessFileMime(chunk: Uint8Array): string | null {\n if (chunk.length < 12) return null\n\n // 2-byte magic numbers\n const b0 = chunk[0]\n const b1 = chunk[1]\n if (b0 === 0x42 && b1 === 0x4d) return 'image/bmp'\n if (b0 === 0x4d && b1 === 0x5a) return 'application/x-msdownload'\n if (b0 === 0x1f && (b1 === 0x9d || b1 === 0xa0)) return 'application/x-compress'\n if (b0 === 0x1f && b1 === 0x8b) return 'application/gzip'\n\n // 3-byte magic numbers\n const b2 = chunk[2]\n if (b0 === 0x42 && b1 === 0x5a && b2 === 0x68) return 'application/x-bzip2'\n if (b0 === 0x49 && b1 === 0x44 && b2 === 0x33) return 'audio/mpeg' // ID3v2\n if (b0 === 0xff && (b1 === 0xfb || b1 === 0xf3 || b1 === 0xf2)) return 'audio/mpeg'\n\n // 4-byte magic numbers\n const b3 = chunk[3]\n if (b0 === 0x50 && b1 === 0x4b && b2 === 0x03 && b3 === 0x04) return 'application/zip'\n if (b0 === 0x38 && b1 === 0x42 && b2 === 0x50 && b3 === 0x53) return 'image/vnd.adobe.photoshop'\n if (b0 === 0x7f && b1 === 0x45 && b2 === 0x4c && b3 === 0x46) return 'application/x-elf'\n if (b0 === 0xfe && b1 === 0xed && b2 === 0xfa && b3 === 0xcf) return 'application/x-mach-binary'\n if (b0 === 0x28 && b1 === 0xb5 && b2 === 0x2f && b3 === 0xfd) return 'application/zstd'\n if (b0 === 0x66 && b1 === 0x4c && b2 === 0x61 && b3 === 0x43) return 'audio/x-flac'\n\n if (b0 === 0xff && b1 === 0xd8 && b2 === 0xff && (b3 === 0xdb || b3 === 0xe0 || b3 === 0xee || b3 === 0xe1)) {\n return 'image/jpeg'\n }\n\n // OggS\n if (b0 === 0x4f && b1 === 0x67 && b2 === 0x67 && b3 === 0x53) {\n // 28-36 bytes: type\n if (chunk.length > 36) {\n const type = String.fromCharCode(...chunk.subarray(28, 36))\n if (type === 'OpusHead') return 'audio/ogg' // not audio/opus because Telegram is dumb\n if (type.startsWith('\\x80theora')) return 'video/ogg'\n if (type.startsWith('\\x01video')) return 'video/ogg'\n if (type.startsWith('\\x7fFLAC')) return 'audio/ogg'\n if (type.startsWith('Speex ')) return 'audio/ogg'\n if (type.startsWith('\\x01vorbis')) return 'audio/ogg'\n }\n\n return 'application/ogg'\n }\n\n // 5-byte magic numbers\n const b4 = chunk[4]\n if (b0 === 0x25 && b1 === 0x50 && b2 === 0x44 && b3 === 0x46 && b4 === 0x2d) return 'application/pdf'\n\n // 6-byte magic numbers\n const b5 = chunk[5]\n\n if (b0 === 0x47 && b1 === 0x49 && b2 === 0x46 && b3 === 0x38) {\n if ((b4 === 0x37 || b4 === 0x39) && b5 === 0x61) return 'image/gif'\n }\n if (b0 === 0x37 && b1 === 0x7a && b2 === 0xbc && b3 === 0xaf && b4 === 0x27 && b5 === 0x1c) {\n return 'application/x-7z-compressed'\n }\n\n // 8-byte magic numbers\n const b6 = chunk[6]\n const b7 = chunk[7]\n\n if (\n b0 === 0x89 &&\n b1 === 0x50 &&\n b2 === 0x4e &&\n b3 === 0x47 &&\n b4 === 0x0d &&\n b5 === 0x0a &&\n b6 === 0x1a &&\n b7 === 0x0a\n ) {\n return 'image/png'\n }\n\n if (b0 === 0x52 && b1 === 0x61 && b2 === 0x72 && b3 === 0x21 && b4 === 0x1a && b5 === 0x07) {\n if (b6 === 0x00 || b6 === 0x01) return 'application/x-rar-compressed'\n }\n\n // ftyp - iso container\n if (b4 === 0x66 && b5 === 0x74 && b6 === 0x79 && b7 === 0x70 && chunk[8] & 0x60) {\n const brandMajor = String.fromCharCode(...chunk.subarray(8, 12))\n .replace(/\\0/g, ' ')\n .trim()\n\n switch (brandMajor) {\n case 'avif':\n case 'avis':\n return 'image/avif'\n case 'mif1':\n return 'image/heif'\n case 'msf1':\n return 'image/heif-sequence'\n case 'heic':\n case 'heix':\n return 'image/heic'\n case 'hevc':\n case 'hevx':\n return 'image/heic-sequence'\n case 'qt':\n return 'video/quicktime'\n case 'M4V':\n case 'M4VH':\n case 'M4VP':\n return 'video/x-m4v'\n case 'M4A':\n return 'audio/x-m4a'\n case 'M4B':\n case 'F4A':\n case 'F4B':\n return 'audio/mp4'\n case 'crx':\n return 'image/x-canon-cr3'\n default:\n if (brandMajor.startsWith('3g')) {\n if (brandMajor.startsWith('3g2')) {\n return 'video/3gpp2'\n }\n\n return 'video/3gpp'\n }\n\n return 'video/mp4'\n }\n }\n\n return null\n}\n"]}
|
|
1
|
+
{"version":3,"file":"file-type.js","sourceRoot":"","sources":["../../../../src/highlevel/utils/file-type.ts"],"names":[],"mappings":"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","sourcesContent":["export function guessFileMime(chunk: Uint8Array): string | null {\n if (chunk.length < 12) return null\n\n // 2-byte magic numbers\n const b0 = chunk[0]\n const b1 = chunk[1]\n if (b0 === 0x42 && b1 === 0x4d) return 'image/bmp'\n if (b0 === 0x4d && b1 === 0x5a) return 'application/x-msdownload'\n if (b0 === 0x1f && (b1 === 0x9d || b1 === 0xa0)) return 'application/x-compress'\n if (b0 === 0x1f && b1 === 0x8b) return 'application/gzip'\n\n // 3-byte magic numbers\n const b2 = chunk[2]\n if (b0 === 0x42 && b1 === 0x5a && b2 === 0x68) return 'application/x-bzip2'\n if (b0 === 0x49 && b1 === 0x44 && b2 === 0x33) return 'audio/mpeg' // ID3v2\n if (b0 === 0xff && (b1 === 0xfb || b1 === 0xf3 || b1 === 0xf2)) return 'audio/mpeg'\n\n // 4-byte magic numbers\n const b3 = chunk[3]\n if (b0 === 0x50 && b1 === 0x4b && b2 === 0x03 && b3 === 0x04) return 'application/zip'\n if (b0 === 0x38 && b1 === 0x42 && b2 === 0x50 && b3 === 0x53) return 'image/vnd.adobe.photoshop'\n if (b0 === 0x7f && b1 === 0x45 && b2 === 0x4c && b3 === 0x46) return 'application/x-elf'\n if (b0 === 0xfe && b1 === 0xed && b2 === 0xfa && b3 === 0xcf) return 'application/x-mach-binary'\n if (b0 === 0x28 && b1 === 0xb5 && b2 === 0x2f && b3 === 0xfd) return 'application/zstd'\n if (b0 === 0x66 && b1 === 0x4c && b2 === 0x61 && b3 === 0x43) return 'audio/x-flac'\n\n if (b0 === 0xff && b1 === 0xd8 && b2 === 0xff && (b3 === 0xdb || b3 === 0xe0 || b3 === 0xee || b3 === 0xe1)) {\n return 'image/jpeg'\n }\n\n // OggS\n if (b0 === 0x4f && b1 === 0x67 && b2 === 0x67 && b3 === 0x53) {\n // 28-36 bytes: type\n if (chunk.length > 36) {\n const type = String.fromCharCode(...chunk.subarray(28, 36))\n if (type === 'OpusHead') return 'audio/ogg' // not audio/opus because Telegram is dumb\n if (type.startsWith('\\x80theora')) return 'video/ogg'\n if (type.startsWith('\\x01video')) return 'video/ogg'\n if (type.startsWith('\\x7fFLAC')) return 'audio/ogg'\n if (type.startsWith('Speex ')) return 'audio/ogg'\n if (type.startsWith('\\x01vorbis')) return 'audio/ogg'\n }\n\n return 'application/ogg'\n }\n\n // 5-byte magic numbers\n const b4 = chunk[4]\n if (b0 === 0x25 && b1 === 0x50 && b2 === 0x44 && b3 === 0x46 && b4 === 0x2d) return 'application/pdf'\n\n // 6-byte magic numbers\n const b5 = chunk[5]\n\n if (b0 === 0x47 && b1 === 0x49 && b2 === 0x46 && b3 === 0x38) {\n if ((b4 === 0x37 || b4 === 0x39) && b5 === 0x61) return 'image/gif'\n }\n if (b0 === 0x37 && b1 === 0x7a && b2 === 0xbc && b3 === 0xaf && b4 === 0x27 && b5 === 0x1c) {\n return 'application/x-7z-compressed'\n }\n\n // 8-byte magic numbers\n const b6 = chunk[6]\n const b7 = chunk[7]\n\n if (\n b0 === 0x89 &&\n b1 === 0x50 &&\n b2 === 0x4e &&\n b3 === 0x47 &&\n b4 === 0x0d &&\n b5 === 0x0a &&\n b6 === 0x1a &&\n b7 === 0x0a\n ) {\n return 'image/png'\n }\n\n if (b0 === 0x52 && b1 === 0x61 && b2 === 0x72 && b3 === 0x21 && b4 === 0x1a && b5 === 0x07) {\n if (b6 === 0x00 || b6 === 0x01) return 'application/x-rar-compressed'\n }\n\n // ftyp - iso container\n if (b4 === 0x66 && b5 === 0x74 && b6 === 0x79 && b7 === 0x70 && chunk[8] & 0x60) {\n const brandMajor = String.fromCharCode(...chunk.subarray(8, 12))\n .replace(/\\0/g, ' ')\n .trim()\n\n switch (brandMajor) {\n case 'avif':\n case 'avis':\n return 'image/avif'\n case 'mif1':\n return 'image/heif'\n case 'msf1':\n return 'image/heif-sequence'\n case 'heic':\n case 'heix':\n return 'image/heic'\n case 'hevc':\n case 'hevx':\n return 'image/heic-sequence'\n case 'qt':\n return 'video/quicktime'\n case 'M4V':\n case 'M4VH':\n case 'M4VP':\n return 'video/x-m4v'\n case 'M4A':\n return 'audio/x-m4a'\n case 'M4B':\n case 'F4A':\n case 'F4B':\n return 'audio/mp4'\n case 'crx':\n return 'image/x-canon-cr3'\n default:\n if (brandMajor.startsWith('3g')) {\n if (brandMajor.startsWith('3g2')) {\n return 'video/3gpp2'\n }\n\n return 'video/3gpp'\n }\n\n return 'video/mp4'\n }\n }\n\n return null\n}\n\nexport const MIME_TO_EXTENSION: Record<string, string | undefined> = {\n 'image/bmp': 'bmp',\n 'application/x-msdownload': 'exe',\n 'application/x-compress': 'z',\n 'application/gzip': 'gz',\n 'application/x-bzip2': 'bz2',\n 'audio/mpeg': 'mp3',\n 'application/zip': 'zip',\n 'image/vnd.adobe.photoshop': 'psd',\n 'application/zstd': 'zst',\n 'audio/x-flac': 'flac',\n 'image/jpeg': 'jpg',\n 'audio/ogg': 'ogg',\n 'video/ogg': 'ogv',\n 'application/ogg': 'ogg',\n 'application/pdf': 'pdf',\n 'image/gif': 'gif',\n 'application/x-7z-compressed': '7z',\n 'image/png': 'png',\n 'application/x-rar-compressed': 'rar',\n 'image/avif': 'avif',\n 'image/heif': 'heif',\n 'image/heif-sequence': 'heif',\n 'image/heic': 'heic',\n 'image/heic-sequence': 'heic',\n 'video/quicktime': 'mov',\n 'video/x-m4v': 'm4v',\n 'audio/x-m4a': 'm4a',\n 'audio/mp4': 'm4a',\n 'image/x-canon-cr3': 'cr3',\n 'video/3gpp2': '3g2',\n 'video/3gpp': '3gp',\n 'video/mp4': 'mp4',\n}\n"]}
|
|
@@ -109,6 +109,6 @@ export function svgPathToFile(path) {
|
|
|
109
109
|
export function extractFileName(path) {
|
|
110
110
|
if (path.startsWith('file:'))
|
|
111
111
|
path = path.slice(5);
|
|
112
|
-
return path.split(/[\\/]/).pop();
|
|
112
|
+
return path.split(/[\\/]/).pop().split('?')[0];
|
|
113
113
|
}
|
|
114
114
|
//# sourceMappingURL=file-utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"file-utils.js","sourceRoot":"","sources":["../../../../src/highlevel/utils/file-utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAA;AAE3D;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAAC,QAAgB;IAC9C,IAAI,QAAQ,IAAI,SAAS;QAAE,OAAO,GAAG,CAAA,CAAC,SAAS;IAC/C,IAAI,QAAQ,IAAI,SAAS;QAAE,OAAO,GAAG,CAAA,CAAC,SAAS;IAC/C,IAAI,QAAQ,IAAI,UAAU;QAAE,OAAO,GAAG,CAAA,CAAC,UAAU;IAEjD,MAAM,IAAI,eAAe,CAAC,mBAAmB,CAAC,CAAA;AAClD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,GAAe;IAC/C,OAAO,CAAC,GAAG,CAAC,IAAI,CACZ,CAAC,EAAE,EAAE,EAAE,CACH,CAAC,CACG,CACI,CAAC,EAAE,IAAI,IAAI,IAAI,EAAE,GAAG,IAAI,CAAC,IAAI,wBAAwB;QACrD,EAAE,KAAK,IAAI,IAAI,KAAK;QACpB,EAAE,KAAK,IAAI,IAAI,KAAK;QACpB,EAAE,KAAK,IAAI,CACd,CAAC,MAAM;KACX,CACR,CAAA;AACL,CAAC;AAED,8IAA8I;AAC9I,MAAM,WAAW,GAAG,GAAG,EAAE,
|
|
1
|
+
{"version":3,"file":"file-utils.js","sourceRoot":"","sources":["../../../../src/highlevel/utils/file-utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAA;AAE3D;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAAC,QAAgB;IAC9C,IAAI,QAAQ,IAAI,SAAS;QAAE,OAAO,GAAG,CAAA,CAAC,SAAS;IAC/C,IAAI,QAAQ,IAAI,SAAS;QAAE,OAAO,GAAG,CAAA,CAAC,SAAS;IAC/C,IAAI,QAAQ,IAAI,UAAU;QAAE,OAAO,GAAG,CAAA,CAAC,UAAU;IAEjD,MAAM,IAAI,eAAe,CAAC,mBAAmB,CAAC,CAAA;AAClD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,GAAe;IAC/C,OAAO,CAAC,GAAG,CAAC,IAAI,CACZ,CAAC,EAAE,EAAE,EAAE,CACH,CAAC,CACG,CACI,CAAC,EAAE,IAAI,IAAI,IAAI,EAAE,GAAG,IAAI,CAAC,IAAI,wBAAwB;QACrD,EAAE,KAAK,IAAI,IAAI,KAAK;QACpB,EAAE,KAAK,IAAI,IAAI,KAAK;QACpB,EAAE,KAAK,IAAI,CACd,CAAC,MAAM;KACX,CACR,CAAA;AACL,CAAC;AAED,8IAA8I;AAC9I,MAAM,WAAW,GAAG,GAAG,EAAE,CACrB,WAAW,EAAE,CAAC,SAAS,CACnB,kEAAkE;IAC9D,qEAAqE;IACrE,qEAAqE;IACrE,qEAAqE;IACrE,qEAAqE;IACrE,qEAAqE;IACrE,qEAAqE;IACrE,qEAAqE;IACrE,qEAAqE;IACrE,qEAAqE;IACrE,qEAAqE;IACrE,qEAAqE;IACrE,qEAAqE;IACrE,qEAAqE;IACrE,qEAAqE;IACrE,qEAAqE;IACrE,qEAAqE;IACrE,qEAAqE;IACrE,6CAA6C,CACpD,CAAA;AACL,IAAI,iBAAiB,GAAsB,IAAI,CAAA;AAC/C,MAAM,WAAW,GAAG,IAAI,UAAU,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAA;AAEhD;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAAC,QAAoB;IACnD,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3C,MAAM,IAAI,eAAe,CAAC,uBAAuB,CAAC,CAAA;IACtD,CAAC;IAED,IAAI,iBAAiB,KAAK,IAAI,EAAE,CAAC;QAC7B,iBAAiB,GAAG,WAAW,EAAE,CAAA;IACrC,CAAC;IAED,MAAM,MAAM,GAAG,aAAa,CAAC,CAAC,iBAAiB,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,CAAA;IACjF,MAAM,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAA;IACzB,MAAM,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAA;IAEzB,OAAO,MAAM,CAAA;AACjB,CAAC;AAED,MAAM,UAAU,GAAG,kEAAkE,CAAA;AAErF;;;GAGG;AACH,MAAM,UAAU,cAAc,CAAC,OAAmB;IAC9C,IAAI,IAAI,GAAG,GAAG,CAAA;IACd,MAAM,GAAG,GAAG,OAAO,CAAC,MAAM,CAAA;IAE1B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3B,MAAM,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC,CAAA;QAEtB,IAAI,GAAG,IAAI,GAAG,EAAE,CAAC;YACb,WAAW;YACX,IAAI,IAAI,UAAU,CAAC,GAAG,GAAG,GAAG,CAAC,CAAA;QACjC,CAAC;aAAM,CAAC;YACJ,IAAI,GAAG,IAAI,GAAG,EAAE,CAAC;gBACb,IAAI,IAAI,GAAG,CAAA;YACf,CAAC;iBAAM,IAAI,GAAG,IAAI,EAAE,EAAE,CAAC;gBACnB,IAAI,IAAI,GAAG,CAAA;YACf,CAAC;YAED,IAAI,IAAI,GAAG,GAAG,EAAE,CAAA;QACpB,CAAC;IACL,CAAC;IAED,IAAI,IAAI,GAAG,CAAA;IAEX,OAAO,IAAI,CAAA;AACf,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,aAAa,CAAC,IAAY;IACtC,OAAO,WAAW,EAAE,CAAC,UAAU,CAC3B,wCAAwC;QACpC,kGAAkG;QAClG,6CAA6C;QAC7C,WAAW;QACX,IAAI;QACJ,KAAK;QACL,QAAQ,CACf,CAAA;AACL,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAAC,IAAY;IACxC,IAAI,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;QAAE,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IAElD,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,GAAG,EAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;AACnD,CAAC","sourcesContent":["import { getPlatform } from '../../platform.js'\nimport { MtArgumentError } from '../../types/errors.js'\nimport { concatBuffers } from '../../utils/buffer-utils.js'\n\n/**\n * Given file size, determine the appropriate chunk size (in KB)\n * for upload/download operations.\n */\nexport function determinePartSize(fileSize: number): number {\n if (fileSize <= 262078465) return 128 // 200 MB\n if (fileSize <= 786432000) return 256 // 750 MB\n if (fileSize <= 2097152000) return 512 // 2000 MB\n\n throw new MtArgumentError('File is too large')\n}\n\n/**\n * Returns `true` if all bytes in `buf` are printable ASCII characters\n */\nexport function isProbablyPlainText(buf: Uint8Array): boolean {\n return !buf.some(\n (it) =>\n !(\n (\n (it >= 0x20 && it < 0x7f) || // printable ascii range\n it === 0x0d || // CR\n it === 0x0a || // LF\n it === 0x09\n ) // Tab\n ),\n )\n}\n\n// from https://github.com/telegramdesktop/tdesktop/blob/bec39d89e19670eb436dc794a8f20b657cb87c71/Telegram/SourceFiles/ui/image/image.cpp#L225\nconst JPEG_HEADER = () =>\n getPlatform().hexDecode(\n 'ffd8ffe000104a46494600010100000100010000ffdb004300281c1e231e1928' +\n '2321232d2b28303c64413c37373c7b585d4964918099968f808c8aa0b4e6c3a0aad' +\n 'aad8a8cc8ffcbdaeef5ffffff9bc1fffffffaffe6fdfff8ffdb0043012b2d2d3c35' +\n '3c76414176f8a58ca5f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f' +\n '8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8ffc0001108000000' +\n '0003012200021101031101ffc4001f0000010501010101010100000000000000000' +\n '102030405060708090a0bffc400b5100002010303020403050504040000017d0102' +\n '0300041105122131410613516107227114328191a1082342b1c11552d1f02433627' +\n '282090a161718191a25262728292a3435363738393a434445464748494a53545556' +\n '5758595a636465666768696a737475767778797a838485868788898a92939495969' +\n '798999aa2a3a4a5a6a7a8a9aab2b3b4b5b6b7b8b9bac2c3c4c5c6c7c8c9cad2d3d4' +\n 'd5d6d7d8d9dae1e2e3e4e5e6e7e8e9eaf1f2f3f4f5f6f7f8f9faffc4001f0100030' +\n '101010101010101010000000000000102030405060708090a0bffc400b511000201' +\n '0204040304070504040001027700010203110405213106124151076171132232810' +\n '8144291a1b1c109233352f0156272d10a162434e125f11718191a262728292a3536' +\n '3738393a434445464748494a535455565758595a636465666768696a73747576777' +\n '8797a82838485868788898a92939495969798999aa2a3a4a5a6a7a8a9aab2b3b4b5' +\n 'b6b7b8b9bac2c3c4c5c6c7c8c9cad2d3d4d5d6d7d8d9dae2e3e4e5e6e7e8e9eaf2f' +\n '3f4f5f6f7f8f9faffda000c03010002110311003f00',\n )\nlet JPEG_HEADER_BYTES: Uint8Array | null = null\nconst JPEG_FOOTER = new Uint8Array([0xff, 0xd9])\n\n/**\n * Convert stripped JPEG (from `photoStrippedSize`) to full JPEG\n */\nexport function strippedPhotoToJpg(stripped: Uint8Array): Uint8Array {\n if (stripped.length < 3 || stripped[0] !== 1) {\n throw new MtArgumentError('Invalid stripped JPEG')\n }\n\n if (JPEG_HEADER_BYTES === null) {\n JPEG_HEADER_BYTES = JPEG_HEADER()\n }\n\n const result = concatBuffers([JPEG_HEADER_BYTES, stripped.slice(3), JPEG_FOOTER])\n result[164] = stripped[1]\n result[166] = stripped[2]\n\n return result\n}\n\nconst SVG_LOOKUP = 'AACAAAAHAAALMAAAQASTAVAAAZaacaaaahaaalmaaaqastava.az0123456789-,'\n\n/**\n * Inflate compressed preview SVG path to full SVG path\n * @param encoded\n */\nexport function inflateSvgPath(encoded: Uint8Array): string {\n let path = 'M'\n const len = encoded.length\n\n for (let i = 0; i < len; i++) {\n const num = encoded[i]\n\n if (num >= 192) {\n // 128 + 64\n path += SVG_LOOKUP[num - 192]\n } else {\n if (num >= 128) {\n path += ','\n } else if (num >= 64) {\n path += '-'\n }\n\n path += num & 63\n }\n }\n\n path += 'z'\n\n return path\n}\n\n/**\n * Convert SVG path to SVG file\n * @param path\n */\nexport function svgPathToFile(path: string): Uint8Array {\n return getPlatform().utf8Encode(\n '<?xml version=\"1.0\" encoding=\"utf-8\"?>' +\n '<svg version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\"' +\n 'viewBox=\"0 0 512 512\" xml:space=\"preserve\">' +\n '<path d=\"' +\n path +\n '\"/>' +\n '</svg>',\n )\n}\n\n/**\n * Get file name from file path\n *\n * @param path File path\n */\nexport function extractFileName(path: string): string {\n if (path.startsWith('file:')) path = path.slice(5)\n\n return path.split(/[\\\\/]/).pop()!.split('?')[0]\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inline-utils.js","sourceRoot":"","sources":["../../../../src/highlevel/utils/inline-utils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AAEnE,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAElD;;;;GAIG;AACH,MAAM,UAAU,oBAAoB,CAAC,EAAU;IAC3C,MAAM,GAAG,GAAG,WAAW,EAAE,CAAC,YAAY,CAAC,EAAE,EAAE,IAAI,CAAC,CAAA;IAChD,MAAM,MAAM,GAAG,cAAc,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;IAEzC,IAAI,GAAG,CAAC,MAAM,KAAK,EAAE,EAAE;
|
|
1
|
+
{"version":3,"file":"inline-utils.js","sourceRoot":"","sources":["../../../../src/highlevel/utils/inline-utils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AAEnE,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAElD;;;;GAIG;AACH,MAAM,UAAU,oBAAoB,CAAC,EAAU;IAC3C,MAAM,GAAG,GAAG,WAAW,EAAE,CAAC,YAAY,CAAC,EAAE,EAAE,IAAI,CAAC,CAAA;IAChD,MAAM,MAAM,GAAG,cAAc,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;IAEzC,IAAI,GAAG,CAAC,MAAM,KAAK,EAAE,EAAE,CAAC;QACpB,OAAO;YACH,CAAC,EAAE,yBAAyB;YAC5B,IAAI,EAAE,MAAM,CAAC,GAAG,EAAE;YAClB,EAAE,EAAE,MAAM,CAAC,IAAI,EAAE;YACjB,UAAU,EAAE,MAAM,CAAC,IAAI,EAAE;SAC5B,CAAA;IACL,CAAC;IAED,OAAO;QACH,CAAC,EAAE,2BAA2B;QAC9B,IAAI,EAAE,MAAM,CAAC,GAAG,EAAE;QAClB,OAAO,EAAE,MAAM,CAAC,IAAI,EAAE;QACtB,EAAE,EAAE,MAAM,CAAC,GAAG,EAAE;QAChB,UAAU,EAAE,MAAM,CAAC,IAAI,EAAE;KAC5B,CAAA;AACL,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,qBAAqB,CAAC,EAAkC;IACpE,IAAI,MAAsB,CAAA;IAE1B,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC;QACX,KAAK,yBAAyB;YAC1B,MAAM,GAAG,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;YAClC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,CAAA;YACnB,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAA;YAClB,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,CAAA;YAC1B,MAAK;QACT,KAAK,2BAA2B;YAC5B,MAAM,GAAG,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;YAClC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,CAAA;YACnB,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,CAAA;YACvB,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAA;YACjB,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,CAAA;YAC1B,MAAK;QACT;YACI,WAAW,CAAC,EAAE,CAAC,CAAA;IACvB,CAAC;IAED,OAAO,WAAW,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,IAAI,CAAC,CAAA;AAC5D,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,EAA2C;IACzE,IAAI,OAAO,EAAE,KAAK,QAAQ,EAAE,CAAC;QACzB,OAAO,oBAAoB,CAAC,EAAE,CAAC,CAAA;IACnC,CAAC;IAED,OAAO,EAAE,CAAA;AACb,CAAC","sourcesContent":["import { tl } from '@mtcute/tl'\nimport { TlBinaryReader, TlBinaryWriter } from '@mtcute/tl-runtime'\n\nimport { getPlatform } from '../../platform.js'\nimport { assertNever } from '../../types/utils.js'\n\n/**\n * Parse TDLib style inline message ID\n *\n * @param id Inline message ID\n */\nexport function parseInlineMessageId(id: string): tl.TypeInputBotInlineMessageID {\n const buf = getPlatform().base64Decode(id, true)\n const reader = TlBinaryReader.manual(buf)\n\n if (buf.length === 20) {\n return {\n _: 'inputBotInlineMessageID',\n dcId: reader.int(),\n id: reader.long(),\n accessHash: reader.long(),\n }\n }\n\n return {\n _: 'inputBotInlineMessageID64',\n dcId: reader.int(),\n ownerId: reader.long(),\n id: reader.int(),\n accessHash: reader.long(),\n }\n}\n\n/**\n * Generate TDLib style inline message ID\n *\n * @param id Inline message ID object\n */\nexport function encodeInlineMessageId(id: tl.TypeInputBotInlineMessageID): string {\n let writer: TlBinaryWriter\n\n switch (id._) {\n case 'inputBotInlineMessageID':\n writer = TlBinaryWriter.manual(20)\n writer.int(id.dcId)\n writer.long(id.id)\n writer.long(id.accessHash)\n break\n case 'inputBotInlineMessageID64':\n writer = TlBinaryWriter.manual(24)\n writer.int(id.dcId)\n writer.long(id.ownerId)\n writer.int(id.id)\n writer.long(id.accessHash)\n break\n default:\n assertNever(id)\n }\n\n return getPlatform().base64Encode(writer.result(), true)\n}\n\nexport function normalizeInlineId(id: string | tl.TypeInputBotInlineMessageID) {\n if (typeof id === 'string') {\n return parseInlineMessageId(id)\n }\n\n return id\n}\n"]}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
/* eslint-disable @typescript-eslint/no-explicit-any,@typescript-eslint/no-unsafe-assignment */
|
|
2
2
|
/* eslint-disable @typescript-eslint/no-unsafe-call,@typescript-eslint/no-unsafe-argument */
|
|
3
|
+
import Long from 'long';
|
|
3
4
|
import { getPlatform } from '../../platform.js';
|
|
4
5
|
const customInspectSymbol = Symbol.for('nodejs.util.inspect.custom');
|
|
5
6
|
// get all property names. unlike Object.getOwnPropertyNames,
|
|
@@ -43,6 +44,9 @@ export function makeInspectable(obj, props, hide) {
|
|
|
43
44
|
if (val instanceof Uint8Array) {
|
|
44
45
|
val = getPlatform().base64Encode(val);
|
|
45
46
|
}
|
|
47
|
+
else if (Long.isLong(val)) {
|
|
48
|
+
val = val.toString();
|
|
49
|
+
}
|
|
46
50
|
else if (typeof val.toJSON === 'function') {
|
|
47
51
|
val = val.toJSON(true);
|
|
48
52
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inspectable.js","sourceRoot":"","sources":["../../../../src/highlevel/utils/inspectable.ts"],"names":[],"mappings":"AAAA,+FAA+F;AAC/F,4FAA4F;AAE5F,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAE/C,MAAM,mBAAmB,GAAG,MAAM,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAA;AAEpE,6DAA6D;AAC7D,qCAAqC;AACrC,SAAS,kBAAkB,CAAI,GAAM;IACjC,MAAM,OAAO,GAAgB,EAAE,CAAA;IAE/B,GAAG;
|
|
1
|
+
{"version":3,"file":"inspectable.js","sourceRoot":"","sources":["../../../../src/highlevel/utils/inspectable.ts"],"names":[],"mappings":"AAAA,+FAA+F;AAC/F,4FAA4F;AAE5F,OAAO,IAAI,MAAM,MAAM,CAAA;AAEvB,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAE/C,MAAM,mBAAmB,GAAG,MAAM,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAA;AAEpE,6DAA6D;AAC7D,qCAAqC;AACrC,SAAS,kBAAkB,CAAI,GAAM;IACjC,MAAM,OAAO,GAAgB,EAAE,CAAA;IAE/B,GAAG,CAAC;QACA,MAAM,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;YAC7C,IACI,IAAI,KAAK,WAAW;gBACpB,MAAM,CAAC,wBAAwB,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,GAAG;gBAC/C,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAW,CAAC,EAChC,CAAC;gBACC,OAAO,CAAC,IAAI,CAAC,IAAW,CAAC,CAAA;YAC7B,CAAC;QACL,CAAC,CAAC,CAAA;IACN,CAAC,QAAQ,CAAC,GAAG,GAAG,MAAM,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,EAAC;IAE5C,OAAO,OAAO,CAAA;AAClB,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,eAAe,CAC3B,GAA8B,EAC9B,KAAmB,EACnB,IAAkB;IAElB,MAAM,OAAO,GAAgB,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAA;IAE/C,KAAK,MAAM,GAAG,IAAI,kBAAkB,CAAI,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;QACrD,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;YAAE,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IACvD,CAAC;IAED,4CAA4C;IAC5C,8DAA8D;IAC9D,MAAM,KAAK,GAAG,IAAI,QAAQ,CAAC,mBAAmB,GAAG,CAAC,IAAI,MAAM,CAAC,EAAE,CAAC,SAAS,CAAA;IAEzE,GAAG,CAAC,SAAS,CAAC,MAAM,GAAG;QACnB,MAAM,GAAG,GAAQ,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QACrC,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE;YACnB,IAAI,CAAC;gBACD,IAAI,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC,CAAA;gBAElB,IAAI,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;oBACjC,IAAI,GAAG,YAAY,UAAU,EAAE,CAAC;wBAC5B,GAAG,GAAG,WAAW,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,CAAA;oBACzC,CAAC;yBAAM,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;wBAC1B,GAAG,GAAG,GAAG,CAAC,QAAQ,EAAE,CAAA;oBACxB,CAAC;yBAAM,IAAI,OAAO,GAAG,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;wBAC1C,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;oBAC1B,CAAC;gBACL,CAAC;gBACD,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAA;YACjB,CAAC;YAAC,OAAO,CAAM,EAAE,CAAC;gBACd,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,GAAG,CAAC,CAAC,OAAO,CAAA;YACnC,CAAC;QACL,CAAC,CAAC,CAAA;QAEF,+DAA+D;QAC/D,OAAO,GAAG,CAAA;IACd,CAAC,CAAA;IACD,GAAG,CAAC,SAAS,CAAC,mBAAmB,CAAC,GAAG,GAAG,CAAC,SAAS,CAAC,MAAM,CAAA;IAEzD,OAAO,GAAG,CAAA;AACd,CAAC","sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any,@typescript-eslint/no-unsafe-assignment */\n/* eslint-disable @typescript-eslint/no-unsafe-call,@typescript-eslint/no-unsafe-argument */\n\nimport Long from 'long'\n\nimport { getPlatform } from '../../platform.js'\n\nconst customInspectSymbol = Symbol.for('nodejs.util.inspect.custom')\n\n// get all property names. unlike Object.getOwnPropertyNames,\n// also gets inherited property names\nfunction getAllGettersNames<T>(obj: T): (keyof T)[] {\n const getters: (keyof T)[] = []\n\n do {\n Object.getOwnPropertyNames(obj).forEach((prop) => {\n if (\n prop !== '__proto__' &&\n Object.getOwnPropertyDescriptor(obj, prop)?.get &&\n !getters.includes(prop as any)\n ) {\n getters.push(prop as any)\n }\n })\n } while ((obj = Object.getPrototypeOf(obj)))\n\n return getters\n}\n\n/**\n * Small helper function that adds `toJSON` and `util.custom.inspect`\n * methods to a given class based on its getters\n *\n * > **Note**: This means that all getters must be pure!\n * > (getter that caches after its first invocation is also\n * > considered pure in this case)\n */\nexport function makeInspectable<T>(\n obj: new (...args: any[]) => T,\n props?: (keyof T)[],\n hide?: (keyof T)[],\n): typeof obj {\n const getters: (keyof T)[] = props ? props : []\n\n for (const key of getAllGettersNames<T>(obj.prototype)) {\n if (!hide || !hide.includes(key)) getters.push(key)\n }\n\n // dirty hack to set name for inspect result\n // eslint-disable-next-line @typescript-eslint/no-implied-eval\n const proto = new Function(`return function ${obj.name}(){}`)().prototype\n\n obj.prototype.toJSON = function () {\n const ret: any = Object.create(proto)\n getters.forEach((it) => {\n try {\n let val = this[it]\n\n if (val && typeof val === 'object') {\n if (val instanceof Uint8Array) {\n val = getPlatform().base64Encode(val)\n } else if (Long.isLong(val)) {\n val = val.toString()\n } else if (typeof val.toJSON === 'function') {\n val = val.toJSON(true)\n }\n }\n ret[it] = val\n } catch (e: any) {\n ret[it] = 'Error: ' + e.message\n }\n })\n\n // eslint-disable-next-line @typescript-eslint/no-unsafe-return\n return ret\n }\n obj.prototype[customInspectSymbol] = obj.prototype.toJSON\n\n return obj\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"memoize.js","sourceRoot":"","sources":["../../../../src/highlevel/utils/memoize.ts"],"names":[],"mappings":"AAAA,gGAAgG;AAEhG,8DAA8D;AAC9D,MAAM,UAAU,cAAc,CAAI,GAA8B,EAAE,MAAmB;IACjF,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;
|
|
1
|
+
{"version":3,"file":"memoize.js","sourceRoot":"","sources":["../../../../src/highlevel/utils/memoize.ts"],"names":[],"mappings":"AAAA,gGAAgG;AAEhG,8DAA8D;AAC9D,MAAM,UAAU,cAAc,CAAI,GAA8B,EAAE,MAAmB;IACjF,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QACzB,MAAM,IAAI,GAAG,MAAM,CAAC,wBAAwB,CAAC,GAAG,CAAC,SAAS,EAAE,KAAK,CAAC,CAAA;QAClE,IAAI,CAAC,IAAI;YAAE,SAAQ;QAEnB,MAAM,EAAE,GAAG,EAAE,GAAG,IAAI,CAAA;QAEpB,IAAI,CAAC,GAAG;YAAE,SAAQ;QAElB,MAAM,CAAC,cAAc,CAAC,GAAG,CAAC,SAAS,EAAE,KAAK,EAAE;YACxC,GAAG;gBACC,MAAM,GAAG,GAAG,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;gBAC1B,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,KAAK,EAAE;oBAC/B,KAAK,EAAE,GAAG;oBACV,UAAU,EAAE,IAAI;oBAChB,QAAQ,EAAE,IAAI;iBACjB,CAAC,CAAA;gBAEF,OAAO,GAAG,CAAA;YACd,CAAC;YACD,UAAU,EAAE,IAAI;YAChB,YAAY,EAAE,IAAI;SACrB,CAAC,CAAA;IACN,CAAC;IAED,OAAO,GAAG,CAAA;AACd,CAAC","sourcesContent":["/* eslint-disable @typescript-eslint/no-unsafe-return,@typescript-eslint/no-unsafe-assignment */\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport function memoizeGetters<T>(cls: new (...args: any[]) => T, fields: (keyof T)[]): typeof cls {\n for (const field of fields) {\n const desc = Object.getOwnPropertyDescriptor(cls.prototype, field)\n if (!desc) continue\n\n const { get } = desc\n\n if (!get) continue\n\n Object.defineProperty(cls.prototype, field, {\n get() {\n const val = get.call(this)\n Object.defineProperty(this, field, {\n value: val,\n enumerable: true,\n writable: true,\n })\n\n return val\n },\n enumerable: true,\n configurable: true,\n })\n }\n\n return cls\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"peer-utils.js","sourceRoot":"","sources":["../../../../src/highlevel/utils/peer-utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,YAAY,CAAA;AAE/B,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAClD,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAA;AAG3D,MAAM,CAAC,MAAM,iBAAiB,GAC1B,2FAA2F,CAAA;AAE/F,sDAAsD;AAEtD,MAAM,UAAU,WAAW,CAAC,GAA8D;IACtF,IAAI,EAAE,CAAC,cAAc,CAAC,GAAG,CAAC;QAAE,OAAO,GAAG,CAAA;IAEtC,QAAQ,GAAG,CAAC,CAAC,EAAE;
|
|
1
|
+
{"version":3,"file":"peer-utils.js","sourceRoot":"","sources":["../../../../src/highlevel/utils/peer-utils.ts"],"names":[],"mappings":"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","sourcesContent":["import { tl } from '@mtcute/tl'\n\nimport { assertNever } from '../../types/utils.js'\nimport { MtInvalidPeerTypeError } from '../types/errors.js'\nimport { InputPeerLike } from '../types/peers/index.js'\n\nexport const INVITE_LINK_REGEX =\n /^(?:https?:\\/\\/)?(?:www\\.)?(?:t(?:elegram)?\\.(?:org|me|dog)\\/(?:joinchat\\/|\\+))([\\w-]+)$/i\n\n// helpers to convert result of `resolvePeer` function\n\nexport function toInputPeer(res: tl.TypeInputPeer | tl.TypeInputUser | tl.TypeInputChannel): tl.TypeInputPeer {\n if (tl.isAnyInputPeer(res)) return res\n\n switch (res._) {\n case 'inputChannelEmpty':\n case 'inputUserEmpty':\n return { _: 'inputPeerEmpty' }\n case 'inputUser':\n return {\n _: 'inputPeerUser',\n userId: res.userId,\n accessHash: res.accessHash,\n }\n case 'inputUserSelf':\n return { _: 'inputPeerSelf' }\n case 'inputChannel':\n return {\n _: 'inputPeerChannel',\n channelId: res.channelId,\n accessHash: res.accessHash,\n }\n case 'inputChannelFromMessage':\n return {\n _: 'inputPeerChannelFromMessage',\n channelId: res.channelId,\n msgId: res.msgId,\n peer: res.peer,\n }\n case 'inputUserFromMessage':\n return {\n _: 'inputPeerUserFromMessage',\n userId: res.userId,\n msgId: res.msgId,\n peer: res.peer,\n }\n default:\n assertNever(res)\n }\n}\n\nexport function toInputUser(\n res: tl.TypeInputPeer | tl.TypeInputUser | tl.TypeInputChannel,\n input?: InputPeerLike,\n): tl.TypeInputUser {\n if (tl.isAnyInputUser(res)) return res\n\n switch (res._) {\n case 'inputPeerSelf':\n return { _: 'inputUserSelf' }\n case 'inputPeerUser':\n return {\n _: 'inputUser',\n userId: res.userId,\n accessHash: res.accessHash,\n }\n case 'inputPeerUserFromMessage':\n return {\n _: 'inputUserFromMessage',\n userId: res.userId,\n msgId: res.msgId,\n peer: res.peer,\n }\n }\n\n throw new MtInvalidPeerTypeError(input ?? res, 'user')\n}\n\nexport function toInputChannel(\n res: tl.TypeInputPeer | tl.TypeInputUser | tl.TypeInputChannel,\n input?: InputPeerLike,\n): tl.TypeInputChannel {\n if (tl.isAnyInputChannel(res)) return res\n\n switch (res._) {\n case 'inputPeerChannel':\n return {\n _: 'inputChannel',\n channelId: res.channelId,\n accessHash: res.accessHash,\n }\n case 'inputPeerChannelFromMessage':\n return {\n _: 'inputChannelFromMessage',\n channelId: res.channelId,\n msgId: res.msgId,\n peer: res.peer,\n }\n }\n\n throw new MtInvalidPeerTypeError(input ?? res, 'channel')\n}\n\nexport function isInputPeerUser(\n obj: tl.TypeInputPeer,\n): obj is tl.RawInputPeerUser | tl.RawInputPeerUserFromMessage | tl.RawInputPeerSelf {\n switch (obj._) {\n case 'inputPeerUser':\n case 'inputPeerUserFromMessage':\n case 'inputPeerSelf':\n return true\n }\n\n return false\n}\n\nexport function isInputPeerChannel(\n obj: tl.TypeInputPeer,\n): obj is tl.RawInputPeerChannel | tl.RawInputPeerChannelFromMessage {\n switch (obj._) {\n case 'inputPeerChannel':\n case 'inputPeerChannelFromMessage':\n return true\n }\n\n return false\n}\n\nexport function isInputPeerChat(obj: tl.TypeInputPeer): obj is tl.RawInputPeerChat {\n return obj._ === 'inputPeerChat'\n}\n\nexport function inputPeerToPeer(inp: tl.TypeInputPeer): tl.TypePeer {\n switch (inp._) {\n case 'inputPeerUser':\n case 'inputPeerUserFromMessage':\n return { _: 'peerUser', userId: inp.userId }\n case 'inputPeerChannel':\n case 'inputPeerChannelFromMessage':\n return { _: 'peerChannel', channelId: inp.channelId }\n case 'inputPeerChat':\n return { _: 'peerChat', chatId: inp.chatId }\n default:\n throw new MtInvalidPeerTypeError(inp, `Cannot convert ${inp._} to peer`)\n }\n}\n\nexport function extractUsernames(obj: tl.RawUser | tl.RawChannel) {\n if (obj.usernames?.length) return obj.usernames.map((x) => x.username.toLowerCase())\n if (obj.username) return [obj.username.toLowerCase()]\n\n return []\n}\n"]}
|