RMidhunSuresh
e13040a49e
Don't mutate flows
2022-02-03 19:40:25 +05:30
R Midhun Suresh
30cb9f6d15
Use includes instead of elaborate find
...
Co-authored-by: Bruno Windels <brunow@matrix.org>
2022-02-03 19:40:25 +05:30
RMidhunSuresh
a351a185a0
Give proper names
2022-02-03 19:40:25 +05:30
RMidhunSuresh
fe0add01ee
Use union of types for RegistrationResponse
2022-02-03 19:40:25 +05:30
RMidhunSuresh
a249a1b2b5
Implement flow seclector
2022-02-03 19:40:25 +05:30
RMidhunSuresh
6798a5e429
Move types to types.ts
2022-02-03 19:40:25 +05:30
RMidhunSuresh
3a67da8830
Refactor type
...
- Change name
- Move union type down
2022-02-03 19:40:25 +05:30
RMidhunSuresh
1d4b079d0c
Type RegistrationResponse
2022-02-03 19:40:25 +05:30
RMidhunSuresh
49ade61ef6
Fill in ts types + change names
2022-02-03 19:40:25 +05:30
RMidhunSuresh
b482d478b4
Add a tos getter
2022-02-03 19:40:25 +05:30
RMidhunSuresh
ac7108b882
Throw error instead of returning it
2022-02-03 19:40:25 +05:30
RMidhunSuresh
7bb7189c6a
No need for this export
2022-02-03 19:40:25 +05:30
RMidhunSuresh
6eba60bd75
Use typescript style that was agreed on earlier
2022-02-03 19:40:25 +05:30
RMidhunSuresh
5de1fc1453
Remove unnecessary getters
2022-02-03 19:40:25 +05:30
RMidhunSuresh
2f3865d8cc
firstStage should be a local variable
2022-02-03 19:40:25 +05:30
RMidhunSuresh
2d4c106542
REFACTOR: Inline method
2022-02-03 19:40:25 +05:30
RMidhunSuresh
a91ba4370d
Change type to show that username is optional
2022-02-03 19:40:25 +05:30
RMidhunSuresh
550a560f40
Remove space
2022-02-03 19:40:25 +05:30
RMidhunSuresh
5f11790f6b
Object.assign is overkill here
2022-02-03 19:40:25 +05:30
RMidhunSuresh
e8dbbd876c
Give default values to parameters
2022-02-03 19:40:25 +05:30
RMidhunSuresh
755f934eb2
No need to explicitly pass in inhibitLogin
2022-02-03 19:40:25 +05:30
RMidhunSuresh
5e93e048ab
Don't cache GET requests
2022-02-03 19:40:25 +05:30
RMidhunSuresh
bb6a885116
Specify what errors are ignored in options
2022-02-03 19:40:25 +05:30
RMidhunSuresh
420c12f202
Copy over username only if it exists
2022-02-03 19:40:25 +05:30
RMidhunSuresh
792d5c62c5
Return username when registration is completed
2022-02-03 19:40:25 +05:30
RMidhunSuresh
fa2e2bc8f3
Allow register without providing username
2022-02-03 19:40:25 +05:30
RMidhunSuresh
170d7a5e55
Add startRegistration method
2022-02-03 19:40:25 +05:30
RMidhunSuresh
8ab8726b8f
Implement m.login.terms stage
2022-02-03 19:40:25 +05:30
RMidhunSuresh
18e2fc1089
Pass in params to BaseRegistrationStage
2022-02-03 19:40:25 +05:30
RMidhunSuresh
a59b67ec45
Fix errors
2022-02-03 19:40:25 +05:30
RMidhunSuresh
d76a059525
Temporary fix for 401 errors
2022-02-03 19:40:25 +05:30
RMidhunSuresh
d28ab919bb
Implement dummy registration logic
2022-02-03 19:40:25 +05:30
RMidhunSuresh
eb146830ba
Implement registration endpoint
2022-02-03 19:40:25 +05:30
RMidhunSuresh
618d02d838
fetch registration flows
2022-02-03 19:40:25 +05:30
Bruno Windels
348de312f9
draft code in matrix layer to create room
2022-02-02 10:19:49 +01:00
Bruno Windels
2e3616e05d
call cursor.update during backup field migration, needs new version
2022-02-01 12:31:10 +01:00
Bruno Windels
00c5e747d2
log total backed up keys during flush operation
2022-02-01 12:30:45 +01:00
Bruno Windels
b29ecd339d
add more logging to backup storage migration
2022-02-01 12:18:28 +01:00
Bruno Windels
f4fa013ebc
mark as not configured yet when re-enabling key backup
2022-02-01 11:32:53 +01:00
Bruno Windels
f4bb420f35
mark key backup properly as disabled
2022-02-01 11:27:42 +01:00
Bruno Windels
02f06724d0
don't block reenabling 4s if already enabled
2022-02-01 11:26:00 +01:00
Bruno Windels
fd4eb6b50d
distinguish between "waiting to go online" vs "backup not configured"
2022-02-01 11:08:13 +01:00
Bruno Windels
9c599d53aa
allow to inject max delay in key backup
2022-01-31 17:31:01 +01:00
Bruno Windels
62acd458c6
also ask for new key if backup version is not found
2022-01-31 17:30:51 +01:00
Bruno Windels
17275a5390
backup 200 keys per request
2022-01-31 17:30:15 +01:00
Bruno Windels
830786b2fd
fixes and cleanup
2022-01-31 16:26:14 +01:00
Bruno Windels
6541aacf98
don't discount already finished keys in total for previous iterations
2022-01-31 16:23:48 +01:00
Bruno Windels
a757fb3696
better error handling in key backup, cleanup and not overuse observables
2022-01-31 14:37:05 +01:00
Bruno Windels
7eb0d347f5
flush key backup after coming online
2022-01-31 14:36:35 +01:00
Bruno Windels
ae5cc17290
mark all inbound sessions to be backed up again when changing version
2022-01-31 14:36:04 +01:00
Bruno Windels
a97d235cf5
flush after enabling key backup
2022-01-28 16:36:42 +01:00
Bruno Windels
eabd303c8e
count on the index if we're using one, don't always take the store
2022-01-28 15:14:58 +01:00
Bruno Windels
504f420293
make keyBackup an observable and don't have separate needs-key flag
2022-01-28 15:13:58 +01:00
Bruno Windels
eb134a6c47
only take into account non-backed up keys for counting
2022-01-28 13:18:03 +01:00
Bruno Windels
7d3e3b992b
some more typing
2022-01-28 13:14:38 +01:00
Bruno Windels
c47bdd5715
flush key backup when creating a new room key
2022-01-28 13:14:11 +01:00
Bruno Windels
b692b3ec4f
move key backup operation and flush bookkeeping inside KeyBackup
...
so we can flush from other places than Session
2022-01-28 13:13:23 +01:00
Bruno Windels
ebc7f1ecd7
needs to be awaited
2022-01-28 13:11:52 +01:00
Bruno Windels
b30db544a3
use idb key range to select non-backed up keys
2022-01-28 13:11:32 +01:00
Bruno Windels
a499689bd8
also write room key that we create ourselves with RoomKey infrastructure
...
so all keys are written in one place and the flags are always correct
2022-01-28 13:10:48 +01:00
Bruno Windels
c81dde53e7
store key source in inbound session
2022-01-28 10:03:30 +01:00
Bruno Windels
dd2b41ff95
use backup flag in key backup rather than separate store
2022-01-27 16:07:18 +01:00
Bruno Windels
48e72f9b69
replace SessionsNeedingBackup store with backup field on inbound session
2022-01-27 16:00:46 +01:00
Bruno Windels
6f1484005b
stop key backup when on the wrong version
...
users can then enter the new key in the settings to start backing up
again
2022-01-27 15:14:29 +01:00
Bruno Windels
0b4954a9ca
log key backup upload requests
2022-01-27 14:20:04 +01:00
Bruno Windels
bf08c0d850
deal with errors when enabling key backup
...
fixes #449
2022-01-27 14:19:37 +01:00
Bruno Windels
e80acd4d57
add migration when backup is enabled
2022-01-26 16:30:40 +01:00
Bruno Windels
60ed276b8a
add progress notification and cancellation to key backup flush
2022-01-26 15:19:31 +01:00
Bruno Windels
524090e27d
support idb store/index.count
2022-01-26 15:12:11 +01:00
Bruno Windels
a791641b34
move types to separate file
2022-01-26 12:10:20 +01:00
Bruno Windels
85155a43bb
cleanup types
2022-01-26 10:17:31 +01:00
Bruno Windels
cfb94206f9
move curve25519 code to separate file
2022-01-26 10:13:01 +01:00
Bruno Windels
86caa5f9b1
rename session backup to key backup to be consistent with RoomKey
2022-01-26 09:51:48 +01:00
Bruno Windels
933a1b4636
draft of session backup writing + some refactoring
2022-01-25 18:48:19 +01:00
Bruno Windels
ffece4f357
move some validation of into session backup
2022-01-25 18:48:03 +01:00
Bruno Windels
8f4e3c62ce
add hs endpoint for backup keys upload
2022-01-25 18:47:42 +01:00
Bruno Windels
290aaad63a
add sessionsNeedingBackup store
2022-01-25 18:47:27 +01:00
Bruno Windels
a3e294bb60
small cleanup
2022-01-25 18:45:39 +01:00
Bruno Windels
5d87d8bde3
change store.get return type when no value is found to undefined
...
IDBRequest.result is undefined according to the official TS type decls.
2022-01-25 18:43:44 +01:00
Bruno Windels
993a86ddb2
convert SessionBackup to typescript and pass in keyloader
2022-01-20 11:16:08 +01:00
Bruno Windels
a4d924acd1
make KeyLoader use proper olm types
2022-01-20 11:15:48 +01:00
Bruno Windels
c6c1d3b3d8
refactor logout in client so we don't need a fully loaded session
...
instead, we pass the session id in
this will make it easier to first dispose the client when leaving the
/session/<id> and just creating a client without fully loading it
to log out. This way sync is already not running anymore.
2022-01-17 16:29:01 +01:00
Bruno Windels
000c8b27c3
Merge pull request #637 from vector-im/bwindels/timeline-readme
...
add basic readme for updates in the timeline
2022-01-14 19:16:25 +01:00
Bruno Windels
a8a8355ea4
fix unit test
2022-01-14 19:05:53 +01:00
Bruno Windels
3d00881508
don't look in remoteEntries when already found
2022-01-14 19:05:30 +01:00
Bruno Windels
7197e5427f
don't emit an update when the context entry is loaded sync
...
also load context entries in parallel
2022-01-14 18:16:52 +01:00
Bruno Windels
3243ce2a90
fix unit test that failed after it finished
...
crashing the runner on node 16
2022-01-14 18:15:46 +01:00
RMidhunSuresh
cfefe6962a
Remove stray space
2022-01-14 18:17:49 +05:30
RMidhunSuresh
0ae3c60d6d
Remove .js file from rebase
2022-01-14 18:17:49 +05:30
RMidhunSuresh
35a13842af
Implement context endpoint
2022-01-14 18:17:49 +05:30
RMidhunSuresh
65f957f023
WIP
2022-01-14 18:17:49 +05:30
R Midhun Suresh
4fb0a84d0a
Return property from super
...
Co-authored-by: Bruno Windels <brunow@matrix.org>
2022-01-14 18:16:38 +05:30
RMidhunSuresh
30b8e5b5ea
use withReply
2022-01-14 18:15:26 +05:30
RMidhunSuresh
8cd430ac07
Improve test logic
2022-01-14 17:48:25 +05:30
RMidhunSuresh
75012eda9c
Fix tests
2022-01-14 17:28:31 +05:30
RMidhunSuresh
e9a49fdf74
Use hsApi mock
2022-01-14 17:07:06 +05:30
RMidhunSuresh
315acf2fbc
Remove dead code from test
2022-01-14 16:54:16 +05:30
RMidhunSuresh
310790c84e
Use mock storage
2022-01-14 16:51:06 +05:30
RMidhunSuresh
277638b107
Override methods in NonPersistedEventEntry
...
This will prevent redactions to entries fetched from hs showing "message
is being redacted" and will instead show "message is redacted"
2022-01-14 16:15:16 +05:30
RMidhunSuresh
b238357c53
Use emitUpdateForEntry
2022-01-14 16:14:42 +05:30