Bruno Windels
9be64730b6
don't automatically join a call we create
2022-04-11 15:54:06 +02:00
Bruno Windels
b84c90891c
add very early datachannel support
2022-04-11 15:53:34 +02:00
Bruno Windels
c02e1de001
log when renegotiation would be triggered
2022-04-11 14:55:14 +02:00
Bruno Windels
8e82aad86b
fix logic error that made tracks disappear on the second track event
2022-04-11 14:55:08 +02:00
Bruno Windels
8153060831
only send to target device, not all user devices
2022-04-11 13:39:40 +02:00
Bruno Windels
302d4bc02d
use session id from member event, and also send it for other party
2022-04-11 13:39:18 +02:00
Bruno Windels
1b0abebe8f
remove unused constants
2022-04-11 12:37:05 +02:00
Bruno Windels
156f5b78bf
use session_id from member event to set dest_session_id
...
so our invite event isn't ignored by EC
2022-04-11 12:36:02 +02:00
Bruno Windels
c9bc080aef
Merge pull request #713 from vector-im/bwindels/fix-request-responsecode-error
...
fix error thrown during request when response code is not used
2022-04-08 15:26:12 +02:00
Bruno Windels
cf780ce259
also apply custom tiles in reply preview in composer
2022-04-08 15:16:22 +02:00
Bruno Windels
d21d10e4f2
pass in viewClassForTile from SessionView
...
so you can also use custom tiles when using the grid view
2022-04-08 15:15:21 +02:00
Bruno Windels
1fea14dd10
ensure other parameters don't get passed to TemplateView parent ctors
2022-04-08 15:04:38 +02:00
Bruno Windels
1f0cb542c8
pass viewClassForTile to tile views, so they can create reply view with correct subtile
2022-04-08 15:02:07 +02:00
Bruno Windels
57f50cc416
fix lint warnings
2022-04-08 15:01:27 +02:00
Bruno Windels
cda96a35ee
rename viewClassForEntry to viewClassForTile
2022-04-08 15:01:06 +02:00
Bruno Windels
ac4bb8ca15
export tile view & view models from SDK
2022-04-08 14:27:08 +02:00
Bruno Windels
a913671f0c
make tileClassForEntry optional, as otherwise it is a breaking change
2022-04-08 14:19:34 +02:00
Bruno Windels
5445db2a42
allow injecting the tilesCreator from the Root/Session/RoomViewModel
...
this changes the API slightly to be more future-proof,
as we'll expose it in the SDK now.
The function now returns a SimpleTile constructor, rather than an
instance. This allows us to test if an entry would render in the
timeline without creating a tile, which is something we might want in
the matrix layer later on.
The function is now called tileClassForEntry, analogue to what we
do in TimelineView.
2022-04-08 12:52:30 +02:00
Bruno Windels
220f35ae03
fix typescript error
2022-04-08 11:52:21 +02:00
Bruno Windels
6aa79cf6e2
allow to inject custom tile view creator fn into timeline view
2022-04-07 17:25:20 +02:00
Bruno Windels
8a06663023
load all call members for now at startup
...
later on we can be smarter and load then once you interact with the call
2022-04-07 16:55:41 +02:00
Bruno Windels
ad140d5af1
only show video feed when connected
2022-04-07 16:55:26 +02:00
Bruno Windels
a78ae52a54
to test with EC, also load prompt calls at startup
2022-04-07 16:55:10 +02:00
Bruno Windels
b133f58f7a
don't throw here for now, although it is probably a sign of why the tracks disappear
2022-04-07 16:54:47 +02:00
Bruno Windels
bade40acc6
log track length
2022-04-07 16:54:36 +02:00
Bruno Windels
1dc46127c3
no need to throw here
2022-04-07 16:54:24 +02:00
Bruno Windels
79411437cf
fix who initiates call, needs to be lower, not higher
2022-04-07 16:53:57 +02:00
Bruno Windels
6472800387
impl session id so EC does not ignore our messages
2022-04-07 16:53:37 +02:00
Bruno Windels
fe6e7b09b5
don't encrypt to_device messages for now
2022-04-07 16:50:16 +02:00
Bruno Windels
88482292e1
Merge pull request #700 from vector-im/ajbura-patch-2
...
Add observeNavigation in ViewModel
2022-04-07 14:08:40 +02:00
Bruno Windels
9755062563
fix error thrown during request when response code is not used
2022-04-07 10:35:00 +02:00
Bruno Windels
ad1cceac86
fix error thrown during request when response code is not used
2022-04-07 10:33:12 +02:00
Bruno Windels
2852834ce3
persist calls so they can be quickly loaded after a restart
...
also use event prefixes compatible with Element Call/MSC
2022-04-07 10:32:43 +02:00
Bruno Windels
42b470b06b
helper to print open items with console logger
2022-03-30 15:19:07 +02:00
Bruno Windels
d7360e7741
fix multiple device support
2022-03-30 15:18:46 +02:00
Bruno Windels
c54ffd4fc3
support multiple devices in call per user
2022-03-29 17:13:33 +02:00
Bruno Windels
ba45178e04
implement terminate and hangup (currently unused)
2022-03-29 12:01:47 +02:00
Bruno Windels
11a9177592
log state changes in PeerCall
2022-03-29 12:01:47 +02:00
Bruno Windels
4bf171def9
small fixes
2022-03-29 12:01:47 +02:00
Bruno Windels
eaf92b382b
add structured logging to call code
2022-03-29 12:01:47 +02:00
Bruno Windels
a0a07355d4
more improvements, make hangup work
2022-03-29 12:01:47 +02:00
Bruno Windels
0a37fd561e
just enough view code to join a call
2022-03-29 12:01:47 +02:00
Bruno Windels
9efd191f4e
some more fixes
2022-03-29 12:01:46 +02:00
Bruno Windels
cad2aa760d
some fixes
2022-03-29 12:01:46 +02:00
Bruno Windels
4be82cd472
WIP on UI
2022-03-29 12:01:46 +02:00
Bruno Windels
e760b8e556
basic view model setup
2022-03-29 12:01:46 +02:00
Bruno Windels
e482e3aeef
expose mediaDevices and webRTC from platform
2022-03-29 12:01:46 +02:00
Bruno Windels
6daae797e5
fix some ts/lint errors
2022-03-29 12:01:46 +02:00
Bruno Windels
07bc0a2376
move observable values each in their own file
2022-03-29 12:01:46 +02:00
Bruno Windels
1bccbbfa08
fix typescript errors
2022-03-29 12:01:46 +02:00
Bruno Windels
f674492685
remove local media promises (handle them outside of call code) + glare
2022-03-29 12:01:46 +02:00
Bruno Windels
3c160c8a37
handle remote ice candidates
2022-03-29 12:01:46 +02:00
Bruno Windels
b213a45c5c
WIP: work on group call state transitions
2022-03-29 12:01:46 +02:00
Bruno Windels
b2ac4bc291
WIP13
2022-03-29 12:01:46 +02:00
Bruno Windels
6da4a4209c
WIP: work on group calling code
2022-03-29 12:01:46 +02:00
Bruno Windels
4bedd4737b
WIP11
2022-03-29 12:01:46 +02:00
Bruno Windels
60da85d641
WIP10
2022-03-29 12:01:46 +02:00
Bruno Windels
6fe90e60db
WIP9
2022-03-29 12:01:46 +02:00
Bruno Windels
ecf7eab3ee
WIP8 - implement PeerCall.handleAnswer and other things
2022-03-29 12:01:46 +02:00
Bruno Windels
25b0148073
WIP8
2022-03-29 12:01:46 +02:00
Bruno Windels
98b77fc761
WIP7
2022-03-29 12:01:46 +02:00
Bruno Windels
179c7e74b5
WIP6
2022-03-29 12:01:46 +02:00
Bruno Windels
98e1dcf799
WIP5
2022-03-29 12:01:46 +02:00
Bruno Windels
e5f44aecfb
WIP4
2022-03-29 12:01:46 +02:00
Bruno Windels
468841ecea
WIP3
2022-03-29 12:01:46 +02:00
Bruno Windels
b12bc52c4a
WIP2
2022-03-29 12:01:46 +02:00
Bruno Windels
46ebd55092
WIP
2022-03-29 12:01:46 +02:00
Bruno Windels
ca211f929b
Merge pull request #702 from vector-im/bwindels/observablemapts
...
convert (Base)ObservableMap to typescript
2022-03-09 11:53:59 +01:00
Bruno Windels
6150e91c3f
fix type error again
2022-03-09 11:51:11 +01:00
Bruno Windels
762925d4a5
fix type error
2022-03-09 11:44:49 +01:00
Bruno Windels
21080d2110
fix tests
2022-03-09 11:41:26 +01:00
Bruno Windels
6d7c983e8e
convert (Base)ObservableMap to typescript
2022-03-09 11:33:49 +01:00
Ajay Bura
e07abfa02a
Add missing type
2022-03-07 11:33:51 +05:30
Bruno Windels
8b8233ff00
Merge pull request #691 from vector-im/madlittlemods/only-crypto-in-secure-context
...
Only initialize `Crypto` when olm is provided
2022-03-03 17:33:50 +01:00
Ajay Bura
61ce2f9e3d
Add observeNavigation in ViewModel
2022-03-03 15:36:25 +05:30
Eric Eastwood
2f4c639cef
Only initialize Crypto when olm is provided
...
See https://github.com/vector-im/hydrogen-web/pull/691#discussion_r816988082
2022-03-02 03:17:59 -06:00
Eric Eastwood
c09964dc30
Add data-event-id="$xxx"
attributes to timeline items for easy selecting in end-to-end tests ( #690 )
...
Split out from https://github.com/vector-im/hydrogen-web/pull/653
Example test assertions: db6d3797d7/test/e2e-tests.js (L248-L252)
```js
// Make sure the $abc event on the page has "foobarbaz" text in it
assert.match(
dom.document.querySelector(`[data-event-id="$abc"]`).outerHTML,
new RegExp(`.*foobarbaz.*`)
);
```
2022-03-01 18:36:14 -06:00
Bruno Windels
2e1283d199
Merge pull request #670 from vector-im/bwindels/ts-olm
...
Convert olm code to typescript
2022-03-01 18:53:22 +01:00
Bruno Windels
62ce111938
Merge pull request #692 from ryushar/ryushar/typescriptify
...
Convert domain/avatar.js and domain/LogoutViewModel.js to Typescript
2022-03-01 18:50:19 +01:00
Bruno Windels
770f7aea00
Merge pull request #689 from vector-im/madlittlemods/add-more-html-elements
...
Add more HTML form and SVG elements
2022-03-01 18:43:34 +01:00
Bruno Windels
b6d9993ed0
remove unused import
2022-03-01 17:08:49 +01:00
Bruno Windels
643ab1a5f3
cant export this for some reason
2022-03-01 15:48:42 +01:00
Bruno Windels
ee8e45926f
also export observable value classes
2022-03-01 15:42:04 +01:00
Bruno Windels
4c50dbf7ec
make SDK exports explicit
2022-03-01 15:41:44 +01:00
Ajay Bura
4a4856a29e
export module
2022-02-28 17:19:01 +05:30
Tushar
17acda7741
typescriptify domain/LogoutViewModel.js
2022-02-25 16:45:07 +05:30
Tushar
7055f02f16
typescriptify domain/avatar.js
2022-02-25 15:52:54 +05:30
Eric Eastwood
0935f2d23a
Only try to use window.crypto.subtle in secure contexts to avoid it throwing and stopping all JavaScript
...
Relevant error if you crypto is used in a non-secure context like a local LAN IP `http://192.168.1.151:3050/ `
```
Uncaught (in promise) TypeError: Cannot read properties of undefined (reading 'deriveBits')
at new Crypto
at new Platform
at mountHydrogen
```
For my use-case with https://github.com/matrix-org/matrix-public-archive , I don't need crypto/encryption at all.
Docs:
- https://developer.mozilla.org/en-US/docs/Web/Security/Secure_Contexts
- https://developer.mozilla.org/en-US/docs/Web/API/Crypto/subtle
- "Secure context: This feature is available only in secure contexts (HTTPS), in some or all supporting browsers."
---
Related to https://github.com/vector-im/hydrogen-web/issues/579
2022-02-25 01:59:48 -06:00
Eric Eastwood
b993331e06
Add more HTML form and SVG elements
...
Split off from https://github.com/vector-im/hydrogen-web/pull/653
Personally using `select`, `option`, and `path` currently in https://github.com/matrix-org/matrix-public-archive
but added a few extra SVG elements that seemed common to me.
2022-02-25 01:40:52 -06:00
Bruno Windels
8adc5a9fae
these were public actually
2022-02-18 17:24:55 +01:00
Bruno Windels
3f9f0e98c7
remove unused olm property in SenderKeyDecryption
2022-02-18 17:21:27 +01:00
Bruno Windels
82299e5aea
Update src/matrix/e2ee/olm/Decryption.ts
...
Co-authored-by: R Midhun Suresh <hi@midhun.dev>
2022-02-18 17:18:33 +01:00
Bruno Windels
3330530f68
Update src/matrix/e2ee/DecryptionResult.ts
...
Co-authored-by: R Midhun Suresh <hi@midhun.dev>
2022-02-18 17:18:25 +01:00
Bruno Windels
620409b3f0
fixup: ctor argument order
...
as it was an object before, order didn't matter
2022-02-18 17:17:24 +01:00
Bruno Windels
78e0bb1ff0
replace isPreKeyMessage with const enum
2022-02-18 17:00:56 +01:00
Bruno Windels
347edb5988
remove unused storage property
2022-02-18 16:47:47 +01:00
Bruno Windels
49f6a2c2eb
Merge pull request #679 from vector-im/bwindels/fix-vm-ctor-default-options
...
always pass options to ViewModel constructor
2022-02-17 10:10:19 +01:00
Bruno Windels
2472f11ec0
export RoomStatus
2022-02-17 09:47:57 +01:00
Bruno Windels
7f1fed6f8c
always pass options to ViewModel constructor
2022-02-17 09:24:18 +01:00
Bruno Windels
d971fd1a47
Merge pull request #678 from vector-im/fix-viewmodel-error
...
Check options exist on emitChange
2022-02-17 09:08:54 +01:00
RMidhunSuresh
498a43327f
Check if options exist in emitChange
2022-02-17 11:30:04 +05:30
Bruno Windels
60f5da60bb
fix lint
2022-02-16 18:01:24 +01:00
Bruno Windels
e3e90ed167
convert olm/Encryption to TS
2022-02-16 18:00:13 +01:00
Bruno Windels
eb5ca200f2
missed rename here
2022-02-16 18:00:03 +01:00
RMidhunSuresh
7a9298328f
Return _type from getter
2022-02-16 14:37:18 +05:30
RMidhunSuresh
a76bcd1739
Changes in TokenAuth
2022-02-16 13:36:24 +05:30
RMidhunSuresh
60bc4450f3
Use type from server
2022-02-16 13:21:04 +05:30
RMidhunSuresh
ed151c8567
Return token stage from createRegistrationStage
2022-02-16 12:33:59 +05:30
RMidhunSuresh
c40801efd9
Implement the registration stage
2022-02-16 12:33:24 +05:30
Bruno Windels
a4fd1615dd
convert decryption
2022-02-15 18:21:29 +01:00
Bruno Windels
74c640f937
convert Session
2022-02-15 18:21:12 +01:00
Bruno Windels
7aeda70ff6
convert DecryptionResult
2022-02-15 18:20:14 +01:00
Bruno Windels
7179758c50
also here
2022-02-15 08:22:09 +01:00
Bruno Windels
1795f58ba5
rename imports
2022-02-14 17:53:59 +01:00
Bruno Windels
4d82dd22b6
convert ViewModel to typescript
2022-02-14 17:50:17 +01:00
Eric Eastwood
dfed04166e
Fix missing reply text when message body is parsed as HTML in [linkedom
]( https://github.com/WebReflection/linkedom ) (SSR).
...
- [`linkedom`](https://github.com/WebReflection/linkedom ) is being used https://github.com/matrix-org/matrix-public-archive to server-side render (SSR) Hydrogen (`hydrogen-view-sdk`)
- This is being fixed by using a explicit HTML wrapper boilerplate with `DOMParser` to get a matching result in the browser and `linkedom`.
Currently `parseHTML` is only used for HTML content bodies in events. Events with replies have content bodies that look like `<mx-reply>Hello</mx-reply> What's up` so they're parsed as HTML to strip out the `<mx-reply>` part.
Before | After
--- | ---
![](https://user-images.githubusercontent.com/558581/153692011-2f0e7114-fcb4-481f-b217-49f461b1740a.png ) | ![](https://user-images.githubusercontent.com/558581/153692016-52582fdb-abd9-439d-9dce-3f04da6959db.png )
Before:
```js
// Browser (Chrome, Firefox)
new DOMParser().parseFromString(`<div>foo</div>`, "text/html").body.outerHTML;
// '<body><div>foo</div></body>'
// `linkedom` ❌
new DOMParser().parseFromString(`<div>foo</div>`, "text/html").body.outerHTML;
// '<body></body>'
```
After (consistent matching output):
```js
// Browser (Chrome, Firefox)
new DOMParser().parseFromString(`<!DOCTYPE html><html><body><div>foo</div></body></html>`, "text/html").body.outerHTML;
// '<body><div>foo</div></body>'
// `linkedom`
new DOMParser().parseFromString(`<!DOCTYPE html><html><body><div>foo</div></body></html>`, "text/html").body.outerHTML;
// '<body><div>foo</div></body>'
```
`linkedom` goal is to be close to the current DOM standard, but [not too close](https://github.com/WebReflection/linkedom#faq ). Focused on the streamlined cases for server-side rendering (SSR).
Here is some context around getting `DOMParser` to interpret things better. The conclusion was to only support the explicit standard cases with a `<html><body></body></html>` specified instead of adding the magic HTML document creation and massaging that the browser does.
- https://github.com/WebReflection/linkedom/issues/106
- https://github.com/WebReflection/linkedom/pull/108
---
Part of https://github.com/vector-im/hydrogen-web/pull/653 to support server-side rendering Hydrogen for the [`matrix-public-archive`](https://github.com/matrix-org/matrix-public-archive ) project.
2022-02-11 20:10:46 -06:00
Bruno Windels
9685ef4dd3
dont log summary valued, as they can contain PII
2022-02-11 18:39:37 +01:00
Bruno Windels
ea8f3e5a6a
remove argument that is already bound in BaseRoom, making decryption fail
2022-02-11 17:14:56 +01:00
Bruno Windels
57b1542688
use private topic field as public one got removed as not needed in view
2022-02-11 09:37:56 +01:00
Bruno Windels
175f869c83
fix lint
2022-02-10 20:07:27 +01:00
Bruno Windels
a442b4b009
Merge branch 'master' into bwindels/create-room
2022-02-10 20:05:40 +01:00
Bruno Windels
d65b25f084
also adjust m.direct if the room has already been replaced
2022-02-10 20:00:01 +01:00
Bruno Windels
2765f48a64
create user id array in m.direct if it doesn't exist already
2022-02-10 19:59:44 +01:00
Bruno Windels
d2008a336b
fix lint errors
2022-02-10 19:54:47 +01:00
Bruno Windels
ff46d382ac
adjust m.direct when creating a DM
2022-02-10 19:54:15 +01:00
Bruno Windels
3adb2c3254
fix ts errors
2022-02-10 16:44:40 +01:00
Bruno Windels
8526461d3c
split up create code into separate files
2022-02-10 16:43:32 +01:00
Bruno Windels
15eecbb463
cleanup
2022-02-10 16:28:44 +01:00
Bruno Windels
30c8ea29b2
fix bug where the wrong left panel tile is removed when accepting invite
...
because when comparing a tile to itself it wasn't returned 0
2022-02-10 16:27:32 +01:00
Bruno Windels
b0d790543a
push to navigation in SessionViewModel rather than RVO
2022-02-10 14:57:48 +01:00
Bruno Windels
2c1b29e637
remove logging
2022-02-10 14:39:41 +01:00
Bruno Windels
75bbde598d
also consider rooms without a name and just you and the other a DM
...
as we don't process m.direct account data yet
2022-02-10 14:39:18 +01:00
Bruno Windels
955a6bd6f9
styling for button in member details to open DM
2022-02-10 14:38:12 +01:00
Bruno Windels
147810864f
add support to set alias and federation flag in create room
2022-02-10 14:09:18 +01:00
Bruno Windels
4c0167ed74
don't show spinner in left panel when room creation fails
2022-02-10 11:19:43 +01:00
Bruno Windels
024a6c06aa
handle offline error nicer
2022-02-10 11:11:15 +01:00
Bruno Windels
b5536830d0
improve RoomBeingCreatedView, allow removing the roombeingcreated
2022-02-10 11:07:29 +01:00
Bruno Windels
20493f9e87
cleanup
2022-02-10 11:07:13 +01:00
Bruno Windels
e8c20c28b2
allow passing label into LoadingView
...
also doesn't need to be a template view, as it doesn't have bindings
or event handlers
2022-02-10 11:06:44 +01:00
Bruno Windels
f12841b2d3
better error handling in RoomBeingCreated
2022-02-10 11:06:20 +01:00
Bruno Windels
d6d1af13d0
rename RoomBeingCreated.localId to id
2022-02-10 11:03:52 +01:00
Bruno Windels
bbb1683dbf
fixup: login view styling
2022-02-10 09:40:42 +01:00
Bruno Windels
fed42f13ad
textarea styling
2022-02-10 09:40:30 +01:00
Bruno Windels
5f6308e7c4
fix homeserver field style in login view
2022-02-10 09:40:19 +01:00
Bruno Windels
74f7879cb6
fix unrelated bug: invite sorting order wasn't stable in left panel
...
as the timestamp is the same when you receive the invite during your
first sync
2022-02-10 09:40:03 +01:00
Bruno Windels
5c085efc10
create room view and view model
2022-02-09 19:02:51 +01:00
Bruno Windels
a1e14c4eec
rename to not have conflict between method name and instance of CreateRoomViewModel
2022-02-09 19:02:18 +01:00
Bruno Windels
4b1be30dc0
improve form-row classes so they can work with create room form
2022-02-09 19:01:35 +01:00
Bruno Windels
8523f6feaf
setup navigation for create room form
2022-02-09 19:00:41 +01:00
Bruno Windels
83d2b58bad
add avatar support to creating room
2022-02-09 19:00:00 +01:00
Bruno Windels
afe8e17a6f
remove debugging code
2022-02-08 17:00:06 +01:00
Bruno Windels
743f2270e5
have a single tile view that supports all 3 view models
2022-02-08 16:22:44 +01:00
Bruno Windels
5325b0b466
cleanup logging
2022-02-08 14:58:29 +01:00
Bruno Windels
d7b024eac1
unrelated fix: encode user name in matrix.to link
2022-02-08 14:35:14 +01:00
Bruno Windels
45c8e3a793
mark room as DM based on synced state events,rather than just inviteData
...
as that does not work for rooms we create ourselves
2022-02-08 14:34:34 +01:00
Bruno Windels
e04463c143
WIP for finding DM room
2022-02-07 18:58:53 +01:00
Bruno Windels
26fa2a5d60
add option
2022-02-07 18:58:43 +01:00
Bruno Windels
e1fbd1242e
WIP 4
2022-02-07 16:30:44 +01:00
Bruno Windels
0bb3cfcfad
WIP3
2022-02-04 17:49:10 +01:00
Bruno Windels
3ff39a9549
Merge pull request #661 from vector-im/sdk-additions
...
Export more code from SDK
2022-02-04 17:43:23 +01:00
RMidhunSuresh
4a0db9f984
Add required exports
2022-02-04 18:28:17 +05:30
RMidhunSuresh
28931f4103
Use async/await
2022-02-04 17:48:42 +05:30
RMidhunSuresh
f7f32ac806
responseCodeReject may not exist
2022-02-04 17:39:52 +05:30
RMidhunSuresh
a163cee18d
Remove dead imports
2022-02-04 17:25:30 +05:30
RMidhunSuresh
0828ac12b1
Fix params
2022-02-04 17:25:15 +05:30
RMidhunSuresh
b59f916824
Merge branch 'registration' of github.com:vector-im/hydrogen-web into registration
2022-02-04 17:16:32 +05:30
R Midhun Suresh
2ac63e78ca
mark method as internal
...
Co-authored-by: Bruno Windels <bruno@windels.cloud>
2022-02-04 17:16:15 +05:30
RMidhunSuresh
028b96e4c5
Let type also be undefined
2022-02-04 17:11:33 +05:30
RMidhunSuresh
22d5505a2b
Create registration stage in Registration itself
2022-02-04 16:50:22 +05:30
RMidhunSuresh
e66549a067
Remove dead code
2022-02-04 16:40:49 +05:30
RMidhunSuresh
e8c480426a
Remove error code
2022-02-04 16:37:43 +05:30
RMidhunSuresh
891375a885
Rename allowerErrors -> allowedStatusCodes
2022-02-04 16:35:47 +05:30
RMidhunSuresh
32af7e6f09
Make more changes
...
- make setter a method
- lazily create promise
2022-02-04 16:23:39 +05:30
Bruno Windels
0b04612d6c
WIP2
2022-02-04 11:16:58 +01:00
RMidhunSuresh
3d8b9cce41
Fix responseCode in Request
2022-02-04 15:41:37 +05:30
Bruno Windels
bc09ede09f
WIP
2022-02-03 17:57:35 +01:00
RMidhunSuresh
b6e1d4a7d5
Implement responseCode()
2022-02-03 19:41:14 +05:30
RMidhunSuresh
89a97537b0
Make methods private + some props readonly
2022-02-03 19:41:14 +05:30
RMidhunSuresh
8a3c0afba6
Fix incorrect types
2022-02-03 19:41:11 +05:30
RMidhunSuresh
0ad0ecfcc2
Check response code instead of existence of props
2022-02-03 19:40:25 +05:30
RMidhunSuresh
c4894f2c24
completed is not always present
2022-02-03 19:40:25 +05:30
RMidhunSuresh
e64f4ad7b2
Refactor code
...
- Move all code that does /register to Registration.ts
- RegistrationStage only deals with the generation of auth data
- Change API so that undefined is returned instead of string when
registration is over
2022-02-03 19:40:25 +05:30
R Midhun Suresh
2aad5546bf
No need for Object.assign here either
...
Co-authored-by: Bruno Windels <brunow@matrix.org>
2022-02-03 19:40:25 +05:30
RMidhunSuresh
7bacbec5e9
Remove type directory
2022-02-03 19:40:25 +05:30
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
997666164c
remove unused enum variants
2022-01-31 17:37:44 +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
06a1421e97
add backupWriteStatus so binding can take multiple fields into account
2022-01-31 16:26:06 +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
dacaa86386
fix percentage calculation
2022-01-31 16:22:22 +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
d9e6164a5c
fix ts errors
2022-01-28 16:40:32 +01:00
Bruno Windels
a97d235cf5
flush after enabling key backup
2022-01-28 16:36:42 +01:00
Bruno Windels
c9b5ce6508
clean up key backup vm using flatMap to avoid subscription handling
2022-01-28 16:36:13 +01:00
Bruno Windels
e0df003aba
add flatMap operator on observable value
2022-01-28 16:35:49 +01:00
Bruno Windels
c340746a87
also remove text nodes when updating message body
...
fixes #649
2022-01-28 16:04:56 +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
bd2c70b923
adapt key backup view(model) to changes in session, show backup progress
2022-01-28 15:14:23 +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
554aa45d48
add support for progress notifications in abortable operation
2022-01-26 15:18:23 +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
e6fee75952
remove enterkeyhint attribute as it prevents entering newlines on android
...
on Android, by default (without the above attribute set to "send"), you
press enter twice to submit a field. The first time, enter, Android
seems to prevent sending logic by setting the key property on the event
to "Unidentified", but does insert a newline. The second consecutive enter,
it will be set to "Enter" and we'll send.
Having enterkeyhint to send will disable all of that. So we're going with
the default behaviour, which, IIRC, was a bit annoying on iOS as well.
2022-01-18 09:42:01 +01:00
Bruno Windels
b0e8506cb5
ensure images load in reply preview in timeline
2022-01-17 16:48:36 +01:00
Bruno Windels
f379bf2341
ensure images load in reply preview in composer
2022-01-17 16:48:17 +01:00
Bruno Windels
57bf730241
mention it's better to not close the app
2022-01-17 16:33:57 +01:00
Bruno Windels
4bc421527f
also add extra classes to legacy spinner
2022-01-17 16:31:13 +01:00
Bruno Windels
05d23cc745
hook up logout view
2022-01-17 16:31:02 +01:00
Bruno Windels
4c5b884af7
create and hook up logout viewmodel, on /logout/<id> path
2022-01-17 16:30:22 +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
164d72830f
create subclass for inline template views (e.g. without sub classing)
2022-01-17 16:25:48 +01:00
Bruno Windels
412db33c36
click here labels are so nineties
2022-01-14 19:18:12 +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
Bruno Windels
65929194b0
fix lint warnings
2022-01-14 16:23:55 +01:00
Bruno Windels
184a16a194
also define param
2022-01-14 16:23:12 +01:00
Bruno Windels
8201a85c47
ensure these have a fn for tilesCreator
2022-01-14 16:20:38 +01:00
Bruno Windels
2321228981
use this._entry here (once updated by super.updateEntry)
2022-01-14 16:20:14 +01:00
Bruno Windels
5f99c2360c
also try to create replyTile from ctor just in case update doesn't come
2022-01-14 16:12:43 +01:00
Bruno Windels
ad335d5088
pass in tilesCreator everywhere, although not needed right now
2022-01-14 16:06:29 +01:00
Bruno Windels
1ea4a347e2
encode url components
2022-01-14 15:53:17 +01:00
Bruno Windels
b578f4ac84
actually add LocationView
2022-01-14 15:50:19 +01:00
Bruno Windels
052ff02571
move TileView type too so we don't have to repeat imports
2022-01-14 15:47:22 +01:00
Bruno Windels
3c59004e72
Merge branch 'master' into threading-fallback-reply
2022-01-14 15:43:24 +01:00
Bruno Windels
17ebc8a066
Merge pull request #611 from vector-im/threading-fallback-relation
...
Threading fallback - PR 1 - Link events with their related event
2022-01-14 15:35:27 +01:00
Bruno Windels
18a76025c7
add location tile view so we don't throw when a location is shared
2022-01-14 15:27:46 +01:00
RMidhunSuresh
dac2d5e685
Pass everything down into updateEntry
2022-01-14 19:26:23 +05:30
RMidhunSuresh
0af9f10166
don't store tilesCreator
2022-01-14 19:11:40 +05:30
RMidhunSuresh
d18f4d341c
store replyFlags on this
2022-01-14 18:31:22 +05:30
Bruno Windels
1f9be978b7
load image in timeline from when it is partially visible
2022-01-14 13:57:11 +01:00
RMidhunSuresh
41fffdf155
Remove even more stray new lines
2022-01-14 18:17:49 +05:30
RMidhunSuresh
51215fda16
Rename tileCreator -> tilesCreator
2022-01-14 18:17:49 +05:30
RMidhunSuresh
d639e169ec
Move tileCreator to BaseMessageTile
2022-01-14 18:17:49 +05:30
RMidhunSuresh
e1b9b1161d
Split ifs and remove ?. abuse
2022-01-14 18:17:49 +05:30
RMidhunSuresh
846e637716
Remove stray newline
2022-01-14 18:17:49 +05:30
RMidhunSuresh
58dd25b58d
track reply-tile
2022-01-14 18:17:49 +05:30
RMidhunSuresh
a77b9d9027
Move update logic to BaseMessageTile
2022-01-14 18:17:49 +05:30
RMidhunSuresh
ef5a377bc6
Hide reply option on pending tile
2022-01-14 18:17:49 +05:30
RMidhunSuresh
951af49e04
Emit change on reply tile
2022-01-14 18:17:49 +05:30
RMidhunSuresh
455b747a1c
Don't check param for reply
2022-01-14 18:17:49 +05:30
RMidhunSuresh
28a534ee49
Fix reply nesting
2022-01-14 18:17:49 +05:30
RMidhunSuresh
f9f7f6cc6f
Fix test
2022-01-14 18:17:49 +05:30
RMidhunSuresh
7f91653208
Rename replyTextTile -> replyTile
2022-01-14 18:17:49 +05:30
RMidhunSuresh
086e0c0320
Inline methods
2022-01-14 18:17:49 +05:30
RMidhunSuresh
273c44424f
Throw if viewClass returns undefined
2022-01-14 18:17:49 +05:30
RMidhunSuresh
b134fa7409
Format swtich case properly
2022-01-14 18:17:49 +05:30
RMidhunSuresh
fee6447e22
Don't call render()
2022-01-14 18:17:49 +05:30
RMidhunSuresh
e99cd41ed0
Change check
2022-01-14 18:17:49 +05:30
RMidhunSuresh
af5a008d0f
Move links to vm
2022-01-14 18:17:49 +05:30
RMidhunSuresh
27a9f5dd02
Use DOMPurify to remove mx-reply
2022-01-14 18:17:49 +05:30
RMidhunSuresh
cfefe6962a
Remove stray space
2022-01-14 18:17:49 +05:30
RMidhunSuresh
88f9ad09a2
Move method as local function
2022-01-14 18:17:49 +05:30
RMidhunSuresh
0ae3c60d6d
Remove .js file from rebase
2022-01-14 18:17:49 +05:30
RMidhunSuresh
c34d574385
No need to export renderPart
2022-01-14 18:17:49 +05:30
RMidhunSuresh
2a124d4195
simplify css
2022-01-14 18:17:49 +05:30
RMidhunSuresh
e352867f5a
Remove unnecessary ctor
2022-01-14 18:17:49 +05:30
RMidhunSuresh
f645065db7
Remove unused getter
2022-01-14 18:17:49 +05:30
RMidhunSuresh
d69059de68
Use different flag
2022-01-14 18:17:49 +05:30
RMidhunSuresh
0c3f16e5f6
Use 's' flag with regex if available
2022-01-14 18:17:49 +05:30
RMidhunSuresh
cba044eff1
Remove comment
2022-01-14 18:17:49 +05:30
RMidhunSuresh
dee22f7120
Implement render flags
2022-01-14 18:17:49 +05:30
RMidhunSuresh
46b69b3873
Render error
2022-01-14 18:17:49 +05:30
RMidhunSuresh
687aa5a7e3
Remove dead code
2022-01-14 18:17:49 +05:30
RMidhunSuresh
4df3654166
Prevent reply previews from being nested
2022-01-14 18:17:49 +05:30
RMidhunSuresh
4d63b41127
Make reply preview flush left
2022-01-14 18:17:49 +05:30
RMidhunSuresh
1b9f970d7f
WIP: Render the whole view instead of messageBody
2022-01-14 18:17:49 +05:30
RMidhunSuresh
7f1b3e25e8
Use t instead of tag
2022-01-14 18:17:49 +05:30
RMidhunSuresh
f01d5d95d9
Reuse code from timeline view
2022-01-14 18:17:49 +05:30
RMidhunSuresh
89d6968139
Show decryption error as well
2022-01-14 18:17:49 +05:30
RMidhunSuresh
2773642406
No need to handle redaction specially
2022-01-14 18:17:49 +05:30
RMidhunSuresh
13cba84445
Remove mapSideEffect
2022-01-14 18:17:49 +05:30
RMidhunSuresh
bb45d0eae9
Render non-text messages as well
2022-01-14 18:17:49 +05:30
RMidhunSuresh
df22db256b
No need to pass tileCreator as argument
2022-01-14 18:17:49 +05:30
RMidhunSuresh
e0dc853d74
Fill matrix.to links
2022-01-14 18:17:49 +05:30
RMidhunSuresh
91912bdb8d
Create tile using tileCreator
2022-01-14 18:17:49 +05:30
RMidhunSuresh
54004eef4d
Integrate into update mechanism
2022-01-14 18:17:49 +05:30
RMidhunSuresh
aa3bb9c6ef
Remove allowReplies
2022-01-14 18:17:49 +05:30
RMidhunSuresh
73c5562fd3
Remove code from BaseTextTile
2022-01-14 18:17:49 +05:30
RMidhunSuresh
4a12acf157
Improve error code
2022-01-14 18:17:49 +05:30
RMidhunSuresh
67da746b48
Render error
2022-01-14 18:17:49 +05:30
RMidhunSuresh
545aae31d9
WIP
2022-01-14 18:17:49 +05:30
RMidhunSuresh
3aa29cfc65
Do not remove reply preview
2022-01-14 18:17:49 +05:30
RMidhunSuresh
99f4eb6843
Minimize manual dom manipulation where possible
2022-01-14 18:17:49 +05:30
RMidhunSuresh
61f4d0719f
Refactor code
2022-01-14 18:17:49 +05:30
RMidhunSuresh
d6233e7c77
Render static avatar
2022-01-14 18:17:49 +05:30
RMidhunSuresh
540aa6c546
Use contextEntry and pass avatarUrl
2022-01-14 18:17:49 +05:30
RMidhunSuresh
31573b3599
Render reply
2022-01-14 18:17:49 +05:30
RMidhunSuresh
e88ee31991
Add getter for reply body
2022-01-14 18:17:49 +05:30
RMidhunSuresh
f6cf3b378b
Strip reply fallback
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
RMidhunSuresh
4fa32bac2f
check only in remoteEntries
2022-01-14 16:14:06 +05:30
Bruno Windels
58f2192a7e
add basic readme for updates in the timeline
2022-01-14 11:13:21 +01:00
RMidhunSuresh
3c28ee1adf
Remove unused getter
2022-01-13 21:05:18 +05:30
RMidhunSuresh
2c4610c132
add param to emitUpdateForEntry
2022-01-13 19:20:37 +05:30
RMidhunSuresh
239d16747d
Clean test code; try not to peek into internals
2022-01-13 19:14:28 +05:30
RMidhunSuresh
764541d3ca
Remove unused method
2022-01-13 18:32:18 +05:30
RMidhunSuresh
ca1831fef6
update contextForEntries
2022-01-13 14:38:05 +05:30
RMidhunSuresh
2f4c0623d0
Restore earlier name
2022-01-12 19:20:32 +05:30
RMidhunSuresh
ed88184757
Remove statement
2022-01-12 19:14:38 +05:30
RMidhunSuresh
d0f7570f5e
Fix tests
2022-01-12 18:44:17 +05:30
RMidhunSuresh
acafae7d3a
Implement offline support for context entries
2022-01-11 20:58:27 +05:30
RMidhunSuresh
a59bf7c002
Fix looking in allEntries
2022-01-11 20:57:29 +05:30
RMidhunSuresh
5c1813888c
Check in all entries for context
2022-01-11 14:57:22 +05:30
RMidhunSuresh
73733ce145
Guard entry from storage being processed by method
2022-01-11 14:49:59 +05:30
RMidhunSuresh
bf6dfcfcad
update comment
2022-01-11 13:28:35 +05:30
RMidhunSuresh
f605608098
getTrackedEntry -> findLoadedEventById
2022-01-11 13:20:42 +05:30
RMidhunSuresh
31a8227e53
stylistic change
2022-01-11 13:14:13 +05:30
RMidhunSuresh
62dcb61536
Rename updateEntry -> emitUpdateForEntry
2022-01-11 13:11:50 +05:30
RMidhunSuresh
fda211e7b3
Remove dead code
2022-01-11 13:10:40 +05:30
RMidhunSuresh
63b6564f70
Pass prop change
2022-01-11 11:54:41 +05:30
RMidhunSuresh
93bbeee400
Don't pass relatedEntry in param
2022-01-11 11:49:06 +05:30
RMidhunSuresh
66fa8d84a7
Make setAsContextOf private
2022-01-10 18:51:12 +05:30
RMidhunSuresh
091b55a265
Rename method and add comment
2022-01-10 18:05:33 +05:30
RMidhunSuresh
ec8f6e8e0a
use addLocalRelation
2022-01-10 12:58:45 +05:30
RMidhunSuresh
7ad73bb453
Move check down
2022-01-07 19:56:31 +05:30
RMidhunSuresh
3fecce6fe6
Fix tests
2022-01-07 19:39:51 +05:30
RMidhunSuresh
9d161a0bcf
Refactor + put redaction in NonPersistedEventEntry
2022-01-07 19:38:57 +05:30
RMidhunSuresh
8cc04e4c25
Keep calls internal to class
2022-01-07 17:50:36 +05:30
RMidhunSuresh
0a09a50ab9
Move line into if
2022-01-07 17:29:17 +05:30
RMidhunSuresh
c6484f1eac
Replace entry in contextEntryNotInTimeline
2022-01-07 17:11:42 +05:30
RMidhunSuresh
cfbb6d4250
Add explaining comment
2022-01-06 15:37:58 +05:30
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