Commit Graph

617 Commits (d6fb08114d8314cb58d446b7ddc14df93f88a69b)

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