@mtcute/core 0.7.3 → 0.9.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/LICENSE +1 -1
- package/README.md +26 -3
- package/cjs/highlevel/base.d.ts +3 -1
- package/cjs/highlevel/base.js +18 -0
- package/cjs/highlevel/base.js.map +1 -1
- package/cjs/highlevel/client.d.ts +23 -10
- package/cjs/highlevel/client.js +26 -19
- package/cjs/highlevel/client.js.map +1 -1
- package/cjs/highlevel/client.types.d.ts +14 -0
- package/cjs/highlevel/client.types.js.map +1 -1
- package/cjs/highlevel/index.d.ts +0 -2
- package/cjs/highlevel/index.js +0 -2
- package/cjs/highlevel/index.js.map +1 -1
- package/cjs/highlevel/methods/_imports.js.map +1 -1
- package/cjs/highlevel/methods/_init.js +4 -29
- package/cjs/highlevel/methods/_init.js.map +1 -1
- package/cjs/highlevel/methods/bots/get-callback-answer.js +2 -2
- package/cjs/highlevel/methods/bots/get-callback-answer.js.map +1 -1
- package/cjs/highlevel/methods/dialogs/create-folder.js +1 -1
- package/cjs/highlevel/methods/dialogs/create-folder.js.map +1 -1
- package/cjs/highlevel/methods/dialogs/edit-folder.js +1 -1
- package/cjs/highlevel/methods/dialogs/edit-folder.js.map +1 -1
- package/cjs/highlevel/methods/dialogs/find-folder.js +1 -1
- package/cjs/highlevel/methods/dialogs/find-folder.js.map +1 -1
- package/cjs/highlevel/methods/dialogs/get-folders.d.ts +1 -1
- package/cjs/highlevel/methods/dialogs/get-folders.js +1 -1
- package/cjs/highlevel/methods/dialogs/get-folders.js.map +1 -1
- package/cjs/highlevel/methods/files/download-file.d.ts +1 -10
- package/cjs/highlevel/methods/files/download-file.js +1 -32
- package/cjs/highlevel/methods/files/download-file.js.map +1 -1
- package/cjs/highlevel/methods/files/download-iterable.js +2 -1
- package/cjs/highlevel/methods/files/download-iterable.js.map +1 -1
- package/cjs/highlevel/methods/files/download-node-stream.js +4 -0
- package/cjs/highlevel/methods/files/download-node-stream.js.map +1 -0
- package/cjs/highlevel/methods/files/normalize-input-media.d.ts +1 -1
- package/cjs/highlevel/methods/files/normalize-input-media.js +2 -1
- package/cjs/highlevel/methods/files/normalize-input-media.js.map +1 -1
- package/cjs/highlevel/methods/files/upload-file.d.ts +0 -3
- package/cjs/highlevel/methods/files/upload-file.js +24 -11
- package/cjs/highlevel/methods/files/upload-file.js.map +1 -1
- package/cjs/highlevel/methods/messages/find-in-update.js +23 -8
- package/cjs/highlevel/methods/messages/find-in-update.js.map +1 -1
- package/cjs/highlevel/methods/messages/send-media-group.d.ts +1 -1
- package/cjs/highlevel/methods/messages/send-media-group.js.map +1 -1
- package/cjs/highlevel/methods/messages/send-media.d.ts +2 -2
- package/cjs/highlevel/methods/messages/send-media.js +5 -4
- package/cjs/highlevel/methods/messages/send-media.js.map +1 -1
- package/cjs/highlevel/methods/messages/send-text.d.ts +1 -1
- package/cjs/highlevel/methods/messages/send-text.js +7 -6
- package/cjs/highlevel/methods/messages/send-text.js.map +1 -1
- package/cjs/highlevel/methods/misc/with-params.d.ts +10 -0
- package/cjs/highlevel/methods/misc/with-params.js +32 -0
- package/cjs/highlevel/methods/misc/with-params.js.map +1 -0
- package/cjs/highlevel/methods.d.ts +13 -1
- package/cjs/highlevel/methods.js +4 -6
- package/cjs/highlevel/methods.js.map +1 -1
- package/cjs/highlevel/types/bots/command-scope/index.d.ts +10 -0
- package/cjs/highlevel/types/bots/command-scope/index.js +29 -0
- package/cjs/highlevel/types/bots/command-scope/index.js.map +1 -0
- package/cjs/highlevel/types/bots/command-scope/inner.d.ts +54 -0
- package/cjs/highlevel/types/bots/command-scope/inner.js +76 -0
- package/cjs/highlevel/types/bots/command-scope/inner.js.map +1 -0
- package/cjs/highlevel/types/bots/index.d.ts +4 -4
- package/cjs/highlevel/types/bots/index.js +4 -4
- package/cjs/highlevel/types/bots/index.js.map +1 -1
- package/cjs/highlevel/types/bots/inline-message/factories.d.ts +43 -0
- package/cjs/highlevel/types/bots/inline-message/factories.js +175 -0
- package/cjs/highlevel/types/bots/inline-message/factories.js.map +1 -0
- package/cjs/highlevel/types/bots/inline-message/index.d.ts +3 -0
- package/cjs/highlevel/types/bots/inline-message/index.js +33 -0
- package/cjs/highlevel/types/bots/inline-message/index.js.map +1 -0
- package/{esm/highlevel/types/bots/input/input-inline-message.d.ts → cjs/highlevel/types/bots/inline-message/types.d.ts} +2 -45
- package/cjs/highlevel/types/bots/inline-message/types.js +3 -0
- package/cjs/highlevel/types/bots/inline-message/types.js.map +1 -0
- package/cjs/highlevel/types/bots/inline-result/factories.d.ts +94 -0
- package/cjs/highlevel/types/bots/inline-result/factories.js +486 -0
- package/cjs/highlevel/types/bots/inline-result/factories.js.map +1 -0
- package/cjs/highlevel/types/bots/inline-result/index.d.ts +3 -0
- package/cjs/highlevel/types/bots/inline-result/index.js +33 -0
- package/cjs/highlevel/types/bots/inline-result/index.js.map +1 -0
- package/{esm/highlevel/types/bots/input/input-inline-result.d.ts → cjs/highlevel/types/bots/inline-result/types.d.ts} +1 -95
- package/cjs/highlevel/types/bots/inline-result/types.js +3 -0
- package/cjs/highlevel/types/bots/inline-result/types.js.map +1 -0
- package/cjs/highlevel/types/bots/{keyboard-builder.d.ts → keyboards/builder.d.ts} +1 -1
- package/cjs/highlevel/types/bots/{keyboard-builder.js → keyboards/builder.js} +1 -1
- package/cjs/highlevel/types/bots/keyboards/builder.js.map +1 -0
- package/cjs/highlevel/types/bots/keyboards/factories.d.ts +195 -0
- package/cjs/highlevel/types/bots/keyboards/factories.js +366 -0
- package/cjs/highlevel/types/bots/keyboards/factories.js.map +1 -0
- package/cjs/highlevel/types/bots/keyboards/index.d.ts +14 -0
- package/cjs/highlevel/types/bots/keyboards/index.js +33 -0
- package/cjs/highlevel/types/bots/keyboards/index.js.map +1 -0
- package/cjs/highlevel/types/bots/keyboards/types.d.ts +34 -0
- package/cjs/highlevel/types/bots/keyboards/types.js +3 -0
- package/cjs/highlevel/types/bots/keyboards/types.js.map +1 -0
- package/cjs/highlevel/types/files/utils.d.ts +9 -6
- package/cjs/highlevel/types/files/utils.js.map +1 -1
- package/cjs/highlevel/types/media/document.js +3 -2
- package/cjs/highlevel/types/media/document.js.map +1 -1
- package/cjs/highlevel/types/media/index.d.ts +1 -1
- package/cjs/highlevel/types/media/index.js +1 -1
- package/cjs/highlevel/types/media/index.js.map +1 -1
- package/cjs/highlevel/types/media/input-media/factories.d.ts +141 -0
- package/cjs/highlevel/types/media/input-media/factories.js +250 -0
- package/cjs/highlevel/types/media/input-media/factories.js.map +1 -0
- package/cjs/highlevel/types/media/input-media/index.d.ts +3 -0
- package/cjs/highlevel/types/media/input-media/index.js +33 -0
- package/cjs/highlevel/types/media/input-media/index.js.map +1 -0
- package/cjs/highlevel/types/media/{input-media.d.ts → input-media/types.d.ts} +5 -145
- package/cjs/highlevel/types/media/input-media/types.js +3 -0
- package/cjs/highlevel/types/media/input-media/types.js.map +1 -0
- package/cjs/highlevel/types/media/thumbnail.js +5 -4
- package/cjs/highlevel/types/media/thumbnail.js.map +1 -1
- package/cjs/highlevel/types/messages/message.d.ts +1 -1
- package/cjs/highlevel/types/messages/message.js +3 -3
- package/cjs/highlevel/types/messages/message.js.map +1 -1
- package/cjs/highlevel/types/misc/index.d.ts +1 -1
- package/cjs/highlevel/types/misc/index.js +1 -1
- package/cjs/highlevel/types/misc/index.js.map +1 -1
- package/cjs/highlevel/types/misc/input-privacy-rule/allow.d.ts +22 -0
- package/cjs/highlevel/types/misc/input-privacy-rule/allow.js +36 -0
- package/cjs/highlevel/types/misc/input-privacy-rule/allow.js.map +1 -0
- package/cjs/highlevel/types/misc/input-privacy-rule/bundle.d.ts +3 -0
- package/cjs/highlevel/types/misc/input-privacy-rule/bundle.js +31 -0
- package/cjs/highlevel/types/misc/input-privacy-rule/bundle.js.map +1 -0
- package/cjs/highlevel/types/misc/input-privacy-rule/disallow.d.ts +20 -0
- package/cjs/highlevel/types/misc/input-privacy-rule/disallow.js +32 -0
- package/cjs/highlevel/types/misc/input-privacy-rule/disallow.js.map +1 -0
- package/cjs/highlevel/types/misc/input-privacy-rule/index.d.ts +3 -0
- package/cjs/highlevel/types/misc/input-privacy-rule/index.js +33 -0
- package/cjs/highlevel/types/misc/input-privacy-rule/index.js.map +1 -0
- package/cjs/highlevel/types/misc/input-privacy-rule/types.d.ts +11 -0
- package/cjs/highlevel/types/misc/input-privacy-rule/types.js +3 -0
- package/cjs/highlevel/types/misc/input-privacy-rule/types.js.map +1 -0
- package/cjs/highlevel/types/peers/chat-photo.js +3 -2
- package/cjs/highlevel/types/peers/chat-photo.js.map +1 -1
- package/cjs/highlevel/types/updates/callback-query.js +2 -2
- package/cjs/highlevel/types/updates/callback-query.js.map +1 -1
- package/cjs/highlevel/types/updates/user-status-update.js +1 -1
- package/cjs/highlevel/types/updates/user-status-update.js.map +1 -1
- package/cjs/highlevel/updates/manager.d.ts +5 -3
- package/cjs/highlevel/updates/manager.js +81 -67
- package/cjs/highlevel/updates/manager.js.map +1 -1
- package/cjs/highlevel/utils/convert-file-id.js +7 -6
- package/cjs/highlevel/utils/convert-file-id.js.map +1 -1
- package/cjs/highlevel/utils/file-utils.js +8 -4
- package/cjs/highlevel/utils/file-utils.js.map +1 -1
- package/cjs/highlevel/utils/inline-utils.js +3 -2
- package/cjs/highlevel/utils/inline-utils.js.map +1 -1
- package/cjs/highlevel/utils/inspectable.d.ts +1 -1
- package/cjs/highlevel/utils/inspectable.js +3 -2
- package/cjs/highlevel/utils/inspectable.js.map +1 -1
- package/cjs/highlevel/utils/memoize.d.ts +1 -1
- package/cjs/highlevel/utils/memoize.js +1 -0
- package/cjs/highlevel/utils/memoize.js.map +1 -1
- package/cjs/highlevel/utils/stream-utils.d.ts +0 -2
- package/cjs/highlevel/utils/stream-utils.js +1 -28
- package/cjs/highlevel/utils/stream-utils.js.map +1 -1
- package/cjs/highlevel/utils/string-session.js +3 -2
- package/cjs/highlevel/utils/string-session.js.map +1 -1
- package/cjs/highlevel/worker/index.d.ts +3 -0
- package/cjs/highlevel/{types/bots/input → worker}/index.js +3 -2
- package/cjs/highlevel/worker/index.js.map +1 -0
- package/cjs/highlevel/worker/port.d.ts +6 -3
- package/cjs/highlevel/worker/port.js +8 -2
- package/cjs/highlevel/worker/port.js.map +1 -1
- package/cjs/highlevel/worker/protocol.d.ts +5 -1
- package/cjs/highlevel/worker/protocol.js.map +1 -1
- package/cjs/highlevel/worker/worker.d.ts +11 -4
- package/cjs/highlevel/worker/worker.js +53 -49
- package/cjs/highlevel/worker/worker.js.map +1 -1
- package/cjs/network/client.d.ts +4 -4
- package/cjs/network/client.js +3 -1
- package/cjs/network/client.js.map +1 -1
- package/cjs/network/multi-session-connection.d.ts +1 -0
- package/cjs/network/multi-session-connection.js +6 -0
- package/cjs/network/multi-session-connection.js.map +1 -1
- package/cjs/network/network-manager.d.ts +5 -1
- package/cjs/network/network-manager.js +24 -15
- package/cjs/network/network-manager.js.map +1 -1
- package/cjs/network/persistent-connection.d.ts +3 -0
- package/cjs/network/persistent-connection.js +23 -1
- package/cjs/network/persistent-connection.js.map +1 -1
- package/cjs/network/session-connection.d.ts +2 -0
- package/cjs/network/session-connection.js +18 -4
- package/cjs/network/session-connection.js.map +1 -1
- package/cjs/network/transports/index.d.ts +0 -3
- package/cjs/network/transports/index.js +0 -4
- package/cjs/network/transports/index.js.map +1 -1
- package/cjs/platform.d.ts +18 -0
- package/cjs/platform.js +36 -0
- package/cjs/platform.js.map +1 -0
- package/cjs/storage/index.d.ts +2 -2
- package/cjs/storage/index.js +2 -2
- package/cjs/storage/index.js.map +1 -1
- package/{esm/storage/providers → cjs/storage}/memory/driver.d.ts +1 -1
- package/cjs/storage/memory/driver.js.map +1 -0
- package/{esm/storage/providers → cjs/storage}/memory/index.d.ts +2 -2
- package/cjs/storage/memory/index.js.map +1 -0
- package/cjs/storage/{providers/memory → memory}/repository/auth-keys.d.ts +1 -1
- package/cjs/storage/memory/repository/auth-keys.js.map +1 -0
- package/{esm/storage/providers → cjs/storage}/memory/repository/kv.d.ts +1 -1
- package/cjs/storage/memory/repository/kv.js.map +1 -0
- package/{esm/storage/providers → cjs/storage}/memory/repository/peers.d.ts +1 -1
- package/cjs/storage/memory/repository/peers.js.map +1 -0
- package/{esm/storage/providers → cjs/storage}/memory/repository/ref-messages.d.ts +1 -1
- package/cjs/storage/memory/repository/ref-messages.js.map +1 -0
- package/cjs/storage/sqlite/driver.d.ts +24 -0
- package/cjs/storage/sqlite/driver.js +129 -0
- package/cjs/storage/sqlite/driver.js.map +1 -0
- package/cjs/storage/sqlite/index.d.ts +17 -0
- package/cjs/storage/sqlite/index.js +35 -0
- package/cjs/storage/sqlite/index.js.map +1 -0
- package/cjs/storage/sqlite/repository/auth-keys.d.ts +20 -0
- package/cjs/storage/sqlite/repository/auth-keys.js +68 -0
- package/cjs/storage/sqlite/repository/auth-keys.js.map +1 -0
- package/cjs/storage/sqlite/repository/kv.d.ts +14 -0
- package/cjs/storage/sqlite/repository/kv.js +96 -0
- package/cjs/storage/sqlite/repository/kv.js.map +1 -0
- package/cjs/storage/sqlite/repository/peers.d.ts +16 -0
- package/cjs/storage/sqlite/repository/peers.js +77 -0
- package/cjs/storage/sqlite/repository/peers.js.map +1 -0
- package/cjs/storage/sqlite/repository/ref-messages.d.ts +16 -0
- package/cjs/storage/sqlite/repository/ref-messages.js +49 -0
- package/cjs/storage/sqlite/repository/ref-messages.js.map +1 -0
- package/cjs/storage/sqlite/types.d.ts +18 -0
- package/cjs/storage/sqlite/types.js +3 -0
- package/cjs/storage/sqlite/types.js.map +1 -0
- package/cjs/storage/storage.js +2 -1
- package/cjs/storage/storage.js.map +1 -1
- package/cjs/utils/binary/asn1-parser.js +3 -3
- package/cjs/utils/binary/asn1-parser.js.map +1 -1
- package/cjs/utils/crypto/abstract.d.ts +0 -1
- package/cjs/utils/crypto/abstract.js.map +1 -1
- package/cjs/utils/crypto/index.d.ts +0 -2
- package/cjs/utils/crypto/index.js +0 -3
- package/cjs/utils/crypto/index.js.map +1 -1
- package/cjs/utils/crypto/keys.js +5 -3
- package/cjs/utils/crypto/keys.js.map +1 -1
- package/cjs/utils/crypto/password.js +3 -3
- package/cjs/utils/crypto/password.js.map +1 -1
- package/cjs/utils/dcs.d.ts +4 -0
- package/cjs/utils/dcs.js +0 -4
- package/cjs/utils/dcs.js.map +1 -1
- package/cjs/utils/{platform/error-reporting.d.ts → error-reporting.d.ts} +1 -1
- package/cjs/utils/error-reporting.js.map +1 -0
- package/cjs/utils/index.d.ts +4 -1
- package/cjs/utils/index.js +6 -1
- package/cjs/utils/index.js.map +1 -1
- package/cjs/utils/links/common.js +1 -1
- package/cjs/utils/links/common.js.map +1 -1
- package/cjs/utils/logger.d.ts +1 -0
- package/cjs/utils/logger.js +9 -22
- package/cjs/utils/logger.js.map +1 -1
- package/esm/highlevel/base.d.ts +3 -1
- package/esm/highlevel/base.js +18 -0
- package/esm/highlevel/base.js.map +1 -1
- package/esm/highlevel/client.d.ts +23 -10
- package/esm/highlevel/client.js +12 -19
- package/esm/highlevel/client.js.map +1 -1
- package/esm/highlevel/client.types.d.ts +14 -0
- package/esm/highlevel/client.types.js.map +1 -1
- package/esm/highlevel/index.d.ts +0 -2
- package/esm/highlevel/index.js +0 -2
- package/esm/highlevel/index.js.map +1 -1
- package/esm/highlevel/methods/_imports.js.map +1 -1
- package/esm/highlevel/methods/_init.js +4 -29
- package/esm/highlevel/methods/_init.js.map +1 -1
- package/esm/highlevel/methods/bots/get-callback-answer.js +2 -2
- package/esm/highlevel/methods/bots/get-callback-answer.js.map +1 -1
- package/esm/highlevel/methods/dialogs/create-folder.js +1 -1
- package/esm/highlevel/methods/dialogs/create-folder.js.map +1 -1
- package/esm/highlevel/methods/dialogs/edit-folder.js +1 -1
- package/esm/highlevel/methods/dialogs/edit-folder.js.map +1 -1
- package/esm/highlevel/methods/dialogs/find-folder.js +1 -1
- package/esm/highlevel/methods/dialogs/find-folder.js.map +1 -1
- package/esm/highlevel/methods/dialogs/get-folders.d.ts +1 -1
- package/esm/highlevel/methods/dialogs/get-folders.js +1 -1
- package/esm/highlevel/methods/dialogs/get-folders.js.map +1 -1
- package/esm/highlevel/methods/files/download-file.d.ts +1 -10
- package/esm/highlevel/methods/files/download-file.js +2 -30
- package/esm/highlevel/methods/files/download-file.js.map +1 -1
- package/esm/highlevel/methods/files/download-iterable.js +2 -1
- package/esm/highlevel/methods/files/download-iterable.js.map +1 -1
- package/esm/highlevel/methods/files/download-node-stream.js +3 -0
- package/esm/highlevel/methods/files/download-node-stream.js.map +1 -0
- package/esm/highlevel/methods/files/normalize-input-media.d.ts +1 -1
- package/esm/highlevel/methods/files/normalize-input-media.js +2 -1
- package/esm/highlevel/methods/files/normalize-input-media.js.map +1 -1
- package/esm/highlevel/methods/files/upload-file.d.ts +0 -3
- package/esm/highlevel/methods/files/upload-file.js +24 -11
- package/esm/highlevel/methods/files/upload-file.js.map +1 -1
- package/esm/highlevel/methods/messages/find-in-update.js +23 -8
- package/esm/highlevel/methods/messages/find-in-update.js.map +1 -1
- package/esm/highlevel/methods/messages/send-media-group.d.ts +1 -1
- package/esm/highlevel/methods/messages/send-media-group.js.map +1 -1
- package/esm/highlevel/methods/messages/send-media.d.ts +2 -2
- package/esm/highlevel/methods/messages/send-media.js +4 -3
- package/esm/highlevel/methods/messages/send-media.js.map +1 -1
- package/esm/highlevel/methods/messages/send-text.d.ts +1 -1
- package/esm/highlevel/methods/messages/send-text.js +4 -3
- package/esm/highlevel/methods/messages/send-text.js.map +1 -1
- package/esm/highlevel/methods/misc/with-params.d.ts +10 -0
- package/esm/highlevel/methods/misc/with-params.js +28 -0
- package/esm/highlevel/methods/misc/with-params.js.map +1 -0
- package/esm/highlevel/methods.d.ts +13 -1
- package/esm/highlevel/methods.js +0 -1
- package/esm/highlevel/methods.js.map +1 -1
- package/esm/highlevel/types/auth/sent-code.js +4 -3
- package/esm/highlevel/types/bots/command-scope/index.d.ts +10 -0
- package/esm/highlevel/types/bots/command-scope/index.js +11 -0
- package/esm/highlevel/types/bots/command-scope/index.js.map +1 -0
- package/esm/highlevel/types/bots/command-scope/inner.d.ts +54 -0
- package/esm/highlevel/types/bots/command-scope/inner.js +69 -0
- package/esm/highlevel/types/bots/command-scope/inner.js.map +1 -0
- package/esm/highlevel/types/bots/game-high-score.js +5 -4
- package/esm/highlevel/types/bots/index.d.ts +4 -4
- package/esm/highlevel/types/bots/index.js +4 -4
- package/esm/highlevel/types/bots/index.js.map +1 -1
- package/esm/highlevel/types/bots/inline-message/factories.d.ts +43 -0
- package/esm/highlevel/types/bots/inline-message/factories.js +163 -0
- package/esm/highlevel/types/bots/inline-message/factories.js.map +1 -0
- package/esm/highlevel/types/bots/inline-message/index.d.ts +3 -0
- package/esm/highlevel/types/bots/inline-message/index.js +4 -0
- package/esm/highlevel/types/bots/inline-message/index.js.map +1 -0
- package/{cjs/highlevel/types/bots/input/input-inline-message.d.ts → esm/highlevel/types/bots/inline-message/types.d.ts} +2 -45
- package/esm/highlevel/types/bots/inline-message/types.js +2 -0
- package/esm/highlevel/types/bots/inline-message/types.js.map +1 -0
- package/esm/highlevel/types/bots/inline-result/factories.d.ts +94 -0
- package/esm/highlevel/types/bots/inline-result/factories.js +470 -0
- package/esm/highlevel/types/bots/inline-result/factories.js.map +1 -0
- package/esm/highlevel/types/bots/inline-result/index.d.ts +3 -0
- package/esm/highlevel/types/bots/inline-result/index.js +4 -0
- package/esm/highlevel/types/bots/inline-result/index.js.map +1 -0
- package/{cjs/highlevel/types/bots/input/input-inline-result.d.ts → esm/highlevel/types/bots/inline-result/types.d.ts} +1 -95
- package/esm/highlevel/types/bots/inline-result/types.js +2 -0
- package/esm/highlevel/types/bots/inline-result/types.js.map +1 -0
- package/esm/highlevel/types/bots/{keyboard-builder.d.ts → keyboards/builder.d.ts} +1 -1
- package/esm/highlevel/types/bots/{keyboard-builder.js → keyboards/builder.js} +1 -1
- package/esm/highlevel/types/bots/keyboards/builder.js.map +1 -0
- package/esm/highlevel/types/bots/keyboards/factories.d.ts +195 -0
- package/esm/highlevel/types/bots/keyboards/factories.js +341 -0
- package/esm/highlevel/types/bots/keyboards/factories.js.map +1 -0
- package/esm/highlevel/types/bots/keyboards/index.d.ts +14 -0
- package/esm/highlevel/types/bots/keyboards/index.js +15 -0
- package/esm/highlevel/types/bots/keyboards/index.js.map +1 -0
- package/esm/highlevel/types/bots/keyboards/types.d.ts +34 -0
- package/esm/highlevel/types/bots/keyboards/types.js +2 -0
- package/esm/highlevel/types/bots/keyboards/types.js.map +1 -0
- package/esm/highlevel/types/files/file-location.js +4 -3
- package/esm/highlevel/types/files/utils.d.ts +9 -6
- package/esm/highlevel/types/files/utils.js.map +1 -1
- package/esm/highlevel/types/files/web-document.js +4 -3
- package/esm/highlevel/types/media/audio.js +5 -4
- package/esm/highlevel/types/media/contact.js +4 -3
- package/esm/highlevel/types/media/dice.js +4 -3
- package/esm/highlevel/types/media/document.js +8 -6
- package/esm/highlevel/types/media/document.js.map +1 -1
- package/esm/highlevel/types/media/game.js +5 -4
- package/esm/highlevel/types/media/index.d.ts +1 -1
- package/esm/highlevel/types/media/index.js +1 -1
- package/esm/highlevel/types/media/index.js.map +1 -1
- package/esm/highlevel/types/media/input-media/factories.d.ts +141 -0
- package/esm/highlevel/types/media/input-media/factories.js +228 -0
- package/esm/highlevel/types/media/input-media/factories.js.map +1 -0
- package/esm/highlevel/types/media/input-media/index.d.ts +3 -0
- package/esm/highlevel/types/media/input-media/index.js +4 -0
- package/esm/highlevel/types/media/input-media/index.js.map +1 -0
- package/esm/highlevel/types/media/{input-media.d.ts → input-media/types.d.ts} +5 -145
- package/esm/highlevel/types/media/input-media/types.js +2 -0
- package/esm/highlevel/types/media/input-media/types.js.map +1 -0
- package/esm/highlevel/types/media/invoice.js +9 -7
- package/esm/highlevel/types/media/location.js +7 -5
- package/esm/highlevel/types/media/photo.js +5 -4
- package/esm/highlevel/types/media/poll.js +5 -4
- package/esm/highlevel/types/media/sticker.js +5 -4
- package/esm/highlevel/types/media/story.js +4 -3
- package/esm/highlevel/types/media/thumbnail.js +10 -8
- package/esm/highlevel/types/media/thumbnail.js.map +1 -1
- package/esm/highlevel/types/media/venue.js +5 -4
- package/esm/highlevel/types/media/video.js +5 -4
- package/esm/highlevel/types/media/voice.js +5 -4
- package/esm/highlevel/types/media/web-page.js +5 -4
- package/esm/highlevel/types/messages/dialog.js +5 -4
- package/esm/highlevel/types/messages/draft-message.js +5 -4
- package/esm/highlevel/types/messages/message-entity.js +5 -4
- package/esm/highlevel/types/messages/message-forward.js +5 -4
- package/esm/highlevel/types/messages/message-reactions.js +5 -4
- package/esm/highlevel/types/messages/message-replies.js +5 -4
- package/esm/highlevel/types/messages/message.d.ts +1 -1
- package/esm/highlevel/types/messages/message.js +6 -5
- package/esm/highlevel/types/messages/message.js.map +1 -1
- package/esm/highlevel/types/messages/replied-message.js +5 -4
- package/esm/highlevel/types/misc/index.d.ts +1 -1
- package/esm/highlevel/types/misc/index.js +1 -1
- package/esm/highlevel/types/misc/index.js.map +1 -1
- package/esm/highlevel/types/misc/input-privacy-rule/allow.d.ts +22 -0
- package/esm/highlevel/types/misc/input-privacy-rule/allow.js +31 -0
- package/esm/highlevel/types/misc/input-privacy-rule/allow.js.map +1 -0
- package/esm/highlevel/types/misc/input-privacy-rule/bundle.d.ts +3 -0
- package/esm/highlevel/types/misc/input-privacy-rule/bundle.js +4 -0
- package/esm/highlevel/types/misc/input-privacy-rule/bundle.js.map +1 -0
- package/esm/highlevel/types/misc/input-privacy-rule/disallow.d.ts +20 -0
- package/esm/highlevel/types/misc/input-privacy-rule/disallow.js +27 -0
- package/esm/highlevel/types/misc/input-privacy-rule/disallow.js.map +1 -0
- package/esm/highlevel/types/misc/input-privacy-rule/index.d.ts +3 -0
- package/esm/highlevel/types/misc/input-privacy-rule/index.js +4 -0
- package/esm/highlevel/types/misc/input-privacy-rule/index.js.map +1 -0
- package/esm/highlevel/types/misc/input-privacy-rule/types.d.ts +11 -0
- package/esm/highlevel/types/misc/input-privacy-rule/types.js +2 -0
- package/esm/highlevel/types/misc/input-privacy-rule/types.js.map +1 -0
- package/esm/highlevel/types/misc/sticker-set.js +5 -4
- package/esm/highlevel/types/misc/takeout-session.js +4 -3
- package/esm/highlevel/types/peers/chat-colors.js +4 -3
- package/esm/highlevel/types/peers/chat-event/index.js +5 -4
- package/esm/highlevel/types/peers/chat-invite-link-member.js +5 -4
- package/esm/highlevel/types/peers/chat-invite-link.js +5 -4
- package/esm/highlevel/types/peers/chat-location.js +5 -4
- package/esm/highlevel/types/peers/chat-member.js +5 -4
- package/esm/highlevel/types/peers/chat-permissions.js +4 -3
- package/esm/highlevel/types/peers/chat-photo.js +12 -9
- package/esm/highlevel/types/peers/chat-photo.js.map +1 -1
- package/esm/highlevel/types/peers/chat-preview.js +5 -4
- package/esm/highlevel/types/peers/chat.js +5 -4
- package/esm/highlevel/types/peers/forum-topic.js +5 -4
- package/esm/highlevel/types/peers/user.js +5 -4
- package/esm/highlevel/types/premium/boost-slot.js +5 -4
- package/esm/highlevel/types/premium/boost-stats.js +4 -3
- package/esm/highlevel/types/premium/boost.js +5 -4
- package/esm/highlevel/types/reactions/emoji-status.js +4 -3
- package/esm/highlevel/types/reactions/peer-reaction.js +5 -4
- package/esm/highlevel/types/reactions/reaction-count.js +4 -3
- package/esm/highlevel/types/stories/all-stories.js +5 -4
- package/esm/highlevel/types/stories/interactive/channel-post.js +5 -4
- package/esm/highlevel/types/stories/interactive/location.js +5 -4
- package/esm/highlevel/types/stories/interactive/reaction.js +4 -3
- package/esm/highlevel/types/stories/interactive/venue.js +5 -4
- package/esm/highlevel/types/stories/peer-stories.js +5 -4
- package/esm/highlevel/types/stories/stealth-mode.js +4 -3
- package/esm/highlevel/types/stories/story-interactions.js +5 -4
- package/esm/highlevel/types/stories/story-viewer.js +9 -7
- package/esm/highlevel/types/stories/story.js +5 -4
- package/esm/highlevel/types/updates/bot-chat-join-request.js +5 -4
- package/esm/highlevel/types/updates/bot-reaction.js +9 -7
- package/esm/highlevel/types/updates/bot-stopped.js +5 -4
- package/esm/highlevel/types/updates/callback-query.js +11 -9
- package/esm/highlevel/types/updates/callback-query.js.map +1 -1
- package/esm/highlevel/types/updates/chat-join-request.js +5 -4
- package/esm/highlevel/types/updates/chat-member-update.js +5 -4
- package/esm/highlevel/types/updates/chosen-inline-result.js +5 -4
- package/esm/highlevel/types/updates/delete-message-update.js +4 -3
- package/esm/highlevel/types/updates/delete-story-update.js +5 -4
- package/esm/highlevel/types/updates/history-read-update.js +4 -3
- package/esm/highlevel/types/updates/inline-query.js +5 -4
- package/esm/highlevel/types/updates/poll-update.js +5 -4
- package/esm/highlevel/types/updates/poll-vote.js +5 -4
- package/esm/highlevel/types/updates/pre-checkout-query.js +5 -4
- package/esm/highlevel/types/updates/story-update.js +5 -4
- package/esm/highlevel/types/updates/user-status-update.js +5 -4
- package/esm/highlevel/types/updates/user-status-update.js.map +1 -1
- package/esm/highlevel/types/updates/user-typing-update.js +4 -3
- package/esm/highlevel/updates/manager.d.ts +5 -3
- package/esm/highlevel/updates/manager.js +81 -67
- package/esm/highlevel/updates/manager.js.map +1 -1
- package/esm/highlevel/utils/convert-file-id.js +7 -6
- package/esm/highlevel/utils/convert-file-id.js.map +1 -1
- package/esm/highlevel/utils/file-utils.js +8 -4
- package/esm/highlevel/utils/file-utils.js.map +1 -1
- package/esm/highlevel/utils/inline-utils.js +4 -3
- package/esm/highlevel/utils/inline-utils.js.map +1 -1
- package/esm/highlevel/utils/inspectable.d.ts +1 -1
- package/esm/highlevel/utils/inspectable.js +3 -2
- package/esm/highlevel/utils/inspectable.js.map +1 -1
- package/esm/highlevel/utils/memoize.d.ts +1 -1
- package/esm/highlevel/utils/memoize.js +1 -0
- package/esm/highlevel/utils/memoize.js.map +1 -1
- package/esm/highlevel/utils/stream-utils.d.ts +0 -2
- package/esm/highlevel/utils/stream-utils.js +0 -26
- package/esm/highlevel/utils/stream-utils.js.map +1 -1
- package/esm/highlevel/utils/string-session.js +4 -3
- package/esm/highlevel/utils/string-session.js.map +1 -1
- package/esm/highlevel/worker/index.d.ts +3 -0
- package/esm/highlevel/worker/index.js +4 -0
- package/esm/highlevel/worker/index.js.map +1 -0
- package/esm/highlevel/worker/port.d.ts +6 -3
- package/esm/highlevel/worker/port.js +8 -2
- package/esm/highlevel/worker/port.js.map +1 -1
- package/esm/highlevel/worker/protocol.d.ts +5 -1
- package/esm/highlevel/worker/protocol.js.map +1 -1
- package/esm/highlevel/worker/worker.d.ts +11 -4
- package/esm/highlevel/worker/worker.js +51 -47
- package/esm/highlevel/worker/worker.js.map +1 -1
- package/esm/network/client.d.ts +4 -4
- package/esm/network/client.js +4 -2
- package/esm/network/client.js.map +1 -1
- package/esm/network/multi-session-connection.d.ts +1 -0
- package/esm/network/multi-session-connection.js +6 -0
- package/esm/network/multi-session-connection.js.map +1 -1
- package/esm/network/network-manager.d.ts +5 -1
- package/esm/network/network-manager.js +24 -15
- package/esm/network/network-manager.js.map +1 -1
- package/esm/network/persistent-connection.d.ts +3 -0
- package/esm/network/persistent-connection.js +23 -1
- package/esm/network/persistent-connection.js.map +1 -1
- package/esm/network/session-connection.d.ts +2 -0
- package/esm/network/session-connection.js +18 -4
- package/esm/network/session-connection.js.map +1 -1
- package/esm/network/transports/index.d.ts +0 -3
- package/esm/network/transports/index.js +0 -3
- package/esm/network/transports/index.js.map +1 -1
- package/esm/platform.d.ts +18 -0
- package/esm/platform.js +31 -0
- package/esm/platform.js.map +1 -0
- package/esm/storage/index.d.ts +2 -2
- package/esm/storage/index.js +2 -2
- package/esm/storage/index.js.map +1 -1
- package/{cjs/storage/providers → esm/storage}/memory/driver.d.ts +1 -1
- package/esm/storage/memory/driver.js.map +1 -0
- package/{cjs/storage/providers → esm/storage}/memory/index.d.ts +2 -2
- package/esm/storage/memory/index.js.map +1 -0
- package/esm/storage/{providers/memory → memory}/repository/auth-keys.d.ts +1 -1
- package/esm/storage/memory/repository/auth-keys.js.map +1 -0
- package/{cjs/storage/providers → esm/storage}/memory/repository/kv.d.ts +1 -1
- package/esm/storage/memory/repository/kv.js.map +1 -0
- package/{cjs/storage/providers → esm/storage}/memory/repository/peers.d.ts +1 -1
- package/esm/storage/memory/repository/peers.js.map +1 -0
- package/{cjs/storage/providers → esm/storage}/memory/repository/ref-messages.d.ts +1 -1
- package/esm/storage/memory/repository/ref-messages.js.map +1 -0
- package/esm/storage/sqlite/driver.d.ts +24 -0
- package/esm/storage/sqlite/driver.js +125 -0
- package/esm/storage/sqlite/driver.js.map +1 -0
- package/esm/storage/sqlite/index.d.ts +17 -0
- package/esm/storage/sqlite/index.js +17 -0
- package/esm/storage/sqlite/index.js.map +1 -0
- package/esm/storage/sqlite/repository/auth-keys.d.ts +20 -0
- package/esm/storage/sqlite/repository/auth-keys.js +64 -0
- package/esm/storage/sqlite/repository/auth-keys.js.map +1 -0
- package/esm/storage/sqlite/repository/kv.d.ts +14 -0
- package/esm/storage/sqlite/repository/kv.js +92 -0
- package/esm/storage/sqlite/repository/kv.js.map +1 -0
- package/esm/storage/sqlite/repository/peers.d.ts +16 -0
- package/esm/storage/sqlite/repository/peers.js +73 -0
- package/esm/storage/sqlite/repository/peers.js.map +1 -0
- package/esm/storage/sqlite/repository/ref-messages.d.ts +16 -0
- package/esm/storage/sqlite/repository/ref-messages.js +45 -0
- package/esm/storage/sqlite/repository/ref-messages.js.map +1 -0
- package/esm/storage/sqlite/types.d.ts +18 -0
- package/esm/storage/sqlite/types.js +2 -0
- package/esm/storage/sqlite/types.js.map +1 -0
- package/esm/storage/storage.js +3 -2
- package/esm/storage/storage.js.map +1 -1
- package/esm/utils/binary/asn1-parser.js +3 -3
- package/esm/utils/binary/asn1-parser.js.map +1 -1
- package/esm/utils/crypto/abstract.d.ts +0 -1
- package/esm/utils/crypto/abstract.js.map +1 -1
- package/esm/utils/crypto/index.d.ts +0 -2
- package/esm/utils/crypto/index.js +0 -2
- package/esm/utils/crypto/index.js.map +1 -1
- package/esm/utils/crypto/keys.js +6 -4
- package/esm/utils/crypto/keys.js.map +1 -1
- package/esm/utils/crypto/password.js +3 -3
- package/esm/utils/crypto/password.js.map +1 -1
- package/esm/utils/dcs.d.ts +4 -0
- package/esm/utils/dcs.js +0 -4
- package/esm/utils/dcs.js.map +1 -1
- package/esm/utils/{platform/error-reporting.d.ts → error-reporting.d.ts} +1 -1
- package/esm/utils/error-reporting.js.map +1 -0
- package/esm/utils/index.d.ts +4 -1
- package/esm/utils/index.js +6 -1
- package/esm/utils/index.js.map +1 -1
- package/esm/utils/links/common.js +1 -1
- package/esm/utils/links/common.js.map +1 -1
- package/esm/utils/logger.d.ts +1 -0
- package/esm/utils/logger.js +9 -22
- package/esm/utils/logger.js.map +1 -1
- package/package.json +25 -53
- package/cjs/highlevel/base.test.js +0 -14
- package/cjs/highlevel/base.test.js.map +0 -1
- package/cjs/highlevel/methods/files/_platform.js +0 -33
- package/cjs/highlevel/methods/files/_platform.js.map +0 -1
- package/cjs/highlevel/methods/files/_platform.web.d.ts +0 -1
- package/cjs/highlevel/methods/files/_platform.web.js +0 -26
- package/cjs/highlevel/methods/files/_platform.web.js.map +0 -1
- package/cjs/highlevel/methods/files/download-file.web.d.ts +0 -1
- package/cjs/highlevel/methods/files/download-file.web.js +0 -9
- package/cjs/highlevel/methods/files/download-file.web.js.map +0 -1
- package/cjs/highlevel/methods/messages/send-text.test.d.ts +0 -1
- package/cjs/highlevel/methods/messages/send-text.test.js +0 -140
- package/cjs/highlevel/methods/messages/send-text.test.js.map +0 -1
- package/cjs/highlevel/methods/users/get-users.test.d.ts +0 -1
- package/cjs/highlevel/methods/users/get-users.test.js +0 -33
- package/cjs/highlevel/methods/users/get-users.test.js.map +0 -1
- package/cjs/highlevel/methods/users/resolve-peer.test.d.ts +0 -1
- package/cjs/highlevel/methods/users/resolve-peer.test.js +0 -307
- package/cjs/highlevel/methods/users/resolve-peer.test.js.map +0 -1
- package/cjs/highlevel/types/bots/command-scope.d.ts +0 -63
- package/cjs/highlevel/types/bots/command-scope.js +0 -87
- package/cjs/highlevel/types/bots/command-scope.js.map +0 -1
- package/cjs/highlevel/types/bots/input/index.d.ts +0 -2
- package/cjs/highlevel/types/bots/input/index.js.map +0 -1
- package/cjs/highlevel/types/bots/input/input-inline-message.js +0 -179
- package/cjs/highlevel/types/bots/input/input-inline-message.js.map +0 -1
- package/cjs/highlevel/types/bots/input/input-inline-result.js +0 -490
- package/cjs/highlevel/types/bots/input/input-inline-result.js.map +0 -1
- package/cjs/highlevel/types/bots/keyboard-builder.js.map +0 -1
- package/cjs/highlevel/types/bots/keyboard-builder.test.d.ts +0 -1
- package/cjs/highlevel/types/bots/keyboard-builder.test.js +0 -162
- package/cjs/highlevel/types/bots/keyboard-builder.test.js.map +0 -1
- package/cjs/highlevel/types/bots/keyboards.d.ts +0 -239
- package/cjs/highlevel/types/bots/keyboards.js +0 -380
- package/cjs/highlevel/types/bots/keyboards.js.map +0 -1
- package/cjs/highlevel/types/bots/keyboards.test.d.ts +0 -1
- package/cjs/highlevel/types/bots/keyboards.test.js +0 -146
- package/cjs/highlevel/types/bots/keyboards.test.js.map +0 -1
- package/cjs/highlevel/types/media/input-media.js +0 -254
- package/cjs/highlevel/types/media/input-media.js.map +0 -1
- package/cjs/highlevel/types/misc/input-privacy-rule.d.ts +0 -63
- package/cjs/highlevel/types/misc/input-privacy-rule.js +0 -85
- package/cjs/highlevel/types/misc/input-privacy-rule.js.map +0 -1
- package/cjs/highlevel/types/peers/peers-index.test.d.ts +0 -1
- package/cjs/highlevel/types/peers/peers-index.test.js +0 -71
- package/cjs/highlevel/types/peers/peers-index.test.js.map +0 -1
- package/cjs/highlevel/types/peers/user.test.d.ts +0 -1
- package/cjs/highlevel/types/peers/user.test.js +0 -176
- package/cjs/highlevel/types/peers/user.test.js.map +0 -1
- package/cjs/highlevel/utils/file-type.test.d.ts +0 -1
- package/cjs/highlevel/utils/file-type.test.js +0 -64
- package/cjs/highlevel/utils/file-type.test.js.map +0 -1
- package/cjs/highlevel/utils/file-utils.test.d.ts +0 -1
- package/cjs/highlevel/utils/file-utils.test.js +0 -126
- package/cjs/highlevel/utils/file-utils.test.js.map +0 -1
- package/cjs/highlevel/utils/inline-utils.test.d.ts +0 -1
- package/cjs/highlevel/utils/inline-utils.test.js +0 -47
- package/cjs/highlevel/utils/inline-utils.test.js.map +0 -1
- package/cjs/highlevel/utils/inspectable.test.d.ts +0 -1
- package/cjs/highlevel/utils/inspectable.test.js +0 -97
- package/cjs/highlevel/utils/inspectable.test.js.map +0 -1
- package/cjs/highlevel/utils/memoize.test.d.ts +0 -1
- package/cjs/highlevel/utils/memoize.test.js +0 -60
- package/cjs/highlevel/utils/memoize.test.js.map +0 -1
- package/cjs/highlevel/utils/peer-utils.test.d.ts +0 -1
- package/cjs/highlevel/utils/peer-utils.test.js +0 -109
- package/cjs/highlevel/utils/peer-utils.test.js.map +0 -1
- package/cjs/highlevel/utils/platform/storage.d.ts +0 -1
- package/cjs/highlevel/utils/platform/storage.js +0 -10
- package/cjs/highlevel/utils/platform/storage.js.map +0 -1
- package/cjs/highlevel/utils/platform/storage.web.d.ts +0 -1
- package/cjs/highlevel/utils/platform/storage.web.js +0 -14
- package/cjs/highlevel/utils/platform/storage.web.js.map +0 -1
- package/cjs/highlevel/utils/query-batcher.test.d.ts +0 -1
- package/cjs/highlevel/utils/query-batcher.test.js +0 -502
- package/cjs/highlevel/utils/query-batcher.test.js.map +0 -1
- package/cjs/highlevel/utils/stream-utils.test.d.ts +0 -1
- package/cjs/highlevel/utils/stream-utils.test.js +0 -98
- package/cjs/highlevel/utils/stream-utils.test.js.map +0 -1
- package/cjs/highlevel/utils/string-session.test.d.ts +0 -1
- package/cjs/highlevel/utils/string-session.test.js +0 -198
- package/cjs/highlevel/utils/string-session.test.js.map +0 -1
- package/cjs/highlevel/utils/voice-utils.test.d.ts +0 -1
- package/cjs/highlevel/utils/voice-utils.test.js +0 -28
- package/cjs/highlevel/utils/voice-utils.test.js.map +0 -1
- package/cjs/highlevel/worker/platform/connect.d.ts +0 -2
- package/cjs/highlevel/worker/platform/connect.js +0 -19
- package/cjs/highlevel/worker/platform/connect.js.map +0 -1
- package/cjs/highlevel/worker/platform/connect.web.d.ts +0 -2
- package/cjs/highlevel/worker/platform/connect.web.js +0 -51
- package/cjs/highlevel/worker/platform/connect.web.js.map +0 -1
- package/cjs/highlevel/worker/platform/register.d.ts +0 -2
- package/cjs/highlevel/worker/platform/register.js +0 -20
- package/cjs/highlevel/worker/platform/register.js.map +0 -1
- package/cjs/highlevel/worker/platform/register.web.d.ts +0 -2
- package/cjs/highlevel/worker/platform/register.web.js +0 -64
- package/cjs/highlevel/worker/platform/register.web.js.map +0 -1
- package/cjs/network/auth-key.test.d.ts +0 -1
- package/cjs/network/auth-key.test.js +0 -111
- package/cjs/network/auth-key.test.js.map +0 -1
- package/cjs/network/config-manager.test.d.ts +0 -1
- package/cjs/network/config-manager.test.js +0 -174
- package/cjs/network/config-manager.test.js.map +0 -1
- package/cjs/network/persistent-connection.test.d.ts +0 -1
- package/cjs/network/persistent-connection.test.js +0 -157
- package/cjs/network/persistent-connection.test.js.map +0 -1
- package/cjs/network/transports/intermediate.test.d.ts +0 -1
- package/cjs/network/transports/intermediate.test.js +0 -84
- package/cjs/network/transports/intermediate.test.js.map +0 -1
- package/cjs/network/transports/obfuscated.test.d.ts +0 -1
- package/cjs/network/transports/obfuscated.test.js +0 -131
- package/cjs/network/transports/obfuscated.test.js.map +0 -1
- package/cjs/network/transports/tcp.d.ts +0 -32
- package/cjs/network/transports/tcp.js +0 -130
- package/cjs/network/transports/tcp.js.map +0 -1
- package/cjs/network/transports/tcp.test.d.ts +0 -1
- package/cjs/network/transports/tcp.test.js +0 -103
- package/cjs/network/transports/tcp.test.js.map +0 -1
- package/cjs/network/transports/websocket.d.ts +0 -46
- package/cjs/network/transports/websocket.js +0 -124
- package/cjs/network/transports/websocket.js.map +0 -1
- package/cjs/network/transports/websocket.test.d.ts +0 -1
- package/cjs/network/transports/websocket.test.js +0 -91
- package/cjs/network/transports/websocket.test.js.map +0 -1
- package/cjs/storage/providers/idb/driver.d.ts +0 -18
- package/cjs/storage/providers/idb/driver.js +0 -138
- package/cjs/storage/providers/idb/driver.js.map +0 -1
- package/cjs/storage/providers/idb/idb.test.d.ts +0 -1
- package/cjs/storage/providers/idb/idb.test.js +0 -29
- package/cjs/storage/providers/idb/idb.test.js.map +0 -1
- package/cjs/storage/providers/idb/index.d.ts +0 -22
- package/cjs/storage/providers/idb/index.js +0 -28
- package/cjs/storage/providers/idb/index.js.map +0 -1
- package/cjs/storage/providers/idb/repository/auth-keys.d.ts +0 -14
- package/cjs/storage/providers/idb/repository/auth-keys.js +0 -70
- package/cjs/storage/providers/idb/repository/auth-keys.js.map +0 -1
- package/cjs/storage/providers/idb/repository/kv.d.ts +0 -11
- package/cjs/storage/providers/idb/repository/kv.js +0 -34
- package/cjs/storage/providers/idb/repository/kv.js.map +0 -1
- package/cjs/storage/providers/idb/repository/peers.d.ts +0 -12
- package/cjs/storage/providers/idb/repository/peers.js +0 -38
- package/cjs/storage/providers/idb/repository/peers.js.map +0 -1
- package/cjs/storage/providers/idb/repository/ref-messages.d.ts +0 -12
- package/cjs/storage/providers/idb/repository/ref-messages.js +0 -57
- package/cjs/storage/providers/idb/repository/ref-messages.js.map +0 -1
- package/cjs/storage/providers/idb/utils.d.ts +0 -3
- package/cjs/storage/providers/idb/utils.js +0 -27
- package/cjs/storage/providers/idb/utils.js.map +0 -1
- package/cjs/storage/providers/memory/driver.js.map +0 -1
- package/cjs/storage/providers/memory/index.js.map +0 -1
- package/cjs/storage/providers/memory/memory.test.d.ts +0 -1
- package/cjs/storage/providers/memory/memory.test.js +0 -13
- package/cjs/storage/providers/memory/memory.test.js.map +0 -1
- package/cjs/storage/providers/memory/repository/auth-keys.js.map +0 -1
- package/cjs/storage/providers/memory/repository/kv.js.map +0 -1
- package/cjs/storage/providers/memory/repository/peers.js.map +0 -1
- package/cjs/storage/providers/memory/repository/ref-messages.js.map +0 -1
- package/cjs/storage/service/auth-keys.test.d.ts +0 -1
- package/cjs/storage/service/auth-keys.test.js +0 -22
- package/cjs/storage/service/auth-keys.test.js.map +0 -1
- package/cjs/storage/service/updates.test.d.ts +0 -1
- package/cjs/storage/service/updates.test.js +0 -60
- package/cjs/storage/service/updates.test.js.map +0 -1
- package/cjs/storage/service/utils.test-utils.d.ts +0 -2
- package/cjs/storage/service/utils.test-utils.js +0 -19
- package/cjs/storage/service/utils.test-utils.js.map +0 -1
- package/cjs/utils/async-lock.test.d.ts +0 -1
- package/cjs/utils/async-lock.test.js +0 -25
- package/cjs/utils/async-lock.test.js.map +0 -1
- package/cjs/utils/bigint-utils.test.d.ts +0 -1
- package/cjs/utils/bigint-utils.test.js +0 -150
- package/cjs/utils/bigint-utils.test.js.map +0 -1
- package/cjs/utils/buffer-utils.test.d.ts +0 -1
- package/cjs/utils/buffer-utils.test.js +0 -69
- package/cjs/utils/buffer-utils.test.js.map +0 -1
- package/cjs/utils/condition-variable.test.d.ts +0 -1
- package/cjs/utils/condition-variable.test.js +0 -27
- package/cjs/utils/condition-variable.test.js.map +0 -1
- package/cjs/utils/controllable-promise.test.d.ts +0 -1
- package/cjs/utils/controllable-promise.test.js +0 -17
- package/cjs/utils/controllable-promise.test.js.map +0 -1
- package/cjs/utils/crypto/factorization.test.d.ts +0 -1
- package/cjs/utils/crypto/factorization.test.js +0 -19
- package/cjs/utils/crypto/factorization.test.js.map +0 -1
- package/cjs/utils/crypto/keys.test.d.ts +0 -1
- package/cjs/utils/crypto/keys.test.js +0 -40
- package/cjs/utils/crypto/keys.test.js.map +0 -1
- package/cjs/utils/crypto/miller-rabin.test.d.ts +0 -1
- package/cjs/utils/crypto/miller-rabin.test.js +0 -60
- package/cjs/utils/crypto/miller-rabin.test.js.map +0 -1
- package/cjs/utils/crypto/mtproto.test.d.ts +0 -1
- package/cjs/utils/crypto/mtproto.test.js +0 -50
- package/cjs/utils/crypto/mtproto.test.js.map +0 -1
- package/cjs/utils/crypto/node.d.ts +0 -21
- package/cjs/utils/crypto/node.js +0 -74
- package/cjs/utils/crypto/node.js.map +0 -1
- package/cjs/utils/crypto/node.test.d.ts +0 -1
- package/cjs/utils/crypto/node.test.js +0 -14
- package/cjs/utils/crypto/node.test.js.map +0 -1
- package/cjs/utils/crypto/password.test.d.ts +0 -1
- package/cjs/utils/crypto/password.test.js +0 -95
- package/cjs/utils/crypto/password.test.js.map +0 -1
- package/cjs/utils/crypto/utils.test.d.ts +0 -1
- package/cjs/utils/crypto/utils.test.js +0 -49
- package/cjs/utils/crypto/utils.test.js.map +0 -1
- package/cjs/utils/crypto/wasm.d.ts +0 -22
- package/cjs/utils/crypto/wasm.js +0 -41
- package/cjs/utils/crypto/wasm.js.map +0 -1
- package/cjs/utils/crypto/web.d.ts +0 -11
- package/cjs/utils/crypto/web.js +0 -40
- package/cjs/utils/crypto/web.js.map +0 -1
- package/cjs/utils/crypto/web.test.d.ts +0 -1
- package/cjs/utils/crypto/web.test.js +0 -17
- package/cjs/utils/crypto/web.test.js.map +0 -1
- package/cjs/utils/deque.test.d.ts +0 -1
- package/cjs/utils/deque.test.js +0 -128
- package/cjs/utils/deque.test.js.map +0 -1
- package/cjs/utils/function-utils.test.d.ts +0 -1
- package/cjs/utils/function-utils.test.js +0 -23
- package/cjs/utils/function-utils.test.js.map +0 -1
- package/cjs/utils/linked-list.test.d.ts +0 -1
- package/cjs/utils/linked-list.test.js +0 -36
- package/cjs/utils/linked-list.test.js.map +0 -1
- package/cjs/utils/links/bots.test.d.ts +0 -1
- package/cjs/utils/links/bots.test.js +0 -152
- package/cjs/utils/links/bots.test.js.map +0 -1
- package/cjs/utils/links/chat.test.d.ts +0 -1
- package/cjs/utils/links/chat.test.js +0 -84
- package/cjs/utils/links/chat.test.js.map +0 -1
- package/cjs/utils/links/misc.test.d.ts +0 -1
- package/cjs/utils/links/misc.test.js +0 -153
- package/cjs/utils/links/misc.test.js.map +0 -1
- package/cjs/utils/links/proxy.test.d.ts +0 -1
- package/cjs/utils/links/proxy.test.js +0 -74
- package/cjs/utils/links/proxy.test.js.map +0 -1
- package/cjs/utils/links/user.test.d.ts +0 -1
- package/cjs/utils/links/user.test.js +0 -63
- package/cjs/utils/links/user.test.js.map +0 -1
- package/cjs/utils/logger.test.d.ts +0 -1
- package/cjs/utils/logger.test.js +0 -139
- package/cjs/utils/logger.test.js.map +0 -1
- package/cjs/utils/long-utils.test.d.ts +0 -1
- package/cjs/utils/long-utils.test.js +0 -158
- package/cjs/utils/long-utils.test.js.map +0 -1
- package/cjs/utils/lru-map.test.d.ts +0 -1
- package/cjs/utils/lru-map.test.js +0 -96
- package/cjs/utils/lru-map.test.js.map +0 -1
- package/cjs/utils/lru-set.test.d.ts +0 -1
- package/cjs/utils/lru-set.test.js +0 -77
- package/cjs/utils/lru-set.test.js.map +0 -1
- package/cjs/utils/peer-utils.test.d.ts +0 -1
- package/cjs/utils/peer-utils.test.js +0 -110
- package/cjs/utils/peer-utils.test.js.map +0 -1
- package/cjs/utils/platform/crypto.d.ts +0 -1
- package/cjs/utils/platform/crypto.js +0 -8
- package/cjs/utils/platform/crypto.js.map +0 -1
- package/cjs/utils/platform/crypto.web.d.ts +0 -1
- package/cjs/utils/platform/crypto.web.js +0 -14
- package/cjs/utils/platform/crypto.web.js.map +0 -1
- package/cjs/utils/platform/error-reporting.js.map +0 -1
- package/cjs/utils/platform/exit-hook.d.ts +0 -1
- package/cjs/utils/platform/exit-hook.js +0 -45
- package/cjs/utils/platform/exit-hook.js.map +0 -1
- package/cjs/utils/platform/exit-hook.web.d.ts +0 -1
- package/cjs/utils/platform/exit-hook.web.js +0 -21
- package/cjs/utils/platform/exit-hook.web.js.map +0 -1
- package/cjs/utils/platform/logging.d.ts +0 -1
- package/cjs/utils/platform/logging.js +0 -34
- package/cjs/utils/platform/logging.js.map +0 -1
- package/cjs/utils/platform/logging.web.d.ts +0 -1
- package/cjs/utils/platform/logging.web.js +0 -35
- package/cjs/utils/platform/logging.web.js.map +0 -1
- package/cjs/utils/platform/transport.d.ts +0 -1
- package/cjs/utils/platform/transport.js +0 -8
- package/cjs/utils/platform/transport.js.map +0 -1
- package/cjs/utils/platform/transport.web.d.ts +0 -1
- package/cjs/utils/platform/transport.web.js +0 -15
- package/cjs/utils/platform/transport.web.js.map +0 -1
- package/cjs/utils/sorted-array.test.d.ts +0 -1
- package/cjs/utils/sorted-array.test.js +0 -66
- package/cjs/utils/sorted-array.test.js.map +0 -1
- package/cjs/utils/tl-json.test.d.ts +0 -1
- package/cjs/utils/tl-json.test.js +0 -83
- package/cjs/utils/tl-json.test.js.map +0 -1
- package/cjs/utils/type-assertions.test.d.ts +0 -1
- package/cjs/utils/type-assertions.test.js +0 -67
- package/cjs/utils/type-assertions.test.js.map +0 -1
- package/esm/highlevel/base.test.d.ts +0 -1
- package/esm/highlevel/base.test.js +0 -12
- package/esm/highlevel/base.test.js.map +0 -1
- package/esm/highlevel/methods/files/_platform.d.ts +0 -1
- package/esm/highlevel/methods/files/_platform.js +0 -26
- package/esm/highlevel/methods/files/_platform.js.map +0 -1
- package/esm/highlevel/methods/files/_platform.web.d.ts +0 -1
- package/esm/highlevel/methods/files/_platform.web.js +0 -19
- package/esm/highlevel/methods/files/_platform.web.js.map +0 -1
- package/esm/highlevel/methods/files/download-file.web.d.ts +0 -1
- package/esm/highlevel/methods/files/download-file.web.js +0 -5
- package/esm/highlevel/methods/files/download-file.web.js.map +0 -1
- package/esm/highlevel/methods/messages/send-text.test.d.ts +0 -1
- package/esm/highlevel/methods/messages/send-text.test.js +0 -135
- package/esm/highlevel/methods/messages/send-text.test.js.map +0 -1
- package/esm/highlevel/methods/users/get-users.test.d.ts +0 -1
- package/esm/highlevel/methods/users/get-users.test.js +0 -28
- package/esm/highlevel/methods/users/get-users.test.js.map +0 -1
- package/esm/highlevel/methods/users/resolve-peer.test.d.ts +0 -1
- package/esm/highlevel/methods/users/resolve-peer.test.js +0 -302
- package/esm/highlevel/methods/users/resolve-peer.test.js.map +0 -1
- package/esm/highlevel/types/bots/command-scope.d.ts +0 -63
- package/esm/highlevel/types/bots/command-scope.js +0 -84
- package/esm/highlevel/types/bots/command-scope.js.map +0 -1
- package/esm/highlevel/types/bots/input/index.d.ts +0 -2
- package/esm/highlevel/types/bots/input/index.js +0 -3
- package/esm/highlevel/types/bots/input/index.js.map +0 -1
- package/esm/highlevel/types/bots/input/input-inline-message.js +0 -176
- package/esm/highlevel/types/bots/input/input-inline-message.js.map +0 -1
- package/esm/highlevel/types/bots/input/input-inline-result.js +0 -487
- package/esm/highlevel/types/bots/input/input-inline-result.js.map +0 -1
- package/esm/highlevel/types/bots/keyboard-builder.js.map +0 -1
- package/esm/highlevel/types/bots/keyboard-builder.test.d.ts +0 -1
- package/esm/highlevel/types/bots/keyboard-builder.test.js +0 -160
- package/esm/highlevel/types/bots/keyboard-builder.test.js.map +0 -1
- package/esm/highlevel/types/bots/keyboards.d.ts +0 -239
- package/esm/highlevel/types/bots/keyboards.js +0 -377
- package/esm/highlevel/types/bots/keyboards.js.map +0 -1
- package/esm/highlevel/types/bots/keyboards.test.d.ts +0 -1
- package/esm/highlevel/types/bots/keyboards.test.js +0 -144
- package/esm/highlevel/types/bots/keyboards.test.js.map +0 -1
- package/esm/highlevel/types/media/input-media.js +0 -251
- package/esm/highlevel/types/media/input-media.js.map +0 -1
- package/esm/highlevel/types/misc/input-privacy-rule.d.ts +0 -63
- package/esm/highlevel/types/misc/input-privacy-rule.js +0 -82
- package/esm/highlevel/types/misc/input-privacy-rule.js.map +0 -1
- package/esm/highlevel/types/peers/peers-index.test.d.ts +0 -1
- package/esm/highlevel/types/peers/peers-index.test.js +0 -69
- package/esm/highlevel/types/peers/peers-index.test.js.map +0 -1
- package/esm/highlevel/types/peers/user.test.d.ts +0 -1
- package/esm/highlevel/types/peers/user.test.js +0 -171
- package/esm/highlevel/types/peers/user.test.js.map +0 -1
- package/esm/highlevel/utils/file-type.test.d.ts +0 -1
- package/esm/highlevel/utils/file-type.test.js +0 -62
- package/esm/highlevel/utils/file-type.test.js.map +0 -1
- package/esm/highlevel/utils/file-utils.test.d.ts +0 -1
- package/esm/highlevel/utils/file-utils.test.js +0 -124
- package/esm/highlevel/utils/file-utils.test.js.map +0 -1
- package/esm/highlevel/utils/inline-utils.test.d.ts +0 -1
- package/esm/highlevel/utils/inline-utils.test.js +0 -42
- package/esm/highlevel/utils/inline-utils.test.js.map +0 -1
- package/esm/highlevel/utils/inspectable.test.d.ts +0 -1
- package/esm/highlevel/utils/inspectable.test.js +0 -95
- package/esm/highlevel/utils/inspectable.test.js.map +0 -1
- package/esm/highlevel/utils/memoize.test.d.ts +0 -1
- package/esm/highlevel/utils/memoize.test.js +0 -58
- package/esm/highlevel/utils/memoize.test.js.map +0 -1
- package/esm/highlevel/utils/peer-utils.test.d.ts +0 -1
- package/esm/highlevel/utils/peer-utils.test.js +0 -107
- package/esm/highlevel/utils/peer-utils.test.js.map +0 -1
- package/esm/highlevel/utils/platform/storage.d.ts +0 -1
- package/esm/highlevel/utils/platform/storage.js +0 -6
- package/esm/highlevel/utils/platform/storage.js.map +0 -1
- package/esm/highlevel/utils/platform/storage.web.d.ts +0 -1
- package/esm/highlevel/utils/platform/storage.web.js +0 -10
- package/esm/highlevel/utils/platform/storage.web.js.map +0 -1
- package/esm/highlevel/utils/query-batcher.test.d.ts +0 -1
- package/esm/highlevel/utils/query-batcher.test.js +0 -500
- package/esm/highlevel/utils/query-batcher.test.js.map +0 -1
- package/esm/highlevel/utils/stream-utils.test.d.ts +0 -1
- package/esm/highlevel/utils/stream-utils.test.js +0 -96
- package/esm/highlevel/utils/stream-utils.test.js.map +0 -1
- package/esm/highlevel/utils/string-session.test.d.ts +0 -1
- package/esm/highlevel/utils/string-session.test.js +0 -196
- package/esm/highlevel/utils/string-session.test.js.map +0 -1
- package/esm/highlevel/utils/voice-utils.test.d.ts +0 -1
- package/esm/highlevel/utils/voice-utils.test.js +0 -26
- package/esm/highlevel/utils/voice-utils.test.js.map +0 -1
- package/esm/highlevel/worker/platform/connect.d.ts +0 -2
- package/esm/highlevel/worker/platform/connect.js +0 -15
- package/esm/highlevel/worker/platform/connect.js.map +0 -1
- package/esm/highlevel/worker/platform/connect.web.d.ts +0 -2
- package/esm/highlevel/worker/platform/connect.web.js +0 -47
- package/esm/highlevel/worker/platform/connect.web.js.map +0 -1
- package/esm/highlevel/worker/platform/register.d.ts +0 -2
- package/esm/highlevel/worker/platform/register.js +0 -16
- package/esm/highlevel/worker/platform/register.js.map +0 -1
- package/esm/highlevel/worker/platform/register.web.d.ts +0 -2
- package/esm/highlevel/worker/platform/register.web.js +0 -60
- package/esm/highlevel/worker/platform/register.web.js.map +0 -1
- package/esm/network/auth-key.test.d.ts +0 -1
- package/esm/network/auth-key.test.js +0 -106
- package/esm/network/auth-key.test.js.map +0 -1
- package/esm/network/config-manager.test.d.ts +0 -1
- package/esm/network/config-manager.test.js +0 -172
- package/esm/network/config-manager.test.js.map +0 -1
- package/esm/network/persistent-connection.test.d.ts +0 -1
- package/esm/network/persistent-connection.test.js +0 -155
- package/esm/network/persistent-connection.test.js.map +0 -1
- package/esm/network/transports/intermediate.test.d.ts +0 -1
- package/esm/network/transports/intermediate.test.js +0 -82
- package/esm/network/transports/intermediate.test.js.map +0 -1
- package/esm/network/transports/obfuscated.test.d.ts +0 -1
- package/esm/network/transports/obfuscated.test.js +0 -129
- package/esm/network/transports/obfuscated.test.js.map +0 -1
- package/esm/network/transports/tcp.d.ts +0 -32
- package/esm/network/transports/tcp.js +0 -122
- package/esm/network/transports/tcp.js.map +0 -1
- package/esm/network/transports/tcp.test.d.ts +0 -1
- package/esm/network/transports/tcp.test.js +0 -101
- package/esm/network/transports/tcp.test.js.map +0 -1
- package/esm/network/transports/websocket.d.ts +0 -46
- package/esm/network/transports/websocket.js +0 -116
- package/esm/network/transports/websocket.js.map +0 -1
- package/esm/network/transports/websocket.test.d.ts +0 -1
- package/esm/network/transports/websocket.test.js +0 -89
- package/esm/network/transports/websocket.test.js.map +0 -1
- package/esm/storage/providers/idb/driver.d.ts +0 -18
- package/esm/storage/providers/idb/driver.js +0 -134
- package/esm/storage/providers/idb/driver.js.map +0 -1
- package/esm/storage/providers/idb/idb.test.d.ts +0 -1
- package/esm/storage/providers/idb/idb.test.js +0 -27
- package/esm/storage/providers/idb/idb.test.js.map +0 -1
- package/esm/storage/providers/idb/index.d.ts +0 -22
- package/esm/storage/providers/idb/index.js +0 -23
- package/esm/storage/providers/idb/index.js.map +0 -1
- package/esm/storage/providers/idb/repository/auth-keys.d.ts +0 -14
- package/esm/storage/providers/idb/repository/auth-keys.js +0 -66
- package/esm/storage/providers/idb/repository/auth-keys.js.map +0 -1
- package/esm/storage/providers/idb/repository/kv.d.ts +0 -11
- package/esm/storage/providers/idb/repository/kv.js +0 -30
- package/esm/storage/providers/idb/repository/kv.js.map +0 -1
- package/esm/storage/providers/idb/repository/peers.d.ts +0 -12
- package/esm/storage/providers/idb/repository/peers.js +0 -34
- package/esm/storage/providers/idb/repository/peers.js.map +0 -1
- package/esm/storage/providers/idb/repository/ref-messages.d.ts +0 -12
- package/esm/storage/providers/idb/repository/ref-messages.js +0 -53
- package/esm/storage/providers/idb/repository/ref-messages.js.map +0 -1
- package/esm/storage/providers/idb/utils.d.ts +0 -3
- package/esm/storage/providers/idb/utils.js +0 -21
- package/esm/storage/providers/idb/utils.js.map +0 -1
- package/esm/storage/providers/memory/driver.js.map +0 -1
- package/esm/storage/providers/memory/index.js.map +0 -1
- package/esm/storage/providers/memory/memory.test.d.ts +0 -1
- package/esm/storage/providers/memory/memory.test.js +0 -11
- package/esm/storage/providers/memory/memory.test.js.map +0 -1
- package/esm/storage/providers/memory/repository/auth-keys.js.map +0 -1
- package/esm/storage/providers/memory/repository/kv.js.map +0 -1
- package/esm/storage/providers/memory/repository/peers.js.map +0 -1
- package/esm/storage/providers/memory/repository/ref-messages.js.map +0 -1
- package/esm/storage/service/auth-keys.test.d.ts +0 -1
- package/esm/storage/service/auth-keys.test.js +0 -20
- package/esm/storage/service/auth-keys.test.js.map +0 -1
- package/esm/storage/service/updates.test.d.ts +0 -1
- package/esm/storage/service/updates.test.js +0 -58
- package/esm/storage/service/updates.test.js.map +0 -1
- package/esm/storage/service/utils.test-utils.d.ts +0 -2
- package/esm/storage/service/utils.test-utils.js +0 -15
- package/esm/storage/service/utils.test-utils.js.map +0 -1
- package/esm/utils/async-lock.test.d.ts +0 -1
- package/esm/utils/async-lock.test.js +0 -23
- package/esm/utils/async-lock.test.js.map +0 -1
- package/esm/utils/bigint-utils.test.d.ts +0 -1
- package/esm/utils/bigint-utils.test.js +0 -148
- package/esm/utils/bigint-utils.test.js.map +0 -1
- package/esm/utils/buffer-utils.test.d.ts +0 -1
- package/esm/utils/buffer-utils.test.js +0 -67
- package/esm/utils/buffer-utils.test.js.map +0 -1
- package/esm/utils/condition-variable.test.d.ts +0 -1
- package/esm/utils/condition-variable.test.js +0 -25
- package/esm/utils/condition-variable.test.js.map +0 -1
- package/esm/utils/controllable-promise.test.d.ts +0 -1
- package/esm/utils/controllable-promise.test.js +0 -15
- package/esm/utils/controllable-promise.test.js.map +0 -1
- package/esm/utils/crypto/factorization.test.d.ts +0 -1
- package/esm/utils/crypto/factorization.test.js +0 -17
- package/esm/utils/crypto/factorization.test.js.map +0 -1
- package/esm/utils/crypto/keys.test.d.ts +0 -1
- package/esm/utils/crypto/keys.test.js +0 -38
- package/esm/utils/crypto/keys.test.js.map +0 -1
- package/esm/utils/crypto/miller-rabin.test.d.ts +0 -1
- package/esm/utils/crypto/miller-rabin.test.js +0 -58
- package/esm/utils/crypto/miller-rabin.test.js.map +0 -1
- package/esm/utils/crypto/mtproto.test.d.ts +0 -1
- package/esm/utils/crypto/mtproto.test.js +0 -48
- package/esm/utils/crypto/mtproto.test.js.map +0 -1
- package/esm/utils/crypto/node.d.ts +0 -21
- package/esm/utils/crypto/node.js +0 -69
- package/esm/utils/crypto/node.js.map +0 -1
- package/esm/utils/crypto/node.test.d.ts +0 -1
- package/esm/utils/crypto/node.test.js +0 -12
- package/esm/utils/crypto/node.test.js.map +0 -1
- package/esm/utils/crypto/password.test.d.ts +0 -1
- package/esm/utils/crypto/password.test.js +0 -90
- package/esm/utils/crypto/password.test.js.map +0 -1
- package/esm/utils/crypto/utils.test.d.ts +0 -1
- package/esm/utils/crypto/utils.test.js +0 -47
- package/esm/utils/crypto/utils.test.js.map +0 -1
- package/esm/utils/crypto/wasm.d.ts +0 -22
- package/esm/utils/crypto/wasm.js +0 -37
- package/esm/utils/crypto/wasm.js.map +0 -1
- package/esm/utils/crypto/web.d.ts +0 -11
- package/esm/utils/crypto/web.js +0 -36
- package/esm/utils/crypto/web.js.map +0 -1
- package/esm/utils/crypto/web.test.d.ts +0 -1
- package/esm/utils/crypto/web.test.js +0 -15
- package/esm/utils/crypto/web.test.js.map +0 -1
- package/esm/utils/deque.test.d.ts +0 -1
- package/esm/utils/deque.test.js +0 -126
- package/esm/utils/deque.test.js.map +0 -1
- package/esm/utils/function-utils.test.d.ts +0 -1
- package/esm/utils/function-utils.test.js +0 -21
- package/esm/utils/function-utils.test.js.map +0 -1
- package/esm/utils/linked-list.test.d.ts +0 -1
- package/esm/utils/linked-list.test.js +0 -34
- package/esm/utils/linked-list.test.js.map +0 -1
- package/esm/utils/links/bots.test.d.ts +0 -1
- package/esm/utils/links/bots.test.js +0 -150
- package/esm/utils/links/bots.test.js.map +0 -1
- package/esm/utils/links/chat.test.d.ts +0 -1
- package/esm/utils/links/chat.test.js +0 -82
- package/esm/utils/links/chat.test.js.map +0 -1
- package/esm/utils/links/misc.test.d.ts +0 -1
- package/esm/utils/links/misc.test.js +0 -151
- package/esm/utils/links/misc.test.js.map +0 -1
- package/esm/utils/links/proxy.test.d.ts +0 -1
- package/esm/utils/links/proxy.test.js +0 -72
- package/esm/utils/links/proxy.test.js.map +0 -1
- package/esm/utils/links/user.test.d.ts +0 -1
- package/esm/utils/links/user.test.js +0 -61
- package/esm/utils/links/user.test.js.map +0 -1
- package/esm/utils/logger.test.d.ts +0 -1
- package/esm/utils/logger.test.js +0 -134
- package/esm/utils/logger.test.js.map +0 -1
- package/esm/utils/long-utils.test.d.ts +0 -1
- package/esm/utils/long-utils.test.js +0 -153
- package/esm/utils/long-utils.test.js.map +0 -1
- package/esm/utils/lru-map.test.d.ts +0 -1
- package/esm/utils/lru-map.test.js +0 -94
- package/esm/utils/lru-map.test.js.map +0 -1
- package/esm/utils/lru-set.test.d.ts +0 -1
- package/esm/utils/lru-set.test.js +0 -72
- package/esm/utils/lru-set.test.js.map +0 -1
- package/esm/utils/peer-utils.test.d.ts +0 -1
- package/esm/utils/peer-utils.test.js +0 -105
- package/esm/utils/peer-utils.test.js.map +0 -1
- package/esm/utils/platform/crypto.d.ts +0 -1
- package/esm/utils/platform/crypto.js +0 -4
- package/esm/utils/platform/crypto.js.map +0 -1
- package/esm/utils/platform/crypto.web.d.ts +0 -1
- package/esm/utils/platform/crypto.web.js +0 -10
- package/esm/utils/platform/crypto.web.js.map +0 -1
- package/esm/utils/platform/error-reporting.js.map +0 -1
- package/esm/utils/platform/exit-hook.d.ts +0 -1
- package/esm/utils/platform/exit-hook.js +0 -41
- package/esm/utils/platform/exit-hook.js.map +0 -1
- package/esm/utils/platform/exit-hook.web.d.ts +0 -1
- package/esm/utils/platform/exit-hook.web.js +0 -17
- package/esm/utils/platform/exit-hook.web.js.map +0 -1
- package/esm/utils/platform/logging.d.ts +0 -1
- package/esm/utils/platform/logging.js +0 -31
- package/esm/utils/platform/logging.js.map +0 -1
- package/esm/utils/platform/logging.web.d.ts +0 -1
- package/esm/utils/platform/logging.web.js +0 -31
- package/esm/utils/platform/logging.web.js.map +0 -1
- package/esm/utils/platform/transport.d.ts +0 -1
- package/esm/utils/platform/transport.js +0 -4
- package/esm/utils/platform/transport.js.map +0 -1
- package/esm/utils/platform/transport.web.d.ts +0 -1
- package/esm/utils/platform/transport.web.js +0 -12
- package/esm/utils/platform/transport.web.js.map +0 -1
- package/esm/utils/sorted-array.test.d.ts +0 -1
- package/esm/utils/sorted-array.test.js +0 -64
- package/esm/utils/sorted-array.test.js.map +0 -1
- package/esm/utils/tl-json.test.d.ts +0 -1
- package/esm/utils/tl-json.test.js +0 -81
- package/esm/utils/tl-json.test.js.map +0 -1
- package/esm/utils/type-assertions.test.d.ts +0 -1
- package/esm/utils/type-assertions.test.js +0 -65
- package/esm/utils/type-assertions.test.js.map +0 -1
- /package/cjs/highlevel/{base.test.d.ts → methods/files/download-node-stream.d.ts} +0 -0
- /package/cjs/storage/{providers/memory → memory}/driver.js +0 -0
- /package/cjs/storage/{providers/memory → memory}/index.js +0 -0
- /package/cjs/storage/{providers/memory → memory}/repository/auth-keys.js +0 -0
- /package/cjs/storage/{providers/memory → memory}/repository/kv.js +0 -0
- /package/cjs/storage/{providers/memory → memory}/repository/peers.js +0 -0
- /package/cjs/storage/{providers/memory → memory}/repository/ref-messages.js +0 -0
- /package/cjs/utils/{platform/error-reporting.js → error-reporting.js} +0 -0
- /package/{cjs/highlevel/methods/files/_platform.d.ts → esm/highlevel/methods/files/download-node-stream.d.ts} +0 -0
- /package/esm/storage/{providers/memory → memory}/driver.js +0 -0
- /package/esm/storage/{providers/memory → memory}/index.js +0 -0
- /package/esm/storage/{providers/memory → memory}/repository/auth-keys.js +0 -0
- /package/esm/storage/{providers/memory → memory}/repository/kv.js +0 -0
- /package/esm/storage/{providers/memory → memory}/repository/peers.js +0 -0
- /package/esm/storage/{providers/memory → memory}/repository/ref-messages.js +0 -0
- /package/esm/utils/{platform/error-reporting.js → error-reporting.js} +0 -0
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import Long from 'long';
|
|
2
2
|
import { tdFileId as td, toFileId, toUniqueFileId } from '@mtcute/file-id';
|
|
3
|
+
import { getPlatform } from '../../../platform.js';
|
|
3
4
|
import { MtArgumentError, MtTypeAssertionError } from '../../../types/errors.js';
|
|
4
5
|
import { assertTypeIs } from '../../../utils/type-assertions.js';
|
|
5
6
|
import { inflateSvgPath, strippedPhotoToJpg, svgPathToFile } from '../../utils/file-utils.js';
|
|
@@ -9,7 +10,7 @@ import { FileLocation } from '../files/index.js';
|
|
|
9
10
|
/**
|
|
10
11
|
* One size of some thumbnail
|
|
11
12
|
*/
|
|
12
|
-
|
|
13
|
+
class Thumbnail extends FileLocation {
|
|
13
14
|
constructor(media, sz) {
|
|
14
15
|
switch (sz._) {
|
|
15
16
|
case 'photoSizeEmpty':
|
|
@@ -131,7 +132,7 @@ export class Thumbnail extends FileLocation {
|
|
|
131
132
|
throw new MtArgumentError(`Cannot generate a file ID for "${this.type}"`);
|
|
132
133
|
}
|
|
133
134
|
if (this._media._ === 'stickerSet') {
|
|
134
|
-
return toFileId({
|
|
135
|
+
return toFileId(getPlatform(), {
|
|
135
136
|
type: td.FileType.Thumbnail,
|
|
136
137
|
dcId: this.dcId,
|
|
137
138
|
fileReference: null,
|
|
@@ -148,7 +149,7 @@ export class Thumbnail extends FileLocation {
|
|
|
148
149
|
},
|
|
149
150
|
});
|
|
150
151
|
}
|
|
151
|
-
return toFileId({
|
|
152
|
+
return toFileId(getPlatform(), {
|
|
152
153
|
type: this._media._ === 'photo' ? td.FileType.Photo : td.FileType.Thumbnail,
|
|
153
154
|
dcId: this.dcId,
|
|
154
155
|
fileReference: this._media.fileReference,
|
|
@@ -174,7 +175,7 @@ export class Thumbnail extends FileLocation {
|
|
|
174
175
|
throw new MtArgumentError(`Cannot generate a unique file ID for "${this.type}"`);
|
|
175
176
|
}
|
|
176
177
|
if (this._media._ === 'stickerSet') {
|
|
177
|
-
return toUniqueFileId(td.FileType.Thumbnail, {
|
|
178
|
+
return toUniqueFileId(getPlatform(), td.FileType.Thumbnail, {
|
|
178
179
|
_: 'photo',
|
|
179
180
|
id: Long.ZERO,
|
|
180
181
|
source: {
|
|
@@ -185,7 +186,7 @@ export class Thumbnail extends FileLocation {
|
|
|
185
186
|
},
|
|
186
187
|
});
|
|
187
188
|
}
|
|
188
|
-
return toUniqueFileId(this._media._ === 'photo' ? td.FileType.Photo : td.FileType.Thumbnail, {
|
|
189
|
+
return toUniqueFileId(getPlatform(), this._media._ === 'photo' ? td.FileType.Photo : td.FileType.Thumbnail, {
|
|
189
190
|
_: 'photo',
|
|
190
191
|
id: this._media.id,
|
|
191
192
|
source: {
|
|
@@ -218,6 +219,7 @@ Thumbnail.THUMB_VIDEO_FULLSCREEN = 'f';
|
|
|
218
219
|
Thumbnail.THUMB_EMOJI_MARKUP = 'pfp_em';
|
|
219
220
|
/** (non-standard) Sticker-based markup for profile photo */
|
|
220
221
|
Thumbnail.THUMB_STICKER_MARKUP = 'pfp_st';
|
|
221
|
-
memoizeGetters(Thumbnail,
|
|
222
|
-
makeInspectable(Thumbnail,
|
|
223
|
-
//# sourceMappingURL=thumbnail.js.map
|
|
222
|
+
const Thumbnail$1 = /*#__PURE__*/memoizeGetters(Thumbnail, ['fileId', 'uniqueFileId']);
|
|
223
|
+
const Thumbnail$2 = /*#__PURE__*/makeInspectable(Thumbnail$1, ['fileSize', 'dcId', 'width', 'height'], ['path']);
|
|
224
|
+
//# sourceMappingURL=thumbnail.js.map
|
|
225
|
+
export { Thumbnail$2 as Thumbnail }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"thumbnail.js","sourceRoot":"","sources":["../../../../../src/highlevel/types/media/thumbnail.ts"],"names":[],"mappings":"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","sourcesContent":["import Long from 'long'\n\nimport { tdFileId as td, toFileId, toUniqueFileId } from '@mtcute/file-id'\nimport { tl } from '@mtcute/tl'\n\nimport { MtArgumentError, MtTypeAssertionError } from '../../../types/errors.js'\nimport { assertTypeIs } from '../../../utils/type-assertions.js'\nimport { inflateSvgPath, strippedPhotoToJpg, svgPathToFile } from '../../utils/file-utils.js'\nimport { makeInspectable } from '../../utils/index.js'\nimport { memoizeGetters } from '../../utils/memoize.js'\nimport { FileLocation } from '../files/index.js'\n\n/**\n * One size of some thumbnail\n */\nexport class Thumbnail extends FileLocation {\n // see: https://core.telegram.org/api/files#image-thumbnail-types\n static readonly THUMB_100x100_BOX = 's'\n static readonly THUMB_320x320_BOX = 'm'\n static readonly THUMB_800x800_BOX = 'x'\n static readonly THUMB_1280x1280_BOX = 'y'\n static readonly THUMB_2560x2560_BOX = 'w'\n\n static readonly THUMB_160x160_CROP = 'a'\n static readonly THUMB_320x320_CROP = 'b'\n static readonly THUMB_640x640_CROP = 'c'\n static readonly THUMB_1280x1280_CROP = 'd'\n\n static readonly THUMB_STRIP = 'i'\n static readonly THUMB_OUTLINE = 'j'\n\n /** Animated profile pictures preview */\n static readonly THUMB_VIDEO_PROFILE = 'u'\n /** Trimmed and downscaled video previews */\n static readonly THUMB_VIDEO_PREVIEW = 'v'\n /** Fullscreen animation for Premium stickers */\n static readonly THUMB_VIDEO_FULLSCREEN = 'f'\n\n /** (non-standard) Emoji-based markup for profile photo */\n static readonly THUMB_EMOJI_MARKUP = 'pfp_em'\n /** (non-standard) Sticker-based markup for profile photo */\n static readonly THUMB_STICKER_MARKUP = 'pfp_st'\n\n readonly raw: tl.TypePhotoSize | tl.TypeVideoSize\n\n /**\n * Thumbnail width\n * (`NaN` for {@link THUMB_OUTLINE} and {@link THUMB_STRIP})\n */\n readonly width: number\n\n /**\n * Thumbnail height\n * (`NaN` for {@link THUMB_OUTLINE} and {@link THUMB_STRIP})\n */\n readonly height: number\n\n private _path?: string\n private _media: tl.RawPhoto | tl.RawDocument | tl.RawStickerSet | tl.RawMessageExtendedMediaPreview\n\n constructor(\n media: tl.RawPhoto | tl.RawDocument | tl.RawStickerSet | tl.RawMessageExtendedMediaPreview,\n sz: tl.TypePhotoSize | tl.TypeVideoSize,\n ) {\n switch (sz._) {\n case 'photoSizeEmpty':\n case 'photoCachedSize':\n throw new MtTypeAssertionError('sz', 'not (photoSizeEmpty | photoCachedSize)', sz._)\n }\n\n let location: tl.TypeInputFileLocation | Uint8Array | (() => tl.TypeInputFileLocation | Uint8Array)\n let size\n let width\n let height: number\n\n switch (sz._) {\n case 'photoStrippedSize':\n location = strippedPhotoToJpg(sz.bytes)\n width = height = NaN\n size = location.length\n break\n case 'photoPathSize': // lazily\n location = () => svgPathToFile(this._path!)\n width = height = NaN\n size = Infinity // this doesn't really matter\n break\n case 'videoSizeEmojiMarkup':\n case 'videoSizeStickerMarkup':\n location = () => {\n throw new MtArgumentError('Cannot download thumbnail with emoji/sticker markup, try other size')\n }\n width = height = NaN\n size = Infinity\n break\n default:\n if (media._ === 'stickerSet') {\n location = {\n _: 'inputStickerSetThumb',\n stickerset: {\n _: 'inputStickerSetID',\n id: media.id,\n accessHash: media.accessHash,\n },\n thumbVersion: media.thumbVersion!,\n }\n } else if (media._ === 'messageExtendedMediaPreview') {\n // according to tdlib and tdesktop sources, sz can only be photoStrippedSize\n throw new MtTypeAssertionError('messageExtendedMediaPreview#thumb', 'photoStrippedSize', sz._)\n } else {\n location = {\n _: media._ === 'photo' ? 'inputPhotoFileLocation' : 'inputDocumentFileLocation',\n id: media.id,\n fileReference: media.fileReference,\n accessHash: media.accessHash,\n thumbSize: sz.type,\n }\n }\n width = sz.w\n height = sz.h\n size = sz._ === 'photoSizeProgressive' ? Math.max(...sz.sizes) : sz.size\n break\n }\n\n let dcId: number | undefined\n\n if (media._ === 'stickerSet') {\n dcId = media.thumbDcId\n } else if (media._ === 'messageExtendedMediaPreview') {\n dcId = 0\n } else {\n dcId = media.dcId\n }\n\n super(location, size, dcId)\n this.raw = sz\n this.width = width\n this.height = height\n this._media = media\n\n if (sz._ === 'photoPathSize') {\n this._path = inflateSvgPath(sz.bytes)\n }\n }\n\n get isVideo(): boolean {\n return this.raw._ === 'videoSize'\n }\n\n /**\n * Thumbnail type\n */\n get type(): string {\n if (this.raw._ === 'videoSizeEmojiMarkup') {\n return Thumbnail.THUMB_EMOJI_MARKUP\n }\n if (this.raw._ === 'videoSizeStickerMarkup') {\n return Thumbnail.THUMB_STICKER_MARKUP\n }\n\n return this.raw.type\n }\n\n /**\n * If {@link raw} is `tl.RawPhotoPathSize` (i.e. `raw.type === Thumbnail.THUMB_OUTLINE`),\n * this property will return raw SVG path of the preview.\n *\n * When downloading path thumbnails, a valid SVG file is returned.\n *\n * See also: https://core.telegram.org/api/files#vector-thumbnails\n *\n * @throws MtTypeAssertionError In case {@link raw} is not `tl.RawPhotoPathSize`\n */\n get path(): string {\n assertTypeIs('Thumbnail#path', this.raw, 'photoPathSize')\n\n return this._path!\n }\n\n /**\n * Get TDLib and Bot API compatible File ID\n * representing this thumbnail.\n *\n * > **Note:** You can't use this file id to send a thumbnail,\n * > only to download it.\n */\n get fileId(): string {\n if (\n (this.raw._ !== 'photoSize' && this.raw._ !== 'photoSizeProgressive' && this.raw._ !== 'videoSize') ||\n this._media._ === 'messageExtendedMediaPreview' // just for type safety\n ) {\n throw new MtArgumentError(`Cannot generate a file ID for \"${this.type}\"`)\n }\n\n if (this._media._ === 'stickerSet') {\n return toFileId({\n type: td.FileType.Thumbnail,\n dcId: this.dcId!,\n fileReference: null,\n location: {\n _: 'photo',\n id: Long.ZERO,\n accessHash: Long.ZERO,\n source: {\n _: 'stickerSetThumbnailVersion',\n id: this._media.id,\n accessHash: this._media.accessHash,\n version: this._media.thumbVersion!,\n },\n },\n })\n }\n\n return toFileId({\n type: this._media._ === 'photo' ? td.FileType.Photo : td.FileType.Thumbnail,\n dcId: this.dcId!,\n fileReference: this._media.fileReference,\n location: {\n _: 'photo',\n id: this._media.id,\n accessHash: this._media.accessHash,\n source: {\n _: 'thumbnail',\n fileType: this._media._ === 'photo' ? td.FileType.Photo : td.FileType.Thumbnail,\n thumbnailType: this.raw.type === 'u' ? '\\x00' : this.raw.type,\n },\n },\n })\n }\n\n /**\n * Get a unique File ID representing this thumbnail.\n */\n get uniqueFileId(): string {\n if (\n (this.raw._ !== 'photoSize' && this.raw._ !== 'photoSizeProgressive' && this.raw._ !== 'videoSize') ||\n this._media._ === 'messageExtendedMediaPreview' // just for type safety\n ) {\n throw new MtArgumentError(`Cannot generate a unique file ID for \"${this.type}\"`)\n }\n\n if (this._media._ === 'stickerSet') {\n return toUniqueFileId(td.FileType.Thumbnail, {\n _: 'photo',\n id: Long.ZERO,\n source: {\n _: 'stickerSetThumbnailVersion',\n id: this._media.id,\n accessHash: this._media.accessHash,\n version: this._media.thumbVersion!,\n },\n })\n }\n\n return toUniqueFileId(this._media._ === 'photo' ? td.FileType.Photo : td.FileType.Thumbnail, {\n _: 'photo',\n id: this._media.id,\n source: {\n _: 'thumbnail',\n fileType: this._media._ === 'photo' ? td.FileType.Photo : td.FileType.Thumbnail,\n thumbnailType: this.raw.type === 'u' ? '\\x00' : this.raw.type,\n },\n })\n }\n}\n\nmemoizeGetters(Thumbnail, ['fileId', 'uniqueFileId'])\nmakeInspectable(Thumbnail, ['fileSize', 'dcId', 'width', 'height'], ['path'])\n"]}
|
|
1
|
+
{"version":3,"file":"thumbnail.js","sourceRoot":"","sources":["../../../../../src/highlevel/types/media/thumbnail.ts"],"names":[],"mappings":"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","sourcesContent":["import Long from 'long'\n\nimport { tdFileId as td, toFileId, toUniqueFileId } from '@mtcute/file-id'\nimport { tl } from '@mtcute/tl'\n\nimport { getPlatform } from '../../../platform.js'\nimport { MtArgumentError, MtTypeAssertionError } from '../../../types/errors.js'\nimport { assertTypeIs } from '../../../utils/type-assertions.js'\nimport { inflateSvgPath, strippedPhotoToJpg, svgPathToFile } from '../../utils/file-utils.js'\nimport { makeInspectable } from '../../utils/index.js'\nimport { memoizeGetters } from '../../utils/memoize.js'\nimport { FileLocation } from '../files/index.js'\n\n/**\n * One size of some thumbnail\n */\nexport class Thumbnail extends FileLocation {\n // see: https://core.telegram.org/api/files#image-thumbnail-types\n static readonly THUMB_100x100_BOX = 's'\n static readonly THUMB_320x320_BOX = 'm'\n static readonly THUMB_800x800_BOX = 'x'\n static readonly THUMB_1280x1280_BOX = 'y'\n static readonly THUMB_2560x2560_BOX = 'w'\n\n static readonly THUMB_160x160_CROP = 'a'\n static readonly THUMB_320x320_CROP = 'b'\n static readonly THUMB_640x640_CROP = 'c'\n static readonly THUMB_1280x1280_CROP = 'd'\n\n static readonly THUMB_STRIP = 'i'\n static readonly THUMB_OUTLINE = 'j'\n\n /** Animated profile pictures preview */\n static readonly THUMB_VIDEO_PROFILE = 'u'\n /** Trimmed and downscaled video previews */\n static readonly THUMB_VIDEO_PREVIEW = 'v'\n /** Fullscreen animation for Premium stickers */\n static readonly THUMB_VIDEO_FULLSCREEN = 'f'\n\n /** (non-standard) Emoji-based markup for profile photo */\n static readonly THUMB_EMOJI_MARKUP = 'pfp_em'\n /** (non-standard) Sticker-based markup for profile photo */\n static readonly THUMB_STICKER_MARKUP = 'pfp_st'\n\n readonly raw: tl.TypePhotoSize | tl.TypeVideoSize\n\n /**\n * Thumbnail width\n * (`NaN` for {@link THUMB_OUTLINE} and {@link THUMB_STRIP})\n */\n readonly width: number\n\n /**\n * Thumbnail height\n * (`NaN` for {@link THUMB_OUTLINE} and {@link THUMB_STRIP})\n */\n readonly height: number\n\n private _path?: string\n private _media: tl.RawPhoto | tl.RawDocument | tl.RawStickerSet | tl.RawMessageExtendedMediaPreview\n\n constructor(\n media: tl.RawPhoto | tl.RawDocument | tl.RawStickerSet | tl.RawMessageExtendedMediaPreview,\n sz: tl.TypePhotoSize | tl.TypeVideoSize,\n ) {\n switch (sz._) {\n case 'photoSizeEmpty':\n case 'photoCachedSize':\n throw new MtTypeAssertionError('sz', 'not (photoSizeEmpty | photoCachedSize)', sz._)\n }\n\n let location: tl.TypeInputFileLocation | Uint8Array | (() => tl.TypeInputFileLocation | Uint8Array)\n let size\n let width\n let height: number\n\n switch (sz._) {\n case 'photoStrippedSize':\n location = strippedPhotoToJpg(sz.bytes)\n width = height = NaN\n size = location.length\n break\n case 'photoPathSize': // lazily\n location = () => svgPathToFile(this._path!)\n width = height = NaN\n size = Infinity // this doesn't really matter\n break\n case 'videoSizeEmojiMarkup':\n case 'videoSizeStickerMarkup':\n location = () => {\n throw new MtArgumentError('Cannot download thumbnail with emoji/sticker markup, try other size')\n }\n width = height = NaN\n size = Infinity\n break\n default:\n if (media._ === 'stickerSet') {\n location = {\n _: 'inputStickerSetThumb',\n stickerset: {\n _: 'inputStickerSetID',\n id: media.id,\n accessHash: media.accessHash,\n },\n thumbVersion: media.thumbVersion!,\n }\n } else if (media._ === 'messageExtendedMediaPreview') {\n // according to tdlib and tdesktop sources, sz can only be photoStrippedSize\n throw new MtTypeAssertionError('messageExtendedMediaPreview#thumb', 'photoStrippedSize', sz._)\n } else {\n location = {\n _: media._ === 'photo' ? 'inputPhotoFileLocation' : 'inputDocumentFileLocation',\n id: media.id,\n fileReference: media.fileReference,\n accessHash: media.accessHash,\n thumbSize: sz.type,\n }\n }\n width = sz.w\n height = sz.h\n size = sz._ === 'photoSizeProgressive' ? Math.max(...sz.sizes) : sz.size\n break\n }\n\n let dcId: number | undefined\n\n if (media._ === 'stickerSet') {\n dcId = media.thumbDcId\n } else if (media._ === 'messageExtendedMediaPreview') {\n dcId = 0\n } else {\n dcId = media.dcId\n }\n\n super(location, size, dcId)\n this.raw = sz\n this.width = width\n this.height = height\n this._media = media\n\n if (sz._ === 'photoPathSize') {\n this._path = inflateSvgPath(sz.bytes)\n }\n }\n\n get isVideo(): boolean {\n return this.raw._ === 'videoSize'\n }\n\n /**\n * Thumbnail type\n */\n get type(): string {\n if (this.raw._ === 'videoSizeEmojiMarkup') {\n return Thumbnail.THUMB_EMOJI_MARKUP\n }\n if (this.raw._ === 'videoSizeStickerMarkup') {\n return Thumbnail.THUMB_STICKER_MARKUP\n }\n\n return this.raw.type\n }\n\n /**\n * If {@link raw} is `tl.RawPhotoPathSize` (i.e. `raw.type === Thumbnail.THUMB_OUTLINE`),\n * this property will return raw SVG path of the preview.\n *\n * When downloading path thumbnails, a valid SVG file is returned.\n *\n * See also: https://core.telegram.org/api/files#vector-thumbnails\n *\n * @throws MtTypeAssertionError In case {@link raw} is not `tl.RawPhotoPathSize`\n */\n get path(): string {\n assertTypeIs('Thumbnail#path', this.raw, 'photoPathSize')\n\n return this._path!\n }\n\n /**\n * Get TDLib and Bot API compatible File ID\n * representing this thumbnail.\n *\n * > **Note:** You can't use this file id to send a thumbnail,\n * > only to download it.\n */\n get fileId(): string {\n if (\n (this.raw._ !== 'photoSize' && this.raw._ !== 'photoSizeProgressive' && this.raw._ !== 'videoSize') ||\n this._media._ === 'messageExtendedMediaPreview' // just for type safety\n ) {\n throw new MtArgumentError(`Cannot generate a file ID for \"${this.type}\"`)\n }\n\n if (this._media._ === 'stickerSet') {\n return toFileId(getPlatform(), {\n type: td.FileType.Thumbnail,\n dcId: this.dcId!,\n fileReference: null,\n location: {\n _: 'photo',\n id: Long.ZERO,\n accessHash: Long.ZERO,\n source: {\n _: 'stickerSetThumbnailVersion',\n id: this._media.id,\n accessHash: this._media.accessHash,\n version: this._media.thumbVersion!,\n },\n },\n })\n }\n\n return toFileId(getPlatform(), {\n type: this._media._ === 'photo' ? td.FileType.Photo : td.FileType.Thumbnail,\n dcId: this.dcId!,\n fileReference: this._media.fileReference,\n location: {\n _: 'photo',\n id: this._media.id,\n accessHash: this._media.accessHash,\n source: {\n _: 'thumbnail',\n fileType: this._media._ === 'photo' ? td.FileType.Photo : td.FileType.Thumbnail,\n thumbnailType: this.raw.type === 'u' ? '\\x00' : this.raw.type,\n },\n },\n })\n }\n\n /**\n * Get a unique File ID representing this thumbnail.\n */\n get uniqueFileId(): string {\n if (\n (this.raw._ !== 'photoSize' && this.raw._ !== 'photoSizeProgressive' && this.raw._ !== 'videoSize') ||\n this._media._ === 'messageExtendedMediaPreview' // just for type safety\n ) {\n throw new MtArgumentError(`Cannot generate a unique file ID for \"${this.type}\"`)\n }\n\n if (this._media._ === 'stickerSet') {\n return toUniqueFileId(getPlatform(), td.FileType.Thumbnail, {\n _: 'photo',\n id: Long.ZERO,\n source: {\n _: 'stickerSetThumbnailVersion',\n id: this._media.id,\n accessHash: this._media.accessHash,\n version: this._media.thumbVersion!,\n },\n })\n }\n\n return toUniqueFileId(getPlatform(), this._media._ === 'photo' ? td.FileType.Photo : td.FileType.Thumbnail, {\n _: 'photo',\n id: this._media.id,\n source: {\n _: 'thumbnail',\n fileType: this._media._ === 'photo' ? td.FileType.Photo : td.FileType.Thumbnail,\n thumbnailType: this.raw.type === 'u' ? '\\x00' : this.raw.type,\n },\n })\n }\n}\n\nmemoizeGetters(Thumbnail, ['fileId', 'uniqueFileId'])\nmakeInspectable(Thumbnail, ['fileSize', 'dcId', 'width', 'height'], ['path'])\n"]}
|
|
@@ -2,7 +2,7 @@ import { assertTypeIs } from '../../../utils/type-assertions.js';
|
|
|
2
2
|
import { makeInspectable } from '../../utils/index.js';
|
|
3
3
|
import { memoizeGetters } from '../../utils/memoize.js';
|
|
4
4
|
import { Location } from './location.js';
|
|
5
|
-
|
|
5
|
+
class Venue {
|
|
6
6
|
constructor(raw) {
|
|
7
7
|
this.raw = raw;
|
|
8
8
|
this.type = 'venue';
|
|
@@ -70,6 +70,7 @@ export class Venue {
|
|
|
70
70
|
};
|
|
71
71
|
}
|
|
72
72
|
}
|
|
73
|
-
memoizeGetters(Venue,
|
|
74
|
-
makeInspectable(Venue,
|
|
75
|
-
//# sourceMappingURL=venue.js.map
|
|
73
|
+
const Venue$1 = /*#__PURE__*/memoizeGetters(Venue, ['location', 'source']);
|
|
74
|
+
const Venue$2 = /*#__PURE__*/makeInspectable(Venue$1, undefined, ['inputMedia']);
|
|
75
|
+
//# sourceMappingURL=venue.js.map
|
|
76
|
+
export { Venue$2 as Venue }
|
|
@@ -7,7 +7,7 @@ import { RawDocument } from './document.js';
|
|
|
7
7
|
*
|
|
8
8
|
* **Note:** Legacy GIF animations are also wrapped with this class.
|
|
9
9
|
*/
|
|
10
|
-
|
|
10
|
+
class Video extends RawDocument {
|
|
11
11
|
_fileIdType() {
|
|
12
12
|
if (this.isRound)
|
|
13
13
|
return tdFileId.FileType.VideoNote;
|
|
@@ -70,6 +70,7 @@ export class Video extends RawDocument {
|
|
|
70
70
|
return this.media?.ttlSeconds ?? null;
|
|
71
71
|
}
|
|
72
72
|
}
|
|
73
|
-
memoizeGetters(Video,
|
|
74
|
-
makeInspectable(Video,
|
|
75
|
-
//# sourceMappingURL=video.js.map
|
|
73
|
+
const Video$1 = /*#__PURE__*/memoizeGetters(Video, ['fileName', 'thumbnails', 'fileId', 'uniqueFileId', 'isAnimation']);
|
|
74
|
+
const Video$2 = /*#__PURE__*/makeInspectable(Video$1, ['fileSize', 'dcId'], ['inputMedia', 'inputDocument']);
|
|
75
|
+
//# sourceMappingURL=video.js.map
|
|
76
|
+
export { Video$2 as Video }
|
|
@@ -6,7 +6,7 @@ import { RawDocument } from './document.js';
|
|
|
6
6
|
/**
|
|
7
7
|
* An voice note.
|
|
8
8
|
*/
|
|
9
|
-
|
|
9
|
+
class Voice extends RawDocument {
|
|
10
10
|
_fileIdType() {
|
|
11
11
|
return tdFileId.FileType.VoiceNote;
|
|
12
12
|
}
|
|
@@ -31,6 +31,7 @@ export class Voice extends RawDocument {
|
|
|
31
31
|
return decodeWaveform(this.attr.waveform);
|
|
32
32
|
}
|
|
33
33
|
}
|
|
34
|
-
memoizeGetters(Voice,
|
|
35
|
-
makeInspectable(Voice,
|
|
36
|
-
//# sourceMappingURL=voice.js.map
|
|
34
|
+
const Voice$1 = /*#__PURE__*/memoizeGetters(Voice, ['fileName', 'thumbnails', 'fileId', 'uniqueFileId', 'waveform']);
|
|
35
|
+
const Voice$2 = /*#__PURE__*/makeInspectable(Voice$1, ['fileSize', 'dcId'], ['inputMedia', 'inputDocument', 'waveform']);
|
|
36
|
+
//# sourceMappingURL=voice.js.map
|
|
37
|
+
export { Voice$2 as Voice }
|
|
@@ -13,7 +13,7 @@ import { Photo } from './photo.js';
|
|
|
13
13
|
* as this is not documented officially, and only consists
|
|
14
14
|
* of my own observations and experiments.
|
|
15
15
|
*/
|
|
16
|
-
|
|
16
|
+
class WebPage {
|
|
17
17
|
constructor(raw) {
|
|
18
18
|
this.raw = raw;
|
|
19
19
|
this.type = 'webpage';
|
|
@@ -188,6 +188,7 @@ export class WebPage {
|
|
|
188
188
|
throw new MtArgumentError('WebPage cannot provide an InputMedia');
|
|
189
189
|
}
|
|
190
190
|
}
|
|
191
|
-
memoizeGetters(WebPage,
|
|
192
|
-
makeInspectable(WebPage,
|
|
193
|
-
//# sourceMappingURL=web-page.js.map
|
|
191
|
+
const WebPage$1 = /*#__PURE__*/memoizeGetters(WebPage, ['photo', 'document']);
|
|
192
|
+
const WebPage$2 = /*#__PURE__*/makeInspectable(WebPage$1, undefined, ['inputMedia']);
|
|
193
|
+
//# sourceMappingURL=web-page.js.map
|
|
194
|
+
export { WebPage$2 as WebPage }
|
|
@@ -13,7 +13,7 @@ import { Message } from './message.js';
|
|
|
13
13
|
* Think of it as something that is listed
|
|
14
14
|
* in Telegram's main window.
|
|
15
15
|
*/
|
|
16
|
-
|
|
16
|
+
class Dialog {
|
|
17
17
|
constructor(raw, _peers, _messages) {
|
|
18
18
|
this.raw = raw;
|
|
19
19
|
this._peers = _peers;
|
|
@@ -238,6 +238,7 @@ export class Dialog {
|
|
|
238
238
|
return this.raw.ttlPeriod ?? null;
|
|
239
239
|
}
|
|
240
240
|
}
|
|
241
|
-
memoizeGetters(Dialog,
|
|
242
|
-
makeInspectable(Dialog);
|
|
243
|
-
//# sourceMappingURL=dialog.js.map
|
|
241
|
+
const Dialog$1 = /*#__PURE__*/memoizeGetters(Dialog, ['chat', 'lastMessage', 'draftMessage']);
|
|
242
|
+
const Dialog$2 = /*#__PURE__*/makeInspectable(Dialog$1, );
|
|
243
|
+
//# sourceMappingURL=dialog.js.map
|
|
244
|
+
export { Dialog$2 as Dialog }
|
|
@@ -4,7 +4,7 @@ import { MessageEntity } from './message-entity.js';
|
|
|
4
4
|
/**
|
|
5
5
|
* A draft message
|
|
6
6
|
*/
|
|
7
|
-
|
|
7
|
+
class DraftMessage {
|
|
8
8
|
constructor(raw) {
|
|
9
9
|
this.raw = raw;
|
|
10
10
|
}
|
|
@@ -47,6 +47,7 @@ export class DraftMessage {
|
|
|
47
47
|
return entities;
|
|
48
48
|
}
|
|
49
49
|
}
|
|
50
|
-
memoizeGetters(DraftMessage,
|
|
51
|
-
makeInspectable(DraftMessage);
|
|
52
|
-
//# sourceMappingURL=draft-message.js.map
|
|
50
|
+
const DraftMessage$1 = /*#__PURE__*/memoizeGetters(DraftMessage, ['entities']);
|
|
51
|
+
const DraftMessage$2 = /*#__PURE__*/makeInspectable(DraftMessage$1, );
|
|
52
|
+
//# sourceMappingURL=draft-message.js.map
|
|
53
|
+
export { DraftMessage$2 as DraftMessage }
|
|
@@ -3,7 +3,7 @@ import { memoizeGetters } from '../../utils/memoize.js';
|
|
|
3
3
|
/**
|
|
4
4
|
* One special entity in a text message (like mention, hashtag, URL, etc.)
|
|
5
5
|
*/
|
|
6
|
-
|
|
6
|
+
class MessageEntity {
|
|
7
7
|
constructor(raw, _text) {
|
|
8
8
|
this.raw = raw;
|
|
9
9
|
this._text = _text;
|
|
@@ -96,6 +96,7 @@ export class MessageEntity {
|
|
|
96
96
|
return this.params.kind === kind;
|
|
97
97
|
}
|
|
98
98
|
}
|
|
99
|
-
memoizeGetters(MessageEntity,
|
|
100
|
-
makeInspectable(MessageEntity);
|
|
101
|
-
//# sourceMappingURL=message-entity.js.map
|
|
99
|
+
const MessageEntity$1 = /*#__PURE__*/memoizeGetters(MessageEntity, ['params']);
|
|
100
|
+
const MessageEntity$2 = /*#__PURE__*/makeInspectable(MessageEntity$1, );
|
|
101
|
+
//# sourceMappingURL=message-entity.js.map
|
|
102
|
+
export { MessageEntity$2 as MessageEntity }
|
|
@@ -6,7 +6,7 @@ import { parsePeer } from '../peers/peer.js';
|
|
|
6
6
|
/**
|
|
7
7
|
* Information about forwarded message origin
|
|
8
8
|
*/
|
|
9
|
-
|
|
9
|
+
class MessageForwardInfo {
|
|
10
10
|
constructor(raw, _peers) {
|
|
11
11
|
this.raw = raw;
|
|
12
12
|
this._peers = _peers;
|
|
@@ -57,6 +57,7 @@ export class MessageForwardInfo {
|
|
|
57
57
|
return this.raw.postAuthor ?? null;
|
|
58
58
|
}
|
|
59
59
|
}
|
|
60
|
-
memoizeGetters(MessageForwardInfo,
|
|
61
|
-
makeInspectable(MessageForwardInfo);
|
|
62
|
-
//# sourceMappingURL=message-forward.js.map
|
|
60
|
+
const MessageForwardInfo$1 = /*#__PURE__*/memoizeGetters(MessageForwardInfo, ['sender', 'fromChat']);
|
|
61
|
+
const MessageForwardInfo$2 = /*#__PURE__*/makeInspectable(MessageForwardInfo$1, );
|
|
62
|
+
//# sourceMappingURL=message-forward.js.map
|
|
63
|
+
export { MessageForwardInfo$2 as MessageForwardInfo }
|
|
@@ -5,7 +5,7 @@ import { ReactionCount } from '../reactions/reaction-count.js';
|
|
|
5
5
|
/**
|
|
6
6
|
* Reactions on a message
|
|
7
7
|
*/
|
|
8
|
-
|
|
8
|
+
class MessageReactions {
|
|
9
9
|
constructor(messageId, chatId, raw, _peers) {
|
|
10
10
|
this.messageId = messageId;
|
|
11
11
|
this.chatId = chatId;
|
|
@@ -34,6 +34,7 @@ export class MessageReactions {
|
|
|
34
34
|
return this.raw.recentReactions?.map((reaction) => new PeerReaction(reaction, this._peers)) ?? [];
|
|
35
35
|
}
|
|
36
36
|
}
|
|
37
|
-
memoizeGetters(MessageReactions,
|
|
38
|
-
makeInspectable(MessageReactions);
|
|
39
|
-
//# sourceMappingURL=message-reactions.js.map
|
|
37
|
+
const MessageReactions$1 = /*#__PURE__*/memoizeGetters(MessageReactions, ['reactions', 'recentReactions']);
|
|
38
|
+
const MessageReactions$2 = /*#__PURE__*/makeInspectable(MessageReactions$1, );
|
|
39
|
+
//# sourceMappingURL=message-reactions.js.map
|
|
40
|
+
export { MessageReactions$2 as MessageReactions }
|
|
@@ -5,7 +5,7 @@ import { parsePeer } from '../peers/peer.js';
|
|
|
5
5
|
/**
|
|
6
6
|
* Information about replies to a message
|
|
7
7
|
*/
|
|
8
|
-
|
|
8
|
+
class MessageRepliesInfo {
|
|
9
9
|
constructor(raw, _peers) {
|
|
10
10
|
this.raw = raw;
|
|
11
11
|
this._peers = _peers;
|
|
@@ -58,6 +58,7 @@ export class MessageRepliesInfo {
|
|
|
58
58
|
return this.raw.recentRepliers?.map((it) => parsePeer(it, this._peers)) ?? [];
|
|
59
59
|
}
|
|
60
60
|
}
|
|
61
|
-
memoizeGetters(MessageRepliesInfo,
|
|
62
|
-
makeInspectable(MessageRepliesInfo);
|
|
63
|
-
//# sourceMappingURL=message-replies.js.map
|
|
61
|
+
const MessageRepliesInfo$1 = /*#__PURE__*/memoizeGetters(MessageRepliesInfo, ['discussion', 'repliers']);
|
|
62
|
+
const MessageRepliesInfo$2 = /*#__PURE__*/makeInspectable(MessageRepliesInfo$1, );
|
|
63
|
+
//# sourceMappingURL=message-replies.js.map
|
|
64
|
+
export { MessageRepliesInfo$2 as MessageRepliesInfo }
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { tl } from '@mtcute/tl';
|
|
2
|
-
import { ReplyMarkup } from '../bots/keyboards.js';
|
|
2
|
+
import { ReplyMarkup } from '../bots/keyboards/index.js';
|
|
3
3
|
import { TextWithEntities } from '../misc/index.js';
|
|
4
4
|
import { Chat } from '../peers/chat.js';
|
|
5
5
|
import { Peer } from '../peers/peer.js';
|
|
@@ -4,7 +4,7 @@ import { getMarkedPeerId, toggleChannelIdMark } from '../../../utils/peer-utils.
|
|
|
4
4
|
import { assertTypeIsNot } from '../../../utils/type-assertions.js';
|
|
5
5
|
import { makeInspectable } from '../../utils/index.js';
|
|
6
6
|
import { memoizeGetters } from '../../utils/memoize.js';
|
|
7
|
-
import { BotKeyboard } from '../bots/keyboards.js';
|
|
7
|
+
import { BotKeyboard } from '../bots/keyboards/index.js';
|
|
8
8
|
import { Chat } from '../peers/chat.js';
|
|
9
9
|
import { parsePeer } from '../peers/peer.js';
|
|
10
10
|
import { User } from '../peers/user.js';
|
|
@@ -18,7 +18,7 @@ import { RepliedMessageInfo } from './replied-message.js';
|
|
|
18
18
|
/**
|
|
19
19
|
* A Telegram message.
|
|
20
20
|
*/
|
|
21
|
-
|
|
21
|
+
class Message {
|
|
22
22
|
constructor(raw, _peers,
|
|
23
23
|
/**
|
|
24
24
|
* Whether the message is scheduled.
|
|
@@ -319,7 +319,7 @@ export class Message {
|
|
|
319
319
|
throw new MtArgumentError(`Cannot generate message link for ${this.chat.chatType}`);
|
|
320
320
|
}
|
|
321
321
|
}
|
|
322
|
-
memoizeGetters(Message,
|
|
322
|
+
const Message$1 = /*#__PURE__*/memoizeGetters(Message, [
|
|
323
323
|
'sender',
|
|
324
324
|
'chat',
|
|
325
325
|
'forward',
|
|
@@ -331,5 +331,6 @@ memoizeGetters(Message, [
|
|
|
331
331
|
'markup',
|
|
332
332
|
'reactions',
|
|
333
333
|
]);
|
|
334
|
-
makeInspectable(Message,
|
|
335
|
-
//# sourceMappingURL=message.js.map
|
|
334
|
+
const Message$2 = /*#__PURE__*/makeInspectable(Message$1, ['isScheduled'], ['link']);
|
|
335
|
+
//# sourceMappingURL=message.js.map
|
|
336
|
+
export { Message$2 as Message }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"message.js","sourceRoot":"","sources":["../../../../../src/highlevel/types/messages/message.ts"],"names":[],"mappings":"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","sourcesContent":["import { tl } from '@mtcute/tl'\n\nimport { MtArgumentError } from '../../../types/errors.js'\nimport { assertNever } from '../../../types/utils.js'\nimport { getMarkedPeerId, toggleChannelIdMark } from '../../../utils/peer-utils.js'\nimport { assertTypeIsNot } from '../../../utils/type-assertions.js'\nimport { makeInspectable } from '../../utils/index.js'\nimport { memoizeGetters } from '../../utils/memoize.js'\nimport { BotKeyboard, ReplyMarkup } from '../bots/keyboards.js'\nimport { TextWithEntities } from '../misc/index.js'\nimport { Chat } from '../peers/chat.js'\nimport { parsePeer, Peer } from '../peers/peer.js'\nimport { PeersIndex } from '../peers/peers-index.js'\nimport { User } from '../peers/user.js'\nimport { _messageActionFromTl, MessageAction } from './message-action.js'\nimport { MessageEntity } from './message-entity.js'\nimport { MessageForwardInfo } from './message-forward.js'\nimport { _messageMediaFromTl, MessageMedia } from './message-media.js'\nimport { MessageReactions } from './message-reactions.js'\nimport { MessageRepliesInfo } from './message-replies.js'\nimport { RepliedMessageInfo } from './replied-message.js'\n\n/**\n * A Telegram message.\n */\nexport class Message {\n /**\n * Raw TL object.\n */\n readonly raw: tl.RawMessage | tl.RawMessageService\n\n constructor(\n raw: tl.TypeMessage,\n readonly _peers: PeersIndex,\n /**\n * Whether the message is scheduled.\n * If it is, then its {@link date} is set to future.\n */\n readonly isScheduled = false,\n ) {\n assertTypeIsNot('Message#ctor', raw, 'messageEmpty')\n\n this.raw = raw\n }\n\n /** Unique message identifier inside this chat */\n get id(): number {\n return this.raw.id\n }\n\n /**\n * For channel posts, number of views\n *\n * `null` for service messages and non-post messages.\n */\n get views(): number | null {\n return this.raw._ === 'message' ? this.raw.views ?? null : null\n }\n\n /**\n * Whether the message is incoming or outgoing:\n * - Messages received from other chats are incoming (`outgoing = false`)\n * - Messages sent by you to other chats are outgoing (`outgoing = true`)\n * - Messages to yourself (i.e. *Saved Messages*) are incoming (`outgoing = false`)\n */\n get isOutgoing(): boolean {\n return this.raw.out!\n }\n\n /**\n * Whether this message is a service message\n */\n get isService(): boolean {\n return this.raw._ === 'messageService'\n }\n\n /** Whether this message has content protection (i.e. disabled forwards) */\n get isContentProtected(): boolean {\n return this.raw._ === 'message' && this.raw.noforwards!\n }\n\n /**\n * Multiple media messages with the same grouped ID\n * indicate an album or media group\n *\n * `null` for service messages and non-grouped messages\n */\n get groupedId(): tl.Long | null {\n return this.raw._ === 'message' ? this.raw.groupedId ?? null : null\n }\n\n /**\n * Same as {@link groupedId}, but is globally unique across chats.\n */\n get groupedIdUnique(): string | null {\n if (!(this.raw._ === 'message' && this.raw.groupedId !== undefined)) return null\n\n return `${this.raw.groupedId.low}|${this.raw.groupedId.high}|${getMarkedPeerId(this.raw.peerId)}`\n }\n\n /**\n * Message sender.\n *\n * Usually is a {@link User}, but can be a {@link Chat}\n * in case the message was sent by an anonymous admin, anonymous premium user,\n * or if the message is a forwarded channel post.\n *\n * If the message was sent by an anonymous admin,\n * sender will equal to {@link chat}.\n *\n * If the message is a forwarded channel post,\n * sender is the channel itself.\n */\n get sender(): Peer {\n const from = this.raw.fromId\n\n if (!from) {\n if (this.raw.peerId._ === 'peerUser') {\n return new User(this._peers.user(this.raw.peerId.userId))\n }\n\n // anon admin, return the chat\n return this.chat\n }\n\n return parsePeer(from, this._peers)\n }\n\n /**\n * Conversation the message belongs to\n */\n get chat(): Chat {\n return Chat._parseFromMessage(this.raw, this._peers)\n }\n\n /**\n * Date the message was sent\n */\n get date(): Date {\n return new Date(this.raw.date * 1000)\n }\n\n /**\n * If this message is a forward, contains info about it.\n */\n get forward(): MessageForwardInfo | null {\n if (this.raw._ !== 'message' || !this.raw.fwdFrom) {\n return null\n }\n\n return new MessageForwardInfo(this.raw.fwdFrom, this._peers)\n }\n\n /**\n * Whether the message is a channel post that was\n * automatically forwarded to the connected discussion group\n */\n get isAutomaticForward(): boolean {\n if (this.raw._ === 'messageService' || !this.raw.fwdFrom) return false\n\n const fwd = this.raw.fwdFrom\n\n return Boolean(\n this.chat.chatType === 'supergroup' &&\n fwd.savedFromMsgId &&\n fwd.savedFromPeer?._ === 'peerChannel' &&\n getMarkedPeerId(fwd.savedFromPeer) !== getMarkedPeerId(this.raw.peerId),\n )\n }\n\n /**\n * Information about comments (for channels) or replies (for groups)\n */\n get replies(): MessageRepliesInfo | null {\n if (this.raw._ !== 'message' || !this.raw.replies) return null\n\n return new MessageRepliesInfo(this.raw.replies, this._peers)\n }\n\n /**\n * For replies, information about the that is being replied to.\n *\n * Mutually exclusive with {@link replyToStory}\n */\n get replyToMessage(): RepliedMessageInfo | null {\n if (this.raw.replyTo?._ !== 'messageReplyHeader') return null\n\n return new RepliedMessageInfo(this.raw.replyTo, this._peers)\n }\n\n /**\n * For replies, information about the story that is being replied to\n *\n * Mutually exclusive with {@link replyToMessage}\n */\n get replyToStory(): tl.RawMessageReplyStoryHeader | null {\n if (this.raw.replyTo?._ !== 'messageReplyStoryHeader') return null\n\n return this.raw.replyTo\n }\n\n /** Whether this message is in a forum topic */\n get isTopicMessage(): boolean {\n if (this.raw.replyTo?._ !== 'messageReplyHeader') return false\n\n return this.raw.replyTo.forumTopic!\n }\n\n /**\n * Whether this message contains mention of the current user\n */\n get isMention(): boolean {\n return this.raw.mentioned!\n }\n\n /**\n * If this message is generated from an inline query,\n * information about the bot which generated it\n */\n get viaBot(): User | null {\n if (this.raw._ === 'messageService' || !this.raw.viaBotId) {\n return null\n }\n\n return new User(this._peers.user(this.raw.viaBotId))\n }\n\n /**\n * Message text or media caption.\n *\n * Empty string for service messages\n * (you should handle i18n yourself)\n */\n get text(): string {\n return this.raw._ === 'messageService' ? '' : this.raw.message\n }\n\n /**\n * Message text/caption entities (may be empty)\n */\n get entities(): ReadonlyArray<MessageEntity> {\n const entities: MessageEntity[] = []\n\n if (this.raw._ === 'message' && this.raw.entities?.length) {\n for (const ent of this.raw.entities) {\n entities.push(new MessageEntity(ent, this.raw.message))\n }\n }\n\n return entities\n }\n\n get textWithEntities(): TextWithEntities {\n if (this.raw._ === 'messageService') return { text: '', entities: [] }\n\n return {\n text: this.raw.message,\n entities: this.raw.entities,\n }\n }\n\n /**\n * Message action. `null` for non-service messages\n * or for unsupported events.\n *\n * For unsupported events, use `.raw.action` directly.\n */\n get action(): MessageAction | null {\n if (this.raw._ === 'message') {\n return null\n }\n\n return _messageActionFromTl.call(this, this.raw.action)\n }\n\n /**\n * Message media. `null` for text-only and service messages\n * and for unsupported media types.\n *\n * For unsupported media types, use `.raw.media` directly.\n */\n get media(): MessageMedia {\n if (this.raw._ === 'messageService' || !this.raw.media || this.raw.media._ === 'messageMediaEmpty') {\n return null\n }\n\n return _messageMediaFromTl(this._peers, this.raw.media)\n }\n\n /**\n * Whether this is a premium media\n * (e.g. >2gb file or fullscreen sticker)\n * that was forwarded without author by a non-premium user\n */\n get isForwardedPremiumMedia(): boolean {\n return this.raw._ === 'message' && this.raw.media?._ === 'messageMediaDocument' && this.raw.media.nopremium!\n }\n\n /**\n * TTL period of the message, in seconds.\n */\n get ttlPeriod(): number | null {\n return this.raw.ttlPeriod ?? null\n }\n\n /**\n * Reply markup provided with this message, if any.\n */\n get markup(): ReplyMarkup | null {\n if (this.raw._ === 'messageService' || !this.raw.replyMarkup) {\n return null\n }\n\n const rm = this.raw.replyMarkup\n\n switch (rm._) {\n case 'replyKeyboardHide':\n return {\n type: 'reply_hide',\n selective: rm.selective,\n }\n case 'replyKeyboardForceReply':\n return {\n type: 'force_reply',\n singleUse: rm.singleUse,\n selective: rm.selective,\n }\n case 'replyKeyboardMarkup':\n return {\n type: 'reply',\n resize: rm.resize,\n singleUse: rm.singleUse,\n selective: rm.selective,\n buttons: BotKeyboard._rowsTo2d(rm.rows),\n }\n case 'replyInlineMarkup':\n return {\n type: 'inline',\n buttons: BotKeyboard._rowsTo2d(rm.rows),\n }\n default:\n assertNever(rm)\n }\n }\n\n /**\n * Whether this message can be forwarded\n *\n * `false` for service mesasges and private restricted chats/chanenls\n */\n get canBeForwarded(): boolean {\n return this.raw._ === 'message' && !this.raw.noforwards\n }\n\n get reactions(): MessageReactions | null {\n if (this.raw._ === 'messageService' || !this.raw.reactions) {\n return null\n }\n\n return new MessageReactions(this.raw.id, getMarkedPeerId(this.raw.peerId), this.raw.reactions, this._peers)\n }\n\n /**\n * Generated permalink to this message, only for groups and channels\n *\n * @throws MtArgumentError In case the chat does not support message links\n */\n get link(): string {\n if (this.chat.chatType === 'supergroup' || this.chat.chatType === 'channel') {\n if (this.chat.username) {\n return `https://t.me/${this.chat.username}/${this.id}`\n }\n\n return `https://t.me/c/${toggleChannelIdMark(this.chat.id)}/${this.id}`\n }\n\n throw new MtArgumentError(`Cannot generate message link for ${this.chat.chatType}`)\n }\n}\n\nmemoizeGetters(Message, [\n 'sender',\n 'chat',\n 'forward',\n 'replies',\n 'viaBot',\n 'entities',\n 'action',\n 'media',\n 'markup',\n 'reactions',\n])\nmakeInspectable(Message, ['isScheduled'], ['link'])\n"]}
|
|
1
|
+
{"version":3,"file":"message.js","sourceRoot":"","sources":["../../../../../src/highlevel/types/messages/message.ts"],"names":[],"mappings":"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","sourcesContent":["import { tl } from '@mtcute/tl'\n\nimport { MtArgumentError } from '../../../types/errors.js'\nimport { assertNever } from '../../../types/utils.js'\nimport { getMarkedPeerId, toggleChannelIdMark } from '../../../utils/peer-utils.js'\nimport { assertTypeIsNot } from '../../../utils/type-assertions.js'\nimport { makeInspectable } from '../../utils/index.js'\nimport { memoizeGetters } from '../../utils/memoize.js'\nimport { BotKeyboard, ReplyMarkup } from '../bots/keyboards/index.js'\nimport { TextWithEntities } from '../misc/index.js'\nimport { Chat } from '../peers/chat.js'\nimport { parsePeer, Peer } from '../peers/peer.js'\nimport { PeersIndex } from '../peers/peers-index.js'\nimport { User } from '../peers/user.js'\nimport { _messageActionFromTl, MessageAction } from './message-action.js'\nimport { MessageEntity } from './message-entity.js'\nimport { MessageForwardInfo } from './message-forward.js'\nimport { _messageMediaFromTl, MessageMedia } from './message-media.js'\nimport { MessageReactions } from './message-reactions.js'\nimport { MessageRepliesInfo } from './message-replies.js'\nimport { RepliedMessageInfo } from './replied-message.js'\n\n/**\n * A Telegram message.\n */\nexport class Message {\n /**\n * Raw TL object.\n */\n readonly raw: tl.RawMessage | tl.RawMessageService\n\n constructor(\n raw: tl.TypeMessage,\n readonly _peers: PeersIndex,\n /**\n * Whether the message is scheduled.\n * If it is, then its {@link date} is set to future.\n */\n readonly isScheduled = false,\n ) {\n assertTypeIsNot('Message#ctor', raw, 'messageEmpty')\n\n this.raw = raw\n }\n\n /** Unique message identifier inside this chat */\n get id(): number {\n return this.raw.id\n }\n\n /**\n * For channel posts, number of views\n *\n * `null` for service messages and non-post messages.\n */\n get views(): number | null {\n return this.raw._ === 'message' ? this.raw.views ?? null : null\n }\n\n /**\n * Whether the message is incoming or outgoing:\n * - Messages received from other chats are incoming (`outgoing = false`)\n * - Messages sent by you to other chats are outgoing (`outgoing = true`)\n * - Messages to yourself (i.e. *Saved Messages*) are incoming (`outgoing = false`)\n */\n get isOutgoing(): boolean {\n return this.raw.out!\n }\n\n /**\n * Whether this message is a service message\n */\n get isService(): boolean {\n return this.raw._ === 'messageService'\n }\n\n /** Whether this message has content protection (i.e. disabled forwards) */\n get isContentProtected(): boolean {\n return this.raw._ === 'message' && this.raw.noforwards!\n }\n\n /**\n * Multiple media messages with the same grouped ID\n * indicate an album or media group\n *\n * `null` for service messages and non-grouped messages\n */\n get groupedId(): tl.Long | null {\n return this.raw._ === 'message' ? this.raw.groupedId ?? null : null\n }\n\n /**\n * Same as {@link groupedId}, but is globally unique across chats.\n */\n get groupedIdUnique(): string | null {\n if (!(this.raw._ === 'message' && this.raw.groupedId !== undefined)) return null\n\n return `${this.raw.groupedId.low}|${this.raw.groupedId.high}|${getMarkedPeerId(this.raw.peerId)}`\n }\n\n /**\n * Message sender.\n *\n * Usually is a {@link User}, but can be a {@link Chat}\n * in case the message was sent by an anonymous admin, anonymous premium user,\n * or if the message is a forwarded channel post.\n *\n * If the message was sent by an anonymous admin,\n * sender will equal to {@link chat}.\n *\n * If the message is a forwarded channel post,\n * sender is the channel itself.\n */\n get sender(): Peer {\n const from = this.raw.fromId\n\n if (!from) {\n if (this.raw.peerId._ === 'peerUser') {\n return new User(this._peers.user(this.raw.peerId.userId))\n }\n\n // anon admin, return the chat\n return this.chat\n }\n\n return parsePeer(from, this._peers)\n }\n\n /**\n * Conversation the message belongs to\n */\n get chat(): Chat {\n return Chat._parseFromMessage(this.raw, this._peers)\n }\n\n /**\n * Date the message was sent\n */\n get date(): Date {\n return new Date(this.raw.date * 1000)\n }\n\n /**\n * If this message is a forward, contains info about it.\n */\n get forward(): MessageForwardInfo | null {\n if (this.raw._ !== 'message' || !this.raw.fwdFrom) {\n return null\n }\n\n return new MessageForwardInfo(this.raw.fwdFrom, this._peers)\n }\n\n /**\n * Whether the message is a channel post that was\n * automatically forwarded to the connected discussion group\n */\n get isAutomaticForward(): boolean {\n if (this.raw._ === 'messageService' || !this.raw.fwdFrom) return false\n\n const fwd = this.raw.fwdFrom\n\n return Boolean(\n this.chat.chatType === 'supergroup' &&\n fwd.savedFromMsgId &&\n fwd.savedFromPeer?._ === 'peerChannel' &&\n getMarkedPeerId(fwd.savedFromPeer) !== getMarkedPeerId(this.raw.peerId),\n )\n }\n\n /**\n * Information about comments (for channels) or replies (for groups)\n */\n get replies(): MessageRepliesInfo | null {\n if (this.raw._ !== 'message' || !this.raw.replies) return null\n\n return new MessageRepliesInfo(this.raw.replies, this._peers)\n }\n\n /**\n * For replies, information about the that is being replied to.\n *\n * Mutually exclusive with {@link replyToStory}\n */\n get replyToMessage(): RepliedMessageInfo | null {\n if (this.raw.replyTo?._ !== 'messageReplyHeader') return null\n\n return new RepliedMessageInfo(this.raw.replyTo, this._peers)\n }\n\n /**\n * For replies, information about the story that is being replied to\n *\n * Mutually exclusive with {@link replyToMessage}\n */\n get replyToStory(): tl.RawMessageReplyStoryHeader | null {\n if (this.raw.replyTo?._ !== 'messageReplyStoryHeader') return null\n\n return this.raw.replyTo\n }\n\n /** Whether this message is in a forum topic */\n get isTopicMessage(): boolean {\n if (this.raw.replyTo?._ !== 'messageReplyHeader') return false\n\n return this.raw.replyTo.forumTopic!\n }\n\n /**\n * Whether this message contains mention of the current user\n */\n get isMention(): boolean {\n return this.raw.mentioned!\n }\n\n /**\n * If this message is generated from an inline query,\n * information about the bot which generated it\n */\n get viaBot(): User | null {\n if (this.raw._ === 'messageService' || !this.raw.viaBotId) {\n return null\n }\n\n return new User(this._peers.user(this.raw.viaBotId))\n }\n\n /**\n * Message text or media caption.\n *\n * Empty string for service messages\n * (you should handle i18n yourself)\n */\n get text(): string {\n return this.raw._ === 'messageService' ? '' : this.raw.message\n }\n\n /**\n * Message text/caption entities (may be empty)\n */\n get entities(): ReadonlyArray<MessageEntity> {\n const entities: MessageEntity[] = []\n\n if (this.raw._ === 'message' && this.raw.entities?.length) {\n for (const ent of this.raw.entities) {\n entities.push(new MessageEntity(ent, this.raw.message))\n }\n }\n\n return entities\n }\n\n get textWithEntities(): TextWithEntities {\n if (this.raw._ === 'messageService') return { text: '', entities: [] }\n\n return {\n text: this.raw.message,\n entities: this.raw.entities,\n }\n }\n\n /**\n * Message action. `null` for non-service messages\n * or for unsupported events.\n *\n * For unsupported events, use `.raw.action` directly.\n */\n get action(): MessageAction | null {\n if (this.raw._ === 'message') {\n return null\n }\n\n return _messageActionFromTl.call(this, this.raw.action)\n }\n\n /**\n * Message media. `null` for text-only and service messages\n * and for unsupported media types.\n *\n * For unsupported media types, use `.raw.media` directly.\n */\n get media(): MessageMedia {\n if (this.raw._ === 'messageService' || !this.raw.media || this.raw.media._ === 'messageMediaEmpty') {\n return null\n }\n\n return _messageMediaFromTl(this._peers, this.raw.media)\n }\n\n /**\n * Whether this is a premium media\n * (e.g. >2gb file or fullscreen sticker)\n * that was forwarded without author by a non-premium user\n */\n get isForwardedPremiumMedia(): boolean {\n return this.raw._ === 'message' && this.raw.media?._ === 'messageMediaDocument' && this.raw.media.nopremium!\n }\n\n /**\n * TTL period of the message, in seconds.\n */\n get ttlPeriod(): number | null {\n return this.raw.ttlPeriod ?? null\n }\n\n /**\n * Reply markup provided with this message, if any.\n */\n get markup(): ReplyMarkup | null {\n if (this.raw._ === 'messageService' || !this.raw.replyMarkup) {\n return null\n }\n\n const rm = this.raw.replyMarkup\n\n switch (rm._) {\n case 'replyKeyboardHide':\n return {\n type: 'reply_hide',\n selective: rm.selective,\n }\n case 'replyKeyboardForceReply':\n return {\n type: 'force_reply',\n singleUse: rm.singleUse,\n selective: rm.selective,\n }\n case 'replyKeyboardMarkup':\n return {\n type: 'reply',\n resize: rm.resize,\n singleUse: rm.singleUse,\n selective: rm.selective,\n buttons: BotKeyboard._rowsTo2d(rm.rows),\n }\n case 'replyInlineMarkup':\n return {\n type: 'inline',\n buttons: BotKeyboard._rowsTo2d(rm.rows),\n }\n default:\n assertNever(rm)\n }\n }\n\n /**\n * Whether this message can be forwarded\n *\n * `false` for service mesasges and private restricted chats/chanenls\n */\n get canBeForwarded(): boolean {\n return this.raw._ === 'message' && !this.raw.noforwards\n }\n\n get reactions(): MessageReactions | null {\n if (this.raw._ === 'messageService' || !this.raw.reactions) {\n return null\n }\n\n return new MessageReactions(this.raw.id, getMarkedPeerId(this.raw.peerId), this.raw.reactions, this._peers)\n }\n\n /**\n * Generated permalink to this message, only for groups and channels\n *\n * @throws MtArgumentError In case the chat does not support message links\n */\n get link(): string {\n if (this.chat.chatType === 'supergroup' || this.chat.chatType === 'channel') {\n if (this.chat.username) {\n return `https://t.me/${this.chat.username}/${this.id}`\n }\n\n return `https://t.me/c/${toggleChannelIdMark(this.chat.id)}/${this.id}`\n }\n\n throw new MtArgumentError(`Cannot generate message link for ${this.chat.chatType}`)\n }\n}\n\nmemoizeGetters(Message, [\n 'sender',\n 'chat',\n 'forward',\n 'replies',\n 'viaBot',\n 'entities',\n 'action',\n 'media',\n 'markup',\n 'reactions',\n])\nmakeInspectable(Message, ['isScheduled'], ['link'])\n"]}
|
|
@@ -8,7 +8,7 @@ import { _messageMediaFromTl } from './message-media.js';
|
|
|
8
8
|
/**
|
|
9
9
|
* Information about a message that this message is a reply to
|
|
10
10
|
*/
|
|
11
|
-
|
|
11
|
+
class RepliedMessageInfo {
|
|
12
12
|
constructor(raw, _peers) {
|
|
13
13
|
this.raw = raw;
|
|
14
14
|
this._peers = _peers;
|
|
@@ -154,6 +154,7 @@ export class RepliedMessageInfo {
|
|
|
154
154
|
return _messageMediaFromTl(this._peers, this.raw.replyMedia);
|
|
155
155
|
}
|
|
156
156
|
}
|
|
157
|
-
memoizeGetters(RepliedMessageInfo,
|
|
158
|
-
makeInspectable(RepliedMessageInfo);
|
|
159
|
-
//# sourceMappingURL=replied-message.js.map
|
|
157
|
+
const RepliedMessageInfo$1 = /*#__PURE__*/memoizeGetters(RepliedMessageInfo, ['chat', 'sender', 'quoteEntities', 'media']);
|
|
158
|
+
const RepliedMessageInfo$2 = /*#__PURE__*/makeInspectable(RepliedMessageInfo$1, );
|
|
159
|
+
//# sourceMappingURL=replied-message.js.map
|
|
160
|
+
export { RepliedMessageInfo$2 as RepliedMessageInfo }
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export * from './app-config.js';
|
|
2
2
|
export * from './entities.js';
|
|
3
|
-
export * from './input-privacy-rule.js';
|
|
3
|
+
export * from './input-privacy-rule/index.js';
|
|
4
4
|
export * from './sticker-set.js';
|
|
5
5
|
export * from './takeout-session.js';
|
|
6
6
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/highlevel/types/misc/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAA;AAC/B,cAAc,eAAe,CAAA;AAC7B,cAAc,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/highlevel/types/misc/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAA;AAC/B,cAAc,eAAe,CAAA;AAC7B,cAAc,+BAA+B,CAAA;AAC7C,cAAc,kBAAkB,CAAA;AAChC,cAAc,sBAAsB,CAAA","sourcesContent":["export * from './app-config.js'\nexport * from './entities.js'\nexport * from './input-privacy-rule/index.js'\nexport * from './sticker-set.js'\nexport * from './takeout-session.js'\n"]}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { tl } from '@mtcute/tl';
|
|
2
|
+
import { MaybeArray } from '../../../../types/utils.js';
|
|
3
|
+
import { InputPeerLike } from '../../peers/peer.js';
|
|
4
|
+
import { InputPrivacyRuleChatParticipants, InputPrivacyRuleUsers } from './types.js';
|
|
5
|
+
/** Allow all users */
|
|
6
|
+
export declare const all: tl.RawInputPrivacyValueAllowAll;
|
|
7
|
+
/** Allow only contacts */
|
|
8
|
+
export declare const contacts: tl.RawInputPrivacyValueAllowContacts;
|
|
9
|
+
/** Allow only "close friends" list */
|
|
10
|
+
export declare const closeFriends: tl.RawInputPrivacyValueAllowCloseFriends;
|
|
11
|
+
/**
|
|
12
|
+
* Allow only users specified in `users`
|
|
13
|
+
*
|
|
14
|
+
* @param users Users to allow
|
|
15
|
+
*/
|
|
16
|
+
export declare function users(users: MaybeArray<InputPeerLike>): InputPrivacyRuleUsers;
|
|
17
|
+
/**
|
|
18
|
+
* Allow only participants of chats specified in `chats`
|
|
19
|
+
*
|
|
20
|
+
* @param chats Chats to allow
|
|
21
|
+
*/
|
|
22
|
+
export declare function chatParticipants(chats: MaybeArray<InputPeerLike>): InputPrivacyRuleChatParticipants;
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/** Allow all users */
|
|
2
|
+
export const all = { _: 'inputPrivacyValueAllowAll' };
|
|
3
|
+
/** Allow only contacts */
|
|
4
|
+
export const contacts = { _: 'inputPrivacyValueAllowContacts' };
|
|
5
|
+
/** Allow only "close friends" list */
|
|
6
|
+
export const closeFriends = {
|
|
7
|
+
_: 'inputPrivacyValueAllowCloseFriends',
|
|
8
|
+
};
|
|
9
|
+
/**
|
|
10
|
+
* Allow only users specified in `users`
|
|
11
|
+
*
|
|
12
|
+
* @param users Users to allow
|
|
13
|
+
*/
|
|
14
|
+
export function users(users) {
|
|
15
|
+
return {
|
|
16
|
+
allow: true,
|
|
17
|
+
users: Array.isArray(users) ? users : [users],
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Allow only participants of chats specified in `chats`
|
|
22
|
+
*
|
|
23
|
+
* @param chats Chats to allow
|
|
24
|
+
*/
|
|
25
|
+
export function chatParticipants(chats) {
|
|
26
|
+
return {
|
|
27
|
+
allow: true,
|
|
28
|
+
chats: Array.isArray(chats) ? chats : [chats],
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=allow.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"allow.js","sourceRoot":"","sources":["../../../../../../src/highlevel/types/misc/input-privacy-rule/allow.ts"],"names":[],"mappings":"AAMA,sBAAsB;AACtB,MAAM,CAAC,MAAM,GAAG,GAAoC,EAAE,CAAC,EAAE,2BAA2B,EAAE,CAAA;AACtF,0BAA0B;AAC1B,MAAM,CAAC,MAAM,QAAQ,GAAyC,EAAE,CAAC,EAAE,gCAAgC,EAAE,CAAA;AACrG,sCAAsC;AACtC,MAAM,CAAC,MAAM,YAAY,GAA6C;IAClE,CAAC,EAAE,oCAAoC;CAC1C,CAAA;AAED;;;;GAIG;AACH,MAAM,UAAU,KAAK,CAAC,KAAgC;IAClD,OAAO;QACH,KAAK,EAAE,IAAI;QACX,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;KAChD,CAAA;AACL,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAgC;IAC7D,OAAO;QACH,KAAK,EAAE,IAAI;QACX,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;KAChD,CAAA;AACL,CAAC","sourcesContent":["import { tl } from '@mtcute/tl'\n\nimport { MaybeArray } from '../../../../types/utils.js'\nimport { InputPeerLike } from '../../peers/peer.js'\nimport { InputPrivacyRuleChatParticipants, InputPrivacyRuleUsers } from './types.js'\n\n/** Allow all users */\nexport const all: tl.RawInputPrivacyValueAllowAll = { _: 'inputPrivacyValueAllowAll' }\n/** Allow only contacts */\nexport const contacts: tl.RawInputPrivacyValueAllowContacts = { _: 'inputPrivacyValueAllowContacts' }\n/** Allow only \"close friends\" list */\nexport const closeFriends: tl.RawInputPrivacyValueAllowCloseFriends = {\n _: 'inputPrivacyValueAllowCloseFriends',\n}\n\n/**\n * Allow only users specified in `users`\n *\n * @param users Users to allow\n */\nexport function users(users: MaybeArray<InputPeerLike>): InputPrivacyRuleUsers {\n return {\n allow: true,\n users: Array.isArray(users) ? users : [users],\n }\n}\n\n/**\n * Allow only participants of chats specified in `chats`\n *\n * @param chats Chats to allow\n */\nexport function chatParticipants(chats: MaybeArray<InputPeerLike>): InputPrivacyRuleChatParticipants {\n return {\n allow: true,\n chats: Array.isArray(chats) ? chats : [chats],\n }\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bundle.js","sourceRoot":"","sources":["../../../../../../src/highlevel/types/misc/input-privacy-rule/bundle.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,YAAY,CAAA;AACnC,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AAEzC,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAA","sourcesContent":["import * as allow from './allow.js'\nimport * as disallow from './disallow.js'\n\nexport { allow, disallow }\n"]}
|