69182 Commits

Author SHA1 Message Date
Richard van der Hoff
3f3ed93b8a
nx test:playwright:screenshots: only do snapshots for Chrome (#33216)
* nx test:playwright:screenshots: only do snapshots for Chrome

`nx` eats the `--project` option unless we prefix with `--`.

* Apply suggestion from @richvdh
2026-04-21 11:34:22 +00:00
Michael Telatynski
133a56da65
Playwright docker improvements (#33213)
* Clean up playwright-common Dockerfile

* Speed up element-web docker build

* Wire up element-desktop playwright tests via nx

* Better debug logs for Element Desktop playwright in CI

* Iterate

* Iterate

* Fix element-desktop screenshot docker

* @electron/fuses

* Partial revert
2026-04-21 09:58:16 +00:00
mxandreas
b06422d848
Updates to contribution guide for new features. (#33187)
* Updates to contribution guide for new features.

* Update CONTRIBUTING.md

Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>

* Some final touches.

* Linter/prettier fixes.

---------

Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2026-04-21 09:40:34 +00:00
renovate[bot]
2c58f82298
Update dependency @nx/jest to v22.6.5 (#33206)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-21 08:46:49 +00:00
renovate[bot]
384adea5a2
Update dependency @casualbot/jest-sonar-reporter to v2.6.0 (#33205)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-20 09:38:03 +00:00
renovate[bot]
cb6c48a493
Update actions/setup-node digest to 48b55a0 (#33201)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-20 09:27:13 +00:00
renovate[bot]
73b8b51ea5
Update ghcr.io/element-hq/element-web:latest Docker digest to c7fa40b (#33202)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-20 08:31:47 +00:00
renovate[bot]
e8db72d81a
Update storybook (#33207)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-20 08:27:57 +00:00
renovate[bot]
106b0e09ae
Update dependency typedoc to v0.28.19 (#33204)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-20 08:25:42 +00:00
renovate[bot]
8253d64021
Update testcontainers docker digests (#33203)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-20 08:22:48 +00:00
ElementRobot
9428c10284
[create-pull-request] automated change (#33200)
Co-authored-by: t3chguy <2403652+t3chguy@users.noreply.github.com>
2026-04-20 07:48:45 +00:00
Richard van der Hoff
e58e803368
Update to compound 9.2.0 (#33173)
* Upgrade to compound 9.2.0

... to pick up the export of PageHeader

* update snapshots

* update shared-components snapshots

* More snapshot updates

* update snapshot

* GHA: Show disk usage on failure
2026-04-17 15:51:43 +00:00
Richard van der Hoff
aeaa73adf6
Fix flaky OIDC "verifiy dialog" test (#33188)
This test was flaking. The problem appears to have been that we were clicking
"Continue" twice in succession; the intention was that we click on two
*different* "Continue" buttons, but sometimes we ended up clicking in the same
one twice.

Fix it by waiting for the content to change after the first click.

Fixes: #31316
2026-04-17 13:37:20 +00:00
Michael Telatynski
8834438a20
Add apps/desktop/deploy to Prettier ignore (#33185) 2026-04-17 12:23:24 +00:00
Florian Duros
6b67b24254
Room list: add custom section creation (#33155)
* feat: add creation section dialog

* feat: add in skip list a method to change filters

* feat: add helper to creation section

* feat: add custom sections data to Settings

* feat: add custom section to room list store v3

* feat: update header and room list item vms

* feat: add toast to room list vm

* feat: add new translation

* chore: move util functions of room list specs

* test: add custom section playwright tests

* chore: call loadCustomSections in RoomListStoreV3 ctor
2026-04-17 12:02:42 +00:00
adis veletanlic
73d4b63ada
Fix crashes in when opening Bridges in room settings (#33137)
* use SDKContext for room settings dialog to avoid crash #33107

* format with prettier

* add SDKContext to RoomSettingsDialog test
2026-04-17 11:36:40 +00:00
adis veletanlic
1044a95687
fix(call): leave call along with room (#33162)
* make sure to disconnect from possibly active calls for a room when leaving the room

* log error on log call

* Update apps/web/src/utils/leave-behaviour.ts

Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>

* fix wrong logger import

* hang up calls properly on empty rooms for both legacy and element calls (listen for room event and leave call if only one member left). add tests for both legacy and element calls.

* format Call-test.ts

* revert async on function def

* revert Call.ts and Call-test.ts. Wrap legacy call hangup in try

---------

Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2026-04-17 10:58:15 +00:00
Andy Balaam
abae870b83
Improve the toasts fixture of the playwright-common tools (#33158)
* Improve the toasts fixture of the playwright-common tools

* Increase @element-hq/element-web-playwright-common version to 3.2.0

* Default to 2 second wait for IfExists variants

* Set playwright-common version to 4.0.0 due to breaking change

* Move handleToast into a free function

* Rename handleToast to clickToastButton

* Document new param on clickToastButton
2026-04-17 09:15:22 +00:00
Michael Telatynski
4afba408c0
Satisfy pnpm audit (#33142) 2026-04-17 09:01:27 +00:00
ElementRobot
c3e82cf33b
[create-pull-request] automated change (#33182)
Co-authored-by: t3chguy <2403652+t3chguy@users.noreply.github.com>
2026-04-17 07:08:28 +00:00
renovate[bot]
3b1b39f822
Update dependency sanitize-html to v2.17.3 [SECURITY] (#33180)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-16 21:59:40 +00:00
Richard van der Hoff
cf4b8744ab
Configuration for nx output under playwright (#33177)
When playwright starts the development web server, have it tell nx to use the
`stream` output style, which is somewhat clearer than the
default. (Specifically, it distinguishes between output from different tasks,
so you can see where any errors are coming from.)
2026-04-16 16:29:32 +00:00
Richard van der Hoff
aadf760e3c
Factor DMRoomTile out to its own file (#33170)
I'm going to use this from a new component
2026-04-16 16:19:52 +00:00
Richard van der Hoff
733755abb2
Annotate output from playwright-screenshots scripts (#33176)
... to make it easier to see where it is coming from

Also, add a blank line before starting playwright itself
2026-04-16 15:26:04 +00:00
Richard van der Hoff
9c09a1b731
Add analytics config to nx (#33175)
* Add `analytics` config to nx

There doesn't seem to be any way to stop nx wanting to add this config setting,
so I think we just have to add it.

* Update nx.json
2026-04-16 15:25:52 +00:00
Michael Telatynski
30f442208a
Fix React hydration issues (#32958)
* Add more playwright axe tests to settings dialogs

* Add utility to jest setupTests to detect React hydration errors

* Iterate jest utility

* Fix axe issue heading-order

* Fix div-in-p issues

* Fix setupTests.ts

* Fix heading order

* Make types happier

* Fix hydration issues of thead containing text nodes

* Update tests

* Fix form-in-form React hydration issues

* Fix li-in-li React hydration issues

* Fix checked in form without onChange React hydration issue

* Fix styling bleeding from _common.pcss

* Update snapshots

* Fix more remaining issues

* Remove _common.pcss h2 rule altogether

* Fix test

* Update snapshots

* Iterate

* Iterate

* Update snapshots

* Simplify diff

* Test

* Update screenshots

* Update screenshot
2026-04-16 13:35:40 +00:00
Florian Duros
d7f5546294
Room list: add custom section creation in SC (#33138)
* feat: add way to create custom section in SC

* feat: disable custom section in vms

* chore: include design tokens icons in vitest config

* test: update screenshot

* chore: use one react import
2026-04-16 13:14:10 +00:00
Michael Telatynski
64d3802efe
Fall back to OIDC response_mode query if fragment unsupported (#33169)
* Fall back to OIDC response_mode query if fragment unsupported

* Tidy comments

* Fix test
2026-04-16 11:07:39 +00:00
Richard van der Hoff
583eae63f7
Simplifications in InviteDialog (#33156)
* InviteDialog: simplify users section for CallTransferDialog

The majority of `renderMainTab` is enpty for the call transfer dialog, so we
may as well inkine the bits that aren't.

* Simplify `renderMainTab`

Now that this is unused for CallTransfer, we can simplify

* Remove redundant eslint-disable

eslint seems happy without this, and we shouldn't be disabling lints for a
whole file anyway
2026-04-16 09:03:26 +00:00
Zack
d4aea25600
Phase 1 Refactor MImageBody to shared component (#33093)
* Phase 1 Refactor MImageBody to shared component

* blurhash package added into shared components

* Added image snapshots

* Correct the GIF label css design

* Update snapshot for GIF

* crop image correctly

* Update snapshot to reflect updates

* typo fix

* update css to compund variables

* Added tsdoc to function

* Fix inaccurate css and text values in stories

* use const enum instead

* Add i18n to shared components + added string

* Correct css comment information

* Update lockfile
2026-04-16 08:59:32 +00:00
renovate[bot]
aa0abdb43a
Update dependency matrix-seshat to v4.2.0 (#33168)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-16 08:50:54 +00:00
renovate[bot]
3e63216822
Update cloudflare/wrangler-action digest to 9acf94a (#33167)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-16 08:41:26 +00:00
Michael Telatynski
475b89ec46
Update check-regexp to exclude 'Report results'
As this runs on workflow_run so gets clobbered by non-develop runs
2026-04-16 09:55:27 +01:00
Michael Telatynski
b495628e6f
Fix element-web start not building module-api (#33161) 2026-04-16 07:58:43 +00:00
Richard van der Hoff
ef5fad8d6a
BaseDialog: fix comment (#33159)
This comment was a half-truth
2026-04-15 15:57:40 +00:00
renovate[bot]
93ab87c4a1
Migrate Renovate config (#33160)
* Migrate config .github/renovate.json

* Prettier

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2026-04-15 15:53:22 +00:00
Michael Telatynski
e8b4b9b6ed
Teach renovate about hakDependencies (#33147)
* Teach renovate about hakDependencies

* Update testcontainers-docker slug
2026-04-15 14:56:49 +00:00
renovate[bot]
421fbe4a52
Update storybook (#33125)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-15 10:33:42 +00:00
renovate[bot]
35b9b12eae
Update nx to v22.6.5 (#33124)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-15 09:36:09 +00:00
Michael Telatynski
de4a1e6d35
Switch OIDC to response_mode=fragment (#33100)
* Refactor: kill off `parseQs` in favour of URLSearchParams

* Consolidate app-load url parameter handling

* Switch to responseMode=fragment
2026-04-15 09:35:02 +00:00
Michael Telatynski
5475edbbc5
Fix layered.sh linking js-sdk incorrectly (#33143)
* Simplify layered.sh

pnpm link already installs dependencies, this was causing the prepare script to run twice

* Improve logging in fetchdep and make linter happier

* Fix incorrectly linking js-sdk
2026-04-15 08:59:27 +00:00
renovate[bot]
dfdd438ae6
Update eslint-plugins (#33123)
* Update eslint-plugins

* Hold back esbuild to unbreak vitepress

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2026-04-15 08:48:15 +00:00
ElementRobot
c106abd721
[create-pull-request] automated change (#33092)
Co-authored-by: t3chguy <2403652+t3chguy@users.noreply.github.com>
2026-04-15 08:35:12 +00:00
Michael Telatynski
181b06b3c8
Fix static analysis CI gate not working (#33146)
* Debug CI

* Debug CI

* Fix ci final job

* Revert test change
2026-04-14 20:14:28 +00:00
renovate[bot]
b63c3646bd
Update docker (#33145)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-14 15:40:35 +00:00
Michael Telatynski
201f5dfd90
Fix build-and-test.yaml skip behaviour for downstream runs 2026-04-14 16:22:48 +01:00
Zack
80cf9e5b4a
Shared Components Restructure, Cherry Picked | Room Shell Structure (#32917)
* refactor(shared-components): move composer and right-panel tree

* refactor: cleanup remaining structure leftovers

* test(shared-components): add room shell visual baselines

* Correct Path
2026-04-14 13:20:15 +00:00
Michael Telatynski
cc9549da0a
Skip bulk of CI in pull_request renovate runs (#33141)
* Skip bulk of CI in pull_request renovate runs

Relying instead on running the full suite in the merge queue to lower the impact of Renovate on the github actions concurrency limits in the org

* Iterate
2026-04-14 13:17:32 +00:00
Michael Telatynski
9151640d40
Exclude binary files from Sonar analysis (#33144)
* Exclude png files from Sonar analysis

They just cause errors

`11:39:29.466 WARN  Invalid character encountered in file /home/runner/work/element-web/element-web/apps/web/res/vector-icons/152.png at line 1 for encoding UTF-8. Please fix file content or configure the encoding to be used using property 'sonar.sourceEncoding'.`

* Modify sonar-project.properties for exclusions

Updated sonar.exclusions to include additional file types.
2026-04-14 13:15:36 +00:00
Zack
f615968835
Refactoring readMarkerForEvent into ReadMarkerView in shared-components (#32777)
* Refactoring readMarkerForEvent  into ReadMarketView in shared-components

* Use shared ReadMarkerView in MessagePanel

* Rename ReadMarkerView to ReadMarker

* Fix Prettier

* Update snapshots screenshots

* Use plain props for ReadMarker

* Fix Prettier

* Move ReadMarker into room timeline

* Replace ReadMarker nested ternary

* Update snapshot
2026-04-14 11:56:52 +00:00