stytch_ui_model
Types
pub type AuthModel {
AuthModel(
api_url: String,
state: AuthState,
method: AuthenticationMethod,
)
}
Constructors
-
AuthModel( api_url: String, state: AuthState, method: AuthenticationMethod, )
pub type AuthMsg {
ApiConfirmsUnauthenticated
ApiAuthenticatedUser(user: stytch_codecs.StytchUser)
UserUpdatedEmail(String)
UserPressedKeyOnEmail(String)
UserClickedSend
ApiSentMagicLink(
Result(stytch_codecs.LoginOrCreateResponse, rsvp.Error),
)
ApiSentPasscode(
Result(stytch_codecs.LoginOrCreateResponse, rsvp.Error),
)
UserUpdatedPasscode(String)
UserClickedPasscodeSend
ApiVerifiedPasscode(
Result(response.Response(String), rsvp.Error),
)
UserClickedPasskeySignIn
ApiStartedPasskeyLogin(
Result(
stytch_codecs.PasskeyAuthenticateStartResponse,
rsvp.Error,
),
)
BrowserGotPasskeyCredential(Result(String, String))
ApiFinishedPasskeyLogin(
Result(stytch_codecs.PasskeySessionResponse, rsvp.Error),
)
UserClickedAddPasskey
ApiStartedPasskeyRegister(
Result(stytch_codecs.PasskeyRegisterStartResponse, rsvp.Error),
)
BrowserCreatedPasskeyCredential(Result(String, String))
ApiFinishedPasskeyRegister(
Result(stytch_codecs.PasskeySessionResponse, rsvp.Error),
)
UserClickedSignOut
}
Constructors
-
ApiConfirmsUnauthenticated -
ApiAuthenticatedUser(user: stytch_codecs.StytchUser) -
UserUpdatedEmail(String) -
UserPressedKeyOnEmail(String) -
UserClickedSend -
ApiSentMagicLink( Result(stytch_codecs.LoginOrCreateResponse, rsvp.Error), ) -
ApiSentPasscode( Result(stytch_codecs.LoginOrCreateResponse, rsvp.Error), ) -
UserUpdatedPasscode(String) -
UserClickedPasscodeSend -
ApiVerifiedPasscode( Result(response.Response(String), rsvp.Error), ) -
UserClickedPasskeySignIn -
ApiStartedPasskeyLogin( Result( stytch_codecs.PasskeyAuthenticateStartResponse, rsvp.Error, ), ) -
BrowserGotPasskeyCredential(Result(String, String)) -
ApiFinishedPasskeyLogin( Result(stytch_codecs.PasskeySessionResponse, rsvp.Error), ) -
UserClickedAddPasskey -
ApiStartedPasskeyRegister( Result(stytch_codecs.PasskeyRegisterStartResponse, rsvp.Error), ) -
BrowserCreatedPasskeyCredential(Result(String, String)) -
ApiFinishedPasskeyRegister( Result(stytch_codecs.PasskeySessionResponse, rsvp.Error), ) -
UserClickedSignOut
pub type AuthState {
Authenticating
Unauthenticated(email: String)
WaitingForMagicLink(email: String)
SendingPasscodeEmail(email: String)
WaitingForPasscode(
email: String,
email_id: String,
passcode: String,
)
VerifyingPasscode(email: String)
PasskeyLoginInProgress
Authenticated(
user: stytch_codecs.StytchUser,
passkey_state: PasskeyState,
)
}
Constructors
-
Authenticating -
Unauthenticated(email: String) -
WaitingForMagicLink(email: String) -
SendingPasscodeEmail(email: String) -
WaitingForPasscode( email: String, email_id: String, passcode: String, ) -
VerifyingPasscode(email: String) -
PasskeyLoginInProgress -
Authenticated( user: stytch_codecs.StytchUser, passkey_state: PasskeyState, )
pub type AuthenticationMethod {
MagicLink
Passcode
}
Constructors
-
MagicLink -
Passcode
Status of an in-flight passkey registration for an authenticated user.
The list of already-registered passkeys is available on the user as
user.webauthn_registrations.
pub type PasskeyState {
PasskeyIdle
StartingPasskeyRegister
CreatingPasskeyCredential
FinishingPasskeyRegister
PasskeyRegisterFailed(reason: String)
}
Constructors
-
PasskeyIdle -
StartingPasskeyRegister -
CreatingPasskeyCredential -
FinishingPasskeyRegister -
PasskeyRegisterFailed(reason: String)
Values
pub fn get_me(api_url: String) -> effect.Effect(AuthMsg)
pub fn is_authenticated(model: AuthModel) -> Bool
pub fn new(
api_url: String,
method: AuthenticationMethod,
) -> AuthModel