Commit graph

393 commits

Author SHA1 Message Date
teidesu
54f95bcaa6 fix(client): handle users index for sendText short update 2021-07-03 00:23:41 +03:00
teidesu
e4b1932ca6 feat(client): force text mention for .mention() 2021-07-02 21:32:12 +03:00
teidesu
9ed51fd996 fix: made .mention() work with tagged templates 2021-07-02 21:28:30 +03:00
teidesu
733a1ab84f feat: html and markdown tagged template helpers 2021-07-02 20:20:29 +03:00
teidesu
03cb8fd5e8 docs(client): updated docs for createStickerSet 2021-07-02 19:52:14 +03:00
teidesu
14d2f9ff08 feat(client): inputPhoto getter for Photo 2021-07-02 17:10:57 +03:00
teidesu
23bc4b5e30 feat(client): uploadMedia method 2021-07-02 17:04:45 +03:00
teidesu
94a65b1a74 feat(client): set profile photo from file id or input photo 2021-07-02 16:27:08 +03:00
teidesu
d0e3ebda80 refactor: use type discrimination for media types in Message
this should result in cleaner code without the need to import everything
2021-07-01 22:20:16 +03:00
teidesu
abbebeddf9 feat(client): isGroup getter for Chat 2021-06-30 02:01:11 +03:00
teidesu
2220371efd feat(dispatcher): conditional error propagation to client 2021-06-27 23:59:04 +03:00
teidesu
80e889d95f fix(client): inline mode related improvements 2021-06-27 23:57:27 +03:00
teidesu
596362bb89 fix(tl): automatically resolve conflicts if layer is different 2021-06-27 15:06:42 +03:00
teidesu
ef68b414ad fix(tl): correctly handle constructors without id 2021-06-27 01:08:38 +03:00
teidesu
58f73b6709 fix(client): improved inspection 2021-06-27 00:27:39 +03:00
teidesu
274a05dc9e fix(node): made .run sync
forgot the entire idea of .run, lol. i should get some sleep ig
2021-06-26 23:51:48 +03:00
teidesu
c826c831e2 fix(client): made params optional in InlineQuery#answer 2021-06-26 23:45:59 +03:00
teidesu
0ea953732b fix(dispatcher): removed @internal from non-filtered on* methods
i probably am in fact stupid
2021-06-26 23:34:08 +03:00
teidesu
66c4b0e0b0 fix: updated tl version in the rest of the packages
webstorm for some fucking reason decided not to save some package.json files lol
2021-06-26 23:13:40 +03:00
teidesu
e7f15ec009 fix(node): close readline instance to avoid hanging processes 2021-06-26 22:57:00 +03:00
teidesu
42f6ed1357 feat(client): bot commands related methods 2021-06-26 19:45:06 +03:00
teidesu
f520470fad fix(file-id): updated file id computation for layer 130 2021-06-26 17:13:32 +03:00
teidesu
090f42e559 build(tl): updated to layer 130 2021-06-26 17:13:13 +03:00
teidesu
1abfc56474 feat(tl): merge schemas from tdlib and tdesktop 2021-06-26 16:22:19 +03:00
teidesu
cf7f8e74ea feat(dispatcher): throttle now actually throttles, and does not throw an error 2021-06-25 22:37:26 +03:00
teidesu
54e5374273 fix(client): remove empty from inspection 2021-06-24 20:15:12 +03:00
teidesu
00d9228c1c feat(dispatcher): provide custom default state for wizard 2021-06-24 01:12:20 +03:00
teidesu
a2ad4128f1 fix(dispatcher): default state for merge 2021-06-24 01:12:00 +03:00
teidesu
3c79c56879 fix(client): made _normalizeInputFile and _normalizeInputMedia public 2021-06-24 00:15:12 +03:00
teidesu
bf84556776 fix(client): made _handleUpdate method public 2021-06-24 00:13:10 +03:00
teidesu
028e331cb6 fix(markdown): properly handle square brackets that are not links 2021-06-23 17:08:23 +03:00
teidesu
c3ee177b4c fix(sqlite): parse entity from binary before returning
i am a bit stupid~
2021-06-23 17:08:09 +03:00
teidesu
c8dae335e8 feat: vacuum storage to reduce its size 2021-06-20 18:18:06 +03:00
teidesu
b45cc0df69 feat: rate limiting 2021-06-20 17:54:28 +03:00
teidesu
6b622f8399 fix(dispatcher): exported defaultStateKeyDelegate 2021-06-20 03:17:04 +03:00
teidesu
481f0db129 fix(dispatcher): provide state type information to filters 2021-06-20 02:52:19 +03:00
teidesu
5e7706a5a3 feat(dispatcher): callback data builder 2021-06-20 01:29:40 +03:00
teidesu
2ee5f1e279 fix(node): export html and md parsers 2021-06-20 00:43:31 +03:00
teidesu
92233d6d09 fix(client): do not pass empty message if no edit 2021-06-20 00:42:49 +03:00
teidesu
73d9a850ee fix(client): exported MessageAction and MessageMedia 2021-06-19 23:41:29 +03:00
teidesu
035435900b feat(dispatcher): filters.start filter for /start 2021-06-19 20:59:35 +03:00
teidesu
fbb5d7005f feat(dispatcher): support regex commands 2021-06-19 20:53:51 +03:00
teidesu
2682392d26 feat(client): mention() method for Chat
mostly done to unify User | Chat type interface and further simplify usage of msg.sender
2021-06-19 20:25:30 +03:00
teidesu
1238e7c32c fix(dispatcher): improved typings for action filter 2021-06-19 20:11:06 +03:00
teidesu
f44bf77a07 feat(dispatcher): support usernames and me/self in userId and chatId filters 2021-06-19 19:53:31 +03:00
teidesu
f2671d3c0b fix(dispatcher): handle commands that contain bot username 2021-06-18 19:21:22 +03:00
teidesu
1371f935cd fix(client): do not dispatch empty messages
this happens when the difference contains messages from other bots that the current bot can't see.
2021-06-18 19:20:58 +03:00
teidesu
645bd46e9d fix(markup): support link starting with // 2021-06-18 18:06:39 +03:00
teidesu
e3b2f747a9 feat(client): override caption and entities for sendMedia 2021-06-18 17:44:52 +03:00
teidesu
cbb8549068 fix(client): params type for answerMedia 2021-06-18 17:33:39 +03:00
teidesu
08517810fc fix(node): do not add handlers if bot token is passed 2021-06-18 17:16:10 +03:00
teidesu
b4716f321b tests(core): added fuzz tests for auth_key 2021-06-16 18:21:54 +03:00
teidesu
5849ce0e1b fix(core): better handling for additional connections 2021-06-16 18:21:17 +03:00
teidesu
77022e29c9 tests(core): added e2e and fuzzing tests 2021-06-15 03:12:22 +03:00
teidesu
0a45f5e71a fix(core): check for correct padding 2021-06-15 03:11:52 +03:00
teidesu
9928a9156a fix(client): redundant resends 2021-06-15 03:11:11 +03:00
teidesu
6c8eeb01d2 feat(dispatcher): wizard scene 2021-06-14 19:01:02 +03:00
teidesu
257f5392ea refactor(dispatcher): use enum instead of symbols for propagation 2021-06-14 18:58:07 +03:00
teidesu
707e317e16 stuff 2021-06-12 01:13:02 +03:00
teidesu
46317e8ddb fix(dispatcher): optimized every & some functions, improved types for them 2021-06-11 16:39:27 +03:00
teidesu
079d65b38d build: preparing for publish, day 6
i am slowly descending to madness

