* Give rooms with calls a proper accessible description
Besides improving accessibility, this makes it possible to check for the presence of a call indicator in the room list in Playwright tests.
* Make room list react to calls in a room, even when not connected to them
To use the results of CallStore.getRoom reactively, you need to listen for Call events, not ConnectedCalls events.
* Don't assume that every call starts off as a video call
If a Call object is created by way of someone starting a voice call, then of course the call's initial type needs to be 'voice'.
* Make room list items react to changes in call type
The type of a call may change over time; therefore room list items explicitly need to react to the changes.
* Update a call's type before notifying listeners of the change
If we notify listeners of a change in a call's type before actually making that change, the listeners will be working with glitched state. This would cause the room list to show the wrong call type in certain situations.
* Ignore the Vitest attachments directory
* perf: add memo to room avatar view
* perf: batch rlsV3 emit
* perf: avoid to re-render the room list if the room list state and sections are same
* perf: listen only message preview of the specific room
* perf: avoid to re-render the room list item if the notification or the content is same
* chore: replace useState and useEffect by useMemo in virtualized list
* fix: listen to room name event in RoomAvatar
* fix: room avatar re-render when room is low priority
* refactoring and creation of shared-components for reductedBodyView
* move redacted message rendering to shared MVVM view
* Update snapshots + fix lint errors
* Remove MatrixClientPeg and use reguler react matrix client context
* Stop resyncing redacted body view models with mxEvent
* Fix redacted_because test fixtures for stricter event typing
* Simplify redacted body client access
* Watch timestamp setting in redacted body view model
* Refactor redacted and decryption failure body factories into MBodyFactory
* Prettier Fix
* Refactor FileBody into same pattern for consitancy
* Fix#32682: Show space name instead of 'Empty room' after creation
When creating a new space, the setup screens showed 'Empty room' or
'New room' instead of the chosen name.
The 'createSpace' function nested 'name' and 'topic' inside
'createOpts'. However, the creation flow expects them at the top
level of the options object. This caused the name to be undefined.
This patch modifies SpaceCreateMenu.tsx to move these properties to
the top-level. It also updates SpaceCreateMenu-test.tsx with a
regression test to verify the fix and prevent future regressions.
* fix: format SpaceCreateMenu test with prettier
* Update nginx default config around caching
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Update README around caching
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
---------
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
getOidcCallbackUrl() was building the redirect_uri from window.location.href,
which may contain ephemeral params such as `updated` (appended on auto-update of element-web).
This caused a redirect_uri mismatch on authorization servers.
* Add `react-resizable-panels` library
* Implement a custom SeparatorView
* Add a `LeftResizablePanelView`
* Add a custom `GroupView`
* Export everything from shared-components
* Make it possible to track width/collapse state through settings
* Add a view model to drive the views
* Render views without disrupting the old room list
* Fix lint error
* Disable user interaction on collapsed panel
* Prevent widgets fron hijacking pointer events
* Expand to full width on separator click
* Separator should be shown when focused via keyboard
* Update tests
* Use data-attribute for hover
* Write stories for SeperatorView
* Write vite tests for SeparatorView
* Write tests for LeftResizablePanelView
* More tests
* Fix lint errors
* Fix flakey border on the roomlst
* Fix storybook axe violation
* Update snapshots
* Fix playwright tests
* Fix sonarcloud issues
* Use translated string
* Add better js-doc comments
* Rename `ResizerSnapshot` to `ResizerViewSnapshot`
* Externalize react-resizable-panels
* Link figma designs to stories
* Write playwright tests
* Update screenshots
* Fix lint errors
* Update more screenshots
* Update more screenshots
* Fix flaky toast test
* Update apps/web/playwright/e2e/crypto/toasts.spec.ts
Co-authored-by: Andy Balaam <andy.balaam@matrix.org>
* Fix indentation
---------
Co-authored-by: Andy Balaam <andy.balaam@matrix.org>
* Fix soft crash of room list when trying to open a room (#32864)
* fix: soft crash of room list trying to get item vm
* test: add test to check roomMap recovery and cleared when needed
(cherry picked from commit 9358096ac6ebf1fed4b6097658bc75b21c8fc366)
* test: fix room list vm usage in test
https://github.com/element-hq/element-web/pull/32819 has renamed the vm
but this PR isn't in the base branch of the backport
---------
Co-authored-by: Florian Duros <florianduros@element.io>
Co-authored-by: Florian Duros <florian.duros@ormaz.fr>
* Update dependency caniuse-lite to v1.0.30001780
* Update test
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
---------
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>