mtcute/packages/file-id
2022-06-05 23:05:15 +03:00
..
src feat(client): sticker choosing typing event 2022-05-06 17:53:44 +03:00
tests build: fixed scripts, eslintignore, fixed linter warnings and re-formatted with prettier 2021-06-06 15:20:41 +03:00
package.json fix(tl): bumped minor version 2022-06-05 23:05:15 +03:00
README.md rename back to mtcute 2021-08-05 20:38:24 +03:00
tsconfig.json rename back to mtcute 2021-08-05 20:38:24 +03:00

@mtcute/file-id

A package that is used internally by @mtcute/client to parse, serialize and manipulate TDLib and Bot API compatible File IDs, but can also be used for any other purposes.

Contents

This package exports a number of functions, namely:

  • parseFileId() which parses provided File ID to an object representing its contents
  • toFileId() which serializes provided object containing file info to a File ID
  • toUniqueFileId() which serializes provided object containing file info to a Unique File ID
  • fileIdTo*() which converts a File ID to an input TL object, which can be used in RPC calls etc.

This package also exports namespace tdFileId, which contains all the types used by the library

Dependencies

This package uses @mtcute/core BinaryReader and BinaryWriter classes to work with binary streams. Additionally, it depends on @mtcute/tl types to allow type-safe code for conversion functions.

Note that @mtcute/core itself depends on @mtcute/tl, which might redundantly increase your bundle size in case you don't actually use TL types.

Acknowledgements

This is basically a port of a portion of TDLib APIs, but greatly simplified in usage and made to work seamlessly with the rest of the MTCute APIs.

This is a list of files from TDLib repository, from which most of the code was taken:

Additionally, some of the test cases were taken from a similar Python library, luckydonald/telegram_file_id