Commit graph

1459 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
Travis Ralston
9141225a79
Add jest-mock to dependencies (#7800)
It's being used by the chat export test, but is not listed as a dependency.

If we rely on it, we should rely on it.
2022-02-14 19:29:08 +00:00
RiotRobot
9b3af6c493 Reset back to develop branch 2022-02-14 15:41:31 +00:00
RiotRobot
8c62945096 Resetting package fields for development 2022-02-14 15:39:36 +00:00
RiotRobot
0304d3245c Merge branch 'master' into develop 2022-02-14 15:39:33 +00:00
RiotRobot
f7e6250599 v3.40.0 2022-02-14 15:23:26 +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
RiotRobot
db34ff8174 v3.40.0-rc.2 2022-02-09 10:27:18 +00:00
Kerry
ebb1feee50
Basic script to create react component with test and style files (#7757)
* basically working script

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

* add test template

* add skinned-sdk import to test temp

* remove extra import

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

* comments

Signed-off-by: Kerry Archibald <kerrya@element.io>
2022-02-09 10:33:21 +01:00
Michael Telatynski
91ccbe4395
Add way to track posthog user properties and send numSpaces (#7716) 2022-02-09 09:21:56 +00:00
RiotRobot
4c3c20ae62 v3.40.0-rc.1 2022-02-08 15:40:30 +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
e90885dd9d Merge branch 'master' into develop 2022-02-01 15:52:12 +00:00
RiotRobot
34a95f4d27 v3.39.1 2022-02-01 15:50:26 +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
RiotRobot
8221faad6c Reset matrix-js-sdk back to develop branch 2022-01-31 14:57:25 +00:00
RiotRobot
9283202b87 Resetting package fields for development 2022-01-31 14:57:14 +00:00
RiotRobot
a25fea9f96 Merge branch 'master' into develop 2022-01-31 14:57:13 +00:00
RiotRobot
bdcdd745ba v3.39.0 2022-01-31 14:55:25 +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
7567aebe47 v3.39.0-rc.2 2022-01-26 18:07:18 +00:00
RiotRobot
f2d360e639 v3.39.0-rc.1 2022-01-26 17:04:44 +00: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
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
4028b5ef2e Resetting package fields for development 2022-01-17 14:26:25 +00:00
RiotRobot
11ca9bd707 Merge branch 'master' into develop 2022-01-17 14:24:39 +00:00
RiotRobot
0b83dfcd63 v3.38.0 2022-01-17 14:17:04 +00:00
RiotRobot
3c26418b5c Upgrade matrix-js-sdk to 15.4.0 2022-01-17 14:13:57 +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
Eric Eastwood
038a6bc204
Make slash command errors translatable but also work in rageshakes (#7377)
See https://github.com/matrix-org/matrix-react-sdk/pull/7372#discussion_r769556546

We want the error to be translated for the user but not in our rageshake logs.

Also updates some error messages to give more info.
2022-01-11 12:25:28 -06:00
RiotRobot
3c7c620b1f v3.38.0-rc.1 2022-01-11 15:04:11 +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
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
689ddb2ba7 Resetting package fields for development 2021-12-20 14:22:48 +00:00