bugs fixed, stuff exported, and maybe something else
2021-06-10 02:31:48 +03:00
teidesu
c46f113f1f build: preparing for publish x5
at this point i'm way too tired to describe what happened.
stuff added, stuff removed, stuff fixed, i don't even remember anymore lol
2021-06-09 01:47:22 +03:00
teidesu
bcce752dfd build: preparing for publish x4
at this point i'm too tired to describe what happened
2021-06-08 00:37:13 +03:00
teidesu
7a0de134ba feat(dispatcher): local error handling 2021-06-07 23:59:17 +03:00
teidesu
8cbd6e14c8 build: prepare to publish x3
various package json fixes, improved node meta-package
2021-06-07 18:32:29 +03:00
teidesu
21d69e466e fix: handle private chat sender 2021-06-07 15:27:16 +03:00
teidesu
280c9f51aa build: preparing to publish (part 2)
fixed imports, package.json files, improved package generation for certain packages, and more (i'm too lazy to describe all the magic that i've done)
2021-06-06 19:23:43 +03:00
teidesu
ae2dbcf03f build: fixed scripts, eslintignore, fixed linter warnings and re-formatted with prettier 2021-06-06 15:20:41 +03:00
teidesu
5e05b099ed build: moved tl-reference to top layer to avoid cluttering yarn.lock with frontend deps 2021-06-06 15:02:06 +03:00
teidesu
1d21cd5e65 build: preparing to publish 2021-06-06 00:37:44 +03:00
teidesu
2cd443d6d1 feat(client): string sessions 2021-06-05 20:25:08 +03:00
teidesu
68ea4080df feat(core): handle AUTH_KEY_UNREGISTERED error 2021-06-05 18:56:43 +03:00
teidesu
79af4c4425 fix(tl-ref): history section navigation for prod 2021-06-05 18:33:35 +03:00
teidesu
599250d0af feat(tl-ref): history section, containing type history and older schemas 2021-06-05 17:46:58 +03:00
teidesu
685d75effd docs(tl): replace male pronouns with gender-neutral 2021-06-03 18:59:43 +03:00
teidesu
ecca291eba fix(dispatcher): handle custom key in getState 2021-05-31 23:29:26 +03:00
teidesu
9da72daac7 fix(dispatcher): do not propagate state and scene to children 2021-05-31 23:20:20 +03:00
teidesu
2c36d9cbf2 refactor(client): split reply* methods to reply* and answer* 2021-05-31 23:12:35 +03:00
teidesu
6ffb8616e3 fix(sqlite): handle stored objects from older incompatible tl layers 2021-05-31 22:56:58 +03:00
teidesu
d70ccaa1ad fix(client): improved channels difference loading 2021-05-31 22:50:39 +03:00
teidesu
1e9c4de86d fix(client): do not call toJSON for buffers 2021-05-31 22:36:48 +03:00
teidesu
2daf497cc4 feat: updated to TL layer 129 2021-05-31 22:36:26 +03:00
teidesu
d50a25eab9 feat(client): support comments and reply threads 2021-05-27 15:57:05 +03:00
teidesu
a0294b9a64 feat(dispatcher): fsm and scenes 2021-05-27 01:02:31 +03:00
teidesu
3845153871 docs(client): added info about "send when online" scheduled messages 2021-05-25 11:58:14 +03:00
teidesu
60162c88bc fix(client): avoid redundant help.getConfig call 2021-05-24 23:03:29 +03:00
teidesu
2dbd592206 docs(mtproxy): fixed jsdoc comment of MtProxyTcpTransport 2021-05-24 20:31:52 +03:00
teidesu
2bd94782e9 feat: mtproxy support
also some refactor in core transports
2021-05-24 20:29:18 +03:00
teidesu
76f078d931 fix(client): fixed imports in inline-utils.ts 2021-05-23 21:16:08 +03:00
teidesu
a2013acaf6 refactor: moved urlsafe base64 functions to core and exported them 2021-05-23 20:33:10 +03:00
teidesu
98fe7e3d31 refactor(dispatcher): avoid parsing unhandled updates 2021-05-23 15:38:03 +03:00
teidesu
b926178b9d refactor(dispatcher): store and lookup handlers by their type
avoids redundant loops over all registered handlers
2021-05-23 14:43:40 +03:00
teidesu
2d335af78e fix(dispatcher): reuse parsed updates in child dispatchers 2021-05-23 14:16:01 +03:00
teidesu
8e81ce21f2 fix(dispatcher): scheduled flag for new scheduled messages 2021-05-23 14:04:28 +03:00
teidesu
4599272c7c fix(client): do not catch up channels if disabled 2021-05-23 14:02:44 +03:00
teidesu
78bdc5fb01 fix(socks-proxy): remove headers field
faulty copypaste 🤷
2021-05-23 13:49:34 +03:00
teidesu
1b3f02f5f4 refactor: use Buffer.isBuffer 2021-05-23 13:42:38 +03:00
teidesu
1c4d9c1ab3 feat(core): change transport at runtime 2021-05-23 13:35:03 +03:00
teidesu
256b219247 feat: support socks4/5 proxies 2021-05-23 12:27:16 +03:00
teidesu
67a22ef1f2 feat(http-proxy): include proxy details in the error 2021-05-23 11:04:46 +03:00
teidesu
a46c6e8894 feat: support http(s) proxies 2021-05-23 01:56:59 +03:00
teidesu
649f86f3ed fix(client): avoid secondary db calls in resolvePeer 2021-05-22 18:58:17 +03:00
teidesu
126ed3016d feat: sqlite backed session for node js 2021-05-22 18:20:07 +03:00
teidesu
3ecef3bde4 feat(core): exported debounce function, implemented and exported throttle function. 2021-05-22 16:52:35 +03:00
teidesu
c228085bfe feat(client): improved min peers and short updates handling 2021-05-22 14:41:11 +03:00
teidesu
19d675e0fb feat(core): utf string length calculation optimization
only has effect on in-browser use when the Buffer is polyfilled, since with BrowserBuffer we had to write it twice.
2021-05-21 23:24:52 +03:00
teidesu
ee369a1c83 feat(core): int64 write optimization
this optimization gives about 10x performance boost on systems that support BigInt, and about 2x on those that don't
2021-05-21 22:15:25 +03:00
teidesu
c3fce178b6 feat: only update changed updates state (i.e. dont save pts if it hasnt changed) 2021-05-21 00:24:54 +03:00
teidesu
2660120e8f feat(core): support seq in updates 2021-05-19 21:21:12 +03:00
teidesu
910361ccab feat(core): implemented and exported lru map 2021-05-19 20:30:23 +03:00
teidesu
bdaa571777 feat(client): only send modified channel pts to storage 2021-05-19 17:37:11 +03:00
teidesu
82fb3d7e44 refactor: moved async lock to core and exported it 2021-05-16 23:05:53 +03:00
teidesu
9d8b09c5ff build: fixed node native addon build 2021-05-16 15:50:31 +03:00
teidesu
633f1fdf4d feat(client): editAdminRights method 2021-05-16 14:55:17 +03:00
teidesu
32ef1c59ad fix(client): handle updates in getNearbyChats method 2021-05-16 14:46:40 +03:00
teidesu
9bee00e584 fix(client): sendMediaGroup returns all sent messages 2021-05-16 14:43:23 +03:00
teidesu
e6e28399b0 refactor: prefer switches over ifs when possible 2021-05-16 14:32:36 +03:00
teidesu
f9336841ab feat(client): support inline message media contact 2021-05-16 13:49:32 +03:00
teidesu
d75071c284 refactor(client): made builder methods modify existing object instead of spreading, and also improved docs 2021-05-16 13:44:59 +03:00
teidesu
803daecdf3 feat(dispatcher): deleted messages update 2021-05-16 13:06:26 +03:00
teidesu
6e86ca464a feat(client): getCallbackAnswer method 2021-05-16 12:59:00 +03:00
teidesu
b4f731d831 feat(core): support rpc timeouts (for real) 2021-05-16 12:50:09 +03:00
teidesu
c092347b63 fix(client): fixed game highscore exports 2021-05-16 02:52:51 +03:00
teidesu
4852fe0301 feat(core): support rpc timeouts 2021-05-16 02:52:13 +03:00
teidesu
a6217c682d feat(core): support rpc timeouts 2021-05-16 02:50:43 +03:00
teidesu
fd1897651b feat(client): game high scores related methods 2021-05-16 02:21:59 +03:00
teidesu
b29883116b refactor(client): moved handling of inline messages to a separate method 2021-05-16 02:09:51 +03:00
teidesu
f45b602423 fix(tl): improved bot-only methods detection 2021-05-16 02:07:23 +03:00
teidesu
97ba7652ff refactor: use constructor check instead of instanceof where possible
this might just have introduced a bunch of errors, but ill test later
2021-05-15 21:17:49 +03:00
teidesu
f7e8051a94 refactor(client): made resolvePeer return InputPeer, and removed now redundant normalizeTo calls 2021-05-15 20:25:59 +03:00
teidesu
b634aa01eb feat(client): markChatUnread method
now i might be stupid
2021-05-12 22:37:09 +03:00
teidesu
482c71690d feat(client): markChatUnread method 2021-05-12 22:36:03 +03:00
teidesu
8cf4ce5533 feat(client): readHistory method and related bound methods 2021-05-12 22:31:29 +03:00
teidesu
4f40571455 feat(client): unpinAllMessages method 2021-05-12 22:18:08 +03:00
teidesu
79a8962284 feat(client): chat restrictions related methods 2021-05-12 22:07:00 +03:00
teidesu
30253c83c7 refactor(client): normalized MtCuteTypeAssertionError errors 2021-05-12 18:16:50 +03:00
teidesu
9be7b0d6c9 refactor: prefer switches to else-if chains 2021-05-12 17:58:45 +03:00
teidesu
6879ae945a feat(tl): generate switches instead of OR expressions
switches are WAY faster.
2021-05-11 23:27:09 +03:00
teidesu
f19fdf76b8 refactor(client): improve resolvePeer normalization 2021-05-11 23:21:35 +03:00
teidesu
8b3caeb3d0 feat(client): resolvePeerMany method 2021-05-11 22:43:11 +03:00
teidesu
46973c4830 fix(dispatcher): fixed field names because webstorm sucks 2021-05-11 22:34:13 +03:00
teidesu
5b3d7a3b09 refactor(client): normalized boolean fields 2021-05-11 22:10:14 +03:00
teidesu
d8cd13fd60 refactor(client): use ReadonlyArray for getter return types 2021-05-11 22:02:00 +03:00
teidesu
61778dba8e Merge remote-tracking branch 'origin/master' into master 2021-05-11 21:47:10 +03:00
teidesu
0f1edcfcf7 refactor: use UsersIndex and ChatsIndex types instead of bare record types 2021-05-11 21:46:59 +03:00
es3n1n
d587fcaa4e
fix typo
imagine writing macroses instead of macros
2021-05-10 22:57:09 +02:00
teidesu
0525800133 feat(client): getNearbyChats method 2021-05-10 22:51:35 +03:00
teidesu
f0eb95e4ba feat(client): chat event logs
also added support for chat locations and fixed ts errors
2021-05-10 21:51:25 +03:00
teidesu
4ad562bf06 fix(client): message media and action parsing 2021-05-10 17:57:12 +03:00
teidesu
db0d5f51e4 feat(dispatcher): filtering for service messages, by chat type and for text-only msgs 2021-05-10 17:30:05 +03:00