Commit graph

1212 commits

Author SHA1 Message Date
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