Bruno Windels
77d10c93d6
convert groupby and megolm decryption utils to typescript
2021-10-21 14:40:51 +02:00
Bruno Windels
66a77519d7
implement key caching in KeyLoader
...
merging session cache into it so we can better manage and recycle
keys without exposing too low-level public methods on BaseLRUCache.
Using refCount instead of inUse flag as a key can of course be used
by multiple useKey calls at the same time.
2021-10-21 11:12:54 +02:00
Bruno Windels
4fa285e85a
convert LRUCache to ts
2021-10-20 15:24:58 +02:00
Bruno Windels
cbf82fcd29
cleanup code so far
2021-10-20 15:14:17 +02:00
Bruno Windels
d7407ecf66
WIP
2021-10-20 11:39:01 +02:00
Bruno Windels
ae68264db4
don't use switch where single if/else works
2021-09-30 08:42:00 +02:00
Bruno Windels
2ef7251079
move ssssKey to e2ee prefix as well so it gets backed up too
2021-09-29 19:21:06 +02:00
Bruno Windels
cce8207870
copy Daniel's conversion of EventEmitter to TypeScript from microui
2021-09-16 10:23:03 +02:00
Bruno Windels
e105bc4237
fix lint warnings
2021-08-24 15:31:18 +02:00
Bruno Windels
577c3168e6
make queryLogin abortable
2021-08-23 15:54:06 +02:00
Bruno Windels
36f54420cf
extract RetainedValue from MemberList
2021-05-07 13:06:00 +02:00
Bruno Windels
c604c31032
use external mock for request in timeout tests
2021-04-09 15:16:43 +02:00
Bruno Windels
2341748023
add some tests to timeout code
2021-04-09 14:09:48 +02:00
Bruno Windels
f0c0c3e084
add LRU Cache utility
...
we'll use it to cache members later on
2021-03-05 17:00:55 +01:00
Bruno Windels
fb446167f6
make new sync room keys available during decryption of same sync
2021-03-02 19:39:04 +01:00
Bruno Windels
0eb2b4fe6b
simplify with toFixed here
2021-03-01 15:07:24 +01:00
Bruno Windels
636208a321
show all event type counts in device msg logging
2021-02-24 20:56:20 +01:00
Bruno Windels
364295c7a9
don't throw when container is already disposed, just dispose immediately
2021-02-22 10:48:06 +01:00
Bruno Windels
21a7ec0dff
byte size formatting
2020-11-10 17:50:20 +01:00
Bruno Windels
89c66699d7
some Lock refactoring that I didn't end up needing but still useful
2020-11-10 11:04:53 +01:00
Bruno Windels
03351d2e1f
extract platform class to put all platform specific code in
2020-10-26 15:44:11 +01:00
Bruno Windels
db5c98a706
support reassigning to null from untrack
2020-10-13 13:10:27 +02:00
Bruno Windels
3ab68ef438
throw when something tracked is not disposable, fail early
2020-10-09 17:01:54 +02:00
Bruno Windels
614ec08238
integrate grid vm with session vm, allowing to switch
2020-10-07 12:25:40 +02:00
Bruno Windels
bb58fa9b6c
dont need this anymore
2020-09-28 15:32:40 +02:00
Bruno Windels
64290d5ae6
flush promises manually in idb event handler
2020-09-25 16:53:19 +02:00
Bruno Windels
becdf656a4
nicer error messages when decrypting with a worker
2020-09-25 16:52:26 +02:00
Bruno Windels
3aead4eae2
createEnum does not take an array
2020-09-18 13:08:35 +02:00
Bruno Windels
5752cca69c
go back to bs58 and use other base64 decoder
...
as base-x isn't meant for base64
2020-09-17 17:56:05 +02:00
Bruno Windels
4ec0e67384
use base-x to support both base64 and base58
2020-09-17 11:36:54 +02:00
Bruno Windels
00eade1c16
add crypto driver with primitives needed for 4S & session backup
2020-09-17 10:19:09 +02:00
Bruno Windels
78fecd003a
cleanup
2020-09-10 18:57:29 +02:00
Bruno Windels
af36c71a59
load worker in main and pass paths so it works both on compiled and non-compiled
2020-09-10 18:41:23 +02:00
Bruno Windels
de1cc0d739
abort decrypt requests when changing room
2020-09-10 17:43:01 +02:00
Bruno Windels
0bf1723d99
Worker WIP
2020-09-10 15:40:30 +01:00
Bruno Windels
7c1f9dbed0
split up megolm decryption so it can happen in multiple steps,see README
2020-09-10 12:05:53 +02:00
Bruno Windels
af423b1c7f
ensure second promise has run in test
2020-09-03 12:17:01 +02:00
Bruno Windels
4f4808b94c
lock on senderKey while enc/decrypting olm sessions
2020-09-03 12:12:33 +02:00
Bruno Windels
f1b78a5778
extract groupBy function from olm decryption into util
2020-09-02 17:38:25 +02:00
Bruno Windels
2526198251
replace usage of readPath with ?.
2020-08-19 11:36:43 +02:00
Bruno Windels
59588dc8b5
ignore rooms with empty timelines during initial sync
2020-08-17 14:13:23 +02:00
Bruno Windels
00a85697ab
add license header in all source files
2020-08-05 18:38:55 +02:00
Bruno Windels
06fc3101e8
make login view enabled again if load view is not busy anymore
2020-05-06 23:44:52 +02:00
Bruno Windels
e17fc57d9c
fix c/p error in disposables
2020-05-06 23:31:36 +02:00
Bruno Windels
f8f13f54be
fix timeouts not working
...
and also not being handled in the Reconnector
2020-05-06 19:38:33 +02:00
Bruno Windels
54502c906f
make disposeTracked suitable to reassign member
2020-05-05 23:19:02 +02:00
Bruno Windels
1ef564bdb0
cleanup
2020-05-04 19:24:20 +02:00
Bruno Windels
31f3886eba
move EventEmitter to utils
2020-04-20 21:35:53 +02:00
Bruno Windels
001dbefbcf
stop using default exports
...
because it becomes hard to remember where you used them and where not
2020-04-20 21:26:39 +02:00
Bruno Windels
8c5411cb7d
moar WIP
2020-04-19 19:02:10 +02:00
Bruno Windels
378b75c98a
more WIP and breakage
2020-04-09 23:19:49 +02:00
Bruno Windels
ef267ca331
WIP2
2020-04-05 15:11:15 +02:00
Bruno Windels
c980f682c6
create DOMClock, abstraction of clock functionalities for DOM
2020-04-04 17:34:46 +02:00
Bruno Windels
6940e14b18
move sortedIndex out of observable as other code will want to use it too
2019-03-08 20:04:28 +01:00