38 Commits

Author SHA1 Message Date
R Midhun Suresh bc7ac39d5b Use the separator as border between roomlist and main panel (#33598)
* Remove border from roomlist container

The separator will act as the border so we no longer need the roomlist
border.

* Use pointer events to detect click event

Otherwise the onClick handler would run when you resize the panel.

* Support showing the border in separator

* Update tests

* Disable double click behaviour on separator

* Fix screenshot tests failing
2026-05-26 11:22:41 +01:00
David Baker 8e42cf7298 Bump to 6.0.0 2026-05-22 15:23:30 +01:00
David Baker 7e3d6bf562 Fix playwright tests (#33592)
* Fix playwright tests

The screenshot reporter was using an import that no longer works as
of playwright 1.60. Inline the function instead as it doesn't seem
to be importable.

* Our custom expect was importing itself?

How did that ever work?

* Nope, that doesn't seem to help

and also it was aiming the in in playwright common which should be the 2nd level of extension

* Provide non-overridden version of the same function

as per comment
2026-05-22 15:01:08 +01:00
David Baker e46a9bddaf Pass tags with INPUT_TAGS in docker bake job (#33574)
* Pass tags with INPUT_TAGS in docker bake job

Truly hideous mess of shell to set both env vars in the prebuild step.

As the env var doesn't seem to be available to the actual executor
but clearly must be available to the docker that it runs.

* gnore printf, it's a shell builtin
2026-05-21 13:30:30 +01:00
R Midhun Suresh 7ce368537b Stabilize playwright tests by making the left panel constant width (#33451)
* Move css injection to panel.ts

- Inject css on event

* Upgrade package

* Fix playwright tests

* Remove RR instead of masking it

* Fix wrong import

* Fix playwright tests

* Fix more playwright tests

* Catch error and add comment
2026-05-21 09:49:03 +01:00
David Baker ba3682074b Another attempt at fixing the docker bake error (#33535)
Turns out the .env.docker:build is read automatically by nx when running
that project step, so it should be in the env. It might just be that using
the `x=$x` format means docker gets the $ literally because no shell is involved
here, so we need to use the plain `x` format so docker knows to take it from
the environment itself.

That's the theory, anyway.
2026-05-20 11:20:54 +00:00
David Baker 0140563b64 Tweak new user menu design (#33444)
* Tweak new user menu design

* Update screenshots

* More screenshots

* Add story with no avatar

* add story to test

* Expand the menu so it actually shows what it's supposed to show

* Use the open parameter

which is the param to open the menu

* snapshot

* Add test for normal open menu version

* Move menu to the right of the avatar

and make it appear on top of the display name

* Fix user menu layout

* screenshots

* snapshot

* screenshots

* more screenshots

* Shift toasts to the left slightly

So they completely cover the display name of the user menu when
it's expanded. Also down slightly so they're level with the user menu.

* Tweak toast border radius & position

to match & sit on top of the user menu

* Close toasts in cider tests

* Only close the toast if it's actually there

* Fix some toasts to be dismissed & update screenshots

more to come though

* Make closeKeyStorageToast actually optional

* Fix some more toasts & races

* Screenshots again again (again)

* More screenshots

* Convert to rejectToast

* Fix toast rejectors to not wait and update screenshots

* Apparently 1ms is not long enough
2026-05-19 13:10:14 +00:00
Andy Balaam 714bc20718 Remove toasts fixture from playwright-common: use rejectToast etc. directly. (#33520) 2026-05-18 12:40:02 +00:00
Andy Balaam 1922266ba7 Bump @element-hq/element-web-playwright-common version to 4.1.0 (#33500) 2026-05-15 11:33:32 +00:00
Andy Balaam cff2c4cd25 Replace toasts fixture in playwright-common with utility functions. (#33152)
* Provide toasts utility functions, soon to replace the toasts fixture.

* Review suggestions
2026-05-14 14:29:13 +00:00
David Baker b6c24cb04f Use the env file when buiding playwright common docker (#33483)
* Use the env file when buiding playwrigt common docker

The docker builds failed due to the variable for being available

* Also we surely don't need this twice
2026-05-13 13:07:16 +00:00
renovate[bot] 9a5f940787 Update dependency mailpit-api to v2 (#33317)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-28 13:14:05 +00:00
Michael Telatynski 12df09bd4b Move playwright-common wait-on from devDependencies to dependencies (#33272)
as it is needed by the `playwright-screenshots.sh` script which is exposed to dependants
2026-04-23 07:51:39 +00:00
renovate[bot] 2d16498fe6 Update dependency typescript to v6 (#32927)
* Update dependency typescript to v6

* Switch to unplugin-vts

Workaround for https://github.com/qmhc/unplugin-dts/issues/467

And tweak tsconfigs

* tweak tsconfig

* Make tsc happy

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2026-04-22 12:28:54 +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
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
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
Andy Balaam 9a8ffbe0bd playwright-common utilities for handling toasts (#33119)
* playwright-common utilities for handling toasts

* Set element-web-playwright-common version to 3.1.0

* Add comments to explain the linear hierarchy of fixtures
2026-04-14 11:49:27 +00:00
Michael Telatynski 7010f2091c Absorb element-modules/packages/element-web-module-api into monorepo 2026-04-13 11:10:11 +01:00
Michael Telatynski 1096ca2066 Iterate 2026-04-10 17:39:46 +01:00
Michael Telatynski ec924deaa0 Merge branch 'develop' of ssh://github.com/element-hq/element-web into t3chguy/monorepo-playwright-common
# Conflicts:
#	pnpm-lock.yaml
2026-04-10 16:41:45 +01:00
Richard van der Hoff a132b9167d Fix playwright-server docker image not exiting (#33099)
* Fix playwright-server docker image not exiting

... by wrapping with tini

* Remove redundant `npm exec`

* Update packages/playwright-common/Dockerfile

* missing comma
2026-04-10 12:31:03 +00:00
Richard van der Hoff b860a3864d Improve output of playwright-screenshots script (#33098)
* Improve output of playwright-screenshots script

* Address review feedback
2026-04-10 11:50:12 +00:00
Michael Telatynski b6b0b0009c Fix some flaky playwright tests (#33085)
* Tweak flaky test reporter to identify setup failures

* Fix some flaky playwright tests

* Iterate
2026-04-09 14:34:48 +00:00
Michael Telatynski 561dbd32be Iterate 2026-04-09 15:31:34 +01:00
Michael Telatynski 540e620f40 Adjust consumers of playwright-common 2026-04-09 15:22:56 +01:00
Michael Telatynski 03e12cbd22 Absorb element-modules/packages/element-web-playwright-common into monorepo 2026-04-09 15:17:15 +01:00
Michael Telatynski 5e80431399 Shorten path for playwright-commmon 2026-04-09 14:35:32 +01:00
Michael Telatynski 2b3720b4a2 Consolidate Build & Test CI (#32929)
* Consolidate Build & Test CI

* Add missing workflow dependency

* Fix artifact name clash

* Fix playwright config

* Fix playwright_ew job

* Fix ed tests

* Fix playwright tags

* Iterate

* Fix file reads

* Fix sample-files paths

* Fix PW_TAG

* Fix blob report paths

* Delint

* Fix build-and-test.yaml

* Iterate

* Fix consentHomeserver.ts

* Simplify

* Iterate

* Delint

* Iterate

* Iterate

* Iterate

* Specify shell

* Simplify

* Delete apps/web/playwright/sample-files/index.ts

* Discard changes to apps/web/playwright/sample-files/index.ts

* Exclude playwright-common from coverage gate

* Attempt to speed up arm64 desktop test

* Revert "Attempt to speed up arm64 desktop test"

This reverts commit 8fa8ff0c78.

* Iterate

* Fix cache key

* Accept python or python3 as per node-gyp

* Accept python or python3 as per node-gypd

* Exclude apps/desktop/hak from coverage gate
2026-03-31 12:52:50 +00:00
Michael Telatynski fc870bd676 Fix playwright tests locally (#32974) 2026-03-31 07:54:23 +00:00
Michael Telatynski efd2636824 Fix docker image signing v2 (#32956)
* Tweak cd.yaml workflow

* Tweak cd.yaml workflow

* Iterate

* Iterate

* Iterate

* Iterate

* Remove debug
2026-03-27 09:13:20 +00:00
Michael Telatynski f573ba4084 Consolidate ED dockerbuild into CD nx workflow (#32923)
* Consolidate ED dockerbuild into CD nx workflow

* Touch Dockerfile to convince CI to be happy
2026-03-26 13:39:39 +00:00
rbondesson e4ed5240e7 Fix playwright script in shared components (#32743) 2026-03-06 09:50:51 +00:00
Michael Telatynski 32037b0135 Make knip happier (#32721)
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2026-03-05 21:42:08 +00:00
Michael Telatynski 83345e0871 Expose PLAYWRIGHT_VERSION argument properly in Dockerfile (#32688) 2026-03-03 12:40:41 +00:00
Michael Telatynski 0b0ac65149 Add continuous delivery for playwright-server docker image (#32522)
* Fix playwright-screenshots.sh script

gcut is a macos thing, use awk for stability

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

* Tweak playwright-screenshots.sh to pull image from ghcr before building

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

* Add missing dependency in playwright-common

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

* Add nx to prettierignore

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

* Add continuous delivery workflow for playwright-server image

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

* Switch to nx affected

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

* Prefix calls to nx with pnpm

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

* Pass GITHUB_TOKEN to nx affected

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

* Use explicit buildx builder

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

* Specify NX_DEFAULT_OUTPUT_STYLE

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

* Remove test trigger

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

* Fix image name

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

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2026-02-19 16:28:51 +00:00
Michael Telatynski b3ca5c73c3 Run only browser in docker for test:playwright:screenshots (#32502)
* Rename playwright-screenshots script to -experimental

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

* Run only browser in docker for test:playwright:screenshots

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

* Fix playwright config for non-remote runs

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

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2026-02-13 12:50:43 +00:00
Michael Telatynski b3b6574638 Run only the browser in docker for storybook screenshots (#32489)
* Remove old screenshots

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

* Add experimental playwright-screenshots.sh utility and use it for shared-components `test:storybook:update`

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

* Tidy up

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

* Iterate based on review

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

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2026-02-13 10:20:16 +00:00