Commit graph

619 commits

Author SHA1 Message Date
85d2c5f305
fix: test fixes 2023-09-21 02:53:08 +03:00
b8f63b0634
feat(tl): static object size computation
closes MTQ-21
2023-09-20 18:37:26 +03:00
5a3b101c9f
chore: avoid using {}, use Maps instead 2023-09-19 01:33:47 +03:00
80d4c59c69
fix: lru map doesn't update links
closes #8
2023-09-18 19:40:09 +03:00
53b008f8bc
fix: support <tg-emoji> and tg-spoiler in html parser 2023-09-18 03:40:20 +03:00
7bf63b2507
fix: dont export everything on first connection 2023-09-18 03:16:29 +03:00
55edbde3e7
fix: fixed new error codegen 2023-09-07 22:26:52 +03:00
aa863c6a2f
chore: added no-console rule 2023-09-07 22:25:50 +03:00
4b7d7d2e35
refactor: reworked errors codegen 2023-09-06 23:54:51 +03:00
22d8b815d3
refactor: improved api of set-game-score function 2023-09-03 03:44:02 +03:00
81ce550604
chore: improved eslint config
closes MTQ-54
2023-09-03 02:37:51 +03:00
a679f364fd
fix: fixed upload and download for new networking 2023-08-23 23:49:47 +03:00
4a0d6fbc88
fix: fixed upload and download for new networking 2023-08-23 22:11:42 +03:00
85c43d804d
fix: client and updates fixes 2023-08-12 22:40:37 +03:00
2b1bac053e
feat: support for tmp_sessions 2023-08-12 18:26:46 +03:00
01d476d19a
feat: support for dc switches, session import/export, rpc sending 2023-08-11 23:59:24 +03:00
13c0a97a58
fix: rebase fixes 2023-07-24 00:14:37 +03:00
743058a020
fix: rebase fixes 2023-07-24 00:14:37 +03:00
eb585fc3f1
build: fixes after rebase 2023-07-24 00:14:37 +03:00
teidesu
0b4edbf70e
feat(core): update connection count and pfs usage on the go
holy shit i actually made it 🫣
2023-07-24 00:14:37 +03:00
teidesu
f68d83da06
feat(core): sync keys between connections, exclusive lock for auth
in other words, only one main connection does authorization, others wait
2023-07-24 00:14:37 +03:00
teidesu
bd5130c77b
fix(core): use existing auth_key from storage 2023-07-24 00:14:37 +03:00
teidesu
a23197df91
feat(core): (initial) support pfs 2023-07-24 00:14:37 +03:00
teidesu
c9a86c28f0
feat(core): support %h for non-buffer types in logger 2023-07-24 00:14:37 +03:00
teidesu
27d3058408
fix(core): destroy_session requests not being sent
i am actually retarded
2023-07-24 00:14:36 +03:00
teidesu
6eed69ad02
refactor: extracted auth key management to AuthKey class 2023-07-24 00:14:36 +03:00
teidesu
4f834afc6a
refactor: (initial) extracted connection management to NetworkManager 2023-07-24 00:14:29 +03:00
teidesu
76639d2993
fix(early-timer): rescheduling inside handler getting instantly reset 2023-07-24 00:13:44 +03:00
teidesu
4848c4e62d
refactor: extracted dc config management to separate class 2023-07-24 00:13:42 +03:00
6a2c5d90b7
fix: error on extra fields in TelegramClient#call + related fixes 2023-07-24 00:12:17 +03:00
6221a8716f
fix: handle vectors of primitives in rpc_result 2023-07-20 22:07:07 +03:00
99e83b40aa
feat(codegen): support bare types and vectors
closes MTQ-48
2023-07-20 20:22:57 +03:00
754a288c87
fix: fixes after layer bump 2023-07-20 19:01:34 +03:00
d3338f6614
fix: build fixes + updated to 160 schema 2023-07-20 17:51:24 +03:00
d88bc0ea60
chore: code quality improvements
improved eslint config, fixed linter issues, added husky
2023-06-05 00:30:48 +00:00
0471310382
chore: better dependencies management
updated and pinned dependencies
added validation for external deps conflicts
removed tl-reference
2023-06-04 17:00:33 +00:00
c591f96b81
fix: local floodwait handler fix
im actually retarded lmao
2023-06-04 16:04:46 +00:00
teidesu
8df099fcb8 feat: updated to layer 150 2022-12-07 14:13:24 +03:00
teidesu
b0055b791c fix(client): incorrect parsing of video stickers as video 2022-12-05 04:05:43 +03:00
teidesu
bc2ed98b14 refactor: use ??= for memoization 2022-10-30 22:24:07 +03:00
teidesu
70b09903f1 feat(client): support pre-checkout queries 2022-10-30 20:51:50 +03:00
teidesu
e75ac9fa5d feat(client): support invoices with extended media 2022-10-30 20:51:38 +03:00
teidesu
1935413aee fix(build): fixed delimiter in updates codegen conflicting with prettier 2022-10-30 20:37:52 +03:00
teidesu
f5986e694a refactor(client): moved parse-update.ts to types/updates 2022-10-30 20:36:17 +03:00
teidesu
7d10e65ecc fix: properly handle peers without access hash 2022-10-30 20:25:49 +03:00
teidesu
89fd8e8ef0 feat(tl): updated schema to 147 2022-10-30 18:49:55 +03:00
teidesu
71b39d6f53 feat(tl): generate diff file for simpler update flow
primarily for my own use
2022-10-30 18:38:31 +03:00
teidesu
416b3d9ef9 refactor: exported string session parsing/serialization to a module 2022-10-09 20:49:39 +03:00
teidesu
8adb79511f feat(tl): updated layer to 146 2022-09-28 00:42:21 +03:00
teidesu
d0ea4ed5ca refactor: changed stylizing of the name (MTCute -> mtcute) 2022-09-14 16:18:56 +03:00
teidesu
443786a35b build: fixed build for client and dispatcher packages 2022-09-12 19:50:39 +03:00
teidesu
bbd738f572 feat(i18n): added OtherLanguageWrapExhaustive for exhaustive other languages 2022-09-12 15:34:30 +03:00
teidesu
d4040a768f fix(i18n): enforce same arg types in OtherLanguageWrap 2022-09-12 15:28:45 +03:00
teidesu
b7d0b85a15 docs(i18n): improved docs 2022-09-12 15:01:43 +03:00
teidesu
4847523cc1 build: updated name in package.json
again. i am actually braindead
2022-09-12 14:50:43 +03:00
teidesu
b96c1407d0 feat(i18n): added pluralization helpers
also slight refactor of typings
2022-09-12 14:37:09 +03:00
teidesu
77bfef98d1 feat: updated to 145 layer 2022-09-12 13:54:33 +03:00
teidesu
597cb4f07b feat(i18n): exported default adapter 2022-08-29 18:57:00 +03:00
teidesu
5019d7b596 feat(i18n): removed immediate dependency on client to allow for outside usage 2022-08-29 18:54:43 +03:00
teidesu
689533c549 feat(i18n): allow custom adapters 2022-08-29 18:53:27 +03:00
teidesu
ea299cacca docs: improve documentation 2022-08-29 16:22:57 +03:00
teidesu
e7219ed2de refactor: normalizeToInput* now throws an error by itself, never returning null 2022-08-29 16:15:37 +03:00
teidesu
1cc3594f09 docs(tl-utils): documented everything 2022-08-29 14:33:11 +03:00
teidesu
7b7fdc7092 docs: removed typedoc-plugin-coverage
it works like shit
2022-08-28 17:56:56 +03:00
teidesu
7eb843dd20 feat(markdown-parser): added support for custom emojis 2022-08-25 20:17:33 +03:00
teidesu
34f783aa66 feat(html-parser): added support for custom emojis 2022-08-25 20:17:25 +03:00
teidesu
390b65f796 build(docs): api reference generation improvements
- added readme in each package
- updated typedoc, fixed related issues
- use @link instead of @see
- moved configs to typedoc.js, improved exclusion of unneeded stuff
- custom plugin for typedoc for cross-package references
- preparing to move documentation to separate repository
2022-08-24 23:37:26 +03:00
teidesu
b08ec342e5 feat(client): export customEmojiId in Sticker 2022-08-18 21:34:35 +03:00
teidesu
eaa517a5c3 feat(client): support custom emojis 2022-08-18 19:52:24 +03:00
teidesu
e39057bda5 fix(file-id): bumped version
todo: should we really enforce the version? tdlib uses current version from Version.h, but not every version there changes file id format (and v32 is fully compatible with v41 as far as im concerned)
2022-08-18 17:46:03 +03:00
teidesu
26b96c3151 refactor(tl-utils): export everything in index.ts 2022-08-12 20:11:27 +03:00
teidesu
16fdd5ded1 fix(tl): better {@link} generation from documentation 2022-08-12 17:46:04 +03:00
teidesu
9b027425dd fix(tl-utils): handle <br> 2022-08-12 17:22:40 +03:00
teidesu
be343b561e fix(tl-utils): do not break <a href 2022-08-12 17:13:24 +03:00
teidesu
ff58e3ee0d fix(tl-utils): do not make @link tags for primitives 2022-08-12 17:11:19 +03:00
teidesu
e3dbe3b7d1 fix(tl-utils): do not break @link tags 2022-08-12 17:00:02 +03:00
teidesu
b34a90ec30 build: updated layer to 144 2022-08-12 16:17:35 +03:00
teidesu
afb07534f9 feat(tl): added blogfork domain, auto-choose domain for docs 2022-08-12 16:16:44 +03:00
teidesu
8b6cde6db5 fix(client): made ChatJoinRequestUpdate inspectable 2022-08-02 03:48:18 +03:00
teidesu
537b7d0462 feat(core): support overwriting existing session with session strings 2022-07-31 08:01:40 +03:00
teidesu
2a97616d80 fix(codegen): fixed typings codegen, added a test 2022-07-23 05:03:38 +03:00
teidesu
ad29b2af17 fix(client): improved getHistory method
merged iterHistory into getHistory, improved pagination, offset support and other stuff
2022-07-23 02:22:20 +03:00
teidesu
b6f2f39906 fix(client): improved searchMessages method
use offsetId for pagination, expose minId/maxId/minDate/maxDate, threadId, offsetId
2022-07-23 01:29:36 +03:00
teidesu
0330efd4dc fix(i18n): support FormattedString
totally forgot about it
2022-07-19 03:11:08 +03:00
teidesu
ebe9786987 feat: i18n package 2022-07-19 02:47:59 +03:00
teidesu
a3aca20099 build: updated name in package.json files 2022-07-18 23:32:11 +03:00
teidesu
feac72e3ec feat(client): accept raw tl object for keyboard 2022-07-13 05:14:56 +03:00
teidesu
42c5d29167 fix(client): automatically derive gallery for inline result 2022-07-13 05:09:58 +03:00
teidesu
2c6238798f fix(client): remove explicit simple/non-simple webview type, change it automatically if needed 2022-07-13 04:53:29 +03:00
teidesu
2c54751029 fix(client): hopefully fix random MEDIA_EMPTY errors when editing inline 2022-07-10 01:38:23 +03:00
teidesu
715f4f8a68 fix(core): write buffers to log as trimmed base64 2022-07-10 01:11:24 +03:00
teidesu
61ca4130c8 fix(client): allow caption in every media type 2022-07-08 15:01:19 +03:00
teidesu
51280d6494 fix(client): accept formatted string in text inline msg builder 2022-07-04 16:36:51 +03:00
teidesu
e68c9f4bb5 refactor: prettier-ed code, rearranged imports, fixed tests 2022-06-30 16:32:56 +03:00
teidesu
f2eb033e91 fix(dispatcher): fix not dispatching to children
i dont fucking know why that code didn't work, i hate js
2022-06-30 16:24:13 +03:00
teidesu
fdcd9e0c5b fix(core): fixed orphan timer when multiple usable events are emitted 2022-06-30 15:56:58 +03:00
teidesu
1a60b39214 build: added script for bumping version with dependencies 2022-06-29 22:00:34 +03:00
teidesu
967c10b25c fix(core): never use ipv6 dc when not using ipv6 2022-06-28 23:13:56 +03:00
teidesu
a2dbccada6 fix(tl-utils): optimize readers code size by merging pre-return vars 2022-06-28 19:26:11 +03:00
teidesu
dd4cc471f6 fix(tl-utils): fixed reader codegen impl for non-zero-size fields between flags 2022-06-28 19:23:32 +03:00
teidesu
6978e159d7 feat(tl-utils): support flag for exposing raw flags in codegen 2022-06-28 18:57:22 +03:00
teidesu
16ffca23d2 fix(client): improve animated profile picture support, fixed related bugs 2022-06-27 16:23:02 +03:00
teidesu
8822de2e1f fix(client): pass params for forward caption, also codegen-ed client 2022-06-21 21:07:54 +03:00
teidesu
11d91c1f55 feat(client): support sending as peer 2022-06-21 21:05:27 +03:00
teidesu
1be12d9917 feat(client): support noforward flag when sending 2022-06-21 20:59:25 +03:00
teidesu
7d71728868 feat(client): support forwarding withot author/caption 2022-06-21 20:56:45 +03:00
teidesu
0396710b18 feat(client): improve support for premium stickers and video thumbnails 2022-06-21 20:53:57 +03:00
teidesu
1ac0cd8530 feat(client): expose info about premium users and media 2022-06-20 01:51:07 +03:00
teidesu
2c3529870a feat(client): updated to layer 143
also fixed some minor bugs
2022-06-18 22:47:31 +03:00
teidesu
a864eacfd4 feat(core): added keylen and algo in pbkdf2 (attempt 2, i am retarded) 2022-06-12 19:29:38 +03:00
teidesu
e98b8f8855 feat(core): added keylen and algo in pbkdf2 2022-06-12 19:26:24 +03:00
teidesu
ae07583161 feat(core): added mtproto v1 message key derivation 2022-06-11 18:51:47 +03:00
teidesu
0e40b4a5f7 fix(client): fixed kickChatMember
i fucking love telegram serverside race conditions
2022-06-07 19:40:42 +03:00
teidesu
e1326a5cf1 fix(client): added missing <any> for formatted strings 2022-06-07 19:02:21 +03:00
teidesu
cd88a3a74a feat(parser): automatically escape attributes in template strings 2022-06-05 23:53:59 +03:00
teidesu
1cce5c79a2 feat(parser): support conditionals in template strings 2022-06-05 23:23:26 +03:00
teidesu
e0d1102408 fix(tl): bumped minor version 2022-06-05 23:05:15 +03:00
teidesu
02462dac16 fix(tl): correctly process vector<bytes>
fml why am i even doing this
2022-06-05 21:36:12 +03:00
teidesu
fa8ed6da10 fix(core): ignore duplicate messages 2022-05-18 13:04:40 +03:00
teidesu
0633d0a817 fix(dispatcher): handlers without filters 2022-05-14 21:38:41 +03:00
teidesu
e1dab9a195 build: fixed deps 2022-05-14 21:37:48 +03:00
teidesu
9034810ccd tl: updated to layer 142 2022-05-14 20:30:36 +03:00
teidesu
9039830572 feat(client): support reactions 2022-05-12 10:09:37 +03:00
teidesu
96300a795e fix(core): removed unnecessary import 2022-05-11 13:17:39 +03:00
teidesu
0a217108ba feat(client): added get() method in PeersIndex 2022-05-11 13:17:23 +03:00
teidesu
3b15c66fc3 fix(client): fixed inspecting buffers
i may actually be retarded
2022-05-11 11:50:09 +03:00
teidesu
b4beeba33c feat(client): support user profile button
this one does not automatically do resolvePeer because i'm too lazy to make an intermediate type just for this type of buttons. once there are more of them, maybe i will...
2022-05-09 17:32:42 +03:00
teidesu
63d0ea2ddf feat(client): support join requests 2022-05-09 17:25:38 +03:00
teidesu
4f0f16e4a4 fix(tl): improved documentation downloader
- fixed invalid {@link} directives
- fixed underscored parameters being transformed
- fixed using raw layer number (instead of actual)
2022-05-09 17:18:18 +03:00
teidesu
be27e33d61 feat(client): support new invite links (t.me/+) 2022-05-09 00:20:32 +03:00
teidesu
a0bfe2c075 feat(client): support get/setBotMenuButton methods 2022-05-09 00:00:22 +03:00
teidesu
d41bec9c73 feat(client): support setBot*DefaultAdminRights methods 2022-05-08 23:34:28 +03:00
teidesu
a10221533c feat(client): helper for webview keyboard buttons 2022-05-06 23:50:21 +03:00
teidesu
e187f8697e feat(filters): filter by sticker type 2022-05-06 20:02:54 +03:00
teidesu
daff3e62a0 feat(client): support webm stickers 2022-05-06 20:00:15 +03:00
teidesu
9543f64558 feat(client): sticker choosing typing event
also prettier fucked everything up, fixed that
2022-05-06 17:53:44 +03:00
teidesu
252f94a594 fix(dispatcher): implemented userId filter
it got commented out when migrating to 64-bit ids, then i moved to using native numbers for them and forgot to update the filter
2022-05-06 13:56:15 +03:00
teidesu
a7e866f3eb refactor: assertNever util, use it in most places
haven't used it in some just yet because not everything is implemented (particularly, newer attachment types, typings, admin events, etc.)
2022-05-06 13:50:30 +03:00
teidesu
ffafb3e5db build: improved publish script, fixed imports/exports, added note about private repo 2022-05-06 13:23:29 +03:00
teidesu
e02763dcdd fix(client): fixed usage of FormattedString type 2022-05-06 00:47:26 +03:00
teidesu
1ef1c0669d feat(parse-mode): support spoiler entity 2022-05-06 00:40:47 +03:00
teidesu
05be58f903 fix(html): fixed un-parsing 2022-05-06 00:36:54 +03:00
teidesu
d8111ea525 feat(parse-mode): compile-time formatted string compatibility check 2022-05-06 00:11:28 +03:00
teidesu
28baf50958 feat(html): big rework, process html similar to browsers 2022-05-06 00:05:21 +03:00
teidesu
d031388ea2 fix(build): fixed imports, bumped typescript 2022-05-05 20:08:38 +03:00
teidesu
2b0af79fb3 feat(client): added non-working translation methods 2022-04-29 17:54:11 +03:00
teidesu
d0218ece42 fix(client): fixed codegen for new ts 2022-04-29 17:32:07 +03:00
teidesu
44e6ffd368 fix(tl): insert true flags after flags field, support multiple flags fields, updated tests 2022-04-29 16:36:41 +03:00
teidesu
916c41e70c build(codegen): refactored reader codegen (removed the need in additional object), added tests for multiple flags fields
i honestly don't know why i did what i did, it's such an over-complication, lol.
2022-04-29 16:13:07 +03:00
teidesu
a1ea1315df tl: updated to layer 140 2022-04-28 17:23:44 +03:00