Commit graph

617 commits

Author SHA1 Message Date
Travis Ralston
aba61fa390 Revert "Support refresh tokens (#7802)"
This reverts commit 839593412c.
2022-02-16 12:32:38 -07:00
Travis Ralston
839593412c
Support refresh tokens (#7802)
MSC: https://github.com/matrix-org/matrix-doc/pull/2918
Fixes https://github.com/vector-im/element-web/issues/18698
Fixes https://github.com/vector-im/element-web/issues/20648
**Requires https://github.com/matrix-org/matrix-js-sdk/pull/2178**

**Note**: There's a lot of logging in this PR. That is intentional to ensure that if/when something goes wrong we can chase the exact code path. It does not log any tokens - just where the code is going. Overall, it should be fairly low volume spam (and can be relaxed at a later date).

----

This approach uses indexeddb (through a mutex library) to manage which tab actually triggers the refresh, preventing issues where multiple tabs try to update the token. If multiple tabs update the token then the server might consider the account hacked and hard logout all the tokens.

If for some reason the timer code gets it wrong, or the user has been offline for too long and the token can't be refreshed, they should be sent to a soft logout screen by the server. This will retain the user's encryption state - they simply need to reauthenticate to get an active access token again.

This additionally contains a change to fix soft logout not working, per the issue links above.

Of interest may be the IPC approach which was ultimately declined in favour of this change instead: https://github.com/matrix-org/matrix-react-sdk/pull/7803
2022-02-15 20:16:49 +00:00
Michael Telatynski
cfa6e266cd
Wire up new fields on the ViewRoom posthog event and more interactions (#7787) 2022-02-14 19:31:13 +00:00
RiotRobot
9b3af6c493 Reset back to develop branch 2022-02-14 15:41:31 +00:00
RiotRobot
0304d3245c Merge branch 'master' into develop 2022-02-14 15:39:33 +00:00
RiotRobot
7558568158 Upgrade matrix-js-sdk to 15.5.1 2022-02-14 15:19:06 +00:00
Michael Telatynski
87ca70edb1
Switch to web-specific screens and $pageview event (#7777) 2022-02-10 14:38:31 +00:00
Michael Telatynski
fd832488f1
Update slash command posthog enum (#7776) 2022-02-10 13:11:10 +00:00
Michael Telatynski
f6565bfbc8
Send how many favorited rooms a user has to Posthog (#7772) 2022-02-10 10:02:34 +00:00
Michael Telatynski
5620b83d34
Wire up more Posthog tracking (#7689) 2022-02-09 14:25:58 +00:00
Michael Telatynski
91ccbe4395
Add way to track posthog user properties and send numSpaces (#7716) 2022-02-09 09:21:56 +00:00
David Baker
df5aa10935
Yarn upgrade (#7750) 2022-02-08 19:17:23 +00:00
RiotRobot
ec571ddd8d Upgrade matrix-js-sdk to 15.5.1-rc.1 2022-02-08 15:37:07 +00:00
J. Ryan Stinnett
7f3f186044
Switch back to upstream Linkify (#7677) 2022-02-04 17:21:03 +00:00
Kerry
292971dd0e
Upgrade to jest 27 (#7699)
* use jest@27.4.0, replace jest-environment-jsdom-sixteen with jest-environment-jsdom

Signed-off-by: Kerry Archibald <kerrya@element.io>

* polyfill setImmediate

Signed-off-by: Kerry Archibald <kerrya@element.io>

* remove done from async test cases

* useRealTimers in test relying on promise flushing

Signed-off-by: Kerry Archibald <kerrya@element.io>

* remove jest environment file

Signed-off-by: Kerry Archibald <kerrya@element.io>

* replace ts-jest mocked with jest utils mocked

Signed-off-by: Kerry Archibald <kerrya@element.io>
2022-02-02 13:02:17 +01:00
RiotRobot
82f3888cee Reset matrix-js-sdk back to develop branch 2022-02-01 15:52:28 +00:00
Michael Telatynski
8dd0722e04
Update eventName=Screen to $screen to match PostHog's special behaviour (#7667) 2022-02-01 15:49:49 +00:00
David Baker
9ffc141350
Yarn upgrade (#7683) 2022-01-31 16:54:01 +00:00
RiotRobot
8221faad6c Reset matrix-js-sdk back to develop branch 2022-01-31 14:57:25 +00:00
RiotRobot
a25fea9f96 Merge branch 'master' into develop 2022-01-31 14:57:13 +00:00
RiotRobot
e0b041bdca Upgrade matrix-js-sdk to 15.5.0 2022-01-31 14:48:14 +00:00
Kerry
085ecc7f5f
Chat export parameter customisation (#7647)
* use export settings and hide fields

Signed-off-by: Kerry Archibald <kerrya@element.io>

* fix exporter tests

Signed-off-by: Kerry Archibald <kerrya@element.io>

* test ExportDialog with settings

Signed-off-by: Kerry Archibald <kerrya@element.io>

* tidy debugs, rename setting to Parameters

Signed-off-by: Kerry Archibald <kerrya@element.io>

* use reasonable 100gb limit

Signed-off-by: Kerry Archibald <kerrya@element.io>

* use normal setting instead of UIFeature

Signed-off-by: Kerry Archibald <kerrya@element.io>

* use a customisation

Signed-off-by: Kerry Archibald <kerrya@element.io>

* move validateNumberInRange to utils

Signed-off-by: Kerry Archibald <kerrya@element.io>

* use nullish coalesce

Signed-off-by: Kerry Archibald <kerrya@element.io>

* use 8gb size limit for customisation

Signed-off-by: Kerry Archibald <kerrya@element.io>

* update comments

Signed-off-by: Kerry Archibald <kerrya@element.io>
2022-01-31 12:54:14 +01:00
RiotRobot
01d1e0292c Upgrade matrix-js-sdk to 15.5.0-rc.1 2022-01-26 17:01:37 +00:00
J. Ryan Stinnett
51a44f491e
Upgrade linkifyjs to fix schemes as domain prefixes (#7628) 2022-01-25 17:37:54 +00:00
J. Ryan Stinnett
010cbadc8e Tweak lockfile 2022-01-21 15:51:15 +00:00
David Baker
91743c9a1a
Switch to github: URL to be consistent with other deps (#7588)
and resolves to a tarball which can be cached nicely. Also
some other yarn.lock change that yarn seems to be insisting on.

Fixes https://github.com/vector-im/element-web/issues/20628
2022-01-21 09:32:09 +00:00
Travis Ralston
6712a5b1c5
Parse matrix-schemed URIs (#7453)
Co-authored-by: J. Ryan Stinnett <jryans@gmail.com>
Co-authored-by: Dariusz Niemczyk <dariuszn@element.io>
Co-authored-by: Timo K <toger5@hotmail.de>

With this pr all href use matrix matrix.to links. As a consequence right-click copy link will always return get you a sharable matrix.to link.
2022-01-20 18:18:47 +01:00
Dariusz Niemczyk
336e1ae3b6
Upgrade linkify to v3.0 (#7282)
Co-authored-by: Timo K <toger5@hotmail.de>
2022-01-18 18:24:16 +01:00
Travis Ralston
65987e6b72
Move all polls processing to events-sdk & prep for stable polls (#7517)
* Move all polls processing to events-sdk

This makes polls support the full range of extensible events (both parsing and generation).

* Appease the linter

* Fix & update tests

* Update events-sdk for polls bugfix

* Update events-sdk for typechecking

* Add missing type cast

* Update per review
2022-01-17 10:06:30 -07:00
RiotRobot
11ca9bd707 Merge branch 'master' into develop 2022-01-17 14:24:39 +00:00
RiotRobot
3c26418b5c Upgrade matrix-js-sdk to 15.4.0 2022-01-17 14:13:57 +00:00
J. Ryan Stinnett
8c7b396bb5 Update yarn.lock 2022-01-14 11:34:15 +00:00
Travis Ralston
61a0be7d46
Render events as extensible events (behind labs) (#7462)
* Render events as extensible events (behind labs)

* Include the SDK

* Appease linter

* Update for changed property name

* Fix formatting error

* Fix branch matching for build steps

* Update SDK

* Update scripts/fetchdep.sh

Co-authored-by: Andy Balaam <andyb@element.io>

Co-authored-by: Andy Balaam <andyb@element.io>
2022-01-13 17:03:37 +00:00
J. Ryan Stinnett
8b01b68fa3
Use published matrix-web-i18n (#7530) 2022-01-13 10:30:09 +00:00
David Baker
bdb40ae9d1
Yarn upgrade (#7515) 2022-01-11 17:17:08 +00:00
RiotRobot
0d84372da2 Upgrade matrix-js-sdk to 15.4.0-rc.1 2022-01-11 15:02:33 +00:00
J. Ryan Stinnett
6199c337ea
Fix spacing errors (#7484) 2022-01-10 12:57:20 +00:00
Kerry
2b9eed5357
update yarn.lock and i18n (#7476)
* add hash to matrix-web-i18n dep, update i18n

Signed-off-by: Kerry Archibald <kerrya@element.io>

* remove hash from dep

Signed-off-by: Kerry Archibald <kerrya@element.io>
2022-01-07 10:37:12 +01:00
Kerry
846fbfa2a0
Add jsx-a11y eslint plugin (#7434)
* add matrix-org a11y eslint plgin

Signed-off-by: Kerry Archibald <kerrya@element.io>

* add eslint a11y, enable and fix anchor-has-content rule

Signed-off-by: Kerry Archibald <kerrya@element.io>

* enable and fix jsx-a11y/no-redundant-roles

Signed-off-by: Kerry Archibald <kerrya@element.io>

* remove debug

Signed-off-by: Kerry Archibald <kerrya@element.io>

* i18n

Signed-off-by: Kerry Archibald <kerrya@element.io>

* use jsx-a11y via matrix-org-eslint

Signed-off-by: Kerry Archibald <kerrya@element.io>
2022-01-03 18:51:58 +01:00
RiotRobot
2330292c24 Reset back to develop branch 2021-12-20 14:29:05 +00:00
RiotRobot
fa63c939ba Upgrade matrix-js-sdk to 15.3.0 2021-12-20 14:03:15 +00:00
Michael Telatynski
3bf85a05a9
[Release] Pin qrcode to fix e2e verification bug (#7379) 2021-12-15 16:23:18 +00:00
RiotRobot
0fac781f47 Upgrade matrix-js-sdk to 15.3.0-rc.1 2021-12-14 14:42:11 +00:00
Michael Telatynski
132e19beb7
Update typescript-eslint plugin & parser (#7351) 2021-12-13 23:39:45 +00:00
Travis Ralston
0bb7f3d3ee Fix conflict chunk in lockfile 2021-12-13 12:29:09 -07:00
RiotRobot
56dcce6bfc Merge branch 'master' into develop 2021-12-13 15:30:11 +00:00
RiotRobot
72bdd61407 Upgrade matrix-js-sdk to 15.2.1 2021-12-13 15:25:24 +00:00
David Baker
b54a6d570e
update olm to 3.2.8 (#7347) 2021-12-13 14:59:13 +00:00
Michael Telatynski
c96b9413e7
Update Typescript to 4.5 (#7344) 2021-12-13 11:22:53 +00:00
Andy Balaam
c56833816a
Update yarn.lock (#7327) 2021-12-10 11:29:27 +00:00