* Move shared components to a packages/ directory
so they can be publish more sensibly
* Iterate towards split out shared-components module
* Move shared component source into src/ subdir
* Fix up imports
* Include shared components in babel-ing (again)
* Remove now unused dependencies
* Update import in storybook preview
* ...except of course they aren't unused
if we import the shared components by source
* Ignore shared components deps
* Add shared-components to i18n paths
and upgrade web-i18n to version that supports doing so
* Move storybook stuff to shared-components
* Seems we don't need this anymore...
* Remove unused deps
and remove storybook plugin from eslint
* Presumably working-directory is only valid on run steps
* Ignore dep & run prettier
* Prettier on knips.ts
* Hopefully run in right dir
* Remember how to software write
* Okay... how about THIS way?
* Oh right, they were git ignored. Sigh.
* Add concurrently
* Ignore in knip
* Better?
* Paaaaaaaackageeeeeeees
* More packages
* Move playwright snapshots
* Still need a custom snapshots dir
* Add eslint back
* Oh, now knip sees them
* Fix another import
* Don't lint shared-components with everything else
Okay, eslint & tsconfig are tied too closely for this to work and
running tsc on the shared components will need its deps installing
* Maybe lint shared components
please?
* Not quite
* Remove storybook again
Re-check if it does work without it
* Remove storybook eslint plugin
as we're not linting storybook here anymore
* Remove this too
* We do need it here though
* update key storage toggle when key storage status changes
Listen for the CryptoEvent.KeyBackupStatus event and update the state
when it changes.
* fixup! update key storage toggle when key storage status changes
* add comment about handling event
* Fix jitsi widget popout
Unfortunately I don't think playwright or jest can write a test for
something successfully opening a new tab.
Fixes https://github.com/element-hq/element-desktop/issues/2527
* On second thoughts, this is probably overkill
* Clarify
* Add test
* Unused import
* Change 'Verify Session' to 'Start Verification'
* Update strings for the verification dialog
This completes the Element Web part of
https://github.com/element-hq/element-meta/issues/2898
* fixup! Update strings for the verification dialog
Remove separate _unsent string
* Simple refactor for skipLobby (and remove returnToLobby)
* Tidyup
* Remove unused tests
* Add video room support.
* Add a test for video rooms
* tidy
* Document
* Add tests
* Add test IDs
* Revert to pre-new-widget-refactors state
* Update codeowners
* Remove one of the test IDs
* Update snapshots as DMs don't have room names :)
* Remove only
* fix a import
* fix docstring
* update snaps
* remove a line
* update snaps
* refactor: move `humanize` in shared components
* feat: add `RichItem` component
* feat: add `RichList` component
* refactor: use `RichList` and `RichItem` in `InviteDialog`
* fix: exclude `InviteDialog` button to css override
* test: update selector in invite dialog
* test(e2e): update crypto test to use correct selector
* test(e2e): update invite dialog
* test: add test for `humanize.ts`
* fix: add space between the list and the input when the list is scrollable
* test(e2e): update screenshots
* Don't show release announcements while toasts are displayed
Otherwise they can clash and look like a mess.
* Dismiss the toast in the e2e test
* Update screenshot
* Add decline button to call notification toast (use new notification event)
- This make EW incompatible with the old style notify events.
Signed-off-by: Timo K <toger5@hotmail.de>
* update styling for call toast
Signed-off-by: Timo K <toger5@hotmail.de>
* skip lobby on join button click / dont skip lobby on toast click
Signed-off-by: Timo K <toger5@hotmail.de>
* dismiss toast on remote decline
Signed-off-by: Timo K <toger5@hotmail.de>
* fixup docstring and event_id
Signed-off-by: Timo K <toger5@hotmail.de>
* Add tests
Signed-off-by: Timo K <toger5@hotmail.de>
* remove unused var
Signed-off-by: Timo K <toger5@hotmail.de>
* test that decline event gets sent
Signed-off-by: Timo K <toger5@hotmail.de>
* make "go to lobby" accessible via keyboard (fix sonar cloud)
Signed-off-by: Timo K <toger5@hotmail.de>
* remove keyboard input
Signed-off-by: Timo K <toger5@hotmail.de>
* fix lint
Signed-off-by: Timo K <toger5@hotmail.de>
* use actual button
Signed-off-by: Timo K <toger5@hotmail.de>
* review style + toggle for join immediately
Signed-off-by: Timo K <toger5@hotmail.de>
* fix `getNotificationEventSendTs`
Signed-off-by: Timo K <toger5@hotmail.de>
* use story component
Signed-off-by: Timo K <toger5@hotmail.de>
* english text
Signed-off-by: Timo K <toger5@hotmail.de>
* dont use legacy toggle
Signed-off-by: Timo K <toger5@hotmail.de>
* fix lint
Signed-off-by: Timo K <toger5@hotmail.de>
* review
Signed-off-by: Timo K <toger5@hotmail.de>
* review (mostly docs)
Signed-off-by: Timo K <toger5@hotmail.de>
---------
Signed-off-by: Timo K <toger5@hotmail.de>
* Default to new room list and enforce in config for app and develop
* Update jest tests
* Update LandmarkNavigation and e2e test
* Update viewRoomByName helper
* lint
* Update Add -> New Room flow
Keep legacy viewRoomByName until we delete the olds tests.
* Update e2e test to use Add -> Start Chat
* Update screenshots
* Fix viewRoomByName, can't use option as it contains more that just the room name. Using title which should be exact.
* Fix knocking tests
* fix layout.spec.ts and pstn.spec
* timeline snapshots
* Fix spotlight.spec
* TAC spaces and media preview settings
* Fix more screenshots and mark as unread tests
* Fix leftpanel test
* Bugfix for knocking use case. We should check EffectiveMembership when remove rooms from the new room list, so that knocking is handled
* Fix openCreateRoomDialog to new room list specifics to fix create-knock-room.spec.ts
* lint
* Fix Landmark navigation from left panel search to the next landmark
* lint
* Update window-12px-linux.png
* Update apps-drawer-linux.png
* Update sliding sync e2e tests
* Update some screenshots
* Revert change to the space create screenshot
* Use actual screenshot
as focused elements are different when generated locally
* Fix test selectors
* Morfe test screenshot selector / update
* Add test for landmark navigation
* Replace screenshots
* Fix another test that just got added an hour ago
* Not sure why this was changed, doesn't seem necessary
* Disambiguate selector
* Another screenshot that's now changed in width by 1px
* Revert changes to config files
It's being turned on by default so these are unnecessary
* Convert read.unread assertions to new room list
removing support for checking for activity in assertUnread which was
unused.
* Update room list order tests
that feel a bit like they ought to be in room-list rather than read-receipts but whatever
* Fix room titles in read receipts test
---------
Co-authored-by: David Baker <dbkr@users.noreply.github.com>
* add variant of ResetIdentityBody for when the user has no verif. methods
* no longer distinguish between the using having a passphrase or not
* use vertical stack of buttons via EncryptionCard
and update wording
* swap logic order to match rendering order
* use the same dialog when no verification options available
* make it agree with the design more
* allow signing out on initial login
* apply styling changes and remove duplicate elements
* fix and add tests
* add missing snapshot
* Apply suggestions from code review
Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
* use a boolean property to disable blurring instead of adding a class
* change string identifiers
* apply changes from review -- simplify logic
* change class name to avoid confusion
---------
Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
* fix: align default avatar in composer pills
* fix: use correct color for avatar in composer pills when there is no image
* test(e2e): add test for cider mention
* chore: fix typo
* Fix local room encryption status always not enabled
* refactor: put back the e2e test after merge
* fix: look at e2eStatus in composer of local room
* doc: add docs to `LocalRoom.isEncryptionEnabled`
* test(e2e): check composer doesn't display unencrypted state
* test: update existing tests
* test(e2e): update existing tests
* refactor: move room encryption check in a dedicated function
* refactor: make `isEncryptionEnabled` cleaner
* test: add tests for `LocalRoom.isEncrypted`
* doc: fix `useIsEncrypted` comment
---------
Co-authored-by: Florian Duros <florian.duros@ormaz.fr>
* Playwright: split `logIntoElement` into two
Split up this helper function, so that rather than being a single function with
an optional argument, it is two separate functions.
* Playwright: fix flaky shields test
Wait for the application to redirect to `/#/home` after completing security, so
that we don't end up racing with it.
Fixes https://github.com/element-hq/element-web/issues/28836
* Add tests for axe violations for the new room list
* axe doesn't like a ul/li with roles listbox/option. Changing to div/button as we have elsewhere like RoomListitemView.
* Fix RoomListPrimaryFilters test
* Justify the items in the primary filter container
to get the dropdown button on the right again
* Update snapshot
* Make the room list itself focusable
As the comment said, there was no real reason it needed to be, except
that there was because of axe. Probably having the children focusable
would be better, but Virtuoso wraps them in more divs which doesn't
satisfy axe's requirements since those inner divs are not the scrollable
ones. I can't see a better option than this right now.
* Update snapshot
---------
Co-authored-by: David Baker <dbkr@users.noreply.github.com>
* Refactor StyledRadioButton to provide proper labels.
* Automatically change history settings to members only if room is made private
* Add tests
* lint
* lint further
* Fix clickable buttons
* Revert functional component-ing
* text tweaks
* update snapshots
* Add unit test for history vis changes
* lint
* Update snapshots
* Fix flakes
* lint
* Block change recovery key button while a change is ongoing.
* Add disable check
* lint
* Ensure we test that spamming the button doesn't break it.
* Mock out modals
* lint
* add two more clicks
* lint
---------
Co-authored-by: Andy Balaam <andy.balaam@matrix.org>