Commit Graph

47161 Commits (7ca0cd13d0bbf73d3e048662f16e5be5d2dcd9b3)

Author SHA1 Message Date
Kerry 84ca519b3f
OIDC: revoke tokens on logout (#11718)
* test persistCredentials without a pickle key

* test setLoggedIn with pickle key

* lint

* type error

* extract token persisting code into function, persist refresh token

* store has_refresh_token too

* pass refreshToken from oidcAuthGrant into credentials

* rest restore session with pickle key

* retreive stored refresh token and add to credentials

* extract token decryption into function

* remove TODO

* very messy poc

* utils to persist clientId and issuer after oidc authentication

* add dep oidc-client-ts

* persist issuer and clientId after successful oidc auth

* add OidcClientStore

* comments and tidy

* expose getters for stored refresh and access tokens in Lifecycle

* revoke tokens with oidc provider

* test logout action in MatrixChat

* comments

* prettier

* test OidcClientStore.revokeTokens

* put pickle key destruction back

* comment pedantry

* working refresh without persistence

* extract token persistence functions to utils

* add sugar

* implement TokenRefresher class with persistence

* tidying

* persist idTokenClaims

* persist idTokenClaims

* tests

* remove unused cde

* create token refresher during doSetLoggedIn

* tidying

* also tidying

* OidcClientStore.initClient use stored issuer when client well known unavailable

* test Lifecycle.logout

* update Lifecycle test replaceUsingCreds calls

* fix test

* tidy

* test tokenrefresher creation in login flow

* test token refresher

* Update src/utils/oidc/TokenRefresher.ts

Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>

* use literal value for m.authentication

Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>

* improve comments

* fix test mock, comment

* typo

* add sdkContext to SoftLogout, pass oidcClientStore to logout

* fullstops

* comments

* fussy comment formatting

---------

Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
2023-10-15 21:35:25 +00:00
Michael Telatynski fe3ad78a02
Show `io.element.late_event` in MessageTimestamp when known (#11733)
* Use Compound tooltips on MessageTimestamp to improve UX of date time discovery

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Show io.element.late_event in MessageTimestamp when known

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Update snapshot

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Avoid needing new Compound changes

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Update snapshot

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Update compound-web

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Update identifiers

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Add tests

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Fix types

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Switch to snapshots

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2023-10-14 12:25:36 +00:00
Michael Telatynski a267b86fef
Fix some of the peer dependency unmet warnings (#11745)
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2023-10-13 13:39:28 +00:00
Michael Telatynski 2261a1be8e
Show all labs flags if developerMode enabled (#11746)
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2023-10-13 13:24:00 +00:00
Michael Telatynski 4605fd7396
Use Compound tooltips on MessageTimestamp to improve UX of date time discovery (#11732)
* Use Compound tooltips on MessageTimestamp to improve UX of date time discovery

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Update snapshot

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Update snapshot

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2023-10-13 11:26:12 +00:00
Michael Telatynski 27bb67bac5
Consolidate 4s passphrase input fields and use stable IDs (#11743)
* Reuse PassphraseConfirmField for create 4s flow

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Use stable ID on 4s phrase fields

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Pass autoFocus prop to PassphraseConfirmField

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Update stable ID

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Add missing labels

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2023-10-13 10:39:55 +00:00
Michael Telatynski 255f0f59f5
Disable upgraderoom command without developer mode enabled (#11744)
* Disable upgraderoom command without developer mode enabled

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Update tests

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2023-10-13 09:48:32 +00:00
Michael Telatynski bdf2ebd301
Avoid rendering app download buttons if disabled in config (#11741)
* Add default desktop_builds and mobile_builds into SdkConfig.DEFAULTS

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Avoid rendering app download buttons if config sets to `null`

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Disable app download onboarding task if config has no apps to download

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Add tests and update types

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Fix types

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2023-10-13 09:43:39 +00:00
Michael Weimann e22fa2efc1
Disable spotlight unknown people test (#11740)
This is probably a Synapse issue:
https://github.com/matrix-org/synapse/issues/16472
Waiting for the profile to be available via API before the tests didn't help.
2023-10-13 08:58:13 +00:00
Andy Balaam 6a9942576d
Increase the timeout for the bot to enter the room (#11742)
in an attempt to fix flakes like:

* https://github.com/vector-im/element-web/issues/26298
* https://github.com/vector-im/element-web/issues/26341

which appear to fail when using Rust crypto, possibly because the client
takes a while to start up.
2023-10-13 08:50:16 +00:00
Andy Balaam 38728069e2
Always use cypress-multi-reporters XML report, not just in CI (#11731) 2023-10-13 08:50:05 +00:00
Germain 9ea04a539b
Add data attribute to know what header is used (#11735)
* Add data attribute to know what header is used

* Simplify room header type

* update snapshot
2023-10-12 13:17:51 +00:00
renovate[bot] 3bd6dd9143
Update vector-im (#11621)
* Update vector-im

* Update snapshots

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2023-10-12 11:12:59 +00:00
Manan Sadana 7dc40e6613
Fix: <detail> HTML elements clickable area too wide. (#11666)
* Fix: Details element wide clickable area

* LogoutDialog-test.tsx snapshot updated

* Fixed open state clickable area for dropdowns

* Advanced changed to advanced

---------

Co-authored-by: Manan Sadana <manan.sadana@cnhteam.onmicrosoft.com>
Co-authored-by: Florian Duros <florianduros@element.io>
2023-10-12 08:50:49 +00:00
Kerry 3a025c4b21
OIDC: refresh tokens (#11699)
* test persistCredentials without a pickle key

* test setLoggedIn with pickle key

* lint

* type error

* extract token persisting code into function, persist refresh token

* store has_refresh_token too

* pass refreshToken from oidcAuthGrant into credentials

* rest restore session with pickle key

* retreive stored refresh token and add to credentials

* extract token decryption into function

* remove TODO

* very messy poc

* comments

* prettier

* comment pedantry

* working refresh without persistence

* extract token persistence functions to utils

* add sugar

* implement TokenRefresher class with persistence

* tidying

* persist idTokenClaims

* persist idTokenClaims

* tests

* remove unused cde

* create token refresher during doSetLoggedIn

* tidying

* also tidying

* update Lifecycle test replaceUsingCreds calls

* tidy

* test tokenrefresher creation in login flow

* test token refresher

* Update src/utils/oidc/TokenRefresher.ts

Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>

* use literal value for m.authentication

Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>

* improve comments

---------

Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
2023-10-12 00:49:07 +00:00
Michael Telatynski d115e3c7f8
Fix untranslated headings in the devtools dialog (#11734)
* Fix untranslated headings in the devtools dialog

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Iterate

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2023-10-11 22:21:03 +00:00
Kerry 5d169afb8a
OIDC: register (#11727)
* update uses of ValidatedDelegatedAuthConfig to broader OidcClientConfig type

* add OIDC register flow to registration page

* pass prompt param to auth url creation

* update type

* lint

* test registration oidc button

* fix: reference state inside setState

* comment
2023-10-11 21:44:46 +00:00
Gabriel Rodríguez a80cf58aa3
Fix alignment and poor contrast on user pills in invite dialog (#11722)
* improve invite tile color

* change checkmark color for consistency

* switch to cpd-color-text-info-primary

* fix misaligned "x"

* use --cpd-color-bg-success-subtle instead
2023-10-11 16:00:15 +00:00
Germain ac32d45bcd
Usability fixes for new room header (#11729)
* Usability fixes for new room header

* lintfix

* Apply padding to both heading and topic

* lintfix

* comment clarity

* Remove title attr
2023-10-11 14:43:01 +00:00
Andy Balaam e5a3b6c390
Include Percy command in config for Cypress (#11730)
because command overrides command-prefix, so Percy was not being
invoked.
2023-10-11 14:15:33 +00:00
Florian Duros 71f2104632
Element-R: Use `MatrixClient.CryptoApi.getUserVerificationStatus` instead of `MatrixClient.checkUserTrust` in `UserInfo.tsx` (#11709)
* Mock `CryptoApi.getUserVerificationStatus` instead of `checkUserTrust`

* Use `CryptoApi.getUserVerificationStatus` instead of `checkUserTrust` in `UserInfo.DeviceItem`

* Use `CryptoApi.getUserVerificationStatus` instead of `checkUserTrust` in `UserInfo.DevicesSection`

* Use `CryptoApi.getUserVerificationStatus` instead of `checkUserTrust` in `UserInfo.BasicUserInfo`

* Pass `isUserVerified` props to `BasicUserInfo` children

* Removed remaining calls to `checkUserTrust` in `UserInfo-test.tsx`

* Review changes

* Update comments

* Display spinner only when crypto is initialized

* Fix duplicate `cryptoEnabled`

* Remove misleading comment in `DevicesSection`
2023-10-11 11:45:02 +00:00
dependabot[bot] 4115bae3e1
Bump postcss from 8.4.24 to 8.4.31 (#11714)
Bumps [postcss](https://github.com/postcss/postcss) from 8.4.24 to 8.4.31.
- [Release notes](https://github.com/postcss/postcss/releases)
- [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/postcss/postcss/compare/8.4.24...8.4.31)

---
updated-dependencies:
- dependency-name: postcss
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-11 07:30:37 +00:00
RiotRobot 217073b7f5 Reset matrix-js-sdk back to develop branch 2023-10-10 09:23:03 +01:00
RiotRobot 48cca9261d Resetting package fields for development 2023-10-10 09:22:50 +01:00
RiotRobot 384e01481a Merge branch 'master' into develop 2023-10-10 09:22:45 +01:00
RiotRobot 71f54349d5 v3.82.0 2023-10-10 09:22:28 +01:00
RiotRobot 31b5109c19 Prepare changelog for v3.82.0 2023-10-10 09:22:25 +01:00
RiotRobot 2cf302ccf3 Upgrade matrix-js-sdk to 29.0.0 2023-10-10 09:18:08 +01:00
Abhinav Dixit 54ca20df4b
Prevent select element in General settings overflowing in a room with very long room-id (#11597)
* #25614 Updated mx_Field select

* making the changes reset

* #25614 Updated mx_Field select

* Changes made in the grid and Select tag

* Adding test for mx_Field overflow

* Adding test for mx_Field overflow for long address

* Adding test for mx_Field overflow after formatting

---------

Co-authored-by: R Midhun Suresh <hi@midhun.dev>
2023-10-09 10:55:43 +00:00
Manan Sadana 54fa9a572e
Fix: Clicking on members pile does nothing. (#11657)
* Fix: Clicking on pile opens members list

* onClick used on Accessible Component

* Updated snapshots for testing

* Snapshots updated after merging

---------

Co-authored-by: Manan Sadana <manan.sadana@cnhteam.onmicrosoft.com>
2023-10-06 06:54:25 +00:00
Richard van der Hoff 91413bc6b6
Revert "Turn on Cypress debug logs to figure out why reports are not being created" (#11720)
This reverts commit 70d834c28e.
2023-10-05 16:58:11 +00:00
Richard van der Hoff 7ff2b02364
Disable a bunch of flaky cypress tests (#11719) 2023-10-05 15:30:49 +01:00
Andy Balaam 9efa458b68
Unflake JoinRuleSettings test (#11715)
* Don't look for 'Updating space' message in joinrulesettings test

as it may disappear too quickly for us to see.

Fixes https://github.com/vector-im/element-web/issues/25625

* Provide mock function to avoid warning in JoinRuleSettings test
2023-10-05 03:30:57 +00:00
Andy Balaam ae51ed75f7
Merge pull request #11716 from matrix-org/andybalaam/enable-cypress-debug-logging
Turn on Cypress debug logs to figure out why reports are not being created
2023-10-04 16:15:55 +01:00
Andy Balaam 70d834c28e Turn on Cypress debug logs to figure out why reports are not being created 2023-10-04 14:57:43 +01:00
Florian Duros d40092c9da
Element-R: Use `MatrixClient.CryptoApi.getUserVerificationStatus` instead of `MatrixClient.checkUserTrust` in `MemberTile.tsx` (#11701)
* Use `MatrixClient.CryptoApi.getUserVerificationStatus` instead of `MatrixClient.checkUserTrust` in `MemberTile.tsx`

* Add tests to `MemberTile.tsx`

* Use `mocked` instead of `spyOn`
2023-10-04 13:01:39 +00:00
Richard van der Hoff 241df0ba0a
Cypress: write logs to file (#11712)
... in an attempt to make the github actions output easier to grok
2023-10-04 10:03:33 +00:00
Michael Telatynski 9d1f10e4be
Update workflows around i18n to use Localazy (#11455)
* Remove prunei18n

* Update README

* Update matrix-web-i18n

* Iterate

* Add feature=filter_untranslated

* yarn.lock

* Update localazy.json

* Update package.json

* Update localazy.json

* Update matrix-web-i18n and update i18n:lint

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Iterate

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Iterate

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Remove stale workflow

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Localazy Download

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* i18n

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Localazy Download

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2023-10-04 09:28:09 +00:00
Kerry feb7e9899b
OIDC: persist id token claims (#11691)
* persist idTokenClaims

* tests

* remove unused cde
2023-10-04 05:06:04 +01:00
Richard van der Hoff 1c553eae4e
Skip flaky cypress test on rust crypto (#11710) 2023-10-03 21:20:11 +00:00
Andy Balaam 11507790fd
Skip redaction tests that are still flaking (#11704)
* Unflake redaction tests by checking unread state before sending redactions

* Skip a flaky test

* Skip redaction tests that are still flaking
2023-10-03 21:12:36 +00:00
Michael Telatynski e1cfde0c6e
Migrate more strings to translation keys (#11694) 2023-10-03 19:17:26 +01:00
Will Hunt 677854d318
Fix start_sso / start_cas URLs failing to redirect to a authentication prompt (#11681)
* Show screen before login if using start_sso or start_cas

* Add tests

* Fix lint

* Fix lint

* Add one for CAS

* prettier
2023-10-03 15:19:54 +00:00
Andy Balaam 54a4875e15
Unflake redaction tests by checking unread state before sending redactions (#11696) 2023-10-03 18:03:52 +01:00
Richard van der Hoff da85b6f257
Enable some cypress tests for rust crypto (#11689) 2023-10-03 15:04:13 +00:00
Manan Sadana 34a0cf7e54
Members shield alignment fixed (#11700) 2023-10-03 14:49:09 +00:00
Andy Balaam f1d34adbbe
Merge pull request #11695 from matrix-org/andybalaam/share-code-between-read-receipt-tests
Share code for room initialisation between read receipt tests
2023-10-03 15:40:06 +01:00
Andy Balaam c27c230195
Merge pull request #11678 from manancodes/manancodes/Room_avatar_alignment
Fix: Wierd shadow below room avatar in dark mode.
2023-10-03 15:39:47 +01:00
Florian Duros 067e338b4b
Cypress: Check that the new verified device is connected to key backup (#11686)
* Check that the new verified device is connected to key backup

* Review changes. Extract key backup verification in its own function and chang parameter order of bot `bootstrapSecretStorage` call.
2023-10-03 12:44:15 +00:00
Hugh Nimmo-Smith 4fd8ab933a
Use stable get_login_token and remove unstable MSC3882 support (#11001)
* Support for stable MSC3882 get_login_token

* Fix unstable name type

* Remove tests for unstable MSC3882

* Fix up tests
2023-10-03 12:15:41 +00:00