Commit Graph

918 Commits

Author SHA1 Message Date
Michael Telatynski
da7aa4055e Conform more of the code base to strict null checking (#10147)
* Conform more of the code base to strict null checking

* More strict fixes

* More strict work

* Fix missing optional type

* Iterate
2023-02-13 17:01:43 +00:00
Suguru Hirahara
fa036a5080 Improve localization experience on Weblate (#10140)
* Create a variable for 'Manage integrations', using the existing key

Signed-off-by: Suguru Hirahara <luixxiul@users.noreply.github.com>

* Create a variable for 'Scan QR code' to activate automatic suggestions on Weblate

Signed-off-by: Suguru Hirahara <luixxiul@users.noreply.github.com>

* Create a variable for 'My Ban List'

Signed-off-by: Suguru Hirahara <luixxiul@users.noreply.github.com>

---------

Signed-off-by: Suguru Hirahara <luixxiul@users.noreply.github.com>
2023-02-13 16:19:02 +01:00
Michael Telatynski
61a63e47f4 Comply with noImplicitAny (#9940)
* Stash noImplicitAny work

* Stash

* Fix imports

* Iterate

* Fix tests

* Delint

* Fix tests
2023-02-13 11:39:16 +00:00
Suguru Hirahara
ac7f69216e Remove duplicate translated string (#10139) 2023-02-13 11:31:22 +00:00
Andy Balaam
d84509d8d3 Implement MSC3946 for AdvancedRoomSettingsTab (#9995) 2023-01-27 14:07:05 +00:00
Hugh Nimmo-Smith
d698193196 Implementation of MSC3824 to make the client OIDC-aware (#8681) 2023-01-27 11:06:10 +00:00
Kerry
0758b8cdfe Device manager - tweak settings display (#9905)
* compound devices icon

* update icon for new session manager tab

* condense privacy > analytics / sessions sections slightly
2023-01-15 21:31:07 +00:00
Michael Telatynski
030b7e90bf Enable @typescript-eslint/explicit-function-return-type in /src (#9788)
* Enable `@typescript-eslint/explicit-member-accessibility` on /src

* Prettier

* Enable `@typescript-eslint/explicit-function-return-type` in /src

* Fix types

* tsc strict fixes

* Delint

* Fix test

* Fix bad merge
2023-01-12 13:25:14 +00:00
Kerry
c0ba1b8a1c Device manager - contextual menus (#9832)
* add session count to current session contextual signout

* add contextual menu to other sessions section

* typo

* i18n

* strict
2022-12-29 02:08:57 +00:00
Michael Telatynski
f1e8e7f140 Enable @typescript-eslint/explicit-member-accessibility on /src (#9785)
* Enable `@typescript-eslint/explicit-member-accessibility` on /src

* Prettier
2022-12-16 12:29:59 +00:00
Michael Weimann
526645c791 Apply prettier formatting 2022-12-12 12:24:14 +01:00
Kerry
888e69f39a Device manage - handle sessions that don't support encryption (#9717)
* add handling for unverifiable sessions

* test

* update types for filtervariation

* strict fixes

* avoid setting up cross signing in device man tests
2022-12-08 21:52:00 +00:00
Marco Bartelt
95ac957fa4 add-privileged-users-in-room (#9596) 2022-12-08 12:40:31 +01:00
Michael Telatynski
ccfb455847 Fix power selector being wrongly disabled for admins themselves (#9681) 2022-12-01 09:49:46 +00:00
Šimon Brandner
b0dfb2262e Separate labs and betas more clearly (#8969)
* Separate labs and betas more clearly

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* Fix tests

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* Capitalize `L` in `Labs`

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* Use `labsSections` instead of `SdkConfig.get("show_labs_settings")`

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* Link to `betas.md` instead of `labs.md`

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* Change labs label back to `Labs`

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* Improve labs section copy

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* Improve labs flags copy

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* i18n

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* Fix cypress tests

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* Reduce diff

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* Remove empty line

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* Fix comment

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* Remove margin-bottom for the last child

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* Improve code based on review

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* Fix ts

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* Improve ts

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* Fix ts

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* Improve code

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* Improve TS

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2022-11-30 21:20:26 +00:00
Michael Telatynski
d258402186 Typescript updates (#9658)
* Typescript updates

* Update @types/node

* Fix more types
2022-11-30 11:32:56 +00:00
Michael Telatynski
590b845f3f Remove all usages of UNSAFE_* React methods (#9583) 2022-11-18 09:22:43 +00:00
Michael Telatynski
e66027cd0c Deduplicate string compare utility (#9579) 2022-11-15 10:20:36 +00:00
Michael Weimann
436146105e Implement voice broadcast device selection (#9572) 2022-11-15 10:02:40 +01:00
Hanadi
212233cb0b Fix: inline links selecting radio button (#9543)
* fix: inline link selecting radio button
2022-11-14 09:11:37 +00:00
Michael Weimann
fca6ff271c Extract requestMediaPermissions (#9568) 2022-11-11 10:38:51 +01:00
László Várady
afdf289a78 Advanced audio processing settings (#8759)
Co-authored-by: Šimon Brandner <simon.bra.ag@gmail.com>
Fixes https://github.com/vector-im/element-web/issues/6278
Fixes undefined
2022-11-09 20:14:55 +00:00
Michael Telatynski
77764d80bc Fix regressions around media uploads failing and causing soft crashes (#9549) 2022-11-07 11:56:43 +00:00
Kerry
d473b4ac4a Device manager - confirm sign out of other sessions (PSG-921) (#9487)
* change testid attribute for dialog buttons to rtl friendly

* add confirm dialog for signing out sessions

* cleanup commented

* update cypress tets

* clear modals before test

* missing modal in jest tests on ci only
2022-10-25 10:39:48 +02:00
Hugh Nimmo-Smith
3c3df11d32 Support for login + E2EE set up with QR (#9403)
* Support for login + E2EE set up with QR

* Whitespace

* Padding

* Refactor of fetch

* Whitespace

* CSS whitespace

* Add link to MSC3906

* Handle incorrect typing in MatrixClientPeg.get()

* Use unstable class name

* fix: use unstable class name

* Use default fetch client instead

* Update to revised function name

* Refactor device manager panel and make it work with new sessions manager

* Lint fix

* Add missing interstitials and update wording

* Linting

* i18n

* Lint

* Use sensible sdk config name for fallback server

* Improve error handling for QR code generation

* Refactor feature availability logic

* Hide device manager panel if no options available

* Put sign in with QR behind lab setting

* Reduce scope of PR to just showing code on existing device

* i18n updates

* Handle null features

* Testing for LoginWithQRSection

* Refactor to handle UIA

* Imports

* Reduce diff complexity

* Remove unnecessary change

* Remove unused styles

* Support UIA

* Tidy up

* i18n

* Remove additional unused parts of flow

* Add extra instruction when showing QR code

* Add getVersions to server mocks

* Use proper colours for theme support

* Test cases

* Lint

* Remove obsolete snapshot

* Don't override error if already set

* Remove unused var

* Update src/components/views/settings/devices/LoginWithQRSection.tsx

Co-authored-by: Travis Ralston <travisr@matrix.org>

* Update src/components/views/auth/LoginWithQR.tsx

Co-authored-by: Travis Ralston <travisr@matrix.org>

* Update src/components/views/auth/LoginWithQR.tsx

Co-authored-by: Travis Ralston <travisr@matrix.org>

* Update src/components/views/auth/LoginWithQR.tsx

Co-authored-by: Travis Ralston <travisr@matrix.org>

* Update src/components/views/auth/LoginWithQR.tsx

Co-authored-by: Travis Ralston <travisr@matrix.org>

* Update src/components/views/auth/LoginWithQR.tsx

Co-authored-by: Travis Ralston <travisr@matrix.org>

* Update res/css/views/auth/_LoginWithQR.pcss

Co-authored-by: Kerry <kerrya@element.io>

* Use spacing variables

* Remove debug

* Style + docs

* preventDefault

* Names of tests

* Fixes for js-sdk refactor

* Update snapshots to match test names

* Refactor labs config to make deployment simpler

* i18n

* Unused imports

* Typo

* Stateless component

* Whitespace

* Use context not MatrixClientPeg

* Add missing context

* Type updates to match js-sdk

* Wrap click handlers in useCallback

* Update src/components/views/settings/DevicesPanel.tsx

Co-authored-by: Travis Ralston <travisr@matrix.org>

* Wait for DOM update instead of timeout

* Add missing snapshot update from last commit

* Remove void keyword in favour of then() clauses

* test main paths in LoginWithQR

Co-authored-by: Travis Ralston <travisr@matrix.org>
Co-authored-by: Kerry <kerrya@element.io>
2022-10-19 13:31:20 +01:00
Kerry
776ffa4764 Device manager - current session context menu (#9386)
* add destructive option and close on interaction options

* add kebab context menu wrapper

* use kebab context menu in current device section

* use named export

* lint

* sessionman tests
2022-10-13 09:07:34 +02:00
Kerry
87d3fbd996 Device manager - promote to beta (#9380)
* promote new session manager to beta

* hide old sessions section when new dm enabled

* use correct logic

* add new ViewUserDeviceSettings action

* replace device management ctas with viewUserDeviceSettings

* test SecurityUserSettingsTab

* more complete mocks

* more thorough mocks

* more mocks

* test LabsUserSettingsTab

* lint

* updated copy

* update snaps for new copy
2022-10-11 11:10:55 +02:00
Šimon Brandner
5680d13acf Handle missing Element Call brand (#9376) 2022-10-07 21:55:48 +02:00
Šimon Brandner
26a74a193f Add Element Call room settings (#9347)
Co-authored-by: Robin <robin@robin.town>
2022-10-07 18:10:17 +00:00
Šimon Brandner
6b1ee13c28 Always allow enabling sending read receipts (#9367)
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2022-10-07 15:10:18 +02:00
Kerry
bd270b08df Device manager - add foundation for extended device info (#9344)
* record device client inforamtion events on app start

* matrix-client-information -> matrix_client_information

* fix types

* remove another unused export

* add docs link

* display device client information in device details

* update snapshots

* integration-ish test client information in metadata

* tests

* fix tests

* export helper

* DeviceClientInformation type

* Device manager - select all devices (#9330)

* add device selection that does nothing

* multi select and sign out of sessions

* test multiple selection

* fix type after rebase

* select all sessions

* rename type

* use ExtendedDevice type everywhere

* rename clientName to appName for less collision with UA parser

* fix bad find and replace

* rename ExtendedDeviceInfo to ExtendedDeviceAppInfo

* rename DeviceType comp to DeviceTypeIcon

* update tests for new required property deviceType

* add stubbed user agent parsing
2022-10-05 11:41:01 +00:00
Kerry
0ded5e0505 Device manager - record device client information on app start (PSG-633) (#9314)
* record device client inforamtion events on app start

* matrix-client-information -> matrix_client_information

* fix types

* remove another unused export

* add docs link

* add opt in setting for recording device information
2022-10-04 09:53:23 +02:00
Šimon Brandner
bb2f4fb5e6 Check for the spec version when determining private read receipt support (#9341)
Co-authored-by: Travis Ralston <travisr@matrix.org>
2022-10-04 07:38:23 +00:00
Kerry
772df30212 Device manager - sign out of multiple sessions (#9325)
* add device selection that does nothing

* multi select and sign out of sessions

* test multiple selection

* fix type after rebase
2022-09-30 09:07:50 +02:00
Germain
c3bfb6e4a9 Display push toggle for web sessions (MSC3890) (#9327) 2022-09-28 18:18:10 +01:00
Germain
641cf28e4c Implement push notification toggle in device detail (#9308)
Co-authored-by: Travis Ralston <travisr@matrix.org>
2022-09-27 13:35:54 +01:00
Michael Weimann
0cc4f4e1bc Add voice broadcast permissions (#9284)
* Add Voice Broadcast labs setting and composer button

* Implement strict typing

* Extend MessageComposer-test

* Extend tests

* Revert some strict type fixex

* Implement voice broadcast permissions

* Update variable casing
2022-09-19 06:42:29 +00:00
Kerry
4fec436883 Device manager - rename session (PSG-528) (#9282)
* split heading into component

* switch between editing and view

* style file

* basic tests

* style device rename component

* add loading state

* kind of handle missing current device in drilled props

* use local loading state, add basic error message

* integration-ish test rename

* tidy

* fussy import ordering

* strict errors
2022-09-15 16:34:50 +02:00
Kerry
10bb10539b Device manager - logout of other session (PSG-744) (#9280)
* add sign out of current device section in device details

* lint

* add sign out cta for other sessions

* test other device sign out

* add pending sign out loader

* tidy

* fix strict error

* use gap instead of nbsp

* use more specific assertions in tests, tweak formatting

* tweak test
2022-09-14 16:18:32 +00:00
Kerry
f20d86b7b8 Device manager - logout current session (PSG-743) (#9275)
* trigger verification of other devices

* add sign out of current device section in device details

* fix classname

* lint

* strict type fix

* fix test

* improve mocked VerifReq
2022-09-14 14:37:36 +02:00
Kerry
4623d84dd0 Device manager - verify other devices (PSG-724) (#9274)
* trigger verification of other devices

* tests

* fix strict errors

* add types
2022-09-14 10:40:26 +00:00
Šimon Brandner
28a418dd2a Remove support for unstable private read receipts (#9225) 2022-09-12 18:04:16 +02:00
Kerry
61904778f5 Device manager - add verify current session button (PSG-527) (#9252)
* add verify current session button

* i18n

* strict type issues
2022-09-08 17:35:53 +02:00
Kerry
85f92308f9 Device manager - hide unverified security recommendation when only current session is unverified (PSG-639) (#9228)
* scroll to filtered list from security recommendations

* test sessionmanager scroll to

* stable snapshot

* fix strict errors

* prtidy

* dont show security rec section when only curent session is unverified
2022-09-05 09:10:12 +00:00
Kerry
54a66bd242 Device manager - scroll to filtered list from security recommendations (PSG-640) (#9227)
* scroll to filtered list from security recommendations

* test sessionmanager scroll to

* stable snapshot

* fix strict errors

* prtidy

* use smooth scrolling
2022-08-31 14:34:22 +02:00
Gustavo Santos
27de00a859 Add missing space in SecurityRoomSettingsTab (#9222) 2022-08-26 06:39:30 +00:00
Kerry
e5fedfcd74 Device manager - expandable session details in device list (PSG-644) (#9188)
* add expandable device details to session list

* test device expansion in filtered list

* test expanded device id management from sessionmanager tab

* i18n

* update snapshot

* update snapshots

* use css instead of br
2022-08-17 11:58:34 +02:00
Kerry
6f2c761fb4 Device manager - device list filtering (PSG-648) (#9181)
* add device filtering

* improve dropdown styling

* test device filtering

* update type imports

* fix types

* security card margin

* more specific type for onFilterOptionChange
2022-08-16 14:05:10 +00:00
Kerry
0dffc582e7 Device manager - current session expandable details (PSG-644) (#9185)
* split current device section into component

* add dropdown button for currentsession device details

* test currentdevicesection

* remove unnecc beforeEach

* update type imports

* i18n and lint
2022-08-15 17:30:18 +02:00
Kerry
0c5ad457f0 Device manager - security recommendations section (PSG-639) (#9179)
* display inactive status on device tile

* unify DeviceSecurityVariation type, add correct icon to inactive ui

* move types into type file

* move DeviceSecurityVariation into types

* add security recommendations section

* add view all stubbed buttons

* undeo debug

* test security recs

* remove debug

* use css for card spacing
2022-08-15 08:40:26 -04:00