Commit graph

3470 commits

Author SHA1 Message Date
RMidhunSuresh
7adce08eee add more jsdoc comments 2022-01-06 15:33:00 +05:30
RMidhunSuresh
f76217dcce Change method name 2022-01-06 15:14:13 +05:30
RMidhunSuresh
a2ab36480f Add jsdoc comment 2022-01-06 15:02:44 +05:30
RMidhunSuresh
90c9018aa4 Update comment 2022-01-06 12:07:10 +05:30
RMidhunSuresh
595deb3a3d Also copy over contextEntry from otherEntry 2022-01-06 12:07:10 +05:30
RMidhunSuresh
78f97c6532 Remove await from tests 2022-01-06 12:07:10 +05:30
RMidhunSuresh
9f1764c325 Update comment 2022-01-06 12:07:10 +05:30
RMidhunSuresh
4418700589 Add test for move code 2022-01-06 12:07:10 +05:30
RMidhunSuresh
d2c7eec8e0 No need to delete before update on map 2022-01-06 12:07:10 +05:30
RMidhunSuresh
41cf6460d0 Remove dead code 2022-01-06 12:07:10 +05:30
RMidhunSuresh
8ec75ce4bb Rename methods 2022-01-06 12:07:10 +05:30
RMidhunSuresh
a060d54468 Make tests pass 2022-01-06 12:07:10 +05:30
RMidhunSuresh
3fe824dbd1 Propagate updates 2022-01-06 12:07:10 +05:30
RMidhunSuresh
7ef79c92f5 Remove entry from map 2022-01-06 12:07:10 +05:30
RMidhunSuresh
2d5bb82077 Fix bug 2022-01-06 12:07:10 +05:30
RMidhunSuresh
6f8001bd82 Add tests 2022-01-06 12:07:10 +05:30
RMidhunSuresh
640a3fb9fa Check if contextEvent was found 2022-01-06 12:07:10 +05:30
RMidhunSuresh
05d2defa2d Rename fetchedEntries --> contextEntriesNotInTimeline 2022-01-06 12:07:10 +05:30
RMidhunSuresh
c3bef6d4d2 Rename dependents --> contextForEntries 2022-01-06 12:07:10 +05:30
RMidhunSuresh
d1818d2a57 Reuse code in getOrLoadEntry 2022-01-06 12:07:10 +05:30
RMidhunSuresh
f5fadf700e Move event to remoteEntries if needed 2022-01-06 12:07:10 +05:30
RMidhunSuresh
d924dbb723 Add explaining comment 2022-01-06 12:07:10 +05:30
RMidhunSuresh
544dca3b18 Use _updateEntry 2022-01-06 12:07:10 +05:30
RMidhunSuresh
39f68e8c2f Refactor out magic string 2022-01-06 12:07:10 +05:30
RMidhunSuresh
5c0bbdd4c8 Move methods into Timeline 2022-01-06 12:07:10 +05:30
RMidhunSuresh
51b7b21082 Implement readById() in TimelineReader 2022-01-06 12:07:10 +05:30
RMidhunSuresh
0da94e51e0 Use map and fetch from Map if available 2022-01-06 12:07:10 +05:30
RMidhunSuresh
4a6293dcdc Made code more readable 2022-01-06 12:07:10 +05:30
RMidhunSuresh
287212956b findAndUpdate instead of update 2022-01-06 12:07:10 +05:30
RMidhunSuresh
7a91dd9595 Improve comment 2022-01-06 12:07:10 +05:30
RMidhunSuresh
4a81e06e96 Track fetched entries for redactions 2022-01-06 12:07:10 +05:30
RMidhunSuresh
ea89c272b9 Support redaction changes in remoteEntries 2022-01-06 12:07:10 +05:30
RMidhunSuresh
c690de9f7b Support decryption on entries fetched from hs 2022-01-06 12:07:10 +05:30
RMidhunSuresh
7cc3d4b91a Emit updated entries 2022-01-06 12:07:10 +05:30
RMidhunSuresh
053dcf39a5 Use NonPersistedEventEntry 2022-01-06 12:07:10 +05:30
RMidhunSuresh
d191b327c6 Change comment 2022-01-06 12:07:10 +05:30
RMidhunSuresh
06864a65b7 Add contextEventId 2022-01-06 12:07:10 +05:30
RMidhunSuresh
764e38f8c9 Use 'context' instead of 'related' 2022-01-06 12:07:10 +05:30
RMidhunSuresh
696980aca4 Parse display name and avatar of event 2022-01-06 12:07:10 +05:30
RMidhunSuresh
0c42f53a2f Implement context endpoint 2022-01-06 12:07:06 +05:30
RMidhunSuresh
e901142661 await on loading related events 2022-01-06 11:59:58 +05:30
RMidhunSuresh
2265d198a6 Formatting fix 2022-01-06 11:59:58 +05:30
RMidhunSuresh
b753507b8d WIP 2022-01-06 11:59:58 +05:30
Bruno Windels
c9d11d6f19 missing otk count does not mean 0 but rather no change 2022-01-05 14:26:15 +01:00
Bruno Windels
aabfbf507e typo in comments 2022-01-05 14:25:42 +01:00
Bruno Windels
13e77636a9 export paths from vite.js as required by Platform, reorder ctor params
make it easier for SDK users
2021-12-22 17:48:08 +01:00
Bruno Windels
6247ced7b7 dont export, the ctor of these classes is not a public API 2021-12-22 17:24:58 +01:00
Bruno Windels
ba27d20b24 only pass platform into Client
simplifying the API for SDK
2021-12-22 17:20:37 +01:00
Bruno Windels
9238961992 cache olm and olm worker promise inside Platform
as prep to call them every time a Client is created
2021-12-22 17:19:10 +01:00
Bruno Windels
fe26f48c47 rename SessionContainer to Client 2021-12-22 17:09:52 +01:00
Bruno Windels
b48280905e include path/vite in sdk bundle 2021-12-22 16:31:19 +01:00
Bruno Windels
c921091957 run two vite builds for the sdk build, assets & js separately 2021-12-22 16:31:19 +01:00
Bruno Windels
ceb0b5793b somewhat works, but not everything we need
it's missing still:
 - non-css assets like the download sandbox and the olm worker aren't written for some reason
 - the es and cjs lib.js entry points end up in assets with a hash for some reason
 - in these entry files, apart from our exports, something is adding an import statement for every import that was found in the tree
 - all assets are hashed even though the config tries to disable that
 - tests are included
