Commit Graph

54 Commits

Author SHA1 Message Date
David Baker
4751c52d82 Refactor the various email/phone management UI into a single component (#12884)
* Refactor the various email/phone management UI into a single component

These were basically the same component copied & pasted 3 times and
tweaked to match the behaviour of each case. This de-dupes them into
one component.

This all could really benefit from playwright tests, but would require
setting up a dummy ID server in the playwright tests. This is all legacy
pre-MAS stuff so its questionable whether its worth the effort.

* Basic test, remove old tests

* Use different text to confirm remove & put headers back

although the two texts are both 'Remove' in practice

* Remove string

This was never triggered anyway with sydent & synapse because they
don't seem to agree on what error to return. In any case, I think it
makes more sense for it to be consistent with the email path, ie. using
a dialog.

* Avoid nested forms

* Snapshots

* More snapshots

* Test the hs side

* Snapshots

* Test IS bind/revoke

* Test remove can be cancelled

* Test unvalidated cases & fix phone error

* Reset state between tests

* Import useState directly

* One more direct React import
2024-08-14 13:13:57 +00:00
David Baker
77062ac721 Move General user settings styles to more specific places
This was w grab bag of styles for the email/phone components and
one for something now in preferences. Move them elsewhere so I can
rename the tab sensibly.
2024-08-01 16:45:56 +01:00
David Baker
ea0baee101 Split out email & phone number settings to separate components & move discovery to privacy tab (#12670)
* WIP update of threepid settings section

* Remove email / phone number section from original place

and don't show the new one if 3pids are disabled

* Update snapshots

* Pull identity server / 3pid binding settings out to separate component

and put it in the security & privacy section which is its new home

* Update snapshot

* Move relevant part of test & update screenshots / snapshots

* Remove unnecessary dependency

* Add test for discovery settings

* Add spacing in terms agreement
2024-06-26 13:04:19 +00:00
Michael Telatynski
4d0d024e86 Migrate more strings to translation keys (#11671) 2023-09-26 18:35:55 +01:00
Michael Telatynski
f4d056fd38 Migrate more strings to translation keys (#11651) 2023-09-22 16:39:40 +01:00
Michael Telatynski
6b3243b27b Migrate more strings to translation keys (#11498) 2023-08-31 11:22:10 +01:00
Michael Telatynski
d5cacff6c3 Create more action_* common strings (#11438) 2023-08-23 11:57:22 +01:00
Kerry
5c1b62cf99 Disable 3pid fields in settings when m.3pid_changes capability is disabled (#11430)
* check m.3pid_changes capability in user settings

* comments

* assume 3pid_changes is true for older evrsions
2023-08-22 06:07:10 +00:00
Travis Ralston
180fcaa70f Support Matrix 1.1 (drop legacy r0 versions) (#9819)
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2023-08-14 09:25:13 +01:00
Michael Telatynski
285847560b Conform more of the codebase to strict typing (#11195) 2023-07-07 09:02:13 +01:00
Michael Telatynski
280f6a9d93 Use MatrixClientPeg::safeGet in src/components/views/* (#10987) 2023-06-15 08:46:19 +01:00
Michael Telatynski
938aefc51c Pass around MatrixClients instead of using MatrixClientPeg (#11000) 2023-05-30 10:36:34 +01:00
Kerry
d0d9a36d07 Use semantic headings in user settings - account (#10972)
* account password section

* account email and phone numbers

* update cypress selectors
2023-05-25 22:42:01 +00:00
Kerry
9f011b955b Use semantic headings in user settings - discovery (#10838)
* allow testids in settings sections

* use semantic headings in LabsUserSettingsTab

* put back margin var

* use SettingsTab wrapper

* use semantic headings for deactivate acc section

* use semantic heading in manage integratios

* i18n

* use currentColor in warning-triangle svg, update use in RoomStatusBar

* use semantic headings for discovery section

* test manage integration settings

* test deactivate account section display

* remove SettingsFieldset margins

* threepids styles

* remove debug

* test discovery email and phone
2023-05-24 02:37:10 +00:00
Suguru Hirahara
cb779fe872 Conform the style rules of GeneralUserSettingsTab.tsx to the style guide (#10595)
* Nesting: `mx_GeneralUserSettingsTab_changePassword`

* Nesting: `mx_Spinner`

* Conform the style rules to the naming policy

For elements inside "mx_GeneralUserSettingsTab_accountSection" and "mx_GeneralUserSettingsTab_discovery"

* Conform `mx_GeneralUserSettingsTab_discovery_existing*` to the naming policy
2023-05-12 10:33:01 +00:00
Michael Telatynski
f758cbd38a Make more of the codebase conform to strict types (#10859) 2023-05-12 09:49:37 +01:00
Suguru Hirahara
9b7e7864c9 Merge styles of _EmailAddresses.pcss and _PhoneNumbers.pcss (#10679)
* Rename: `mx_ExistingPhoneNumber_*` to `mx_PhoneNumber--existing_*`

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

* Rename: `mx_ExistingEmailAddress_*` to `mx_EmailAddress--existing_*`

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

* Merge styles for maitainability: `mx_GeneralUserSettingsTab_discovery_existing_*`

`mx_EmailAddress--existing_*` and `mx_PhoneNumber--existing_*` adopt the same declarations, so maintaining them with common selectors should improve the maintainability.

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

* Rename: `mx_EmailAddress--existing_*` and `mx_PhoneNumber--existing_*` to `mx_GeneralUserSettingsTab_discovery_existing_*`

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

* Remove empty selectors

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

* Remove a duplicate selector: `.mx_GeneralUserSettingsTab_discovery--existing`

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

* Rename the button

The button with the class name 'mx_GeneralUserSettingsTab_discovery_existing_button' is used for various types of action, so 'confirm' seems to be a bit misleading.

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

* Include: `mx_GeneralUserSettingsTab_discovery_existing_*`

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

* Run prettier

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

* lint

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

* Review

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

---------

Signed-off-by: Suguru Hirahara <luixxiul@users.noreply.github.com>
Signed-off-by: Suguru Hirahara <luixxiul@users.noreply.github.com
2023-05-03 11:34:32 +00:00
Eric Eastwood
c1e7905ddc Properly translate errors in AddThreepid.ts (#10432)
* Properly translate errors in AddThreepid.ts

Part of https://github.com/vector-im/element-web/issues/9597

* Use translated message

* Avoid returning undefined ever

* More usage

* Introduce UserFriendlyError

* Use UserFriendlyError

* Add more usage instead of normal error

* Use types and translatedMessage

* Fix lints

* Update i18n although it's wrong

* Use unknown for easier creation from try/catch

* Use types

* Use error types

* Use types

* Update i18n strings

* Remove generic re-label of HTTPError

See https://github.com/matrix-org/matrix-react-sdk/pull/10432#discussion_r1156468143

The HTTPError already has a good label and it isn't even translated if we re-label it here in this way generically

Probably best to just remove in favor of thinking about a translations in general from the `matrix-js-sdk`, see https://github.com/matrix-org/matrix-js-sdk/issues/1309

* Make error message extraction generic

* Update i18n strings

* Add tests for email addresses

* More consistent error logging to actually see error in logs

* Consistent error handling

* Any is okay because we have a fallback

* Check error type

* Use dedicated mockResolvedValue function

See https://github.com/matrix-org/matrix-react-sdk/pull/10432#discussion_r1163344034
2023-04-14 15:40:19 +01:00
Michael Telatyński
12dd799301 Fix double translation issue (#10240
* Fix double translation issue

* Remove some redundant string concatenations
2023-02-27 09:15:27 +00:00
Michael Telatynski
76b82b4b2b Make more code conform to strict null checks (#10219
* Make more code conform to strict null checks

* Fix types

* Fix tests

* Fix remaining test assertions

* Iterate PR
2023-02-24 15:28:40 +00:00
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
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
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
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
Michael Telatynski
590b845f3f Remove all usages of UNSAFE_* React methods (#9583) 2022-11-18 09:22:43 +00:00
Michael Telatynski
3c5c2bef6d Remove Piwik support (#8835)
* Remove all mentions of Piwik

* Kill off all consumer of the old Piwik Analytics module

* Simplify ModalManager interface

* i18n

* Attempt to fix old e2e tests

* Remove unused component

* Iterate PR
2022-06-14 17:51:51 +01:00
Travis Ralston
997d6d40bf Step 1: Remove all usage of @replaceableComponent 2022-03-28 14:02:31 -06:00
Aaron Raimist
bdc56be863 Auto fix
Signed-off-by: Aaron Raimist <aaron@raim.ist>
2021-10-22 17:23:37 -05:00
Dariusz Niemczyk
5e73a212f4 Replace console.error with logger.error
Related https://github.com/vector-im/element-web/issues/18425
2021-10-18 14:08:23 +02:00
Dariusz Niemczyk
12632318ef Add missing parenthesis for await calls 2021-10-18 14:08:23 +02:00
Šimon Brandner
76f8543c22 Convert PhoneNumber to TS
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2021-09-21 12:40:32 +02:00
Šimon Brandner
2ebbda482d Convert EmailAddress to TS
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2021-09-21 12:33:11 +02:00
Michael Telatynski
ce78cdf4ad Conform to new react and typescript eslint rules 2021-07-19 22:43:11 +01:00
J. Ryan Stinnett
ae0a8b8da4 Auto-fix lint errors 2021-06-29 13:11:58 +01:00
Ayush PS
f5911e6446 Fixing the minor UI issues in the email discovery 2021-03-22 00:33:09 +05:30
Travis Ralston
41576954fd Batch of views getting replaceableComponent decorators 2021-03-08 20:23:54 -07:00
Travis Ralston
5c2841323e Appease the linter by turning it off 2020-04-01 14:45:54 -06:00
Travis Ralston
47e5cfecf2 Silence usages of componentWillReceiveProps
For https://github.com/vector-im/riot-web/issues/12877
2020-04-01 14:35:39 -06:00
Michael Telatynski
19aae087e0 Field: make id optional, generate one if not provided
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-03-29 22:59:15 +01:00
Travis Ralston
042bd35d79 Fix MatrixClientPeg imports 2019-12-22 21:15:54 -07:00
Travis Ralston
d56f0f2a25 Convert many imports to handle ES6 exports
Reliant upon https://github.com/matrix-org/matrix-react-sdk/pull/3761
2019-12-22 21:04:42 -07:00
Bruno Windels
8c8b1430e4 fix spelling 2019-10-08 18:39:35 +02:00
Bruno Windels
1ab19be46c also show dialog here
unsure why this code seems duplicated?
2019-10-08 08:54:23 +02:00
Michael Telatynski
a0de7d5f14 Cull some easily fixable errors which make the console a mess
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-10-03 21:47:19 +01:00
J. Ryan Stinnett
f9a09d271b Use separate MSISDN add and bind flow for supporting HSes
This changes the paths used for binding MSISDNs for discovery to use the new
separate bind / unbind APIs on supporting servers.

Fixes https://github.com/vector-im/riot-web/issues/10839
2019-09-20 12:45:22 +01:00
J. Ryan Stinnett
ff69ad02b9 Use separate email add and bind flow for supporting HSes
This changes the paths used for binding emails for discovery to use the new
separate bind / unbind APIs on supporting servers.

Part of https://github.com/vector-im/riot-web/issues/10839
2019-09-20 12:19:43 +01:00
J. Ryan Stinnett
9a1305bf4a Extract separate add / bind methods on AddThreepid 2019-09-19 15:53:50 +01:00
Travis Ralston
f25529eed7 Change copy for sharing an email
Fixes https://github.com/vector-im/riot-web/issues/10758
2019-09-12 22:39:32 -06:00
J. Ryan Stinnett
db33c138aa Update all 3PID state in Settings when IS changes
This ensures we update all 3PID state (like bind status) whenever the IS
changes.
2019-09-11 16:21:42 +01:00