* PoC Sign in with QR on new EW using generated QR for MSC4108 v2024
* Revert package.json changes
* Prettier
* Fix i18n
* Tidy up
* Remove unused state variable
* Iterate tests
* Partial revert
* Iterate
* Wire up qr_login route
* Iterate UI
* Fix React dev mode double rendering issue
* Fix react key warning
* Hide flow header on login
* Re-roll qr code on channel expiry
* Switch to AbortSignal
* Improve auto-retry QR UX
* Ensure we only show sign in with QR button if enabled
* XXX: enable labs flag on Netlify builds
* Tweak QR code sizing
* Move qr login flow into a dialog to match designs
* Fix null deviceId
* Remove duplicate log
* Iterate
* Fix tests
* Fix types
* Fix tests
* Fix tests
* Make Netlify more useful
* Make Netlify more useful v2
* Update copy
* Refactor QR link flow to use new SDK methods
Requires https://github.com/matrix-org/matrix-js-sdk/pull/5283
For element-hq/wat-internal#188
Split out from https://github.com/element-hq/element-web/pull/33184
* Link to js-sdk branch
* Update tests
* Simplify
* Revert js-sdk linking
* Iterate
* Iterate
* Refactor to handle most of the TODOs
* Remove unused code
* Remove unused code
* Use js-sdk isSignInWithQRAvailable API to simplify code
* Restore app-test.ts
* Improve coverage
* Improve coverage
* Remove unused prop/state
* Iterate
* Fix tests
* Iterate
* Tests
* Handle TODOs
* Docs
* Remove redundant call to crossSignDevice()
* Workaround to remove training slash on the serverName before auto-discovery
* Revert "Workaround to remove training slash on the serverName before auto-discovery"
This reverts commit 0335a8fdd1b8e8d949ab7fca17c76f8fab335b58.
* setLoggedIn not to be used with OIDC flows as it clears storage
as per docs on setLoggedIn we should use restoreSessionFromStorage
* Don't show the security_code_prompt unconditionally(i.e. for the web logging in mobile flow)
* Update LoginWithQRFlow-test.tsx.snap
* Update MatrixChat-test from setLoggedInSpy to restoreSessionSpy
* Add todo for server switch
* Add todo about handling base URL or server name
* Handle server name or base URL being returned
* Format
* Fix loading state height
* Handle the homeserver URL differing during QR code login
* Comments
* Comments
* Register OIDC client ID after homeserver swap
* Make QrLoginDialog async to minimise the impact on bundle size
* Handle unsupported HS earlier in the flow
* Iterate
* Delint
* Fix test
* Discard changes to apps/web/element.io/develop/config.json
---------
Co-authored-by: Hugh Nimmo-Smith <hughns@element.io>
Co-authored-by: David Langley <langley.dave@gmail.com>
* apply new design to logout dialog
* factor out check for other verified devices
* only show recovery warning when user has no other verified devices
* fix playwright tests
* tweak style to better match design
* another playwright test fix
* fix playwright
* Look for the remove button within the dialog
* Use testid to locate 'Remove this device' button
* move rendering to sub-components, rather than embedded functions
* use <Type> element
* use <Text> for the <a> element
---------
Co-authored-by: Andy Balaam <andy.balaam@matrix.org>
* Removing the wierd blue border color when focused + adjusted the border to show when squeezed at the end of border
* Update snapshots
* Update edited code block screenshot
* Use other branch
* All the changes that got lost
* Fix merge
* Ensure emoji can only be one character long
* Fixup labs feature
* Remove redundant check
* Update snapshot
* update snapshot
* add snapshot
* unpin
* fix pnpm lock
* undo pn[m lockfile changes altogether
as we shouldn't actually need any afaik
* update snpahot for changed IDs
* Snapshot update
* Snapshot update
* There is now another section
* more snapshots
* more snapshot
* More snapshots
* oh come on snapshots
* actual snapshot update
* Fix sonar issues
* just update the thing manually
* [screams internally]
* Update snapshot
* test for useUserStatus
* Make useUserStatus actually truncate
* Split out slash command to its own file
& add test
* Remove irrelevant comment
* doc
* Comment on non-obvious error message
---------
Co-authored-by: David Baker <dbkr@users.noreply.github.com>
* Update dependency @vector-im/compound-web to v9.2.1
* Update button sizes
* More button size updates
* Another button size
* Button size
* Snapshot updates
* Snapshots
* More sm/md
* More button size updates
* snapshot
* and one more from merging develop
* More snapshots
* Phantom typing
* yep, more snapshots
* More snapshots
* More snapshots
* Last ones?
---------
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: David Baker <dbkr@users.noreply.github.com>
* 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
* Update to compound-web 9.0.1
There are a couple of breaking changes in v9, leading to the changes in
`BugReportDialog` and `EncryptionCard`.
Most of these updates, however, are snapshot updates, due to changes in the CSS
class names in compound web (which happens due to updates in the CSS content in
those classes; `postcss-modules` generates class names based on the hash of the
CSS).
* update playwright screenshots
* Remove ability for url previews to be set per-room
* Add ability to enable E2EE URL Previews globally
* Remove old migration
* Cleanup
* Remove room account handler
* update snap
* screenshot updated
* Add a test
* Move and rename low bandwidth mode.
* Still in use.
* remove string
* Add a test for low bandwidth mode
* Test requests too
* update snaps
* New year!
* Refactor MessageActionBar into MVVM ActionBarView
* Adding tooltips for menu items and correct i18n strings
* Layout changes
* Renaming some properties
* Rename property
* Create a first version of the view model and refactor media visibility logic
* Refactor view to take options and rections menu as optional properties
* Cleaner interface between view and view model
* Refactor view properties and replace Menu and MenuItem
* Bugfixes and switching to ActionBarView instead of MessageActionBar in element-web
* Avoid creating view models and render toolbar until it is actually shown
* Added unit and playwright tests and documented the view
* Added view model unit tests and updated snapshots of dependant tests
* Remove unused components and unnecessary css
* Remove unused language tags
* Fix for handling join-rules correctly
* Prettier
* Add handling of stale view model in async calls
* Prettier
* Split the element-web css into two different. One for legacy components and one for the ActionBarView
* Missing variables used for linting
* Fix for showing ActionBarView when using keyboard for navigation
* Handle visibility on context menu closing
* ThreadPanel uses the ActionBarView so restore css rule
* Fix for visibility of the ActionBarView in Thread panel
* Fix for ActionBarVuew visibility when closing right-click context menu and not still hovering
* Add roving index to function as a toolbar
* Adjust the RoomView test to send hover to the EventTile instead of the message text
* Fix SonarCloud issues
* Fix for SonarCloud issue
* Merge fix
* Rename mx_LegacyActionBar to mx_ThreadActionBar
* Added documentation and simplified join rules
* Generalize the ActionBarView and move logic to view model
* Add the four new buttons to the ActionBarView
* Update view model and tests to use the updated ActionBarView
* Refactor element-web to use ActionBarView
* Clean up styling in element-web
* Clean up and updating snaps and screenshots
* Added unit-tests for better coverage
* Moving ActionBarView to the correct folder in shared components
* Update snaps in element-web
* Better documentation in stories
* Merge fixes
* Updates after review comments
* Review comment fixes
* Added documentation to view models and updated snaps
* Hide button had the wrong label
* Replace createRef with useRef
* [create-pull-request] automated change
* Use a dedicated string for public access in settings.
* Fix tests due to copy changes.
* Fix tests due to copy changes.
* Fix tests due to copy changes.
* Fix tests due to copy changes.
* Fix tests due to copy changes.
* Updated visual tests screenshots due to copy changes.
* Updated visual tests screenshots due to copy changes.
---------
Co-authored-by: t3chguy <2403652+t3chguy@users.noreply.github.com>
Co-authored-by: mxandreas <andreass@element.io>
* Set up the MatrixClient before each RecoveryPanelOutOfSync test
Without this, we can't override MatrixClient methods until we've called
`renderComponent`, which is awkward.
* Actually test that we load the decryption key in RecoveryPanelOutOfSync
It turns out the existing test didn't actually go down the expected code
path and call loadSessionBackupPrivateKeyFromSecretStorage.
* Reset key storage if restoring from Recovery encounters the wrong decryption key
Fixes https://github.com/element-hq/element-web/issues/31793
Depends on https://github.com/matrix-org/matrix-js-sdk/pull/5202
When we try to load the key storage decryption key from Recovery, but we
find that it does not match the public key of the current key storage
backup, create a new key storage backup.
mkdir apps/web/scripts
mv scripts/{cleanup.sh,ci_package.sh,copy-res.ts,deploy.py,package.sh} apps/web/scripts
And a couple of gitignore tweaks
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>