2021-12-22 16:31:18 +01:00
Bruno Windels
363cd5b046 include css 2021-12-22 16:31:18 +01:00
Bruno Windels
dacdc1aec6
Merge pull request #597 from vector-im/ts-conversion-matrix-ssss
Convert matrix/ssss to typescript
2021-12-09 18:54:25 +01:00
Bruno Windels
21a41e192b Merge branch 'master' into ts-conversion-matrix-net 2021-12-09 18:49:54 +01:00
Bruno Windels
5ea29297cc fix typescript errors 2021-12-09 18:44:44 +01:00
Bruno Windels
8d315f2741 Merge branch 'master' into bwindels/log-signature-failure 2021-12-09 18:34:36 +01:00
Bruno Windels
0ec86b6dc1 Merge branch 'master' into bwindels/vite-mvp 2021-12-09 18:07:17 +01:00
Bruno Windels
d9ff4a8484 sw.js is not part of the sdk yet, so just put the path in index.html 2021-12-09 17:12:08 +01:00
Bruno Windels
62827b92b7 implement placeholder replacement so it still works with minification 2021-12-09 16:37:31 +01:00
Bruno Windels
23e0d3f2ff get notification badge icon url through import now we transpile the sw 2021-12-09 15:13:05 +01:00
Bruno Windels
a4fac68393 use same method for setting version and build hash placeholder in sw
also better naming in service worker plugin
2021-12-09 14:36:12 +01:00
Bruno Windels
f934262e35 also use global hash var here 2021-12-09 12:22:17 +01:00
Bruno Windels
8e4da396ea replace global hash in given chunks 2021-12-09 12:15:17 +01:00
Bruno Windels
180681b602 manifest ends up in assets folder, index.html in parent folder 2021-12-08 18:29:32 +01:00
Bruno Windels
4c2c99fc07 actually remove lookbehind 2021-12-08 18:05:57 +01:00
Bruno Windels
c8b0354d07 dont use lookbehind in regular expressions, safari & older firefoxes choke on them 2021-12-08 18:00:37 +01:00
Bruno Windels
c87628b614 cleanup 2021-12-06 15:40:15 +01:00
Bruno Windels
5bd28da4f3 loading olm from the worker was broken, reading the wrong global 2021-12-06 15:35:08 +01:00
Bruno Windels
155cd4c9bd make olmPath absolute if it isn't already 2021-12-06 13:49:14 +01:00
RMidhunSuresh
734ecccb9c Use object instead of Record here 2021-12-03 17:34:23 +05:30
Bruno Windels
9a3f74c6fb load service worker in production mode, adjust development flag 2021-12-03 10:42:38 +01:00
RMidhunSuresh
e2abc312d3 Fix typescript errors 2021-12-03 11:48:01 +05:30
RMidhunSuresh
d6378133d8 Remove length property 2021-12-03 11:40:26 +05:30
RMidhunSuresh
49a56efa82 Remove comment 2021-12-03 11:40:26 +05:30
RMidhunSuresh
640cd88b6e make type string 2021-12-03 11:40:26 +05:30
RMidhunSuresh
66b4f9bfe5 LogItem --> ILogItem 2021-12-03 11:40:26 +05:30
RMidhunSuresh
0541cf8f2b Change object to Record 2021-12-03 11:40:26 +05:30
RMidhunSuresh
bf93bd79c9 types.js --> types 2021-12-03 11:40:26 +05:30
RMidhunSuresh
f89b937ee7 Use object instead of Record 2021-12-03 11:40:26 +05:30
RMidhunSuresh
82de3c9867 Prefer type over interface 2021-12-03 11:40:26 +05:30
RMidhunSuresh
b328c54da8 Change type from Ctor to Options 2021-12-03 11:40:26 +05:30
RMidhunSuresh
e9cea73357 Remove comment 2021-12-03 11:40:26 +05:30
R Midhun Suresh
3fbf65355d Rename Ctor to Options
Co-authored-by: Bruno Windels <brunow@matrix.org>
2021-12-03 11:40:26 +05:30
RMidhunSuresh
b5438f2ba8 Do not set content-length 2021-12-03 11:40:26 +05:30
RMidhunSuresh
4f43398db0 Fix promise resolve type 2021-12-03 11:40:26 +05:30
RMidhunSuresh
05121e32b1 Pull interface out for HomeServerApi 2021-12-03 11:40:26 +05:30
RMidhunSuresh
a8870f2d24 Extract ctor types out 2021-12-03 11:40:26 +05:30
RMidhunSuresh
238b9aafb1 Convert replay.js to ts 2021-12-03 11:40:26 +05:30
RMidhunSuresh
2e6b909173 No need to pass undefined 2021-12-03 11:40:26 +05:30
RMidhunSuresh
4bdcafad4b Rename file to types.ts 2021-12-03 11:40:26 +05:30
RMidhunSuresh
69e67ad5ac Make more functions private 2021-12-03 11:40:26 +05:30
RMidhunSuresh
2dd050bd90 Change object to Record 2021-12-03 11:40:26 +05:30
RMidhunSuresh
9b315d1564 Replace object with Record 2021-12-03 11:40:26 +05:30
RMidhunSuresh
57d24dcf90 Treat wrapper hsapi as HomeServerApi 2021-12-03 11:40:26 +05:30
RMidhunSuresh
8387215efd Add comment 2021-12-03 11:40:26 +05:30
RMidhunSuresh
885abc59be Add return types 2021-12-03 11:40:26 +05:30
RMidhunSuresh
7403cbc389 WIP - HomeServerApi.js to ts conversion 2021-12-03 11:40:26 +05:30
RMidhunSuresh
145b40f28d Fomatting fix 2021-12-03 11:40:26 +05:30
RMidhunSuresh
cf54b78af7 Convert RequestScheduler.js to ts 2021-12-03 11:40:26 +05:30
RMidhunSuresh
0aae31a450 Change year in copyright notice 2021-12-03 11:40:26 +05:30
RMidhunSuresh
f120ce50e6 Convert Reconnector.js to ts 2021-12-03 11:40:26 +05:30
RMidhunSuresh
90e3fde35d Convert MediaRepository.js to ts 2021-12-03 11:40:26 +05:30
RMidhunSuresh
ff53c2757d Convert HomeServerRequest.js to ts 2021-12-03 11:40:26 +05:30
RMidhunSuresh
e1a823400a Convert ExponentialRetryDelay.js to ts 2021-12-03 11:40:26 +05:30
RMidhunSuresh
3a24019d96 Convert common.js to ts 2021-12-03 11:40:26 +05:30
RMidhunSuresh
9688a561b3 Move interface to common.ts 2021-12-03 11:40:26 +05:30
RMidhunSuresh
2a3b13ecce Add request type 2021-12-03 11:40:26 +05:30
RMidhunSuresh
9bffd31ee3 Remove typeof 2021-12-03 11:36:51 +05:30
R Midhun Suresh
6dcebde69d Alias namespace as Olm
Co-authored-by: Bruno Windels <brunow@matrix.org>
2021-12-03 11:36:51 +05:30
RMidhunSuresh
e06a0e9e5a Use olm type from dependency 2021-12-03 11:36:51 +05:30
RMidhunSuresh
7362e38413 Convert interface to type 2021-12-03 11:36:51 +05:30
RMidhunSuresh
d2c09933c7 Type encrypted data 2021-12-03 11:36:51 +05:30
RMidhunSuresh
b2efcb9515 Convert SecretStorage.js to ts 2021-12-03 11:36:51 +05:30
RMidhunSuresh
814c0bed2e Convert recoveryKey.js to ts 2021-12-03 11:36:51 +05:30
RMidhunSuresh
e45f66a199 Convert passphrase.js to ts 2021-12-03 11:36:51 +05:30
RMidhunSuresh
dd4704b818 Fix imports 2021-12-03 11:36:49 +05:30
RMidhunSuresh
9b8ab9fd8d Convert index.js to index.ts 2021-12-03 11:35:12 +05:30
RMidhunSuresh
f9f59fec39 Convert common.js to ts 2021-12-03 11:34:09 +05:30
Bruno Windels
d91aaabeb3
Merge pull request #596 from vector-im/ts-conversion-matrix-sessioninfo
Convert matrix/sessioninfo to typescript
2021-12-02 09:29:11 +01:00
Bruno Windels
9042520916
Merge pull request #595 from vector-im/ts-conversion-matrix-push
Convert /matrix/push to typescript
2021-12-02 09:28:59 +01:00
Bruno Windels
d3ab961364
Merge pull request #593 from vector-im/ts-conversion-matrix-login
Convert /matrix/login to typescript
2021-12-02 09:28:47 +01:00
RMidhunSuresh
0c46460861 Add comment 2021-12-02 11:20:40 +05:30
RMidhunSuresh
9f82e7f7fc Add proper type 2021-12-02 11:17:41 +05:30
Bruno Windels
bb9362ee8b only import node-html-parser when running the unit tests 2021-12-01 17:26:00 +01:00
Bruno Windels
1a618dd106 only import fake-indexeddb in tests
as it is a devDependency and can end up in the legacy bundle
under circumstances
2021-12-01 17:25:07 +01:00
Bruno Windels
b469d03677 config is at same level as paths 2021-12-01 14:05:50 +01:00
Bruno Windels
de24034b22 remove secondary theme as vite puts them in one bundle 2021-12-01 13:30:58 +01:00
Bruno Windels
7e1818b285 Merge branch 'master' into bwindels/vite-mvp 2021-12-01 12:30:33 +01:00
Bruno Windels
85385a0aa7 adjust path 2021-12-01 09:43:58 +01:00
Bruno Windels
8c3ae57497 fix Iterator vs IterableIterator confusion 2021-11-30 17:05:39 +01:00
Bruno Windels
de8995fa7e fix handlers in test missing methods, now that observable list is typed 2021-11-30 16:58:56 +01:00
Bruno Windels
581ef47c78 fix conflicting sortedIndex declaration 2021-11-30 16:53:59 +01:00
Bruno Windels
fc3eb7f57f Merge branch 'master' into bwindels/typescript-observable-2 2021-11-30 16:37:43 +01:00
Bruno Windels
ef712b16f5
Merge pull request #584 from vector-im/ts-conversion-utils
Convert /utils to typescript
2021-11-30 14:13:09 +01:00
RMidhunSuresh
66fbc37ec4 Remove comments 2021-11-30 14:15:49 +05:30
RMidhunSuresh
6699b71bd5 transformer is optional 2021-11-30 13:38:25 +05:30
RMidhunSuresh
fe77b71c97 use transformer function 2021-11-30 13:28:28 +05:30
RMidhunSuresh
104590e34d Use ! in test 2021-11-29 11:48:05 +05:30
RMidhunSuresh
d981a85239 Filter token out of stack trace 2021-11-29 11:43:43 +05:30
Bruno Windels
ae7d4d07df use .name so we don't need an import 2021-11-25 15:42:36 +01:00
Bruno Windels
229c584138 don't fail login if dehydrated devices are not supported 2021-11-25 15:38:13 +01:00
RMidhunSuresh
bb18af414b Convert SessionInfoStorage.js to ts 2021-11-25 15:18:03 +05:30
RMidhunSuresh
3d9fbb685a Convert Pusher.js to ts 2021-11-25 13:23:05 +05:30
RMidhunSuresh
346e95c33c Change return type 2021-11-25 12:33:12 +05:30
RMidhunSuresh
a31860dc5f Fix formatting 2021-11-24 14:55:44 +05:30
RMidhunSuresh
c54ca168ed Convert SSOLoginHelper.js to ts 2021-11-24 14:49:08 +05:30
RMidhunSuresh
a1367f8e72 Fix password login 2021-11-24 14:00:26 +05:30
RMidhunSuresh
64037cb32a Convert TokenLoginMethod to ts 2021-11-24 13:56:47 +05:30
RMidhunSuresh
e4c443c73a Convert PasswordLoginMethod to ts 2021-11-24 13:47:26 +05:30
RMidhunSuresh
91f2a96403 Make LoginMethod an interface 2021-11-24 13:40:04 +05:30
Bruno Windels
f444160c6a feels ok without overflow margin for now 2021-11-23 14:33:27 +01:00
Bruno Windels
e4be1702c4 add comment for future test 2021-11-23 14:32:42 +01:00
Bruno Windels
7b38df45da i think this is fine now? 2021-11-23 14:31:23 +01:00
Bruno Windels
e34a92e2ec fix copyright 2021-11-23 14:30:11 +01:00
Bruno Windels
35fb84c275 remove old js lazylist 2021-11-23 14:26:15 +01:00
Bruno Windels
9557178ffb padding needs to be on ul, not scroll container, or the list blows up 2021-11-23 14:25:35 +01:00
Bruno Windels
4be2f12a14 subscribe before calling list.length 2021-11-23 14:25:22 +01:00
Bruno Windels
c64a9c1e23 snowpack/esbuild 0.9 doesn't support override keyword 2021-11-23 14:25:00 +01:00
Bruno Windels
7897ea88cd add some spaces and comments 2021-11-23 14:24:43 +01:00
Bruno Windels
c22718811f more tests for queryMove 2021-11-23 08:56:33 +01:00
Bruno Windels
3aa3b7e160 fix end growing larger than totalLength when range shrinks in case of remove 2021-11-23 08:30:52 +01:00
Bruno Windels
cf9f43ab9e WIP2 2021-11-22 20:35:57 +01:00
Bruno Windels
4a64d0ee17 WIP 2021-11-19 22:49:46 +01:00
RMidhunSuresh
d625d57aa4 Fix lastIndex
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-11-19 12:32:00 +01:00
RMidhunSuresh
bbeb909bdc Use createEnum
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-11-19 12:32:00 +01:00
RMidhunSuresh
33ac34b04e Do not break onListChanged
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-11-19 12:31:57 +01:00
RMidhunSuresh
5d54285640 Move ItemRange to separate file
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-11-19 12:12:50 +01:00
RMidhunSuresh
aee135a6cd Jsdoc fix
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-11-19 12:06:40 +01:00
RMidhunSuresh
da715c70b0 Remove forceRender
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-11-19 12:06:40 +01:00
RMidhunSuresh
e10b494f0c Improve containsIndex
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-11-19 12:06:40 +01:00
RMidhunSuresh
3ae52ea1ca Fix bug in onAdd and onRemove
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-11-19 12:06:40 +01:00
RMidhunSuresh
1165683f69 Fix onRemove
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-11-19 12:06:40 +01:00
RMidhunSuresh
83ff2dd810 Fix onAdd
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-11-19 12:06:40 +01:00
RMidhunSuresh
587dd3848e Use existing render function for initial render
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-11-19 12:06:40 +01:00
RMidhunSuresh
a02b6b68d3 Move common code from if-else
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-11-19 12:06:40 +01:00
RMidhunSuresh
168312627d Render only diff of ranges
Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-11-19 12:06:40 +01:00
RMidhunSuresh
61402e798e WIP 2 2021-11-19 12:06:40 +01:00
RMidhunSuresh
1a28b4f887 WIP 2021-11-19 12:06:40 +01:00
RMidhunSuresh
d4e923f9de Remove code from loadList
We don't need this method so best to leave it empty.

