Commit graph

57 commits

Author SHA1 Message Date
Stefan Ceriu
dcc9cf71c6 Implement login with scanned QR code flows 2022-10-12 17:27:25 +03:00
Stefan Ceriu
05651f860a Expose AuthenticationRestClient async login token generation method (MSC3882) 2022-10-10 09:44:22 +03:00
ismailgulek
19afad1f18
Login with QR UI components (#6790)
* Display QR button on login screen if HS supports

* Create start screen

* Add build flag

* Connect start screen to the login

* QR display screen

* Move `LabelledDividerView` into separate file

* Show display QR screen on button tap

* Add swift concurreny to CameraAccessManager

* Introduce `QRLoginServiceProtocol`

* Use new service in screens

* Introduce scan QR code screen

* Remove hardcoded service availability

* Remove unnecessary import

* Add confirmation screen

* Add loading screen

* Fix ZXingObjc targets

* Add failure screen

* Add strings

* Various UI tweaks, navigation according to the service state

* Fix tests

* Add string for invalid QR error

* Add QR login service mode
2022-10-06 18:05:46 +03:00
Stefan Ceriu
ec0634ffb7 Configured and applied SwiftFormat 2022-09-27 12:55:44 +03:00
Doug
9a1c12f53b Put the session creator on the main actor instead.
This covers all login and registration options.
2022-09-16 12:31:25 +01:00
Johannes Marbach
2a9d7c9d9c Fix login crash on Xcode 14 builds
Fixes #6722
2022-09-15 21:20:47 +02:00
Stefan Ceriu
edd1ec9b0f Fixes #6569 - Provide SSO backup for homeservers that don't return an identity providers list. 2022-08-15 14:22:37 +03:00
Doug
90ecedbd22 Use the default homeserver when starting a new auth flow.
And override this when a provisioning link has been set.
2022-08-09 08:54:31 +01:00
Doug
92fc7046ed Always perform the registration dummy stage immediately after the first one. 2022-07-22 14:15:06 +01:00
Doug
58dcf54c55 Tweak strings for FTUE. 2022-07-20 18:07:42 +01:00
Doug
e3bcb71b09 FTUE tweaks
- Allow login using a phone number.
- Update the server when entering a full MXID during registration.
- Reset the authentication service back to matrix.org after onboarding completes.
- Disable zoom on ReCaptcha to fix responsiveness issue.
- Tidy up unused methods.
2022-07-19 09:22:15 +01:00
Doug
ec8100383f Update use case, registration and login screens.
Remove "Custom server" button from use case screen.
Remove matrix.org description.
Add username availability to registration screen.
2022-07-14 16:56:35 +01:00
Doug
3e6925b980 Trim whitespace and trailing slashes from a user entered homeserver address. 2022-06-21 10:04:22 +01:00
ismailgulek
2da380cad1
Merge branch 'develop' into ismail/6181_auth_soft_logout 2022-06-09 15:46:29 +03:00
ismailgulek
d89ef07376
Use softLogoutCredentials in AuthenticationService, fix blank screen before soft logout 2022-06-09 14:21:13 +03:00
ismailgulek
8e11dd46a8
Fix PR remarks 2022-06-09 13:22:50 +03:00
Doug
6dbe8657ff Add an unrecognised certificate alert to the new authentication flow. 2022-06-09 09:37:57 +01:00
ismailgulek
9f59a7bf9d
Add resetOthers parameter to session creator method 2022-06-08 17:22:47 +03:00
ismailgulek
ceae4a455d
Merge pull request #6250 from vector-im/ismail/6180_support_prov_links 2022-06-07 20:54:14 +03:00
ismailgulek
fc29e4be51
Fix PR remarks 2022-06-07 19:48:26 +03:00
ismailgulek
eae3531274
Handle provisioning links in AuthenticationService and call delegate method 2022-06-07 16:19:24 +03:00
ismailgulek
587c7f8546
Add identity server to AuthenticationState 2022-06-07 16:18:54 +03:00
ismailgulek
322767dfa1
Inject account manager into the session creator 2022-06-06 16:15:53 +03:00
ismailgulek
0cffeeea38
Make identityServer settable 2022-06-06 15:39:08 +03:00
ismailgulek
3995d48ee3
Merge branch 'develop' into ismail/6177_wellknown_IS 2022-06-06 15:23:22 +03:00
Doug
a9beeac55a
Add initial tests on the authentication service. (#6229) 2022-06-06 13:20:46 +01:00
ismailgulek
740713a638
Use identity server from well-known when creating the client 2022-06-03 18:08:19 +03:00
ismailgulek
39daef322a
Update reset password api 2022-06-01 18:59:08 +03:00
ismailgulek
a9886e4df3
Merge pull request #6210 from vector-im/ismail/6176_auth_fallback 2022-05-31 19:11:32 +03:00
Doug
8e99d54ef1
Merge pull request #6204 from vector-im/doug/5151_sso_login
Support SSO login in the new flow.
2022-05-31 17:05:14 +01:00
Doug
36581ae451
Merge pull request #6201 from vector-im/doug/5654_login_flow
Add login screen to new flow.
2022-05-31 17:04:50 +01:00
ismailgulek
adb6afa051
Fix PR remarks 2022-05-30 19:56:23 +03:00
Doug
0c2a74ab76 Login/Registration screen tweaks
Scale SSO button icon with dynamic type.
Add an onCommit parameter to RoundedBorderTextField and use to submit instead of onEditingChanged.
2022-05-29 10:14:14 +01:00
ismailgulek
8b66812430
Show fallback on login screen 2022-05-27 17:51:54 +03:00
ismailgulek
874f94ed09
Show fallback on authentication coordinator 2022-05-27 17:49:54 +03:00
ismailgulek
c2ca33142a
Fix log and warning 2022-05-26 13:52:43 +03:00
ismailgulek
77aa1c4dde
Add invalid phone number error and change error messages for validation failures 2022-05-26 00:31:25 +03:00
Doug
820db5c2db Handle SSO deep links via the AuthenticationServiceDelegate. 2022-05-25 17:38:21 +01:00
Doug
4ebcd7d7f0 Disable the next button whilst loading a server.
Add tests for login screen.
Self review.
2022-05-24 18:03:31 +01:00
Doug
b01fbecd88 Add AuthenticationHomeserverViewData to easily map AuthenticationState.Homeserver to a type in the SwiftUI target. 2022-05-24 15:47:25 +01:00
Doug
857cc8c69c Make the server selection coordinator aware of which flow it is for.
Don't set the authentication state until after registration has been queried to avoid using the wrong client if the user cancelled the selection.
2022-05-24 15:47:24 +01:00
Doug
0f12447748 Add login screen. 2022-05-24 15:47:24 +01:00
Doug
b69772edf4 Add AuthenticationRestClient protocol as an authentication interface to MXRestClient. 2022-05-24 10:09:24 +01:00
Doug
9502112daf Add initial implementation of the LoginWizard. 2022-05-24 10:09:24 +01:00
Doug
ab78a31935 Fix doc comments and callback. 2022-05-19 11:43:38 +01:00
Doug
68dd99bfb4 Use ordered flow for matrix.org and (kind of) homeserver defined order otherwise. 2022-05-19 11:43:38 +01:00
Doug
badd44f426 Add tests for FlowResult. 2022-05-19 11:43:38 +01:00
Doug
b9b4d18124 Add Email/Terms/ReCaptcha into the Authentication flow
Replace ReCaptcha navigation delegate with a WKUserContentController.
Move callback property closures onto the MainActor.
Show a loading indicator whilst waiting for the authentication service to start.
Move nextUncompletedStage into FlowResult.
Handle text field actions during authentication.
Remove scroll view tweaks in server selection screen following EMS banner removal.
2022-05-19 11:43:38 +01:00
Doug
9429bebb53 Remove iOS 13/14 checks from Template/Onboarding/Authentication. 2022-05-11 09:49:24 +01:00
Doug
1b160b5f25
Add registration terms screen. (#6128)
Begin implementing Auth Terms coordinator.
2022-05-10 22:34:35 +01:00