Signed-off-by: RMidhunSuresh <rmidhunsuresh@gmail.com>
2021-11-19 12:06:40 +01:00
RMidhunSuresh
8fcfd713e0 Use IAbortable 2021-11-17 20:28:44 +05:30
RMidhunSuresh
ea2842f37f Return empty string 2021-11-17 20:28:44 +05:30
RMidhunSuresh
64a9892ee2 Use generic T in LockMap 2021-11-17 20:28:44 +05:30
RMidhunSuresh
048547828d Remove type Func 2021-11-17 20:28:44 +05:30
R Midhun Suresh
a14a8c3a07 Create interface IDisposable
Co-authored-by: Bruno Windels <brunow@matrix.org>
2021-11-17 20:28:44 +05:30
RMidhunSuresh
08ef84d112 Mention return type 2021-11-17 20:28:44 +05:30
RMidhunSuresh
5a0c06473c Use undefined instead of null 2021-11-17 20:28:44 +05:30
RMidhunSuresh
1beb153f21 func --> Func 2021-11-17 20:28:44 +05:30
RMidhunSuresh
0c424cb77f Fix imports 2021-11-17 20:28:44 +05:30
RMidhunSuresh
ebd1caf6d1 Convert enum.js to ts 2021-11-17 20:28:44 +05:30
RMidhunSuresh
0e18247184 Use constant type 2021-11-17 20:28:44 +05:30
RMidhunSuresh
a945edfe07 Convert pbkdf2.js to ts 2021-11-17 20:28:44 +05:30
RMidhunSuresh
6c2aa1bf61 Convert hkdf.js to ts 2021-11-17 20:28:44 +05:30
RMidhunSuresh
afecac3e3c Convert timeout.js to ts 2021-11-17 20:28:44 +05:30
RMidhunSuresh
8a169d5ddc Convert sortedIndex.js to ts 2021-11-17 20:28:44 +05:30
RMidhunSuresh
ea0adb4407 Convert RetainedValue.js to ts 2021-11-17 20:28:44 +05:30
RMidhunSuresh
88ec1b575d Convert mergeMap.js to ts 2021-11-17 20:28:44 +05:30
RMidhunSuresh
1549d8add0 Convert LockMap to ts 2021-11-17 20:28:44 +05:30
RMidhunSuresh
c8eb7ea7ac Convert Lock.js to ts 2021-11-17 20:28:44 +05:30
RMidhunSuresh
a3460d8c2a Convert formatSize to ts 2021-11-17 20:28:44 +05:30
RMidhunSuresh
4ce7634201 Convert error.js to ts 2021-11-17 20:28:44 +05:30
RMidhunSuresh
ef53a12f7a Fix imports 2021-11-17 20:28:44 +05:30
RMidhunSuresh
7d12c2ba54 Add return types 2021-11-17 20:28:44 +05:30
RMidhunSuresh
7270918b65 Convert Disposables to typescript 2021-11-17 20:28:44 +05:30
RMidhunSuresh
dd74ed1957 Add types to disposeValue 2021-11-17 20:28:44 +05:30
RMidhunSuresh
7772643b0d Disposables.js --> Disposables.ts 2021-11-17 20:28:44 +05:30
Bruno Windels
efccc1e19e
Merge pull request #583 from vector-im/ts-conversion-logging
Convert src/logging to typescript
2021-11-17 14:37:42 +01:00
Bruno Windels
692ae25e76 remove unused method 2021-11-17 14:35:26 +01:00
Bruno Windels
b5e9eb26ba reduce size of ILogItem interface further 2021-11-17 14:33:58 +01:00
Bruno Windels
4030a4918d explicitly check for undefined 2021-11-17 13:57:11 +01:00
Bruno Windels
41a10d9697 explicitly check for undefined 2021-11-17 13:56:20 +01:00
Bruno Windels
fde0163b97 remove unneeded union type and simplify code 2021-11-17 13:53:27 +01:00
Bruno Windels
42e5fb33ba remove more non-public methods from ILogItem interface 2021-11-17 13:50:56 +01:00
Bruno Windels
526a818269 only used internally 2021-11-17 13:42:49 +01:00
Bruno Windels
afc538e875 explicitly check for type, rather than truthy 2021-11-17 12:58:08 +01:00
Bruno Windels
74fb15e426 add future todo note 2021-11-17 12:54:44 +01:00
Bruno Windels
46dd78162f no need to dig into internals here 2021-11-17 12:54:32 +01:00
Bruno Windels
276d8d4a42 check for undefined, no need for ! 2021-11-17 12:39:57 +01:00
Bruno Windels
b1d20178f8 add explicit void return type 2021-11-17 12:37:50 +01:00
Bruno Windels
5f362cbdbd remove dead code 2021-11-17 11:54:29 +01:00
Bruno Windels
695996d6e2 add ILogger and ILogExport interface, to give export correct return type
also move logging related types to own file
2021-11-17 11:39:12 +01:00
RMidhunSuresh
1b13f32d94 Remove resolved todo comment 2021-11-17 15:39:21 +05:30
Bruno Windels
3ee7e73ff0 item is optional here 2021-11-17 11:08:44 +01:00
Bruno Windels
90d7b73dd4 non-persisted queued items don't have an id yet, find them by ref equality 2021-11-17 11:08:29 +01:00
Bruno Windels
f93bdd962a might as well use generic here 2021-11-17 10:50:55 +01:00
Bruno Windels
1942c31eff still finish item when not returning from sync callback 2021-11-17 10:42:54 +01:00
RMidhunSuresh
d01271fb15 _run return T or void depending on boolean 2021-11-17 13:22:19 +05:30
RMidhunSuresh
07a1130db3 children can be array of ISerializedItem 2021-11-17 12:02:12 +05:30
RMidhunSuresh
835da58b53 Remove ! 2021-11-17 11:59:50 +05:30
R Midhun Suresh
9c8f96e233
value is optional
Co-authored-by: Bruno Windels <brunow@matrix.org>
2021-11-17 11:43:59 +05:30
RMidhunSuresh
b0ab8cd77f Space before { 2021-11-17 11:40:43 +05:30
RMidhunSuresh
8fce29caf7 Explicitly check for undefined 2021-11-17 11:38:33 +05:30
RMidhunSuresh
14eaa57434 No need for type assertion here 2021-11-16 13:14:11 +05:30
RMidhunSuresh
58105824d9 Fix error in reduce 2021-11-16 13:08:13 +05:30
RMidhunSuresh
4704a70cb7 Remove todo comment 2021-11-16 13:06:47 +05:30
RMidhunSuresh
34a8463bf9 Fix jsdoc return type 2021-11-16 12:43:23 +05:30
RMidhunSuresh
e339e730f4 Remove todo comment 2021-11-16 12:42:50 +05:30
RMidhunSuresh
286747c23c Add type annotation for ctor 2021-11-16 12:41:03 +05:30
RMidhunSuresh
3ee1607298 Convert utils to typescript 2021-11-16 12:32:49 +05:30
RMidhunSuresh
4161d31642 Convert NullLogger to typescript 2021-11-16 12:23:06 +05:30
RMidhunSuresh
4c1d7a8f2d Use generics over returning unknown 2021-11-15 22:47:38 +05:30
Bruno Windels
2da450d69d log signature verification failure in logger, not console 2021-11-15 15:27:57 +01:00
RMidhunSuresh
fe69f84c85 Use undefined in LogItem.serialize 2021-11-15 19:32:16 +05:30
RMidhunSuresh
ba5f2032ba Make properties in LogItem optional, not null 2021-11-15 19:17:49 +05:30
RMidhunSuresh
7097ba07d1 Replace LogLabelOrNull type with undefined 2021-11-15 18:59:33 +05:30
RMidhunSuresh
30a384fe1e Make LogFilter optional 2021-11-15 18:44:25 +05:30
RMidhunSuresh
520e0f1b89 Use interface ILogItem 2021-11-15 17:29:08 +05:30
RMidhunSuresh
a7d059b3ed Fix imports 2021-11-14 19:42:18 +05:30
RMidhunSuresh
bba44abf52 Convert console logger to ts 2021-11-14 16:24:16 +05:30
RMidhunSuresh
39d0708cca Add comment 2021-11-14 15:58:51 +05:30
RMidhunSuresh
2d8b719ab0 Add void return types as well 2021-11-14 15:55:42 +05:30
RMidhunSuresh
5efa27c2a3 Add more type annotations 2021-11-14 15:48:59 +05:30
RMidhunSuresh
67e8fc0c43 Add return types to methods in BaseLogger 2021-11-12 23:27:35 +05:30
RMidhunSuresh
8e42e3f21f Add types to returns in LogFilter.ts 2021-11-12 23:17:21 +05:30
RMidhunSuresh
29a8260514 Add explicit types for return in methods 2021-11-12 23:12:15 +05:30
RMidhunSuresh
8c7a765e11 Convert IDBLogger to ts 2021-11-12 15:06:21 +05:30
RMidhunSuresh
f3d0f88f95 Make error public 2021-11-12 15:06:11 +05:30
RMidhunSuresh
2ddd2d16ed IDBLogger.js --> IDBLogger.ts 2021-11-11 16:50:46 +05:30
RMidhunSuresh
9fed2ca41b Use undefined instead of null 2021-11-11 16:25:14 +05:30
RMidhunSuresh
eb7c5c4437 Use undefined only instead of both undefined and null 2021-11-11 16:08:25 +05:30
RMidhunSuresh
09851600f7 Remove unwanted types 2021-11-11 15:35:51 +05:30
RMidhunSuresh
425a3c85a9 Make error prop private and expose via getter 2021-11-11 13:24:52 +05:30
RMidhunSuresh
0f7a78ee25 Make return type explicit 2021-11-11 13:05:12 +05:30
RMidhunSuresh
cd7dccd804 Move interface to top 2021-11-10 19:13:35 +05:30
RMidhunSuresh
7a68c971aa Make field readonly 2021-11-10 19:07:24 +05:30
RMidhunSuresh
cfa7708b57 Use type imports 2021-11-10 18:51:46 +05:30
Bruno Windels
c47f872f6f
Merge pull request #578 from vector-im/fix-progressbar
Fix progressbar not working on attachment uploads
2021-11-10 11:17:02 +01:00
RMidhunSuresh
ef2aad8956 Annotate LogFilter 2021-11-10 15:04:07 +05:30
RMidhunSuresh
ab126729e0 Use LogLevel as type instead of number 2021-11-10 14:49:59 +05:30
RMidhunSuresh
e3c85c585e Log callbacks can return more than Promises 2021-11-10 14:42:43 +05:30
RMidhunSuresh
0b4eca4724 Create alias for LogLevel | null 2021-11-10 14:29:23 +05:30
RMidhunSuresh
142d3ef543 Split LogItemValues into union of types 2021-11-10 13:45:37 +05:30
RMidhunSuresh
ceb52eedaf Fix imports and add type annotations 2021-11-10 12:36:56 +05:30
RMidhunSuresh
772f7a2757 Account for duration being null 2021-11-10 12:17:43 +05:30
RMidhunSuresh
db792ab5a9 Add type annotations to LogItem 2021-11-10 12:06:50 +05:30
RMidhunSuresh
97ec680af2 Remove .js files 2021-11-10 12:06:22 +05:30
RMidhunSuresh
ba4d5453a2 Move type LogCallback to LogItem 2021-11-10 12:05:29 +05:30
RMidhunSuresh
2a5d30d749 Convert to enum 2021-11-09 22:32:02 +05:30
RMidhunSuresh
55401a746c Move type alias to LogItem
and add more type annotations
2021-11-09 22:28:26 +05:30
RMidhunSuresh
8cbc81b8bb Annotate method arguments 2021-11-09 20:57:47 +05:30
RMidhunSuresh
7893a121c0 Initialize in field 2021-11-09 17:36:18 +05:30
RMidhunSuresh
4c5d028509 any --> unknown 2021-11-09 17:34:16 +05:30
RMidhunSuresh
eef116e26b annotate labelOrValues 2021-11-09 17:19:46 +05:30
RMidhunSuresh
8fba3f4ca9 Add explaining comment 2021-11-09 15:39:24 +05:30
RMidhunSuresh
839d3fb689 Throw on export() in ConsoleLogger 2021-11-09 13:53:07 +05:30
RMidhunSuresh
377cc4ca1f Make BaseLogger abstract 2021-11-09 13:52:41 +05:30
RMidhunSuresh
030c46264b type annotate fields 2021-11-09 13:00:37 +05:30
RMidhunSuresh
dad37dece3 .js --> .ts 2021-11-09 11:46:05 +05:30
RMidhunSuresh
57e2c4ea45 No need for handler to be async 2021-11-08 22:20:56 +05:30
RMidhunSuresh
c1a8ffd814 respond with only for GET requests 2021-11-08 18:03:20 +05:30
Bruno Windels
e9586711e0 add scrollbar when > 5 lines in composer 2021-11-08 11:19:24 +01:00
Bruno Windels
16918ddb7d ie11 build wip 2021-11-08 11:12:13 +01:00
Bruno Windels
b65782e13c ignore tsc errors on vite-specific imports
or not understood by tsc in any case
2021-11-08 11:10:34 +01:00
Bruno Windels
923a1a2057 use vite define option to inject version number everywhere 2021-11-08 11:10:34 +01:00
Bruno Windels
216afd45cc vite/rollup plugin to inject and transform manifest & service worker 2021-11-08 11:10:34 +01:00
Bruno Windels
01712c3f23 make tests run again 2021-11-08 11:10:34 +01:00
Bruno Windels
b6fda8865f make all dependencies use vite and remove post-install script / lib dir 2021-11-08 11:10:34 +01:00
Bruno Windels
db3e8a9c6b rearrange assets and main.js to make them run with vite 2021-11-08 11:10:23 +01:00
RMidhunSuresh
d1491cc203 More checks before returning 2021-11-08 15:11:41 +05:30
RMidhunSuresh
d31371b486 Return on upload in sw 2021-11-08 14:37:32 +05:30
Bruno Windels
faa0246e28 setup new dehydrated device when claiming one 2021-11-05 20:53:04 +01:00
Bruno Windels
0749073120 clone key as olm clears it 2021-11-05 20:52:50 +01:00
Bruno Windels
2dccd36a6d
Merge pull request #575 from vector-im/bwindels/composer-layout-improvements
Composer layout improvements
2021-11-05 19:24:34 +01:00
Bruno Windels
23494ab630 bottom align send button, adjust paddings 2021-11-05 19:05:52 +01:00
Bruno Windels
2f15c9a4a7 show either attachment or send button, depending on composer value 2021-11-05 19:05:35 +01:00
Bruno Windels
c3203fdacd explain this value 2021-11-05 19:05:09 +01:00
Bruno Windels
44e7e25cab clear height while sending or clearing, also fix #572 in the process 2021-11-05 18:36:59 +01:00
Bruno Windels
fc1b9abe66 don't add line when hitting enter to send 2021-11-05 18:36:38 +01:00
Bruno Windels
365c8d0953
Merge pull request #566 from vector-im/composer-improvements
Support for multiline messages
2021-11-05 18:20:02 +01:00
Bruno Windels
8ffd98162c don't make the composer shrink for now, timeline loses scroll position 2021-11-05 17:48:44 +01:00
Bruno Windels
c671596c6f only schedule one resize callback per frame 2021-11-05 17:48:08 +01:00
Bruno Windels
b22437840d don't set explicit height, rely on rows=1 for default height 2021-11-05 17:47:20 +01:00
Bruno Windels
4c5fe824c2
Merge pull request #569 from vector-im/fix-400
Show redacted tile for redacted messages in encrypted rooms
2021-11-05 15:57:36 +01:00
Bruno Windels
1fee773313
Merge pull request #571 from vector-im/fix-570
Make progress bar work for image uploads in Chrome
2021-11-05 15:56:33 +01:00
Bruno Windels
781147bf0e add some comments and rename for clarity 2021-11-05 15:42:07 +01:00
RMidhunSuresh
a4cd40c2f8 Keep filling gap until sibling changes 2021-11-05 17:25:29 +05:30
RMidhunSuresh
96a2dd7c72 Add event handler before executing open
Signed-off-by: RMidhunSuresh <hi@midhun.dev>
2021-11-04 00:02:50 +05:30
RMidhunSuresh
f6b7dcbad7 Show redacted tile 2021-11-03 20:03:47 +05:30
Bruno Windels
ee9c9b33ca fix lint again 2021-11-03 02:36:53 +01:00
Bruno Windels
b2d8f5f023 fix lint 2021-11-03 02:35:22 +01:00
Bruno Windels
790b9cbc13 require a flag to enable account setup during login
as it blocks login from progressing, any sdk usage should enable
to indicate they are listening for the AccountSetup status.
2021-11-03 02:28:01 +01:00
Bruno Windels
bffe34fe0a await write key 2021-11-03 02:20:27 +01:00
Bruno Windels
a8022077f6 add minimal logging 2021-11-03 02:20:11 +01:00
Bruno Windels
80a98f04c7 pickle clears the key, so slice it before calling so we can reuse for 4s 2021-11-03 02:08:27 +01:00
Bruno Windels
8a36eb4532 check mac of dehydrated key to match default 4s key mac before adopting 2021-11-03 02:07:57 +01:00
Bruno Windels
567cdd5510 WIP for enabling session backup from dehydration key 2021-10-29 19:17:31 +02:00
Bruno Windels
6d9d8797fe use same UI as in settings to pick between recovery key and passphrase 2021-10-29 16:40:35 +02:00
Bruno Windels
44a26fd340 key backup: add disable button,and enabling add dehydrated device option 2021-10-29 15:48:28 +02:00
Bruno Windels
3b3751c827 remove dehydrated device test button from settings 2021-10-29 15:47:14 +02:00
Bruno Windels
6273d723f1 fix typo 2021-10-29 15:24:24 +02:00
RMidhunSuresh
6863fef7e5 Resize composer with text
Signed-off-by: RMidhunSuresh <hi@midhun.dev>
2021-10-29 17:00:02 +05:30
RMidhunSuresh
3a6e74ae1c Add css style
Signed-off-by: RMidhunSuresh <hi@midhun.dev>
2021-10-29 15:11:34 +05:30
RMidhunSuresh
16bec0a656 Convert input to textarea
Signed-off-by: RMidhunSuresh <hi@midhun.dev>
2021-10-29 15:11:12 +05:30
Bruno Windels
c3dfdde626 be forgiving when dispose has already been called 2021-10-28 12:04:42 +02:00
Bruno Windels
544019f67d ensure olm Account in dehydrated device is freed on error 2021-10-28 11:52:32 +02:00
Bruno Windels
bef12c7a8f prevent double free on olm account when logging out
by ensuring we only dispose the e2ee/Account once, as well as
the Session and other classes
2021-10-28 11:48:25 +02:00
Bruno Windels
3ef37c15c7 remove import session button as it's not supported anymore 2021-10-28 11:47:54 +02:00
Bruno Windels
68a6113c26 add logout button to session load error screen 2021-10-28 11:47:31 +02:00
Bruno Windels
cbccca20d0 remove leftover logging 2021-10-27 18:09:31 +02:00
Bruno Windels
e3378d5636 use correct device_id in signatures for dehydrating device
completely replace device id for dehydrating device
so we don't have to pass it down the stack
2021-10-27 18:08:50 +02:00
Bruno Windels
c89e414bb5 WIP3 2021-10-27 15:08:53 +02:00
Bruno Windels
718b410253 WIP2 2021-10-27 10:26:36 +02:00
Bruno Windels
faf4ea6434 WIP 2021-10-26 18:47:46 +02:00
Bruno Windels
7ef19e0ead add export logs button when session fails to load 2021-10-26 15:30:52 +02:00
Bruno Windels
0f0719eaa2
Merge pull request #560 from vector-im/bwindels/logout
Add Log out
2021-10-26 15:10:21 +02:00
Bruno Windels
82a0c1024c return static string when member is missing and add logging 2021-10-26 15:08:51 +02:00
Bruno Windels
af85fe3892 confirm before logging out 2021-10-26 14:48:37 +02:00
Bruno Windels
f998041748 add logout button in settings 2021-10-26 12:49:31 +02:00
Bruno Windels
2b884e73db remove action buttons on session picker
and now that we're adding logout, none of them are something we want to support really
2021-10-26 11:43:38 +02:00
Bruno Windels
67dd929951 put key session check in method 2021-10-26 11:14:46 +02:00
Bruno Windels
ab2f15b5a2 prevent cache hiding better keys in storage (+ tests) 2021-10-25 19:17:13 +02:00
Bruno Windels
3c2604b384 test that sessions get free'd correctly 2021-10-25 17:33:33 +02:00
Bruno Windels
74e8bc3bda write unit tests 2021-10-25 17:19:48 +02:00
Bruno Windels
6bbce06d93 start writing tests for key loader 2021-10-22 19:01:20 +02:00
Bruno Windels
22361bdf42 don't need to dispose room keys anymore, they are owned by the loader 2021-10-22 18:08:09 +02:00
Bruno Windels
076f450ec7 this can be const 2021-10-22 18:01:26 +02:00
Bruno Windels
6d8ec69a4d fix lint 2021-10-22 18:01:17 +02:00
Bruno Windels
b7e3a54e15 remove now usused code 2021-10-22 17:51:00 +02:00
Bruno Windels
2943cb525f add comment about possible future optimization 2021-10-22 17:50:45 +02:00
Bruno Windels
1278288a42 cleanup RoomKey to changes and better naming 2021-10-22 17:50:30 +02:00
Bruno Windels
66a93ee108 adapt Session and RoomEncryption to megolm/Decryption API changes 2021-10-22 17:48:53 +02:00
Bruno Windels
ac23119838 convert SessionDecryption to TS and adapt to use KeyLoader 2021-10-22 17:48:35 +02:00
Bruno Windels
b55930f084 convert ReplayDetectionEntry to typescript 2021-10-22 17:47:29 +02:00
Bruno Windels
d6e243321b convert megolm/Decryption to typescript and adapt to KeyLoader 2021-10-22 17:46:39 +02:00
Bruno Windels
2ddb3fbf72 cleanup 2021-10-22 17:45:55 +02:00
Bruno Windels
45dc2162dc fix unit tests 2021-10-22 17:30:20 +02:00
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
3bafc89855 remove unused draft code 2021-10-20 15:25:11 +02:00
Bruno Windels
4fa285e85a convert LRUCache to ts 2021-10-20 15:24:58 +02:00
Bruno Windels
041cedbc58 fix typescript extension change 2021-10-20 15:24:39 +02:00
Bruno Windels
cbf82fcd29 cleanup code so far 2021-10-20 15:14:17 +02:00
Bruno Windels
5dc0c8c0b3 make 'better' better 2021-10-20 13:38:54 +02:00
Bruno Windels
d7407ecf66 WIP 2021-10-20 11:39:01 +02:00
Melroy van den Berg
a20fe2b5a6
Add HTML title & icon
Add missing HTML title and icon
2021-10-06 20:38:39 +02:00
Danila Fedorin
3d2c74a760 Add type annotations to SortedArray 2021-10-03 22:19:46 -07:00
Danila Fedorin
7b2e452cd5 Rename SortedArray to TypeScript 2021-10-03 22:19:46 -07:00
Danila Fedorin
1363af24a7 Add type annotations to MappedList 2021-10-03 22:19:46 -07:00
Danila Fedorin
84187ce109 Make updater optional in BaseObservableList 2021-10-03 22:19:44 -07:00
Danila Fedorin
0466b49520 Rename MappedList to TypeScript 2021-10-03 22:18:12 -07:00
Danila Fedorin
3b131f2db6 Add type annotations to ConcatList 2021-10-03 22:18:12 -07:00
Danila Fedorin
588da9b719 Relax types on BaseObservableList and add helper for tests 2021-10-03 22:18:12 -07:00
Danila Fedorin
ddca467e30 Rename ConcatList to TypeScript 2021-10-03 22:18:12 -07:00
Danila Fedorin
8466a910da Add type annotations to AsyncMappedList 2021-10-03 22:18:12 -07:00
Danila Fedorin
0e6c59983f Generalize BaseMappedList to allow mappers to promises 2021-10-03 22:18:10 -07:00
Danila Fedorin
e6de873b6e Rename AsyncMappedList to TypeScript 2021-10-03 22:16:46 -07:00
Danila Fedorin
b148f3ca9e Add type annotations to ObservableArray 2021-10-03 22:16:46 -07:00
Danila Fedorin
348a9c83f5 Rename ObservableArray to TypeScript 2021-10-03 22:16:46 -07:00
Bruno Windels
cc58d27122 the build currently does not like override for some reason 2021-10-01 14:07:58 +02:00
Bruno Windels
c1d20cb9f9 also call this -Path 2021-10-01 12:56:36 +02:00
Bruno Windels
d2eeaab5f5 get assets paths with import "asset?url" specifically for vitejs 2021-10-01 12:49:41 +02:00
Bruno Windels
aac0e74b9d also export LoadStatus 2021-10-01 12:49:30 +02:00
Bruno Windels
f89d169ef3 provide library entry point that provides convenient reexports of the public classes 2021-10-01 11:30:42 +02:00
Bruno Windels
1c06e36c1c add override keyword 2021-10-01 10:07:17 +02:00
Bruno Windels
3de3481765 prefer optional syntax over '| null' 2021-10-01 10:05:56 +02:00
Bruno Windels
6b50a63e95 missing space 2021-10-01 10:02:32 +02:00
Bruno Windels
393e2f809e make subscription handle return undefined, so we can reassign optional members in one statement 2021-10-01 10:01:52 +02:00
Bruno Windels
a0f443ccc3
Merge pull request #521 from DanilaFe/typescript-observable
Start migrating Observable code to TypeScript.
2021-10-01 09:54:29 +02:00
Bruno Windels
e42739ec81 scroll room list to top when entering query first 2021-09-30 17:19:42 +02:00
Bruno Windels
89add8b684 fix sssskey not being migrated properly 2021-09-30 10:18:03 +02:00
Bruno Windels
d10d27c1d6 clear relations for room when forgetting room 2021-09-30 09:49:45 +02:00
Bruno Windels
4cebe26186
Merge pull request #523 from vector-im/bwindels/clear-cache-after-515
clear history cache to purge potential timeline corruption from #515
2021-09-30 09:41:24 +02:00
Bruno Windels
f8f4bb4eac
Merge pull request #520 from vector-im/bwindels/fix-139
Keep backup of e2ee identity in localStorage when idb gets cleared
2021-09-30 09:28:56 +02:00
Bruno Windels
42f1603d81 use correct prefix to remove local storage value 2021-09-30 09:25:35 +02:00
Bruno Windels
ae68264db4 don't use switch where single if/else works 2021-09-30 08:42:00 +02:00
Bruno Windels
ccda93cc82 remove leftover logging 2021-09-30 08:40:49 +02:00
Bruno Windels
3556878a1e clear history cache to purge potential timeline corruption from #515 2021-09-30 08:37:33 +02:00
Danila Fedorin
c80dfb10a2 Add type annotations to BaseMappedList 2021-09-29 18:41:30 -07:00
Danila Fedorin
99164eb0d8 Rename BaseMappedList to TypeScript 2021-09-29 18:17:38 -07:00
Danila Fedorin
bf53449f66 Add type annotations to common 2021-09-29 18:13:49 -07:00
Danila Fedorin
e53f3d23d5 Rename common to TypeScript 2021-09-29 18:10:09 -07:00
Danila Fedorin
64ba656043 Update ListView and TimelineListView 2021-09-29 18:08:13 -07:00
Danila Fedorin
414280ada9 Add type annotations to BaseObservableList 2021-09-29 18:05:30 -07:00
Danila Fedorin
3952c3b969 Rename BaseObservableList to TypeScript 2021-09-29 17:46:51 -07:00
Danila Fedorin
ab6ce62551 Add type annotations to ObservableValue 2021-09-29 17:43:17 -07:00
Danila Fedorin
a7360f409e Rename ObservableValue to TypeScript 2021-09-29 17:42:57 -07:00
Danila Fedorin
319027e2e3 Add type annotations to BaseObservable 2021-09-29 17:42:57 -07:00
Danila Fedorin
d73dea797a Rename BaseObservable to TypeScript 2021-09-29 17:18:22 -07:00
Bruno Windels
e0b9a3fa50 create e2ee identity also when storage got cleared without backup 2021-09-29 20:07:42 +02:00
Bruno Windels
a1c66738db migration to initialize & restore e2ee identity backup 2021-09-29 19:39:26 +02:00
Bruno Windels
3a064d6796 a IDBRequest when opening the database does not have a source 2021-09-29 19:21:42 +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
77bd0d3f3c store e2ee session values as well in localStorage 2021-09-29 11:49:58 +02:00
Bruno Windels
004aa5d3dc
Merge pull request #519 from vector-im/bwindels/rickfixes
Fix immediate errors for sdk usage
2021-09-29 11:12:17 +02:00
Bruno Windels
e31d3abc97 fix ts errors in TimelineEventStore unit tests 2021-09-28 14:20:54 +02:00
Bruno Windels
ec2f1b9833 add unit tests for findExistingKeys 2021-09-28 14:20:21 +02:00
Bruno Windels
edc3a1d33c convert storage mock to TS and add utility for mock raw database 2021-09-28 14:19:59 +02:00
Bruno Windels
9036b21b5c don't interpret hex as decimal when decoding the key
this fixes #515 as it was causing the gap not to be closed,
because the fragment id was never equal.
2021-09-28 11:34:55 +02:00
Bruno Windels
0846fcc05d add more logging during gap filling 2021-09-27 16:34:12 +02:00
Bruno Windels
f55f450850 fix findExistingKeys too many (existing but not requested) keys 2021-09-27 16:27:52 +02:00
Bruno Windels
6982f55cd7 move over word-break lines
this didn't get moved over when converting the timeline tile css to css grid
2021-09-24 18:42:47 +02:00
Bruno Windels
71bd797dd4 automatically position popups using a simpler algorithm 2021-09-24 18:28:06 +02:00
Bruno Windels
b75e2fe0ce decode straight to EventKey object 2021-09-24 15:40:33 +02:00
Bruno Windels
0d798178b0 log neighbor fragment id when closing gap 2021-09-23 18:50:40 +02:00
Bruno Windels
c6ed0abfd7 eventIds is missing 2021-09-23 18:49:23 +02:00
Bruno Windels
e6f7f213ec don't (re)link fragments in fill, close gap if overlap w linked fragment 2021-09-23 18:02:05 +02:00
Bruno Windels
45917eae1d
Merge pull request #494 from vector-im/DanilaFe/backfill-changes
Unit tests for GapWriter, using a new timeline mock utility
2021-09-23 10:15:37 +02:00
Bruno Windels
4b7cb6da9e make backfill limit explicit 2021-09-23 10:10:22 +02:00
Bruno Windels
dd71fdbe08 add comment 2021-09-23 10:04:58 +02:00
Bruno Windels
498c00fe3c no need for try catch here as we already catch in getKeys 2021-09-22 10:38:29 +02:00
Bruno Windels
ac5a4c2bc6 pass log item everywhere to tryInsert 2021-09-22 10:33:40 +02:00
Bruno Windels
b58e10521f don't log tryInsert failures anymore as everything is logged in Store 2021-09-22 10:23:28 +02:00
Bruno Windels
1963635dd7 also log index keys for a value when write fails in Store 2021-09-22 10:22:52 +02:00
Bruno Windels
a19d93dbef don't swallow anything that isn't a request error 2021-09-22 09:36:26 +02:00
Bruno Windels
704d7b32da add tests 2021-09-21 21:04:29 +02:00
Bruno Windels
6cded5319a change timelineEventStore.insert to tryInsert 2021-09-21 21:04:10 +02:00
Bruno Windels
12add19c31 add Store.tryAdd, which prevent abort on ConstraintError 2021-09-21 21:03:29 +02:00
Bruno Windels
0d486a14f6 add the logger property to the null logger as well, forgot this before 2021-09-21 21:01:35 +02:00
Danila Fedorin
92dcc6c980 Remove duplicated lines 2021-09-21 09:39:09 -07:00
Bruno Windels
b8548afb71 export temporary vm typ def 2021-09-21 10:41:01 +02:00
Bruno Windels
07c6bf7055
Merge pull request #503 from vector-im/bwindels/fix-reactions-vm-null
use mapped value rather than reading parent vm again
2021-09-21 10:09:05 +02:00
Bruno Windels
a020febf8d use mapped value rather than reading parent vm again 2021-09-21 10:02:17 +02:00
Danila Fedorin
a3a743881d Make test adjustments requested in PR. 2021-09-20 19:37:39 -07:00
Danila Fedorin
50c8b995c3 Undo GapWriter algorithm changes 2021-09-20 18:41:01 -07:00
Danila Fedorin
9f6c48cf0c Merge branch 'master' into DanilaFe/backfill-changes 2021-09-17 15:19:16 -07:00
Danila Fedorin
6d84cc0a81 Fix util import 2021-09-17 14:51:20 -07:00
Danila Fedorin
820b048272 Finish up the more difficult tests 2021-09-17 10:57:51 -07:00
Bruno Windels
53a0d29244 example how to get more context for the failure of a write operation 2021-09-17 18:25:28 +02:00
Bruno Windels
f5467a653c fix stores returning the delete promise which isn't returned anymore
I checked these aren't awaited in any js file
2021-09-17 18:24:24 +02:00
Bruno Windels
ad45016b87 process write errors on complete or abort in transaction 2021-09-17 18:23:31 +02:00
Bruno Windels
533b0f40d3 pass write errors in a store to the transaction 2021-09-17 18:21:48 +02:00
Bruno Windels
aeedb948cc pass logger to Storage and make it available in Transaction 2021-09-17 18:19:26 +02:00
Danila Fedorin
82c35355b6 Start translating GapWriter tests to using MockTimeline 2021-09-16 23:54:13 -07:00
Danila Fedorin
7d27b46873 Make the response of TimelineMock look like a room sync response 2021-09-16 23:53:38 -07:00
Danila Fedorin
bcfca9ad9a Make event ID function public 2021-09-16 21:53:56 -07:00
Bruno Windels
41089e2806 remove leftover logging 2021-09-16 22:30:03 +02:00
Bruno Windels
c4477a81ea don't create the avatar node when we won't need it 2021-09-16 22:29:48 +02:00
Bruno Windels
f02d52ce4c with !interactive, an array of an array is not a valid Child value
why didn't this fail before?
2021-09-16 22:29:13 +02:00
Bruno Windels
bae8dc7dd7 changes should be true when replyVM is not set and we set an entry 2021-09-16 22:28:19 +02:00
Bruno Windels
e978202f36 add min-height: 0 2021-09-16 17:48:29 +02:00
Bruno Windels
9a9b206bf5
Merge pull request #486 from vector-im/bwindels/fix-scroll-jumps
Fix scroll jumps and loading of gaps not at top of the timeline
2021-09-16 17:14:17 +02:00
Bruno Windels
a62627f6db fix lint warning 2021-09-16 16:39:17 +02:00
Bruno Windels
381a12db20 load 20 entries initially in timeline, otherwise it flickers a bit 2021-09-16 16:34:13 +02:00
Bruno Windels
898d32c6da use quotes in css url path 2021-09-16 16:34:01 +02:00
Bruno Windels
6ec2712eec remove debug logging 2021-09-16 16:33:09 +02:00
Bruno Windels
c9f79343ef remove obsolete comment 2021-09-16 16:32:59 +02:00
Bruno Windels
b1994918fe
Merge pull request #488 from vector-im/bwindels/list-and-timeline-view-to-ts
Convert ListView and TimelineView to typescript
2021-09-16 16:08:34 +02:00
Bruno Windels
a6bcfac597 rename UIView to IView 2021-09-16 15:58:48 +02:00
Bruno Windels
b71a26b04a avoid using ! in ListView 2021-09-16 15:56:57 +02:00
Bruno Windels
81ec8dca8c improve typing in utils 2021-09-16 15:51:45 +02:00
Bruno Windels
d9ddeaf107 fix TS errors in TimelineView 2021-09-16 15:49:03 +02:00
Bruno Windels
00aa40ea7b copy Daniel's conversion of TemplateView to TypeScript from microui
with some minor type adjustments
2021-09-16 15:46:02 +02:00
Bruno Windels
ea4d833a43 reuse ViewNode in Child type 2021-09-16 15:39:25 +02:00
Bruno Windels
040efa970c make className binding always have a value (may be undefined through T) 2021-09-16 15:39:17 +02:00
Bruno Windels
68fb093c9e don't require mount args in mountView, like in UIView interface 2021-09-16 15:23:48 +02:00
Bruno Windels
060f4aa297 change extension in preparation for TS conversion 2021-09-16 14:02:36 +02:00
Bruno Windels
65f69a121b copy Daniel's conversion of BaseUpdateView to TypeScript from microui 2021-09-16 14:01:33 +02:00
Bruno Windels
69672dd99c copy Daniel's conversion of html.js to TypeScript from microui 2021-09-16 10:45:06 +02:00
Bruno Windels
cce8207870 copy Daniel's conversion of EventEmitter to TypeScript from microui 2021-09-16 10:23:03 +02:00
Danila Fedorin
bbd174cd67 Add a class to mock timeline requests 2021-09-15 16:15:18 -07:00
Bruno Windels
2396a84c99 leave out svg editor markup from icon 2021-09-15 18:39:04 +02:00
Bruno Windels
e4101ece65 add "jump down" button in timeline 2021-09-15 18:30:08 +02:00
Bruno Windels
1df12b8c89 only allow pixel gaps of < 1px for stick to bottom to prevent eleweb bug
https://github.com/matrix-org/matrix-react-sdk/pull/6751
2021-09-15 17:23:53 +02:00
Bruno Windels
2c415e37e7 where ResizeObserver is support, restore anchored node on resize 2021-09-15 17:23:28 +02:00
Bruno Windels
04edff29cf give more top padding to gaps that appear in the middle of the timeline 2021-09-15 15:57:31 +02:00
Danila Fedorin
d2b604e1dd Stop using at to fix tests. 2021-09-14 15:57:32 -07:00
Danila Fedorin
df273c5e2c Store more events from backfill 2021-09-14 15:40:15 -07:00
Danila Fedorin
b2b5690739 Add more tests 2021-09-14 13:54:14 -07:00
Danila Fedorin
f8117b6f98 Lift transaction property to QueryTarget 2021-09-14 11:18:24 -07:00
Danila Fedorin
41e568f783 Add more tests and extract common test code 2021-09-14 11:15:13 -07:00
Danila Fedorin
31577cd496 Draft first two tests 2021-09-14 10:24:18 -07:00
Bruno Windels
247d6a2148 add comments 2021-09-14 17:01:30 +02:00
Danila Fedorin
b3df37b0bc Add the beginning of a tests function for GapWriter 2021-09-13 17:01:32 -07:00
Danila Fedorin
713f675f3a Mock IDBKeyRange, too 2021-09-13 17:00:49 -07:00
Danila Fedorin
71694787cd Add an IDBFactory mock parameter 2021-09-13 16:55:55 -07:00
Bruno Windels
feb0cf7e39 fix viewport changing width when timeline starts filling the viewport
otherwise centered tiles like announcementview jump a bit vertically
2021-09-13 15:40:15 +02:00
Bruno Windels
906e5886e1 fix tiny jump when timeline starts filling viewport 2021-09-13 15:39:56 +02:00
Bruno Windels
ecccadb77e avoid requestIdleCallback as it is not supported on Safari and IE11 2021-09-13 14:53:34 +02:00
Bruno Windels
8858cffc55 fallback from scrollBy() to setting scrollTop on IE11 2021-09-13 14:53:08 +02:00
Bruno Windels
02b8b37b4c disable native scroll anchoring as it interferes with our impl 2021-09-13 13:11:25 +02:00
Bruno Windels
5c40b75eab don't override newly requested ranges when retrying loadattop 2021-09-10 15:25:19 +02:00
Bruno Windels
9411e6f065 WIP 2021-09-10 14:47:05 +02:00
Bruno Windels
98cc1e2715 don't try to load more when end of timeline reached 2021-09-10 14:17:40 +02:00
Bruno Windels
fe4bb5db40 remove comment 2021-09-09 17:15:28 +02:00
Bruno Windels
d1242c4b67 make gaps taller 2021-09-09 17:15:06 +02:00
Bruno Windels
d0f122a2be WIP-ish, batch visible range requests, allow setting empty ranges and...
don't try to notify when the tile becomes invisible again,
we don't need it currently
2021-09-09 17:14:16 +02:00
Bruno Windels
98678b991b no need to store visible state on gap tile & don't fill if edge reached 2021-09-08 16:39:46 +02:00
Bruno Windels
ab67ac00b1 restore bottom of timeline initially after attach to DOM
this will also load more items if the viewport isn't filled
2021-09-08 12:06:17 +02:00
Bruno Windels
e89f60bac0 fill gap tiles when they become visible 2021-09-08 12:05:59 +02:00
Bruno Windels
7578bfa3d9 let tiles know when they become visible & load more tiles close to top 2021-09-08 12:05:19 +02:00
Bruno Windels
f4b4638ea8 actually, pass in just the tile instances for expressing the range 2021-09-07 19:10:53 +02:00
Bruno Windels
b3cd2a0e03 express the visible range with EventKeys rather than list indices
This is less ambiguous in case the DOM and the ObservableList would be
out of sync.
2021-09-07 17:48:49 +02:00
Bruno Windels
c78a83d398 restore most bottom tile in VP on any list change
and tell view model visible range so it can load more or fill gaps, ...
2021-09-07 15:17:27 +02:00
Bruno Windels
44ea65dd3e
Merge pull request #458 from MidhunSureshR/fix-457
Opening member-details panel should not open/close grid view
2021-09-07 12:16:24 +02:00
Bruno Windels
ad4ec5f04c convert TimelineView to typescript 2021-09-06 17:51:32 +02:00
Bruno Windels
632d29795a convert ListView to typescript 2021-09-06 17:12:14 +02:00
RMidhunSuresh
df74d0c814 Remove array from logic
Signed-off-by: RMidhunSuresh <hi@midhun.dev>
2021-09-06 17:41:36 +05:30
Bruno Windels
c6b020a9e7 Rename TimelineList to TimelineView for consistency 2021-09-06 13:31:43 +02:00
Bruno Windels
5953cdf0cc turns out we do write these 2021-09-06 13:10:36 +02:00
Bruno Windels
35f8c40a0c fix rebase mistake 2021-09-06 13:09:16 +02:00
Bruno Windels
7cb686ce8e convert EventKey to ts 2021-09-06 13:07:41 +02:00
Bruno Windels
85c8415acd convert Direction to ts 2021-09-06 13:06:20 +02:00
Bruno Windels
ed082c9869
Merge pull request #475 from vector-im/snowpack-ts-storage-4
Snowpack + Typescript conversion (Part 4)
2021-09-06 13:05:08 +02:00
Bruno Windels
36da02c14e use generics here to say return type of method is same as callback 2021-09-06 13:01:32 +02:00
Bruno Windels
360b4db17a
Merge pull request #474 from vector-im/snowpack-ts-storage-3
Snowpack + Typescript conversion (Part 3)
2021-09-06 12:55:46 +02:00
Bruno Windels
ad28f1f9a3 split out Entry type for TimelineEventStore 2021-09-06 12:51:28 +02:00
Bruno Windels
cd98cac4e4 split out Entry type for OlmSessionStore 2021-09-06 12:46:44 +02:00
Bruno Windels
5d8e66a3f3
Merge pull request #473 from vector-im/snowpack-ts-storage-2
Snowpack + Typescript conversion (Part 2)
2021-09-06 11:06:46 +02:00
RMidhunSuresh
4f4bc8f805 Add test
Signed-off-by: RMidhunSuresh <hi@midhun.dev>
2021-09-06 14:20:33 +05:30
RMidhunSuresh
a54413625e No need to pass in roomId
Signed-off-by: RMidhunSuresh <hi@midhun.dev>
2021-09-06 12:59:30 +05:30
RMidhunSuresh
f841efeef4 Make check more generic
Signed-off-by: RMidhunSuresh <hi@midhun.dev>
2021-09-06 12:41:17 +05:30
Bruno Windels
a0d66a71f7
Merge pull request #485 from vector-im/bwindels/make-ssss-key-settings-less-confusing
put switch button below input so it looks less like the big green lin…
2021-09-01 15:46:46 +02:00
Bruno Windels
6c3a64f020 put switch button below input so it looks less like the big green link is related to the first paragraph 2021-09-01 15:44:14 +02:00
Bruno Windels
27db00ab98
Merge pull request #484 from vector-im/bwindels/fix-483
Ignore redacting reactions on already redacted events
2021-09-01 14:23:13 +02:00
Bruno Windels
6cec583661 fix #483 2021-09-01 14:21:21 +02:00
Danila Fedorin
5b9fd5de94 Import BaseLogger instead of explicitly defining 'any' type 2021-08-31 16:01:13 -07:00
Danila Fedorin
78fb8fdadf Make export types more precise 2021-08-31 15:59:50 -07:00
Danila Fedorin
2262e6be30 Use store name enum for saving stores 2021-08-31 15:44:03 -07:00
Danila Fedorin
de3807f690 Fix IDBKeyRange type 2021-08-31 15:35:01 -07:00
Danila Fedorin
4eabb7c074 Fix newly emerging type errors in schema 2021-08-31 15:32:33 -07:00
Danila Fedorin
7f8089eaff Merge branch 'snowpack-ts-storage-3' into snowpack-ts-storage-4 2021-08-31 15:26:26 -07:00
Danila Fedorin
f34ee53a12 Avoid casting to any when a more specific type is possible 2021-08-31 15:14:21 -07:00
Danila Fedorin
bef02d238f Split keys out of stored data types 2021-08-31 15:12:09 -07:00
Danila Fedorin
f5943ced97 Remove IDBValidKey references 2021-08-31 14:48:38 -07:00
Danila Fedorin
1fcc147da7 Add type to the IDBKeyRange field 2021-08-31 12:16:16 -07:00
Danila Fedorin
056c7d40eb Rename RoomEvent to TimelineEvent 2021-08-31 12:10:36 -07:00
Danila Fedorin
16d3ed579b Reduce IDBValidKey returns to the public API 2021-08-31 11:47:54 -07:00
Danila Fedorin
ce20d40ff7 Revert the return-promise change 2021-08-31 11:31:17 -07:00
Danila Fedorin
eb3f5f1ec2 Merge branch 'master' into snowpack-ts-storage-2 2021-08-31 11:13:10 -07:00
J. Ryan Stinnett
3e5cc07440 Move check to fingerprintKey 2021-08-31 17:14:14 +01:00
J. Ryan Stinnett
284ec8a74f Check for null keys in settings view model
The keys to format in the settings view model might be null. This avoid crashing
the UI by testing for this case.
2021-08-31 16:11:33 +01:00
Bruno Windels
995ed23b3e tell TS we're certain to have a txn 2021-08-31 08:43:39 +02:00
Bruno Windels
3d66d71c97 fix conflict 2021-08-31 08:39:12 +02:00
Bruno Windels
f466266a5f bring back extra caution 2021-08-31 08:16:37 +02:00
Bruno Windels
3ded5b20d3 dedupe some code here 2021-08-31 08:16:27 +02:00
Bruno Windels
7fb5412176 keep comment where it was 2021-08-30 15:12:25 +02:00
Bruno Windels
0d6ae19d99 use same code to add room to identity in migration as in device tracker 2021-08-30 15:05:57 +02:00
Bruno Windels
a437332482 whitespace 2021-08-30 14:52:20 +02:00
Bruno Windels
0ca46bf2ac don't log here as we log at a lower level, and don't fail on abort 2021-08-30 14:52:04 +02:00
Bruno Windels
ddb6753f8d fix refactor error 2021-08-27 20:05:53 +02:00
Bruno Windels
6a6762f036 ensure memberwriter works with undefined for state/timeline events array 2021-08-27 20:05:34 +02:00
Bruno Windels
8e6bd6a7a1 add missing room ids to identities for tracked rooms & clear outbound session 2021-08-27 19:39:24 +02:00
Bruno Windels
fa555bedf0 log storage migration 2021-08-27 19:35:11 +02:00
Bruno Windels
0c05e97465 abort upgrade txn on error 2021-08-27 19:07:27 +02:00
Danila Fedorin
9252f3bede Migrate StorageFactory to TypeScript 2021-08-27 09:30:16 -07:00
Danila Fedorin
5db9d1493a Migrate export to TypeScript 2021-08-27 09:30:16 -07:00
Danila Fedorin
04e39ef9e2 Migrate quirks to TypeScript 2021-08-27 09:30:16 -07:00
Danila Fedorin
34b173a057 Migrate schema to TypeScript 2021-08-27 09:30:16 -07:00
Danila Fedorin
eae820f91b Migrate Storage to TypeScript 2021-08-27 09:30:15 -07:00
Danila Fedorin
5f3c9cda97 Migrate Transaction to TypeScript 2021-08-27 09:30:15 -07:00
Danila Fedorin
100aee9dcc Migrate InboundGroupSessionStore to TypeScript 2021-08-27 09:30:10 -07:00
Danila Fedorin
914abda7c9 Migrate OlmSessionStore to TypeScript 2021-08-27 09:30:10 -07:00
Danila Fedorin
3cd0d1f423 Migrate DeviceIdentityStore to TypeScript 2021-08-27 09:30:10 -07:00
Danila Fedorin
8d44df83c4 Migrate UserIdentityStore to TypeScript 2021-08-27 09:30:10 -07:00
Danila Fedorin
b46ae152d6 Migrate PendingEventStore.js to TypeScript 2021-08-27 09:30:10 -07:00
Danila Fedorin
fad6d63c14 Migrate TimelineFragmentStore.js to TypeScript 2021-08-27 09:30:10 -07:00
Danila Fedorin
742ab28099 Migrate AccountDataStore.js to TypeScript. 2021-08-27 09:30:10 -07:00
Danila Fedorin
77f75fd968 Migrate OperationStore to TypeScript 2021-08-27 09:30:10 -07:00
Danila Fedorin
8c966627bc Migrate GroupSessionDecryptionStore to TypeScript 2021-08-27 09:30:10 -07:00
Danila Fedorin
33d94b9497 Migrate OutboundGroupSessionStore to TypeScript 2021-08-27 09:30:10 -07:00
Danila Fedorin
5d4454734a Migrate RoomStateStore.js to TypeScript 2021-08-27 09:30:10 -07:00
Danila Fedorin
af70269169 Merge branch 'snowpack-ts-storage-1' into snowpack-ts-storage-2 2021-08-27 09:29:53 -07:00
Danila Fedorin
4c4687a05f Avoid unsafe (and error-prone) cast 2021-08-27 09:29:02 -07:00
Bruno Windels
a61f052fe8 fix lint 2021-08-27 17:23:32 +02:00
Bruno Windels
826de7e9cb Write all members of a sync in one go
so state member events written but not causing a memberChange.hasJoined
don't prevent timeline member events for the same user from doing so
2021-08-27 17:11:29 +02:00
Danila Fedorin
b081aa171c Merge branch 'snowpack-ts-storage-1' into snowpack-ts-storage-2 2021-08-26 17:08:00 -07:00
Danila Fedorin
904a2cbe74 Merge branch 'master' into snowpack-ts-storage-1 2021-08-26 17:07:25 -07:00
Danila Fedorin
a95704528f Merge branch 'snowpack-ts-storage-1' into snowpack-ts-storage-2 2021-08-26 17:01:23 -07:00
Danila Fedorin
b7d232d56d Remove unnecessary cast and restrict constructor parameter type 2021-08-26 16:56:03 -07:00